From cf73b169ea1913f882fefdce05c8f665d5f104c0 Mon Sep 17 00:00:00 2001 From: Sean Koo Date: Mon, 5 May 2025 13:51:06 -0600 Subject: [PATCH 1/3] changes for idm Implementing and testing for on prem idm ran lint Modified based on the review changes on deployment types Fix linting, and clean up a few other things. tests changes Lint fixes Remove obsolete snapshots and recordings --- .../admin-add-autoid-static-user-mapping.ts | 6 +- ...ate-oauth2-client-with-admin-privileges.ts | 10 +- .../admin-execute-rfc7523-authz-grant-flow.ts | 19 +- src/cli/admin/admin-federation-export.ts | 4 +- src/cli/admin/admin-federation-import.ts | 4 +- src/cli/admin/admin-federation-list.ts | 5 +- ...-generate-rfc7523-authz-grant-artefacts.ts | 19 +- src/cli/admin/admin-get-access-token.ts | 19 +- ...in-grant-oauth2-client-admin-privileges.ts | 10 +- ...admin-hide-generic-extension-attributes.ts | 5 +- ...st-oauth2-clients-with-admin-privileges.ts | 10 +- ...t-oauth2-clients-with-custom-privileges.ts | 10 +- .../admin/admin-list-static-user-mappings.ts | 9 +- .../admin/admin-remove-static-user-mapping.ts | 9 +- src/cli/admin/admin-repair-org-model.ts | 10 +- ...n-revoke-oauth2-client-admin-privileges.ts | 10 +- ...admin-show-generic-extension-attributes.ts | 5 +- .../admin/admin-train-auto-access-model.ts | 3 +- src/cli/agent/agent-delete.ts | 17 +- src/cli/agent/agent-describe.ts | 17 +- src/cli/agent/agent-export.ts | 17 +- src/cli/agent/agent-gateway-delete.ts | 22 +- src/cli/agent/agent-gateway-describe.ts | 21 +- src/cli/agent/agent-gateway-export.ts | 20 +- src/cli/agent/agent-gateway-import.ts | 20 +- src/cli/agent/agent-gateway-list.ts | 20 +- src/cli/agent/agent-import.ts | 17 +- src/cli/agent/agent-java-delete.ts | 22 +- src/cli/agent/agent-java-describe.ts | 21 +- src/cli/agent/agent-java-export.ts | 21 +- src/cli/agent/agent-java-import.ts | 21 +- src/cli/agent/agent-java-list.ts | 21 +- src/cli/agent/agent-list.ts | 17 +- src/cli/agent/agent-web-delete.ts | 22 +- src/cli/agent/agent-web-describe.ts | 21 +- src/cli/agent/agent-web-export.ts | 21 +- src/cli/agent/agent-web-import.ts | 21 +- src/cli/agent/agent-web-list.ts | 17 +- src/cli/app/app-delete.ts | 9 +- src/cli/app/app-describe.ts | 9 +- src/cli/app/app-export.ts | 9 +- src/cli/app/app-import.ts | 9 +- src/cli/app/app-list.ts | 9 +- src/cli/authn/authn-describe.ts | 17 +- src/cli/authn/authn-export.ts | 17 +- src/cli/authn/authn-import.ts | 17 +- src/cli/authz/authz-policy-delete.ts | 35 +- src/cli/authz/authz-policy-describe.ts | 24 +- src/cli/authz/authz-policy-export.ts | 46 +- src/cli/authz/authz-policy-import.ts | 39 +- src/cli/authz/authz-policy-list.ts | 23 +- src/cli/authz/authz-set-delete.ts | 26 +- src/cli/authz/authz-set-describe.ts | 21 +- src/cli/authz/authz-set-export.ts | 31 +- src/cli/authz/authz-set-import.ts | 36 +- src/cli/authz/authz-set-list.ts | 18 +- src/cli/authz/authz-type-delete.ts | 31 +- src/cli/authz/authz-type-describe.ts | 26 +- src/cli/authz/authz-type-export.ts | 36 +- src/cli/authz/authz-type-import.ts | 41 +- src/cli/authz/authz-type-list.ts | 21 +- src/cli/config/config-delete.ts | 19 +- src/cli/config/config-describe.ts | 23 +- src/cli/config/config-export.ts | 25 +- src/cli/config/config-import.ts | 33 +- src/cli/config/config-list.ts | 19 +- src/cli/email/email-template-export.ts | 14 +- src/cli/email/email-template-import.ts | 13 +- src/cli/email/email-template-list.ts | 13 +- src/cli/esv/esv-apply.ts | 3 +- src/cli/esv/esv-secret-create.ts | 4 +- src/cli/esv/esv-secret-delete.ts | 4 +- src/cli/esv/esv-secret-describe.ts | 4 +- src/cli/esv/esv-secret-export.ts | 5 +- src/cli/esv/esv-secret-import.ts | 4 +- src/cli/esv/esv-secret-list.ts | 4 +- src/cli/esv/esv-secret-set.ts | 4 +- src/cli/esv/esv-secret-version-activate.ts | 4 +- src/cli/esv/esv-secret-version-create.ts | 4 +- src/cli/esv/esv-secret-version-deactivate.ts | 4 +- src/cli/esv/esv-secret-version-delete.ts | 4 +- src/cli/esv/esv-secret-version-list.ts | 4 +- src/cli/esv/esv-variable-create.ts | 5 +- src/cli/esv/esv-variable-delete.ts | 4 +- src/cli/esv/esv-variable-describe.ts | 4 +- src/cli/esv/esv-variable-export.ts | 5 +- src/cli/esv/esv-variable-import.ts | 4 +- src/cli/esv/esv-variable-list.ts | 4 +- src/cli/esv/esv-variable-set.ts | 5 +- src/cli/idm/idm-count.ts | 12 +- src/cli/idm/idm-delete.ts | 17 +- src/cli/idm/idm-export.ts | 14 +- src/cli/idm/idm-import.ts | 14 +- src/cli/idm/idm-list.ts | 14 +- src/cli/idm/idm-schema-object-export.ts | 14 +- src/cli/idm/idm-schema-object-import.ts | 14 +- src/cli/idp/idp-delete.ts | 18 +- src/cli/idp/idp-export.ts | 27 +- src/cli/idp/idp-import.ts | 38 +- src/cli/idp/idp-list.ts | 17 +- src/cli/journey/journey-delete.ts | 25 +- src/cli/journey/journey-describe.ts | 19 +- src/cli/journey/journey-disable.ts | 24 +- src/cli/journey/journey-enable.ts | 20 +- src/cli/journey/journey-export.ts | 30 +- src/cli/journey/journey-import.ts | 37 +- src/cli/journey/journey-list.ts | 18 +- src/cli/journey/journey-prune.ts | 16 +- src/cli/log/log-fetch.ts | 3 +- src/cli/log/log-key-delete.ts | 4 +- src/cli/log/log-key-describe.ts | 4 +- src/cli/log/log-key-list.ts | 4 +- src/cli/log/log-list.ts | 3 +- src/cli/log/log-tail.ts | 3 +- src/cli/mapping/mapping-delete.ts | 13 +- src/cli/mapping/mapping-export.ts | 13 +- src/cli/mapping/mapping-import.ts | 13 +- src/cli/mapping/mapping-list.ts | 13 +- src/cli/mapping/mapping-rename.ts | 13 +- src/cli/oauth/oauth-client-delete.ts | 21 +- src/cli/oauth/oauth-client-describe.ts | 21 +- src/cli/oauth/oauth-client-export.ts | 31 +- src/cli/oauth/oauth-client-import.ts | 42 +- src/cli/oauth/oauth-client-list.ts | 21 +- src/cli/promote/promote.ts | 12 +- src/cli/realm/realm-add-custom-domain.ts | 22 +- src/cli/realm/realm-describe.ts | 16 +- src/cli/realm/realm-export.ts | 35 +- src/cli/realm/realm-import.ts | 2 +- src/cli/realm/realm-list.ts | 17 +- src/cli/realm/realm-remove-custom-domain.ts | 20 +- src/cli/role/role-delete.ts | 8 +- src/cli/role/role-describe.ts | 8 +- src/cli/role/role-export.ts | 8 +- src/cli/role/role-import.ts | 8 +- src/cli/role/role-list.ts | 8 +- src/cli/saml/saml-cot-export.ts | 32 +- src/cli/saml/saml-cot-import.ts | 43 +- src/cli/saml/saml-cot-list.ts | 18 +- src/cli/saml/saml-delete.ts | 24 +- src/cli/saml/saml-describe.ts | 18 +- src/cli/saml/saml-export.ts | 31 +- src/cli/saml/saml-import.ts | 39 +- src/cli/saml/saml-list.ts | 18 +- src/cli/saml/saml-metadata-export.ts | 27 +- src/cli/script/script-delete.ts | 31 +- src/cli/script/script-describe.ts | 24 +- src/cli/script/script-export.ts | 32 +- src/cli/script/script-import.ts | 23 +- src/cli/script/script-list.ts | 18 +- src/cli/service/service-delete.ts | 22 +- src/cli/service/service-export.ts | 30 +- src/cli/service/service-import.ts | 37 +- src/cli/service/service-list.ts | 17 +- src/cli/theme/theme-delete.ts | 10 +- src/cli/theme/theme-export.ts | 10 +- src/cli/theme/theme-import.ts | 10 +- src/cli/theme/theme-list.ts | 10 +- src/utils/Config.ts | 7 +- ...dd-autoid-static-user-mapping.test.js.snap | 2 +- ...-client-with-admin-privileges.test.js.snap | 2 +- .../admin-get-access-token.test.js.snap | 2 +- ...auth2-client-admin-privileges.test.js.snap | 2 +- ...-generic-extension-attributes.test.js.snap | 2 +- ...clients-with-admin-privileges.test.js.snap | 2 +- ...lients-with-custom-privileges.test.js.snap | 2 +- ...min-list-static-user-mappings.test.js.snap | 2 +- ...in-remove-static-user-mapping.test.js.snap | 2 +- .../admin-repair-org-model.test.js.snap | 2 +- ...auth2-client-admin-privileges.test.js.snap | 2 +- ...-generic-extension-attributes.test.js.snap | 2 +- .../__snapshots__/agent-delete.test.js.snap | 2 +- .../__snapshots__/agent-describe.test.js.snap | 2 +- .../__snapshots__/agent-export.test.js.snap | 2 +- .../agent-gateway-delete.test.js.snap | 2 +- .../agent-gateway-describe.test.js.snap | 2 +- .../agent-gateway-export.test.js.snap | 2 +- .../agent-gateway-import.test.js.snap | 2 +- .../agent-gateway-list.test.js.snap | 2 +- .../__snapshots__/agent-import.test.js.snap | 2 +- .../agent-java-delete.test.js.snap | 2 +- .../agent-java-describe.test.js.snap | 2 +- .../agent-java-export.test.js.snap | 2 +- .../agent-java-import.test.js.snap | 2 +- .../agent-java-list.test.js.snap | 2 +- .../en/__snapshots__/agent-list.test.js.snap | 2 +- .../agent-web-delete.test.js.snap | 2 +- .../agent-web-describe.test.js.snap | 2 +- .../agent-web-export.test.js.snap | 2 +- .../agent-web-import.test.js.snap | 2 +- .../__snapshots__/agent-web-list.test.js.snap | 2 +- .../en/__snapshots__/app-delete.test.js.snap | 2 +- .../en/__snapshots__/app-export.test.js.snap | 2 +- .../en/__snapshots__/app-import.test.js.snap | 2 +- .../en/__snapshots__/app-list.test.js.snap | 2 +- .../__snapshots__/authn-describe.test.js.snap | 2 +- .../__snapshots__/authn-export.test.js.snap | 2 +- .../__snapshots__/authn-import.test.js.snap | 2 +- .../authz-policy-delete.test.js.snap | 2 +- .../authz-policy-describe.test.js.snap | 2 +- .../authz-policy-export.test.js.snap | 2 +- .../authz-policy-import.test.js.snap | 2 +- .../authz-policy-list.test.js.snap | 2 +- .../authz-set-delete.test.js.snap | 2 +- .../authz-set-describe.test.js.snap | 2 +- .../authz-set-export.test.js.snap | 2 +- .../authz-set-import.test.js.snap | 2 +- .../authz-type-delete.test.js.snap | 2 +- .../authz-type-describe.test.js.snap | 2 +- .../authz-type-export.test.js.snap | 2 +- .../authz-type-import.test.js.snap | 2 +- .../authz-type-list.test.js.snap | 2 +- .../__snapshots__/config-export.test.js.snap | 2 +- .../__snapshots__/config-import.test.js.snap | 2 +- .../en/__snapshots__/conn-save.test.js.snap | 8 +- .../email-template-export.test.js.snap | 2 +- .../email-template-import.test.js.snap | 2 +- .../email-template-list.test.js.snap | 2 +- .../en/__snapshots__/esv-apply.test.js.snap | 2 +- .../esv-secret-create.test.js.snap | 2 +- .../esv-secret-delete.test.js.snap | 2 +- .../esv-secret-describe.test.js.snap | 2 +- .../esv-secret-export.test.js.snap | 2 +- .../esv-secret-import.test.js.snap | 2 +- .../esv-secret-list.test.js.snap | 2 +- .../__snapshots__/esv-secret-set.test.js.snap | 2 +- .../esv-secret-version-activate.test.js.snap | 2 +- .../esv-secret-version-create.test.js.snap | 2 +- ...esv-secret-version-deactivate.test.js.snap | 2 +- .../esv-secret-version-delete.test.js.snap | 2 +- .../esv-secret-version-list.test.js.snap | 2 +- .../esv-variable-create.test.js.snap | 2 +- .../esv-variable-delete.test.js.snap | 2 +- .../esv-variable-describe.test.js.snap | 2 +- .../esv-variable-export.test.js.snap | 2 +- .../esv-variable-import.test.js.snap | 2 +- .../esv-variable-list.test.js.snap | 2 +- .../esv-variable-set.test.js.snap | 2 +- .../en/__snapshots__/idm-count.test.js.snap | 2 +- .../en/__snapshots__/idm-delete.test.js.snap | 2 +- .../en/__snapshots__/idm-export.test.js.snap | 2 +- .../en/__snapshots__/idm-import.test.js.snap | 2 +- .../en/__snapshots__/idm-list.test.js.snap | 2 +- .../idm-schema-object-export.test.js.snap | 2 +- .../idm-schema-object-import.test.js.snap | 2 +- .../en/__snapshots__/idp-delete.test.js.snap | 2 +- .../en/__snapshots__/idp-export.test.js.snap | 2 +- .../en/__snapshots__/idp-import.test.js.snap | 2 +- .../en/__snapshots__/idp-list.test.js.snap | 2 +- .../en/__snapshots__/info.test.js.snap | 2 +- .../__snapshots__/journey-delete.test.js.snap | 2 +- .../journey-describe.test.js.snap | 2 +- .../journey-disable.test.js.snap | 2 +- .../__snapshots__/journey-enable.test.js.snap | 2 +- .../__snapshots__/journey-export.test.js.snap | 2 +- .../__snapshots__/journey-import.test.js.snap | 2 +- .../__snapshots__/journey-list.test.js.snap | 2 +- .../__snapshots__/journey-prune.test.js.snap | 2 +- .../en/__snapshots__/log-fetch.test.js.snap | 4 +- .../en/__snapshots__/log-list.test.js.snap | 4 +- .../en/__snapshots__/log-tail.test.js.snap | 4 +- .../__snapshots__/mapping-delete.test.js.snap | 2 +- .../__snapshots__/mapping-export.test.js.snap | 2 +- .../__snapshots__/mapping-import.test.js.snap | 2 +- .../__snapshots__/mapping-list.test.js.snap | 2 +- .../__snapshots__/mapping-rename.test.js.snap | 2 +- .../oauth-client-delete.test.js.snap | 2 +- .../oauth-client-export.test.js.snap | 2 +- .../oauth-client-import.test.js.snap | 2 +- .../oauth-client-list.test.js.snap | 2 +- .../en/__snapshots__/promote.test.js.snap | 2 +- .../realm-add-custom-domain.test.js.snap | 2 +- .../__snapshots__/realm-describe.test.js.snap | 2 +- .../__snapshots__/realm-export.test.js.snap | 2 +- .../__snapshots__/realm-import.test.js.snap | 2 +- .../en/__snapshots__/realm-list.test.js.snap | 2 +- .../realm-remove-custom-domain.test.js.snap | 2 +- .../en/__snapshots__/role-export.test.js.snap | 2 +- .../en/__snapshots__/role-import.test.js.snap | 2 +- .../en/__snapshots__/role-list.test.js.snap | 2 +- .../saml-cot-export.test.js.snap | 2 +- .../saml-cot-import.test.js.snap | 2 +- .../__snapshots__/saml-cot-list.test.js.snap | 2 +- .../en/__snapshots__/saml-delete.test.js.snap | 2 +- .../__snapshots__/saml-describe.test.js.snap | 2 +- .../en/__snapshots__/saml-export.test.js.snap | 2 +- .../en/__snapshots__/saml-import.test.js.snap | 2 +- .../en/__snapshots__/saml-list.test.js.snap | 2 +- .../saml-metadata-export.test.js.snap | 2 +- .../__snapshots__/script-delete.test.js.snap | 2 +- .../script-describe.test.js.snap | 2 +- .../__snapshots__/script-export.test.js.snap | 2 +- .../__snapshots__/script-import.test.js.snap | 2 +- .../en/__snapshots__/script-list.test.js.snap | 2 +- .../__snapshots__/server-export.test.js.snap | 2 +- .../__snapshots__/server-import.test.js.snap | 2 +- .../en/__snapshots__/server-list.test.js.snap | 2 +- .../__snapshots__/service-delete.test.js.snap | 2 +- .../__snapshots__/service-export.test.js.snap | 2 +- .../__snapshots__/service-import.test.js.snap | 2 +- .../__snapshots__/service-list.test.js.snap | 2 +- .../en/__snapshots__/shell.test.js.snap | 2 +- .../__snapshots__/theme-delete.test.js.snap | 2 +- .../__snapshots__/theme-export.test.js.snap | 2 +- .../__snapshots__/theme-import.test.js.snap | 2 +- .../en/__snapshots__/theme-list.test.js.snap | 2 +- .../config-import.e2e.test.js.snap | 4 + .../email-template-import.e2e.test.js.snap | 4 + .../esv-secret-create.e2e.test.js.snap | 2 +- .../__snapshots__/idm-import.e2e.test.js.snap | 4 + .../__snapshots__/idp-delete.e2e.test.js.snap | 2 +- .../mapping-import.e2e.test.js.snap | 4 + .../role-import.e2e.test.js.snap | 4 + test/e2e/config-export.e2e.test.js | 29 +- test/e2e/email-template-export.e2e.test.js | 21 +- test/e2e/email-template-import.e2e.test.js | 21 +- .../forgottenUsername.emailTemplate.json | 26 + .../registration.emailTemplate.json | 26 + .../resetPassword.emailTemplate.json | 26 + .../updatePassword.emailTemplate.json | 24 + .../emailTemplate/welcome.emailTemplate.json | 26 + .../idm/global/idm/access.idm.json | 333 + .../idm/global/idm/apiVersion.idm.json | 58 + .../idm/global/idm/audit.idm.json | 158 + .../idm/global/idm/authentication.idm.json | 96 + .../idm/global/idm/cluster.idm.json | 20 + .../getavailableuserstoassign.idm.json | 16 + .../idm/endpoint/getprocessesforuser.idm.json | 16 + .../global/idm/endpoint/gettasksview.idm.json | 16 + .../idm/endpoint/mappingDetails.idm.json | 17 + .../global/idm/endpoint/oauthproxy.idm.json | 17 + .../removeRepoPathFromRelationships.idm.json | 16 + .../idm/endpoint/repairMetadata.idm.json | 16 + ...nternalUserAndInternalRoleEntries.idm.json | 16 + .../idm/endpoint/validateQueryFilter.idm.json | 17 + .../idm/global/idm/external.rest.idm.json | 15 + .../idm/global/idm/internal.idm.json | 49 + .../idm/global/idm/managed.idm.json | 1902 +++ .../idm/global/idm/metrics.idm.json | 15 + .../idm/notification/passwordUpdate.idm.json | 38 + .../idm/notification/profileUpdate.idm.json | 50 + .../global/idm/notificationFactory.idm.json | 23 + .../idm/global/idm/policy.idm.json | 274 + .../global/idm/privilegeAssignments.idm.json | 38 + .../idm/global/idm/privileges.idm.json | 736 ++ .../idm/global/idm/process/access.idm.json | 30 + .../idm/global/idm/repo.ds.idm.json | 1026 ++ .../idm/global/idm/repo.init.idm.json | 64 + .../idm/global/idm/router.idm.json | 48 + .../idm/global/idm/schedule/seantest.idm.json | 34 + .../idm/schedule/taskscan_activate.idm.json | 42 + .../idm/schedule/taskscan_expire.idm.json | 42 + .../idm/global/idm/scheduler.idm.json | 22 + .../idm/global/idm/script.idm.json | 49 + .../idm/global/idm/secrets.idm.json | 119 + .../idm/global/idm/selfservice.kba.idm.json | 27 + .../idm/selfservice.propertymap.idm.json | 62 + .../idm/global/idm/selfservice.terms.idm.json | 29 + .../global/idm/servletfilter/cors.idm.json | 25 + .../global/idm/servletfilter/payload.idm.json | 21 + .../global/idm/servletfilter/upload.idm.json | 21 + .../idm/global/idm/ui.context/admin.idm.json | 22 + .../idm/global/idm/ui.context/api.idm.json | 20 + .../global/idm/ui.context/enduser.idm.json | 21 + .../idm/global/idm/ui.context/oauth.idm.json | 19 + .../idm/global/idm/ui/configuration.idm.json | 40 + .../idm/global/idm/ui/dashboard.idm.json | 205 + .../idm/global/idm/ui/profile.idm.json | 52 + .../idm/global/idm/ui/themeconfig.idm.json | 38 + .../idm/global/idm/webserver.idm.json | 23 + .../idm/webserver.listener/http.idm.json | 20 + .../idm/webserver.listener/https.idm.json | 22 + .../webserver.listener/mutualAuth.idm.json | 23 + .../openidm-admin.internalRole.json | 19 + .../openidm-authorized.internalRole.json | 19 + .../openidm-cert.internalRole.json | 19 + .../openidm-reg.internalRole.json | 19 + .../openidm-tasks-manager.internalRole.json | 19 + .../platform-provisioning.internalRole.json | 19 + .../global/mapping/mappingtest.mapping.json | 83 + .../mapping/seantestmapping.mapping.json | 75 + .../managedAssignment_managedUser.sync.json | 90 + .../managedOrganization_managedRole.sync.json | 87 + ...ion_managedSeantestmanagedobject.sync.json | 67 + ...eantestmanagedobject_managedUser.sync.json | 69 + .../idm/global/sync/sync.idm.json | 20 + test/e2e/exports/all/idm/all.config.json | 6068 +++++++++ test/e2e/exports/all/idm/all.idm.json | 6009 +++++++++ .../idm/allEmailTemplates.template.email.json | 77 + .../idm/allInternalRoles.internalRole.json | 52 + .../exports/all/idm/allMappings.mapping.json | 391 + test/e2e/idm-export.e2e.test.js | 21 +- test/e2e/idm-import.e2e.test.js | 18 +- test/e2e/mapping-export.e2e.test.js | 19 +- test/e2e/mapping-import.e2e.test.js | 20 +- .../openidm_3290118515/recording.har | 9175 ++++++++++++++ .../openidm_3290118515/recording.har | 9175 ++++++++++++++ .../openidm_3290118515/recording.har | 9175 ++++++++++++++ .../openidm_3290118515/recording.har | 10265 ++++++++++++++++ .../openidm_3290118515/recording.har | 9821 +++++++++++++++ .../mocks/default_2470140894/recording.har | 8377 ++++++++++++- .../openidm_3290118515/recording.har | 354 + .../openidm_3290118515/recording.har | 354 + .../openidm_3290118515/recording.har | 205 + .../openidm_3290118515/recording.har | 945 ++ .../openidm_3290118515/recording.har | 8878 +++++++++++++ .../openidm_3290118515/recording.har | 8878 +++++++++++++ .../openidm_3290118515/recording.har | 8049 ++++++++++++ .../openidm_3290118515/recording.har | 8789 +++++++++++++ .../openidm_3290118515/recording.har | 493 + .../openidm_3290118515/recording.har | 493 + .../openidm_3290118515/recording.har | 497 + .../openidm_3290118515/recording.har | 793 ++ .../openidm_3290118515/recording.har | 353 + .../openidm_3290118515/recording.har | 353 + .../openidm_3290118515/recording.har | 205 + .../openidm_3290118515/recording.har | 1093 ++ test/e2e/role-export.e2e.test.js | 24 +- test/e2e/role-import.e2e.test.js | 23 +- test/e2e/utils/TestConfig.js | 7 + 420 files changed, 118410 insertions(+), 951 deletions(-) create mode 100644 test/e2e/exports/all-separate/idm/global/emailTemplate/forgottenUsername.emailTemplate.json create mode 100644 test/e2e/exports/all-separate/idm/global/emailTemplate/registration.emailTemplate.json create mode 100644 test/e2e/exports/all-separate/idm/global/emailTemplate/resetPassword.emailTemplate.json create mode 100644 test/e2e/exports/all-separate/idm/global/emailTemplate/updatePassword.emailTemplate.json create mode 100644 test/e2e/exports/all-separate/idm/global/emailTemplate/welcome.emailTemplate.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/access.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/apiVersion.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/audit.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/authentication.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/cluster.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/endpoint/getavailableuserstoassign.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/endpoint/getprocessesforuser.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/endpoint/gettasksview.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/endpoint/mappingDetails.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/endpoint/oauthproxy.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/endpoint/removeRepoPathFromRelationships.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/endpoint/repairMetadata.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/endpoint/updateInternalUserAndInternalRoleEntries.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/endpoint/validateQueryFilter.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/external.rest.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/internal.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/managed.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/metrics.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/notification/passwordUpdate.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/notification/profileUpdate.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/notificationFactory.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/policy.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/privilegeAssignments.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/privileges.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/process/access.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/repo.ds.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/repo.init.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/router.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/schedule/seantest.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/schedule/taskscan_activate.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/schedule/taskscan_expire.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/scheduler.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/script.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/secrets.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/selfservice.kba.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/selfservice.propertymap.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/selfservice.terms.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/servletfilter/cors.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/servletfilter/payload.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/servletfilter/upload.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/ui.context/admin.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/ui.context/api.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/ui.context/enduser.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/ui.context/oauth.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/ui/configuration.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/ui/dashboard.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/ui/profile.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/ui/themeconfig.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/webserver.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/webserver.listener/http.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/webserver.listener/https.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/webserver.listener/mutualAuth.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/internalRole/openidm-admin.internalRole.json create mode 100644 test/e2e/exports/all-separate/idm/global/internalRole/openidm-authorized.internalRole.json create mode 100644 test/e2e/exports/all-separate/idm/global/internalRole/openidm-cert.internalRole.json create mode 100644 test/e2e/exports/all-separate/idm/global/internalRole/openidm-reg.internalRole.json create mode 100644 test/e2e/exports/all-separate/idm/global/internalRole/openidm-tasks-manager.internalRole.json create mode 100644 test/e2e/exports/all-separate/idm/global/internalRole/platform-provisioning.internalRole.json create mode 100644 test/e2e/exports/all-separate/idm/global/mapping/mappingtest.mapping.json create mode 100644 test/e2e/exports/all-separate/idm/global/mapping/seantestmapping.mapping.json create mode 100644 test/e2e/exports/all-separate/idm/global/sync/managedAssignment_managedUser.sync.json create mode 100644 test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedRole.sync.json create mode 100644 test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedSeantestmanagedobject.sync.json create mode 100644 test/e2e/exports/all-separate/idm/global/sync/managedSeantestmanagedobject_managedUser.sync.json create mode 100644 test/e2e/exports/all-separate/idm/global/sync/sync.idm.json create mode 100644 test/e2e/exports/all/idm/all.config.json create mode 100644 test/e2e/exports/all/idm/all.idm.json create mode 100644 test/e2e/exports/all/idm/allEmailTemplates.template.email.json create mode 100644 test/e2e/exports/all/idm/allInternalRoles.internalRole.json create mode 100644 test/e2e/exports/all/idm/allMappings.mapping.json create mode 100644 test/e2e/mocks/config_603940551/export_4211608755/0_AD_m_4209801721/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/config_603940551/export_4211608755/0_aD_f_m_1997968728/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/config_603940551/export_4211608755/0_af_m_950605143/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/config_603940551/import_288002260/0_AD_m_4209801721/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/config_603940551/import_288002260/0_af_m_950605143/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/email_2324124615/template-export_3631781680/0_AD_m_4209801721/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/email_2324124615/template-export_3631781680/0_aD_m_3016648281/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/email_2324124615/template-import_729844655/0_AD_m_4209801721/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/email_2324124615/template-import_729844655/0_af_m_950605143/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/idm_2060434423/export_4211608755/0_AD_m_4209801721/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/idm_2060434423/export_4211608755/0_aD_m_3016648281/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/idm_2060434423/import_288002260/0_AD_m_4209801721/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/idm_2060434423/import_288002260/0_af_m_950605143/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/mapping_637820293/export_4211608755/0_AD_m_4209801721/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/mapping_637820293/export_4211608755/0_aD_m_3016648281/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/mapping_637820293/import_288002260/0_AD_m_4209801721/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/mapping_637820293/import_288002260/0_af_m_950605143/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/role_268382745/export_4211608755/0_AD_m_4209801721/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/role_268382745/export_4211608755/0_aD_m_3016648281/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/role_268382745/import_288002260/0_AD_m_4209801721/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/role_268382745/import_288002260/0_af_m_950605143/openidm_3290118515/recording.har diff --git a/src/cli/admin/admin-add-autoid-static-user-mapping.ts b/src/cli/admin/admin-add-autoid-static-user-mapping.ts index ac3d327d1..ab6160b29 100644 --- a/src/cli/admin/admin-add-autoid-static-user-mapping.ts +++ b/src/cli/admin/admin-add-autoid-static-user-mapping.ts @@ -1,9 +1,13 @@ +import { frodo } from '@rockcarver/frodo-lib'; + import { addAutoIdStaticUserMapping } from '../../ops/AdminOps'; import { getTokens } from '../../ops/AuthenticateOps'; import { printMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; + +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/admin/admin-create-oauth2-client-with-admin-privileges.ts b/src/cli/admin/admin-create-oauth2-client-with-admin-privileges.ts index cbc07b5b9..680122c69 100644 --- a/src/cli/admin/admin-create-oauth2-client-with-admin-privileges.ts +++ b/src/cli/admin/admin-create-oauth2-client-with-admin-privileges.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import Table from 'cli-table3'; import { Option } from 'commander'; import { v4 as uuidv4 } from 'uuid'; @@ -11,7 +11,13 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { printError, printMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY } = + frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/admin/admin-execute-rfc7523-authz-grant-flow.ts b/src/cli/admin/admin-execute-rfc7523-authz-grant-flow.ts index 2b0efbc03..08ef0d82a 100644 --- a/src/cli/admin/admin-execute-rfc7523-authz-grant-flow.ts +++ b/src/cli/admin/admin-execute-rfc7523-authz-grant-flow.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { JwkRsa } from '@rockcarver/frodo-lib/types/ops/JoseOps.js'; import { Option } from 'commander'; import fs from 'fs'; @@ -9,9 +10,23 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { printMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand.js'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { const program = new FrodoCommand( - 'frodo admin execute-rfc7523-authz-grant-flow' + 'frodo admin execute-rfc7523-authz-grant-flow', + [], + deploymentTypes ); program @@ -65,7 +80,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { printMessage(`Executing RFC7523 authorization grant flow...`); let clientId = uuidv4(); if (options.clientId) { diff --git a/src/cli/admin/admin-federation-export.ts b/src/cli/admin/admin-federation-export.ts index e0fdfec8b..e4c1554d9 100644 --- a/src/cli/admin/admin-federation-export.ts +++ b/src/cli/admin/admin-federation-export.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -9,7 +10,8 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/admin/admin-federation-import.ts b/src/cli/admin/admin-federation-import.ts index 2c92677ac..ee701a106 100644 --- a/src/cli/admin/admin-federation-import.ts +++ b/src/cli/admin/admin-federation-import.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -10,7 +11,8 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/admin/admin-federation-list.ts b/src/cli/admin/admin-federation-list.ts index 1b7e7f821..09397e301 100644 --- a/src/cli/admin/admin-federation-list.ts +++ b/src/cli/admin/admin-federation-list.ts @@ -1,9 +1,12 @@ +import { frodo } from '@rockcarver/frodo-lib'; + import { getTokens } from '../../ops/AuthenticateOps'; import { listAdminFederationProviders } from '../../ops/cloud/AdminFederationOps'; import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/admin/admin-generate-rfc7523-authz-grant-artefacts.ts b/src/cli/admin/admin-generate-rfc7523-authz-grant-artefacts.ts index 349c7fc04..729b85663 100644 --- a/src/cli/admin/admin-generate-rfc7523-authz-grant-artefacts.ts +++ b/src/cli/admin/admin-generate-rfc7523-authz-grant-artefacts.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { JwkRsa } from '@rockcarver/frodo-lib/types/ops/JoseOps.js'; import { Option } from 'commander'; import fs from 'fs'; @@ -10,9 +10,22 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { printMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand.js'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand( - 'frodo admin generate-rfc7523-authz-grant-artefacts' + 'frodo admin generate-rfc7523-authz-grant-artefacts', + [], + deploymentTypes ); program @@ -80,7 +93,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { printMessage( `Generating RFC7523 authorization grant artefacts in realm "${state.getRealm()}"...` ); diff --git a/src/cli/admin/admin-get-access-token.ts b/src/cli/admin/admin-get-access-token.ts index d62d87b78..299143089 100644 --- a/src/cli/admin/admin-get-access-token.ts +++ b/src/cli/admin/admin-get-access-token.ts @@ -5,9 +5,24 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { printMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; const { clientCredentialsGrant } = frodo.oauth2oidc.endpoint; export default function setup() { - const program = new FrodoCommand('frodo admin get-access-token'); + const program = new FrodoCommand( + 'frodo admin get-access-token', + [], + deploymentTypes + ); program .description('Get an access token using client credentials grant type.') @@ -37,7 +52,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { printMessage( `Getting an access token using client "${options.clientId}"...` ); diff --git a/src/cli/admin/admin-grant-oauth2-client-admin-privileges.ts b/src/cli/admin/admin-grant-oauth2-client-admin-privileges.ts index 31c9bc65a..097586ba5 100644 --- a/src/cli/admin/admin-grant-oauth2-client-admin-privileges.ts +++ b/src/cli/admin/admin-grant-oauth2-client-admin-privileges.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { grantOAuth2ClientAdminPrivileges } from '../../ops/AdminOps'; @@ -6,7 +6,13 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { printMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY } = + frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/admin/admin-hide-generic-extension-attributes.ts b/src/cli/admin/admin-hide-generic-extension-attributes.ts index e98f25b85..49e5a7029 100644 --- a/src/cli/admin/admin-hide-generic-extension-attributes.ts +++ b/src/cli/admin/admin-hide-generic-extension-attributes.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { hideGenericExtensionAttributes } from '../../ops/AdminOps'; @@ -6,7 +6,8 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { printMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/admin/admin-list-oauth2-clients-with-admin-privileges.ts b/src/cli/admin/admin-list-oauth2-clients-with-admin-privileges.ts index 9d259cc86..5c6d23e0f 100644 --- a/src/cli/admin/admin-list-oauth2-clients-with-admin-privileges.ts +++ b/src/cli/admin/admin-list-oauth2-clients-with-admin-privileges.ts @@ -1,11 +1,17 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { listOAuth2AdminClients } from '../../ops/AdminOps'; import { getTokens } from '../../ops/AuthenticateOps'; import { printMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY } = + frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/admin/admin-list-oauth2-clients-with-custom-privileges.ts b/src/cli/admin/admin-list-oauth2-clients-with-custom-privileges.ts index a0fdb92bb..cf480ab91 100644 --- a/src/cli/admin/admin-list-oauth2-clients-with-custom-privileges.ts +++ b/src/cli/admin/admin-list-oauth2-clients-with-custom-privileges.ts @@ -1,11 +1,17 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { listOAuth2CustomClients } from '../../ops/AdminOps'; import { getTokens } from '../../ops/AuthenticateOps'; import { printMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY } = + frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/admin/admin-list-static-user-mappings.ts b/src/cli/admin/admin-list-static-user-mappings.ts index a061346f9..147a35fb5 100644 --- a/src/cli/admin/admin-list-static-user-mappings.ts +++ b/src/cli/admin/admin-list-static-user-mappings.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { listNonOAuth2AdminStaticUserMappings } from '../../ops/AdminOps'; @@ -5,7 +6,13 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { printMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY } = + frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/admin/admin-remove-static-user-mapping.ts b/src/cli/admin/admin-remove-static-user-mapping.ts index b67da98a4..4b3b11367 100644 --- a/src/cli/admin/admin-remove-static-user-mapping.ts +++ b/src/cli/admin/admin-remove-static-user-mapping.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { removeStaticUserMapping } from '../../ops/AdminOps'; @@ -5,7 +6,13 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { printMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY } = + frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/admin/admin-repair-org-model.ts b/src/cli/admin/admin-repair-org-model.ts index b336823b1..e0aafa619 100644 --- a/src/cli/admin/admin-repair-org-model.ts +++ b/src/cli/admin/admin-repair-org-model.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { repairOrgModel } from '../../ops/AdminOps'; @@ -6,7 +6,13 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { printMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY } = + frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/admin/admin-revoke-oauth2-client-admin-privileges.ts b/src/cli/admin/admin-revoke-oauth2-client-admin-privileges.ts index d9ee95946..88cd95995 100644 --- a/src/cli/admin/admin-revoke-oauth2-client-admin-privileges.ts +++ b/src/cli/admin/admin-revoke-oauth2-client-admin-privileges.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { revokeOAuth2ClientAdminPrivileges } from '../../ops/AdminOps'; @@ -6,7 +6,13 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { printMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY } = + frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/admin/admin-show-generic-extension-attributes.ts b/src/cli/admin/admin-show-generic-extension-attributes.ts index ccaa03321..054266822 100644 --- a/src/cli/admin/admin-show-generic-extension-attributes.ts +++ b/src/cli/admin/admin-show-generic-extension-attributes.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { showGenericExtensionAttributes } from '../../ops/AdminOps'; @@ -6,7 +6,8 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { printMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/admin/admin-train-auto-access-model.ts b/src/cli/admin/admin-train-auto-access-model.ts index 07b538230..28183aa16 100644 --- a/src/cli/admin/admin-train-auto-access-model.ts +++ b/src/cli/admin/admin-train-auto-access-model.ts @@ -7,7 +7,8 @@ import { FrodoCommand } from '../FrodoCommand.js'; const { trainAA } = frodo.admin; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/agent/agent-delete.ts b/src/cli/agent/agent-delete.ts index 546a9ff27..014c79459 100644 --- a/src/cli/agent/agent-delete.ts +++ b/src/cli/agent/agent-delete.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { deleteAgent, deleteAgents } from '../../ops/AgentOps'; @@ -6,8 +6,19 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { - const program = new FrodoCommand('frodo agent delete'); + const program = new FrodoCommand('frodo agent delete', [], deploymentTypes); program .description('Delete agents.') @@ -29,7 +40,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { // delete by id if (options.agentId) { verboseMessage( diff --git a/src/cli/agent/agent-describe.ts b/src/cli/agent/agent-describe.ts index b1fdb7920..e21812b67 100644 --- a/src/cli/agent/agent-describe.ts +++ b/src/cli/agent/agent-describe.ts @@ -4,11 +4,20 @@ import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; import { FrodoCommand } from '../FrodoCommand'; -const { CLASSIC_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; -const globalDeploymentTypes = [CLASSIC_DEPLOYMENT_TYPE_KEY]; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { - const program = new FrodoCommand('frodo agent describe'); + const program = new FrodoCommand('frodo agent describe', [], deploymentTypes); program .description('Describe agents.') @@ -29,7 +38,7 @@ export default function setup() { await getTokens( false, true, - options.global ? globalDeploymentTypes : undefined + options.global ? [CLASSIC_DEPLOYMENT_TYPE_KEY] : deploymentTypes ) ) { // code goes here diff --git a/src/cli/agent/agent-export.ts b/src/cli/agent/agent-export.ts index 05a4a152c..3943a25dc 100644 --- a/src/cli/agent/agent-export.ts +++ b/src/cli/agent/agent-export.ts @@ -10,11 +10,20 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const { CLASSIC_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; -const globalDeploymentTypes = [CLASSIC_DEPLOYMENT_TYPE_KEY]; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { - const program = new FrodoCommand('frodo agent export'); + const program = new FrodoCommand('frodo agent export', [], deploymentTypes); program .description('Export agents.') @@ -59,7 +68,7 @@ export default function setup() { await getTokens( false, true, - options.global ? globalDeploymentTypes : undefined + options.global ? [CLASSIC_DEPLOYMENT_TYPE_KEY] : deploymentTypes ) ) { // export diff --git a/src/cli/agent/agent-gateway-delete.ts b/src/cli/agent/agent-gateway-delete.ts index c5b4d1e61..01c2a1751 100644 --- a/src/cli/agent/agent-gateway-delete.ts +++ b/src/cli/agent/agent-gateway-delete.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { @@ -9,8 +9,24 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo agent gateway delete'); + const program = new FrodoCommand( + 'frodo agent gateway delete', + [], + deploymentTypes + ); program .description('Delete identity gateway agents.') @@ -37,7 +53,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { // delete by id if (options.agentId) { verboseMessage( diff --git a/src/cli/agent/agent-gateway-describe.ts b/src/cli/agent/agent-gateway-describe.ts index 8dba69bdc..983dd5545 100644 --- a/src/cli/agent/agent-gateway-describe.ts +++ b/src/cli/agent/agent-gateway-describe.ts @@ -1,10 +1,27 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo agent gateway describe'); + const program = new FrodoCommand( + 'frodo agent gateway describe', + [], + deploymentTypes + ); program .description('Describe gateway agents.') @@ -20,7 +37,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { // code goes here } else { process.exitCode = 1; diff --git a/src/cli/agent/agent-gateway-export.ts b/src/cli/agent/agent-gateway-export.ts index 848408039..13ac84672 100644 --- a/src/cli/agent/agent-gateway-export.ts +++ b/src/cli/agent/agent-gateway-export.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { @@ -9,8 +10,23 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { - const program = new FrodoCommand('frodo agent gateway export'); + const program = new FrodoCommand( + 'frodo agent gateway export', + [], + deploymentTypes + ); program .description('Export gateway agents.') @@ -50,7 +66,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { // export if (options.agentId) { verboseMessage('Exporting identity gateway agent...'); diff --git a/src/cli/agent/agent-gateway-import.ts b/src/cli/agent/agent-gateway-import.ts index 98e68907b..815471863 100644 --- a/src/cli/agent/agent-gateway-import.ts +++ b/src/cli/agent/agent-gateway-import.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { @@ -10,8 +11,23 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { - const program = new FrodoCommand('frodo agent gateway import'); + const program = new FrodoCommand( + 'frodo agent gateway import', + [], + deploymentTypes + ); program .description('Import gateway agents.') @@ -45,7 +61,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { // import if (options.agentId) { verboseMessage( diff --git a/src/cli/agent/agent-gateway-list.ts b/src/cli/agent/agent-gateway-list.ts index 82e405aa2..1d5386729 100644 --- a/src/cli/agent/agent-gateway-list.ts +++ b/src/cli/agent/agent-gateway-list.ts @@ -1,11 +1,27 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { listIdentityGatewayAgents } from '../../ops/AgentOps.js'; import { getTokens } from '../../ops/AuthenticateOps'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { - const program = new FrodoCommand('frodo agent gateway list'); + const program = new FrodoCommand( + 'frodo agent gateway list', + [], + deploymentTypes + ); program .description('List gateway agents.') @@ -23,7 +39,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { const outcome = await listIdentityGatewayAgents(options.long); if (!outcome) process.exitCode = 1; } else { diff --git a/src/cli/agent/agent-import.ts b/src/cli/agent/agent-import.ts index e3985dbf7..9c07ce93f 100644 --- a/src/cli/agent/agent-import.ts +++ b/src/cli/agent/agent-import.ts @@ -11,11 +11,20 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const { CLASSIC_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; -const globalDeploymentTypes = [CLASSIC_DEPLOYMENT_TYPE_KEY]; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { - const program = new FrodoCommand('frodo agent import'); + const program = new FrodoCommand('frodo agent import', [], deploymentTypes); program .description('Import agents.') @@ -54,7 +63,7 @@ export default function setup() { await getTokens( false, true, - options.global ? globalDeploymentTypes : undefined + options.global ? [CLASSIC_DEPLOYMENT_TYPE_KEY] : deploymentTypes ) ) { // import diff --git a/src/cli/agent/agent-java-delete.ts b/src/cli/agent/agent-java-delete.ts index a6e209adf..db86f3f7f 100644 --- a/src/cli/agent/agent-java-delete.ts +++ b/src/cli/agent/agent-java-delete.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { deleteJavaAgent, deleteJavaAgents } from '../../ops/AgentOps'; @@ -6,8 +6,24 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo agent java delete'); + const program = new FrodoCommand( + 'frodo agent java delete', + [], + deploymentTypes + ); program .description('Delete java agents.') @@ -31,7 +47,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { // delete by id if (options.agentId) { verboseMessage( diff --git a/src/cli/agent/agent-java-describe.ts b/src/cli/agent/agent-java-describe.ts index 4305f2366..cbcdffec0 100644 --- a/src/cli/agent/agent-java-describe.ts +++ b/src/cli/agent/agent-java-describe.ts @@ -1,10 +1,27 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo agent java describe'); + const program = new FrodoCommand( + 'frodo agent java describe', + [], + deploymentTypes + ); program .description('Describe java agents.') @@ -20,7 +37,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { // code goes here } else { process.exitCode = 1; diff --git a/src/cli/agent/agent-java-export.ts b/src/cli/agent/agent-java-export.ts index b6d452092..81fd5c56e 100644 --- a/src/cli/agent/agent-java-export.ts +++ b/src/cli/agent/agent-java-export.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { @@ -9,8 +10,24 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo agent java export'); + const program = new FrodoCommand( + 'frodo agent java export', + [], + deploymentTypes + ); program .description('Export java agents.') @@ -50,7 +67,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { // export if (options.agentId) { verboseMessage('Exporting java agent...'); diff --git a/src/cli/agent/agent-java-import.ts b/src/cli/agent/agent-java-import.ts index 91aa46418..55f0a1f96 100644 --- a/src/cli/agent/agent-java-import.ts +++ b/src/cli/agent/agent-java-import.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { @@ -10,8 +11,24 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo agent java import'); + const program = new FrodoCommand( + 'frodo agent java import', + [], + deploymentTypes + ); program .description('Import java agents.') @@ -45,7 +62,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { // import if (options.agentId) { verboseMessage( diff --git a/src/cli/agent/agent-java-list.ts b/src/cli/agent/agent-java-list.ts index 04ec5d7aa..a96d7cd83 100644 --- a/src/cli/agent/agent-java-list.ts +++ b/src/cli/agent/agent-java-list.ts @@ -1,11 +1,28 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { listJavaAgents } from '../../ops/AgentOps.js'; import { getTokens } from '../../ops/AuthenticateOps'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo agent java list'); + const program = new FrodoCommand( + 'frodo agent java list', + [], + deploymentTypes + ); program .description('List java agents.') @@ -23,7 +40,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { const outcome = await listJavaAgents(options.long); if (!outcome) process.exitCode = 1; } else { diff --git a/src/cli/agent/agent-list.ts b/src/cli/agent/agent-list.ts index a7e2ab5bd..a29f4dd6a 100644 --- a/src/cli/agent/agent-list.ts +++ b/src/cli/agent/agent-list.ts @@ -5,11 +5,20 @@ import { listAgents } from '../../ops/AgentOps.js'; import { getTokens } from '../../ops/AuthenticateOps'; import { FrodoCommand } from '../FrodoCommand'; -const { CLASSIC_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; -const globalDeploymentTypes = [CLASSIC_DEPLOYMENT_TYPE_KEY]; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { - const program = new FrodoCommand('frodo agent list'); + const program = new FrodoCommand('frodo agent list', [], deploymentTypes); program .description('List agents.') @@ -32,7 +41,7 @@ export default function setup() { await getTokens( false, true, - options.global ? globalDeploymentTypes : undefined + options.global ? [CLASSIC_DEPLOYMENT_TYPE_KEY] : deploymentTypes ) ) { const outcome = await listAgents(options.long, options.global); diff --git a/src/cli/agent/agent-web-delete.ts b/src/cli/agent/agent-web-delete.ts index fecf3f8a8..8a1b61dfe 100644 --- a/src/cli/agent/agent-web-delete.ts +++ b/src/cli/agent/agent-web-delete.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { deleteWebAgent, deleteWebAgents } from '../../ops/AgentOps'; @@ -6,8 +6,24 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo agent web delete'); + const program = new FrodoCommand( + 'frodo agent web delete', + [], + deploymentTypes + ); program .description('Delete web agents.') @@ -31,7 +47,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { // delete by id if (options.agentId) { verboseMessage( diff --git a/src/cli/agent/agent-web-describe.ts b/src/cli/agent/agent-web-describe.ts index 0e99eb62a..c65863298 100644 --- a/src/cli/agent/agent-web-describe.ts +++ b/src/cli/agent/agent-web-describe.ts @@ -1,10 +1,27 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo agent web describe'); + const program = new FrodoCommand( + 'frodo agent web describe', + [], + deploymentTypes + ); program .description('Describe web agents.') @@ -20,7 +37,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { // code goes here } else { process.exitCode = 1; diff --git a/src/cli/agent/agent-web-export.ts b/src/cli/agent/agent-web-export.ts index 6c179300d..aff0704ca 100644 --- a/src/cli/agent/agent-web-export.ts +++ b/src/cli/agent/agent-web-export.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { @@ -9,8 +10,24 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo agent web export'); + const program = new FrodoCommand( + 'frodo agent web export', + [], + deploymentTypes + ); program .description('Export web agents.') @@ -50,7 +67,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { // export if (options.agentId) { verboseMessage('Exporting web agent...'); diff --git a/src/cli/agent/agent-web-import.ts b/src/cli/agent/agent-web-import.ts index e24885b63..1eb417fa5 100644 --- a/src/cli/agent/agent-web-import.ts +++ b/src/cli/agent/agent-web-import.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { @@ -10,8 +11,24 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo agent web import'); + const program = new FrodoCommand( + 'frodo agent web import', + [], + deploymentTypes + ); program .description('Import web agents.') @@ -45,7 +62,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { // import if (options.agentId) { verboseMessage( diff --git a/src/cli/agent/agent-web-list.ts b/src/cli/agent/agent-web-list.ts index d23fb2f73..7cd21e870 100644 --- a/src/cli/agent/agent-web-list.ts +++ b/src/cli/agent/agent-web-list.ts @@ -1,11 +1,24 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { listWebAgents } from '../../ops/AgentOps.js'; import { getTokens } from '../../ops/AuthenticateOps'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo agent web list'); + const program = new FrodoCommand('frodo agent web list', [], deploymentTypes); program .description('List web agents.') @@ -23,7 +36,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { const outcome = await listWebAgents(options.long); if (!outcome) process.exitCode = 1; } else { diff --git a/src/cli/app/app-delete.ts b/src/cli/app/app-delete.ts index 2e359a098..88679f60e 100644 --- a/src/cli/app/app-delete.ts +++ b/src/cli/app/app-delete.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import * as s from '../../help/SampleData'; @@ -9,7 +10,13 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY } = + frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand('frodo app delete', [], deploymentTypes); diff --git a/src/cli/app/app-describe.ts b/src/cli/app/app-describe.ts index 06e5d3cfc..2a6f1e75c 100644 --- a/src/cli/app/app-describe.ts +++ b/src/cli/app/app-describe.ts @@ -1,10 +1,17 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import * as s from '../../help/SampleData'; import { getTokens } from '../../ops/AuthenticateOps'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY } = + frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand('frodo app describe', [], deploymentTypes); diff --git a/src/cli/app/app-export.ts b/src/cli/app/app-export.ts index b20757f52..c00468e91 100644 --- a/src/cli/app/app-export.ts +++ b/src/cli/app/app-export.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import * as s from '../../help/SampleData'; @@ -10,7 +11,13 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY } = + frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand('frodo app export', [], deploymentTypes); diff --git a/src/cli/app/app-import.ts b/src/cli/app/app-import.ts index ace0c5202..d459a4ff6 100644 --- a/src/cli/app/app-import.ts +++ b/src/cli/app/app-import.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import * as s from '../../help/SampleData'; @@ -11,7 +12,13 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { printMessage, verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY } = + frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand('frodo app import', [], deploymentTypes); diff --git a/src/cli/app/app-list.ts b/src/cli/app/app-list.ts index 16e8f7d08..b8835b4cc 100644 --- a/src/cli/app/app-list.ts +++ b/src/cli/app/app-list.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import * as s from '../../help/SampleData'; @@ -6,7 +7,13 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY } = + frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand('frodo app list', [], deploymentTypes); diff --git a/src/cli/authn/authn-describe.ts b/src/cli/authn/authn-describe.ts index 4f3c6b970..f446b9000 100644 --- a/src/cli/authn/authn-describe.ts +++ b/src/cli/authn/authn-describe.ts @@ -6,11 +6,20 @@ import { describeAuthenticationSettings } from '../../ops/AuthenticationSettings import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const { CLASSIC_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; -const globalDeploymentTypes = [CLASSIC_DEPLOYMENT_TYPE_KEY]; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { - const program = new FrodoCommand('frodo authn describe'); + const program = new FrodoCommand('frodo authn describe', [], deploymentTypes); program .description('Describe authentication settings.') @@ -33,7 +42,7 @@ export default function setup() { await getTokens( false, true, - options.global ? globalDeploymentTypes : undefined + options.global ? [CLASSIC_DEPLOYMENT_TYPE_KEY] : deploymentTypes ) ) { verboseMessage(`Describing authentication settings...`); diff --git a/src/cli/authn/authn-export.ts b/src/cli/authn/authn-export.ts index 3d5da2643..5f74c33ac 100644 --- a/src/cli/authn/authn-export.ts +++ b/src/cli/authn/authn-export.ts @@ -6,11 +6,20 @@ import { exportAuthenticationSettingsToFile } from '../../ops/AuthenticationSett import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const { CLASSIC_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; -const globalDeploymentTypes = [CLASSIC_DEPLOYMENT_TYPE_KEY]; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { - const program = new FrodoCommand('frodo authn export'); + const program = new FrodoCommand('frodo authn export', [], deploymentTypes); program .description('Export authentication settings.') @@ -39,7 +48,7 @@ export default function setup() { await getTokens( false, true, - options.global ? globalDeploymentTypes : undefined + options.global ? [CLASSIC_DEPLOYMENT_TYPE_KEY] : deploymentTypes ) ) { verboseMessage('Exporting authentication settings to file...'); diff --git a/src/cli/authn/authn-import.ts b/src/cli/authn/authn-import.ts index 2461ead3a..55380433b 100644 --- a/src/cli/authn/authn-import.ts +++ b/src/cli/authn/authn-import.ts @@ -6,11 +6,20 @@ import { importAuthenticationSettingsFromFile } from '../../ops/AuthenticationSe import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const { CLASSIC_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; -const globalDeploymentTypes = [CLASSIC_DEPLOYMENT_TYPE_KEY]; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { - const program = new FrodoCommand('frodo authn import'); + const program = new FrodoCommand('frodo authn import', [], deploymentTypes); program .description('Import authentication settings.') @@ -33,7 +42,7 @@ export default function setup() { await getTokens( false, true, - options.global ? globalDeploymentTypes : undefined + options.global ? [CLASSIC_DEPLOYMENT_TYPE_KEY] : deploymentTypes ) ) { verboseMessage('Importing authentication settings from file...'); diff --git a/src/cli/authz/authz-policy-delete.ts b/src/cli/authz/authz-policy-delete.ts index 7e29dd2ce..6c0d18a9d 100644 --- a/src/cli/authz/authz-policy-delete.ts +++ b/src/cli/authz/authz-policy-delete.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -9,8 +10,24 @@ import { import { printMessage, verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo authz policy delete'); + const program = new FrodoCommand( + 'frodo authz policy delete', + [], + deploymentTypes + ); program .description('Delete authorization policies.') @@ -41,13 +58,20 @@ export default function setup() { command ); // delete by id - if (options.policyId && (await getTokens())) { + if ( + options.policyId && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Deleting authorization policy...'); const outcome = await deletePolicyById(options.policyId); if (!outcome) process.exitCode = 1; } // --all -a by policy set - else if (options.setId && options.all && (await getTokens())) { + else if ( + options.setId && + options.all && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( `Deleting all authorization policies in policy set ${options.setId}...` ); @@ -55,7 +79,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // --all -a - else if (options.all && (await getTokens())) { + else if ( + options.all && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Deleting all authorization policies...'); const outcome = await deletePolicies(); if (!outcome) process.exitCode = 1; diff --git a/src/cli/authz/authz-policy-describe.ts b/src/cli/authz/authz-policy-describe.ts index 904b5eb61..8a3824aa2 100644 --- a/src/cli/authz/authz-policy-describe.ts +++ b/src/cli/authz/authz-policy-describe.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,8 +6,24 @@ import { describePolicy } from '../../ops/PolicyOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo authz policy describe'); + const program = new FrodoCommand( + 'frodo authz policy describe', + [], + deploymentTypes + ); program .description('Describe authorization policies.') @@ -28,7 +45,10 @@ export default function setup() { options, command ); - if (options.policyId && (await getTokens())) { + if ( + options.policyId && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( `Describing authorization policy ${options.policyId}...` ); diff --git a/src/cli/authz/authz-policy-export.ts b/src/cli/authz/authz-policy-export.ts index 948a7f20c..4cc808cd0 100644 --- a/src/cli/authz/authz-policy-export.ts +++ b/src/cli/authz/authz-policy-export.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -11,8 +12,24 @@ import { import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo authz policy export'); + const program = new FrodoCommand( + 'frodo authz policy export', + [], + deploymentTypes + ); program .description('Export authorization policies.') @@ -68,7 +85,10 @@ export default function setup() { command ); // export - if (options.policyId && (await getTokens())) { + if ( + options.policyId && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting authorization policy to file...'); const outcome = await exportPolicyToFile( options.policyId, @@ -83,7 +103,11 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // -a/--all by policy set - else if (options.setId && options.all && (await getTokens())) { + else if ( + options.setId && + options.all && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( `Exporting all authorization policies in policy set ${options.setId} to file...` ); @@ -100,7 +124,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // -a/--all - else if (options.all && (await getTokens())) { + else if ( + options.all && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting all authorization policies to file...'); const outcome = await exportPoliciesToFile( options.file, @@ -114,7 +141,11 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // -A/--all-separate by policy set - else if (options.setId && options.allSeparate && (await getTokens())) { + else if ( + options.setId && + options.allSeparate && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( `Exporting all authorization policies in policy set ${options.setId} to separate files...` ); @@ -130,7 +161,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // -A/--all-separate - else if (options.allSeparate && (await getTokens())) { + else if ( + options.allSeparate && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( 'Exporting all authorization policies to separate files...' ); diff --git a/src/cli/authz/authz-policy-import.ts b/src/cli/authz/authz-policy-import.ts index f1464a33e..797377a25 100644 --- a/src/cli/authz/authz-policy-import.ts +++ b/src/cli/authz/authz-policy-import.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -10,8 +11,24 @@ import { import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo authz policy import'); + const program = new FrodoCommand( + 'frodo authz policy import', + [], + deploymentTypes + ); program .description('Import authorization policies.') @@ -61,7 +78,10 @@ export default function setup() { command ); // import - if (options.policyId && (await getTokens())) { + if ( + options.policyId && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Importing authorization policy from file...'); const outcome = await importPolicyFromFile( options.policyId, @@ -75,7 +95,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // -a/--all - else if (options.all && (await getTokens())) { + else if ( + options.all && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Importing all authorization policies from file...'); const outcome = await importPoliciesFromFile(options.file, { deps: options.deps, @@ -85,7 +108,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // -A/--all-separate - else if (options.allSeparate && (await getTokens())) { + else if ( + options.allSeparate && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( 'Importing all authorization policies from separate files...' ); @@ -97,7 +123,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // import first policy set from file - else if (options.file && (await getTokens())) { + else if ( + options.file && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( `Importing first authorization policy from file "${options.file}"...` ); diff --git a/src/cli/authz/authz-policy-list.ts b/src/cli/authz/authz-policy-list.ts index 3ab7b6cde..cff3351d0 100644 --- a/src/cli/authz/authz-policy-list.ts +++ b/src/cli/authz/authz-policy-list.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,8 +6,24 @@ import { listPolicies, listPoliciesByPolicySet } from '../../ops/PolicyOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo authz policy list'); + const program = new FrodoCommand( + 'frodo authz policy list', + [], + deploymentTypes + ); program .description('List authorization policies.') @@ -26,7 +43,7 @@ export default function setup() { command ); // by policy set - if (options.setId && (await getTokens())) { + if (options.setId && (await getTokens(false, true, deploymentTypes))) { verboseMessage( `Listing authorization policies in policy set ${options.setId}...` ); @@ -37,7 +54,7 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // all policies - else if (await getTokens()) { + else if (await getTokens(false, true, deploymentTypes)) { verboseMessage(`Listing authorization policies...`); const outcome = await listPolicies(options.long); if (!outcome) process.exitCode = 1; diff --git a/src/cli/authz/authz-set-delete.ts b/src/cli/authz/authz-set-delete.ts index 2aa2112ed..5af9356f5 100644 --- a/src/cli/authz/authz-set-delete.ts +++ b/src/cli/authz/authz-set-delete.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,8 +6,24 @@ import { deletePolicySetById, deletePolicySets } from '../../ops/PolicySetOps'; import { printMessage, verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo authz set delete'); + const program = new FrodoCommand( + 'frodo authz set delete', + [], + deploymentTypes + ); program .description('Delete authorization policy sets.') @@ -29,13 +46,16 @@ export default function setup() { command ); // delete by id - if (options.setId && (await getTokens())) { + if (options.setId && (await getTokens(false, true, deploymentTypes))) { verboseMessage('Deleting authorization policy set...'); const outcome = await deletePolicySetById(options.setId); if (!outcome) process.exitCode = 1; } // --all -a - else if (options.all && (await getTokens())) { + else if ( + options.all && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Deleting all authorization policy sets...'); const outcome = await deletePolicySets(); if (!outcome) process.exitCode = 1; diff --git a/src/cli/authz/authz-set-describe.ts b/src/cli/authz/authz-set-describe.ts index 611ec0711..50a0f2bd4 100644 --- a/src/cli/authz/authz-set-describe.ts +++ b/src/cli/authz/authz-set-describe.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,8 +6,24 @@ import { describePolicySet } from '../../ops/PolicySetOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo authz set describe'); + const program = new FrodoCommand( + 'frodo authz set describe', + [], + deploymentTypes + ); program .description('Describe authorization policy sets.') @@ -28,7 +45,7 @@ export default function setup() { options, command ); - if (options.setId && (await getTokens())) { + if (options.setId && (await getTokens(false, true, deploymentTypes))) { verboseMessage( `Describing authorization policy set ${options.setId}...` ); diff --git a/src/cli/authz/authz-set-export.ts b/src/cli/authz/authz-set-export.ts index 969a545e0..17489d21c 100644 --- a/src/cli/authz/authz-set-export.ts +++ b/src/cli/authz/authz-set-export.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -9,8 +10,24 @@ import { import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo authz set export'); + const program = new FrodoCommand( + 'frodo authz set export', + [], + deploymentTypes + ); program .description('Export authorization policy sets.') @@ -60,7 +77,7 @@ export default function setup() { command ); // export - if (options.setId && (await getTokens())) { + if (options.setId && (await getTokens(false, true, deploymentTypes))) { verboseMessage('Exporting authorization policy set to file...'); const outcome = await exportPolicySetToFile( options.setId, @@ -75,7 +92,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // -a/--all - else if (options.all && (await getTokens())) { + else if ( + options.all && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting all authorization policy sets to file...'); const outcome = await exportPolicySetsToFile( options.file, @@ -89,7 +109,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // -A/--all-separate - else if (options.allSeparate && (await getTokens())) { + else if ( + options.allSeparate && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( 'Exporting all authorization policy sets to separate files...' ); diff --git a/src/cli/authz/authz-set-import.ts b/src/cli/authz/authz-set-import.ts index 1c1d7ed0f..f24a29c3b 100644 --- a/src/cli/authz/authz-set-import.ts +++ b/src/cli/authz/authz-set-import.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -10,8 +11,24 @@ import { import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo authz set import'); + const program = new FrodoCommand( + 'frodo authz set import', + [], + deploymentTypes + ); program .description('Import authorization policy sets.') @@ -55,7 +72,7 @@ export default function setup() { command ); // import - if (options.setId && (await getTokens())) { + if (options.setId && (await getTokens(false, true, deploymentTypes))) { verboseMessage('Importing authorization policy set from file...'); const outcome = await importPolicySetFromFile( options.setId, @@ -68,7 +85,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // -a/--all - else if (options.all && (await getTokens())) { + else if ( + options.all && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( 'Importing all authorization policy sets from file...' ); @@ -79,7 +99,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // -A/--all-separate - else if (options.allSeparate && (await getTokens())) { + else if ( + options.allSeparate && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( 'Importing all authorization policy sets from separate files...' ); @@ -90,7 +113,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // import first policy set from file - else if (options.file && (await getTokens())) { + else if ( + options.file && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( `Importing first authorization policy set from file "${options.file}"...` ); diff --git a/src/cli/authz/authz-set-list.ts b/src/cli/authz/authz-set-list.ts index 891207b46..be24da6d8 100644 --- a/src/cli/authz/authz-set-list.ts +++ b/src/cli/authz/authz-set-list.ts @@ -1,10 +1,24 @@ +import { frodo } from '@rockcarver/frodo-lib'; + import { getTokens } from '../../ops/AuthenticateOps'; import { listPolicySets } from '../../ops/PolicySetOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo authz set list'); + const program = new FrodoCommand('frodo authz set list', [], deploymentTypes); program.description('List authorization policy sets.').action( // implement command logic inside action handler @@ -17,7 +31,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { verboseMessage('Listing authorization policy sets...'); const outcome = await listPolicySets(); if (!outcome) process.exitCode = 1; diff --git a/src/cli/authz/authz-type-delete.ts b/src/cli/authz/authz-type-delete.ts index bb6bcc506..6143b10d0 100644 --- a/src/cli/authz/authz-type-delete.ts +++ b/src/cli/authz/authz-type-delete.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -9,8 +10,24 @@ import { import { printMessage, verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo authz type delete'); + const program = new FrodoCommand( + 'frodo authz type delete', + [], + deploymentTypes + ); program .description('Delete authorization resource types.') @@ -44,19 +61,25 @@ export default function setup() { command ); // delete by uuid - if (options.typeId && (await getTokens())) { + if (options.typeId && (await getTokens(false, true, deploymentTypes))) { verboseMessage('Deleting authorization resource type...'); const outcome = await deleteResourceTypeById(options.typeId); if (!outcome) process.exitCode = 1; } // delete by name - else if (options.typeName && (await getTokens())) { + else if ( + options.typeName && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Deleting authorization resource type...'); const outcome = await deleteResourceTypeUsingName(options.typeName); if (!outcome) process.exitCode = 1; } // --all -a - else if (options.all && (await getTokens())) { + else if ( + options.all && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Deleting all authorization resource types...'); const outcome = await deleteResourceTypes(); if (!outcome) process.exitCode = 1; diff --git a/src/cli/authz/authz-type-describe.ts b/src/cli/authz/authz-type-describe.ts index a9414a1f0..7b8c8a79a 100644 --- a/src/cli/authz/authz-type-describe.ts +++ b/src/cli/authz/authz-type-describe.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -8,8 +9,24 @@ import { import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo authz type describe'); + const program = new FrodoCommand( + 'frodo authz type describe', + [], + deploymentTypes + ); program .description('Describe authorization resource types.') @@ -27,14 +44,17 @@ export default function setup() { options, command ); - if (options.typeId && (await getTokens())) { + if (options.typeId && (await getTokens(false, true, deploymentTypes))) { verboseMessage(`Describing authorization resource type by uuid...`); const outcome = await describeResourceType( options.typeId, options.json ); if (!outcome) process.exitCode = 1; - } else if (options.typeName && (await getTokens())) { + } else if ( + options.typeName && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage(`Describing authorization resource type by name...`); const outcome = await describeResourceTypeByName( options.typeName, diff --git a/src/cli/authz/authz-type-export.ts b/src/cli/authz/authz-type-export.ts index 1d3842e8f..cd35abfe0 100644 --- a/src/cli/authz/authz-type-export.ts +++ b/src/cli/authz/authz-type-export.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -10,8 +11,24 @@ import { import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo authz type export'); + const program = new FrodoCommand( + 'frodo authz type export', + [], + deploymentTypes + ); program .description('Export authorization resource types.') @@ -58,7 +75,7 @@ export default function setup() { command ); // export by uuid - if (options.typeId && (await getTokens())) { + if (options.typeId && (await getTokens(false, true, deploymentTypes))) { verboseMessage('Exporting authorization resource type to file...'); const outcome = await exportResourceTypeToFile( options.typeId, @@ -68,7 +85,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // export by name - else if (options.typeName && (await getTokens())) { + else if ( + options.typeName && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting authorization resource type to file...'); const outcome = await exportResourceTypeByNameToFile( options.typeName, @@ -78,7 +98,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // -a/--all - else if (options.all && (await getTokens())) { + else if ( + options.all && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( 'Exporting all authorization resource types to file...' ); @@ -89,7 +112,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // -A/--all-separate - else if (options.allSeparate && (await getTokens())) { + else if ( + options.allSeparate && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( 'Exporting all authorization resource types to separate files...' ); diff --git a/src/cli/authz/authz-type-import.ts b/src/cli/authz/authz-type-import.ts index 0d02565c7..16675c636 100644 --- a/src/cli/authz/authz-type-import.ts +++ b/src/cli/authz/authz-type-import.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -11,8 +12,24 @@ import { import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo authz type import'); + const program = new FrodoCommand( + 'frodo authz type import', + [], + deploymentTypes + ); program .description('Import authorization resource types.') @@ -53,7 +70,7 @@ export default function setup() { command ); // import by uuid - if (options.typeId && (await getTokens())) { + if (options.typeId && (await getTokens(false, true, deploymentTypes))) { verboseMessage( 'Importing authorization resource type by uuid from file...' ); @@ -64,7 +81,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // import by name - else if (options.typeName && (await getTokens())) { + else if ( + options.typeName && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( 'Importing authorization resource type by name from file...' ); @@ -75,7 +95,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // -a/--all - else if (options.all && (await getTokens())) { + else if ( + options.all && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( 'Importing all authorization resource types from file...' ); @@ -83,7 +106,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // -A/--all-separate - else if (options.allSeparate && (await getTokens())) { + else if ( + options.allSeparate && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( 'Importing all authorization resource types from separate files...' ); @@ -91,7 +117,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // import first - else if (options.file && (await getTokens())) { + else if ( + options.file && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( `Importing first authorization resource type from file "${options.file}"...` ); diff --git a/src/cli/authz/authz-type-list.ts b/src/cli/authz/authz-type-list.ts index 6d065af36..45498dcda 100644 --- a/src/cli/authz/authz-type-list.ts +++ b/src/cli/authz/authz-type-list.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,8 +6,24 @@ import { listResourceTypes } from '../../ops/ResourceTypeOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo authz type list'); + const program = new FrodoCommand( + 'frodo authz type list', + [], + deploymentTypes + ); program .description('List authorization resource types.') @@ -24,7 +41,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { verboseMessage('Listing resource types...'); const outcome = await listResourceTypes(options.long); if (!outcome) process.exitCode = 1; diff --git a/src/cli/config/config-delete.ts b/src/cli/config/config-delete.ts index 2664548a9..fe8453c6b 100644 --- a/src/cli/config/config-delete.ts +++ b/src/cli/config/config-delete.ts @@ -1,10 +1,25 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo config delete'); + const program = new FrodoCommand('frodo config delete', [], deploymentTypes); program .description('Delete full cloud configuration.') @@ -37,7 +52,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { // code goes here } else { process.exitCode = 1; diff --git a/src/cli/config/config-describe.ts b/src/cli/config/config-describe.ts index c018e98db..9dbc0f2e8 100644 --- a/src/cli/config/config-describe.ts +++ b/src/cli/config/config-describe.ts @@ -1,10 +1,29 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo config describe'); + const program = new FrodoCommand( + 'frodo config describe', + [], + deploymentTypes + ); program .description('Describe full cloud configuration.') @@ -20,7 +39,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { // code goes here } else { process.exitCode = 1; diff --git a/src/cli/config/config-export.ts b/src/cli/config/config-export.ts index 4b9056ecf..f99a88f68 100644 --- a/src/cli/config/config-export.ts +++ b/src/cli/config/config-export.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import * as s from '../../help/SampleData'; @@ -10,8 +10,22 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo config export'); + const program = new FrodoCommand('frodo config export', [], deploymentTypes); program .description( @@ -148,7 +162,7 @@ export default function setup() { command ); // --all -a - if (options.all && (await getTokens())) { + if (options.all && (await getTokens(false, true, deploymentTypes))) { verboseMessage('Exporting everything to a single file...'); const outcome = await exportEverythingToFile( options.file, @@ -177,7 +191,10 @@ export default function setup() { process.exitCode = 1; } // --all-separate -A - else if (options.allSeparate && (await getTokens())) { + else if ( + options.allSeparate && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting everything to separate files...'); const outcome = await exportEverythingToFiles( options.extract, diff --git a/src/cli/config/config-import.ts b/src/cli/config/config-import.ts index a466a39ee..ac1c589f4 100644 --- a/src/cli/config/config-import.ts +++ b/src/cli/config/config-import.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import * as s from '../../help/SampleData'; @@ -11,8 +11,22 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo config import'); + const program = new FrodoCommand('frodo config import', [], deploymentTypes); program .description('Import full cloud configuration.') @@ -113,7 +127,10 @@ export default function setup() { process.exitCode = 1; } // --all -a - else if (options.all && (await getTokens())) { + else if ( + options.all && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting everything from a single file...'); const outcome = await importEverythingFromFile(options.file, { reUuidJourneys: options.reUuidJourneys, @@ -135,7 +152,10 @@ export default function setup() { process.exitCode = 1; } // --all-separate -A - else if (options.allSeparate && (await getTokens())) { + else if ( + options.allSeparate && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Importing everything from separate files...'); const outcome = await importEverythingFromFiles({ reUuidJourneys: options.reUuidJourneys, @@ -148,7 +168,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // Import entity from file - else if (options.file && (await getTokens())) { + else if ( + options.file && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Importing config entity from file...'); const outcome = await importEntityfromFile( options.file, diff --git a/src/cli/config/config-list.ts b/src/cli/config/config-list.ts index 789cadb57..00d08ff00 100644 --- a/src/cli/config/config-list.ts +++ b/src/cli/config/config-list.ts @@ -1,10 +1,25 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo config list'); + const program = new FrodoCommand('frodo config list', [], deploymentTypes); program .description('List full cloud configuration.') @@ -22,7 +37,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { // code goes here } else { process.exitCode = 1; diff --git a/src/cli/email/email-template-export.ts b/src/cli/email/email-template-export.ts index 06cc375dc..82289b099 100644 --- a/src/cli/email/email-template-export.ts +++ b/src/cli/email/email-template-export.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -10,7 +10,17 @@ import { import { printMessage, verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/email/email-template-import.ts b/src/cli/email/email-template-import.ts index 5c5eebcff..4f85249a9 100644 --- a/src/cli/email/email-template-import.ts +++ b/src/cli/email/email-template-import.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -10,7 +11,17 @@ import { import { printMessage, verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/email/email-template-list.ts b/src/cli/email/email-template-list.ts index fa60fbba7..091161a7b 100644 --- a/src/cli/email/email-template-list.ts +++ b/src/cli/email/email-template-list.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,7 +6,17 @@ import { listEmailTemplates } from '../../ops/EmailTemplateOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/esv/esv-apply.ts b/src/cli/esv/esv-apply.ts index 074c41edb..6bc16cc1e 100644 --- a/src/cli/esv/esv-apply.ts +++ b/src/cli/esv/esv-apply.ts @@ -9,7 +9,8 @@ import { FrodoCommand } from '../FrodoCommand'; const { checkForUpdates, applyUpdates } = frodo.cloud.startup; const { resolveUserName } = frodo.idm.managed; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/esv/esv-secret-create.ts b/src/cli/esv/esv-secret-create.ts index 9fd80bc7b..44fd6ee12 100644 --- a/src/cli/esv/esv-secret-create.ts +++ b/src/cli/esv/esv-secret-create.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,7 +6,8 @@ import { createSecret, createSecretFromFile } from '../../ops/cloud/SecretsOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/esv/esv-secret-delete.ts b/src/cli/esv/esv-secret-delete.ts index ff91853c1..7d6375642 100644 --- a/src/cli/esv/esv-secret-delete.ts +++ b/src/cli/esv/esv-secret-delete.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,7 +6,8 @@ import { deleteSecret, deleteSecrets } from '../../ops/cloud/SecretsOps'; import { printMessage, verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/esv/esv-secret-describe.ts b/src/cli/esv/esv-secret-describe.ts index 70c948ed0..3f56aab66 100644 --- a/src/cli/esv/esv-secret-describe.ts +++ b/src/cli/esv/esv-secret-describe.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,7 +6,8 @@ import { describeSecret } from '../../ops/cloud/SecretsOps'; import { printMessage, verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/esv/esv-secret-export.ts b/src/cli/esv/esv-secret-export.ts index 2fe8f6143..f1e37f84f 100644 --- a/src/cli/esv/esv-secret-export.ts +++ b/src/cli/esv/esv-secret-export.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import * as s from '../../help/SampleData'; @@ -11,7 +11,8 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/esv/esv-secret-import.ts b/src/cli/esv/esv-secret-import.ts index c5073bf86..b87e521f0 100644 --- a/src/cli/esv/esv-secret-import.ts +++ b/src/cli/esv/esv-secret-import.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import * as s from '../../help/SampleData'; @@ -10,7 +11,8 @@ import { import { printMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/esv/esv-secret-list.ts b/src/cli/esv/esv-secret-list.ts index dca5dbd5f..394540601 100644 --- a/src/cli/esv/esv-secret-list.ts +++ b/src/cli/esv/esv-secret-list.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,7 +6,8 @@ import { listSecrets } from '../../ops/cloud/SecretsOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/esv/esv-secret-set.ts b/src/cli/esv/esv-secret-set.ts index 612fb88f9..f1f65a4a5 100644 --- a/src/cli/esv/esv-secret-set.ts +++ b/src/cli/esv/esv-secret-set.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,7 +6,8 @@ import { setSecretDescription } from '../../ops/cloud/SecretsOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/esv/esv-secret-version-activate.ts b/src/cli/esv/esv-secret-version-activate.ts index e11a8e989..a5f288b8f 100644 --- a/src/cli/esv/esv-secret-version-activate.ts +++ b/src/cli/esv/esv-secret-version-activate.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,7 +6,8 @@ import { activateVersionOfSecret } from '../../ops/cloud/SecretsOps'; import { printMessage, verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/esv/esv-secret-version-create.ts b/src/cli/esv/esv-secret-version-create.ts index 98fe199ba..3fe759e7d 100644 --- a/src/cli/esv/esv-secret-version-create.ts +++ b/src/cli/esv/esv-secret-version-create.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -8,7 +9,8 @@ import { import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/esv/esv-secret-version-deactivate.ts b/src/cli/esv/esv-secret-version-deactivate.ts index 743ddec0a..0d5dc8e71 100644 --- a/src/cli/esv/esv-secret-version-deactivate.ts +++ b/src/cli/esv/esv-secret-version-deactivate.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,7 +6,8 @@ import { deactivateVersionOfSecret } from '../../ops/cloud/SecretsOps'; import { printMessage, verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/esv/esv-secret-version-delete.ts b/src/cli/esv/esv-secret-version-delete.ts index bcc6ad943..5a39fe878 100644 --- a/src/cli/esv/esv-secret-version-delete.ts +++ b/src/cli/esv/esv-secret-version-delete.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,7 +6,8 @@ import { deleteVersionOfSecret } from '../../ops/cloud/SecretsOps'; import { printMessage, verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/esv/esv-secret-version-list.ts b/src/cli/esv/esv-secret-version-list.ts index cde3659a2..024184139 100644 --- a/src/cli/esv/esv-secret-version-list.ts +++ b/src/cli/esv/esv-secret-version-list.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,7 +6,8 @@ import { listSecretVersions } from '../../ops/cloud/SecretsOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/esv/esv-variable-create.ts b/src/cli/esv/esv-variable-create.ts index f3b1fe838..2bc8e3fe7 100644 --- a/src/cli/esv/esv-variable-create.ts +++ b/src/cli/esv/esv-variable-create.ts @@ -1,10 +1,13 @@ +import { frodo } from '@rockcarver/frodo-lib'; + import * as s from '../../help/SampleData'; import { getTokens } from '../../ops/AuthenticateOps'; import { createVariable } from '../../ops/cloud/VariablesOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/esv/esv-variable-delete.ts b/src/cli/esv/esv-variable-delete.ts index c586f7487..74fdc3e53 100644 --- a/src/cli/esv/esv-variable-delete.ts +++ b/src/cli/esv/esv-variable-delete.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -8,7 +9,8 @@ import { import { printMessage, verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/esv/esv-variable-describe.ts b/src/cli/esv/esv-variable-describe.ts index b05da3477..c04cc04ed 100644 --- a/src/cli/esv/esv-variable-describe.ts +++ b/src/cli/esv/esv-variable-describe.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,7 +6,8 @@ import { describeVariable } from '../../ops/cloud/VariablesOps'; import { printMessage, verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/esv/esv-variable-export.ts b/src/cli/esv/esv-variable-export.ts index 4acf1e7c1..3a5a01900 100644 --- a/src/cli/esv/esv-variable-export.ts +++ b/src/cli/esv/esv-variable-export.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -10,7 +10,8 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/esv/esv-variable-import.ts b/src/cli/esv/esv-variable-import.ts index e2f27af0f..1b138db9e 100644 --- a/src/cli/esv/esv-variable-import.ts +++ b/src/cli/esv/esv-variable-import.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -9,7 +10,8 @@ import { import { printMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/esv/esv-variable-list.ts b/src/cli/esv/esv-variable-list.ts index 78756fad0..90850312c 100644 --- a/src/cli/esv/esv-variable-list.ts +++ b/src/cli/esv/esv-variable-list.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,7 +6,8 @@ import { listVariables } from '../../ops/cloud/VariablesOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/esv/esv-variable-set.ts b/src/cli/esv/esv-variable-set.ts index 4372a9a6a..54e57f602 100644 --- a/src/cli/esv/esv-variable-set.ts +++ b/src/cli/esv/esv-variable-set.ts @@ -1,3 +1,5 @@ +import { frodo } from '@rockcarver/frodo-lib'; + import { getTokens } from '../../ops/AuthenticateOps'; import { setVariableDescription, @@ -6,7 +8,8 @@ import { import { printMessage, verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/idm/idm-count.ts b/src/cli/idm/idm-count.ts index e541c44a9..67becab9b 100644 --- a/src/cli/idm/idm-count.ts +++ b/src/cli/idm/idm-count.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,8 +6,17 @@ import { countManagedObjects } from '../../ops/IdmOps'; import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand('frodo idm count', [], deploymentTypes); diff --git a/src/cli/idm/idm-delete.ts b/src/cli/idm/idm-delete.ts index 4f5c779fa..958a2abf6 100644 --- a/src/cli/idm/idm-delete.ts +++ b/src/cli/idm/idm-delete.ts @@ -1,11 +1,24 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; import { deleteConfigEntityById } from '../../ops/IdmOps'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo idm delete'); + const program = new FrodoCommand('frodo idm delete', [], deploymentTypes); interface ServiceDeleteOptions { id?: string; @@ -41,7 +54,7 @@ export default function setup() { // const globalConfig = options.global ?? false; - if (options.id && (await getTokens())) { + if (options.id && (await getTokens(false, true, deploymentTypes))) { const outcome = await deleteConfigEntityById(options.id); if (!outcome) process.exitCode = 1; } else { diff --git a/src/cli/idm/idm-export.ts b/src/cli/idm/idm-export.ts index 1ed3ced81..fabe52834 100644 --- a/src/cli/idm/idm-export.ts +++ b/src/cli/idm/idm-export.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -11,7 +11,17 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand('frodo idm export', [], deploymentTypes); diff --git a/src/cli/idm/idm-import.ts b/src/cli/idm/idm-import.ts index a191828aa..1d3c9f94f 100644 --- a/src/cli/idm/idm-import.ts +++ b/src/cli/idm/idm-import.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -11,7 +11,17 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand('frodo idm import', [], deploymentTypes); diff --git a/src/cli/idm/idm-list.ts b/src/cli/idm/idm-list.ts index acad9e4bf..b23428526 100644 --- a/src/cli/idm/idm-list.ts +++ b/src/cli/idm/idm-list.ts @@ -1,3 +1,5 @@ +import { frodo } from '@rockcarver/frodo-lib'; + import { getTokens } from '../../ops/AuthenticateOps'; import { listAllConfigEntities, @@ -6,7 +8,17 @@ import { import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand('frodo idm list', [], deploymentTypes); diff --git a/src/cli/idm/idm-schema-object-export.ts b/src/cli/idm/idm-schema-object-export.ts index e766b1156..2368b02cf 100644 --- a/src/cli/idm/idm-schema-object-export.ts +++ b/src/cli/idm/idm-schema-object-export.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -10,7 +10,17 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/idm/idm-schema-object-import.ts b/src/cli/idm/idm-schema-object-import.ts index d8f66ea4c..c412af003 100644 --- a/src/cli/idm/idm-schema-object-import.ts +++ b/src/cli/idm/idm-schema-object-import.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -10,7 +10,17 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/idp/idp-delete.ts b/src/cli/idp/idp-delete.ts index 9a6565801..b9063b695 100644 --- a/src/cli/idp/idp-delete.ts +++ b/src/cli/idp/idp-delete.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -6,8 +6,20 @@ import { deleteSocialIdentityProviderById } from '../../ops/IdpOps'; import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo idp delete'); + const program = new FrodoCommand('frodo idp delete', [], deploymentTypes); program .description('Delete (social) identity providers.') @@ -23,7 +35,7 @@ export default function setup() { options, command ); - if ((await getTokens()) && options.idpId) { + if ((await getTokens(false, true, deploymentTypes)) && options.idpId) { verboseMessage( `Deleting idp ${options.idpId} in realm "${state.getRealm()}"...` ); diff --git a/src/cli/idp/idp-export.ts b/src/cli/idp/idp-export.ts index 50ded2e85..19e3c386a 100644 --- a/src/cli/idp/idp-export.ts +++ b/src/cli/idp/idp-export.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -10,8 +10,19 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { - const program = new FrodoCommand('frodo idp export'); + const program = new FrodoCommand('frodo idp export', [], deploymentTypes); program .description('Export (social) identity providers.') @@ -57,7 +68,7 @@ export default function setup() { command ); // export by id/name - if (options.idpId && (await getTokens())) { + if (options.idpId && (await getTokens(false, true, deploymentTypes))) { verboseMessage( `Exporting provider "${ options.idpId @@ -71,7 +82,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // --all -a - else if (options.all && (await getTokens())) { + else if ( + options.all && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting all providers to a single file...'); const outcome = await exportSocialIdentityProvidersToFile( options.file, @@ -80,7 +94,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // --all-separate -A - else if (options.allSeparate && (await getTokens())) { + else if ( + options.allSeparate && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting all providers to separate files...'); const outcome = await exportSocialIdentityProvidersToFiles( options.metadata diff --git a/src/cli/idp/idp-import.ts b/src/cli/idp/idp-import.ts index 8fe05cb10..2bb7cd2b7 100644 --- a/src/cli/idp/idp-import.ts +++ b/src/cli/idp/idp-import.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -11,8 +11,19 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { - const program = new FrodoCommand('frodo idp import'); + const program = new FrodoCommand('frodo idp import', [], deploymentTypes); program .description('Import (social) identity providers.') @@ -55,7 +66,11 @@ export default function setup() { command ); // import by id - if (options.file && options.idpId && (await getTokens())) { + if ( + options.file && + options.idpId && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( `Importing provider "${ options.idpId @@ -71,7 +86,11 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // --all -a - else if (options.all && options.file && (await getTokens())) { + else if ( + options.all && + options.file && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( `Importing all providers from a single file (${options.file})...` ); @@ -84,7 +103,11 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // --all-separate -A - else if (options.allSeparate && !options.file && (await getTokens())) { + else if ( + options.allSeparate && + !options.file && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( 'Importing all providers from separate files in current directory...' ); @@ -94,7 +117,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // import first provider from file - else if (options.file && (await getTokens())) { + else if ( + options.file && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( `Importing first provider from file "${ options.file diff --git a/src/cli/idp/idp-list.ts b/src/cli/idp/idp-list.ts index 85e0e15b1..f27df38f7 100644 --- a/src/cli/idp/idp-list.ts +++ b/src/cli/idp/idp-list.ts @@ -1,12 +1,23 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { getTokens } from '../../ops/AuthenticateOps'; import { listSocialProviders } from '../../ops/IdpOps'; import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { - const program = new FrodoCommand('frodo idp list'); + const program = new FrodoCommand('frodo idp list', [], deploymentTypes); program .description('List (social) identity providers.') @@ -24,7 +35,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { verboseMessage(`Listing providers in realm "${state.getRealm()}"...`); const outcome = await listSocialProviders(); if (!outcome) process.exitCode = 1; diff --git a/src/cli/journey/journey-delete.ts b/src/cli/journey/journey-delete.ts index f29e99cc9..adf38aa7a 100644 --- a/src/cli/journey/journey-delete.ts +++ b/src/cli/journey/journey-delete.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -6,8 +6,19 @@ import { deleteJourney, deleteJourneys } from '../../ops/JourneyOps'; import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { - const program = new FrodoCommand('frodo journey delete'); + const program = new FrodoCommand('frodo journey delete', [], deploymentTypes); program .description('Delete journeys/trees.') @@ -47,7 +58,10 @@ export default function setup() { command ); // delete by id - if (options.journeyId && (await getTokens())) { + if ( + options.journeyId && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( `Deleting journey ${ options.journeyId @@ -57,7 +71,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // --all -a - else if (options.all && (await getTokens())) { + else if ( + options.all && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Deleting all journeys...'); const outcome = await deleteJourneys(options); if (!outcome) process.exitCode = 1; diff --git a/src/cli/journey/journey-describe.ts b/src/cli/journey/journey-describe.ts index 83cdc1fd6..2d04def0c 100644 --- a/src/cli/journey/journey-describe.ts +++ b/src/cli/journey/journey-describe.ts @@ -7,12 +7,27 @@ import { describeJourney, describeJourneyMd } from '../../ops/JourneyOps'; import { printError, printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; const { saveTextToFile } = frodo.utils; const { createFileParamTreeExportResolver, readJourneys, exportJourney } = frodo.authn.journey; export default function setup() { - const program = new FrodoCommand('frodo journey describe'); + const program = new FrodoCommand( + 'frodo journey describe', + [], + deploymentTypes + ); program .description( @@ -137,7 +152,7 @@ export default function setup() { printMessage(error.message, 'error'); process.exitCode = 1; } - } else if (await getTokens()) { + } else if (await getTokens(false, true, deploymentTypes)) { verboseMessage( `Describing journey(s) in realm "${state.getRealm()}"...` ); diff --git a/src/cli/journey/journey-disable.ts b/src/cli/journey/journey-disable.ts index e8202da4b..29e01a1bb 100644 --- a/src/cli/journey/journey-disable.ts +++ b/src/cli/journey/journey-disable.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,8 +6,24 @@ import { disableJourney } from '../../ops/JourneyOps'; import { printMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo journey disable'); + const program = new FrodoCommand( + 'frodo journey disable', + [], + deploymentTypes + ); program .description('Disable journeys/trees.') @@ -31,7 +48,10 @@ export default function setup() { command ); // disable - if (options.journeyId && (await getTokens())) { + if ( + options.journeyId && + (await getTokens(false, true, deploymentTypes)) + ) { const outcome = await disableJourney(options.journeyId); if (!outcome) process.exitCode = 1; } diff --git a/src/cli/journey/journey-enable.ts b/src/cli/journey/journey-enable.ts index f1aef769a..10d81eb5c 100644 --- a/src/cli/journey/journey-enable.ts +++ b/src/cli/journey/journey-enable.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,8 +6,20 @@ import { enableJourney } from '../../ops/JourneyOps'; import { printMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo journey enable'); + const program = new FrodoCommand('frodo journey enable', [], deploymentTypes); program .description('Enable journeys/trees.') @@ -31,7 +44,10 @@ export default function setup() { command ); // enable - if (options.journeyId && (await getTokens())) { + if ( + options.journeyId && + (await getTokens(false, true, deploymentTypes)) + ) { const outcome = await enableJourney(options.journeyId); if (!outcome) process.exitCode = 1; } diff --git a/src/cli/journey/journey-export.ts b/src/cli/journey/journey-export.ts index 04ec0095c..258bb6182 100644 --- a/src/cli/journey/journey-export.ts +++ b/src/cli/journey/journey-export.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -9,8 +10,20 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo journey export'); + const program = new FrodoCommand('frodo journey export', [], deploymentTypes); program .description('Export journeys/trees.') @@ -83,7 +96,10 @@ export default function setup() { command ); // export - if (options.journeyId && (await getTokens())) { + if ( + options.journeyId && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting journey...'); const outcome = await exportJourneyToFile( options.journeyId, @@ -98,7 +114,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // --all -a - else if (options.all && (await getTokens())) { + else if ( + options.all && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting all journeys to a single file...'); const outcome = await exportJourneysToFile( options.file, @@ -112,7 +131,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // --all-separate -A - else if (options.allSeparate && (await getTokens())) { + else if ( + options.allSeparate && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting all journeys to separate files...'); const outcome = await exportJourneysToFiles(options.metadata, { useStringArrays: options.useStringArrays, diff --git a/src/cli/journey/journey-import.ts b/src/cli/journey/journey-import.ts index 015138c0a..42570b110 100644 --- a/src/cli/journey/journey-import.ts +++ b/src/cli/journey/journey-import.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -10,8 +11,20 @@ import { import { printMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo journey import'); + const program = new FrodoCommand('frodo journey import', [], deploymentTypes); program .description('Import journey/tree.') @@ -63,7 +76,10 @@ export default function setup() { command ); // import - if (options.journeyId && (await getTokens())) { + if ( + options.journeyId && + (await getTokens(false, true, deploymentTypes)) + ) { printMessage(`Importing journey ${options.journeyId}...`); const outcome = await importJourneyFromFile( options.journeyId, @@ -76,7 +92,11 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // --all -a - else if (options.all && options.file && (await getTokens())) { + else if ( + options.all && + options.file && + (await getTokens(false, true, deploymentTypes)) + ) { printMessage( `Importing all journeys from a single file (${options.file})...` ); @@ -87,7 +107,11 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // --all-separate -A - else if (options.allSeparate && !options.file && (await getTokens())) { + else if ( + options.allSeparate && + !options.file && + (await getTokens(false, true, deploymentTypes)) + ) { printMessage( 'Importing all journeys from separate files in current directory...' ); @@ -98,7 +122,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // import first journey in file - else if (options.file && (await getTokens())) { + else if ( + options.file && + (await getTokens(false, true, deploymentTypes)) + ) { printMessage('Importing first journey in file...'); const outcome = await importFirstJourneyFromFile(options.file, { reUuid: options.reUuid, diff --git a/src/cli/journey/journey-list.ts b/src/cli/journey/journey-list.ts index 8f9cf6971..e016a6a3b 100644 --- a/src/cli/journey/journey-list.ts +++ b/src/cli/journey/journey-list.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -6,8 +6,20 @@ import { listJourneys } from '../../ops/JourneyOps'; import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo journey list'); + const program = new FrodoCommand('frodo journey list', [], deploymentTypes); program .description('List journeys/trees.') @@ -28,7 +40,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { verboseMessage(`Listing journeys in realm "${state.getRealm()}"...`); const outcome = await listJourneys(options.long, options.analyze); if (!outcome) process.exitCode = 1; diff --git a/src/cli/journey/journey-prune.ts b/src/cli/journey/journey-prune.ts index 5def4a994..7d6cb4981 100644 --- a/src/cli/journey/journey-prune.ts +++ b/src/cli/journey/journey-prune.ts @@ -7,8 +7,20 @@ import { FrodoCommand } from '../FrodoCommand'; const { findOrphanedNodes, removeOrphanedNodes } = frodo.authn.node; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo journey prune'); + const program = new FrodoCommand('frodo journey prune', [], deploymentTypes); program .description( @@ -25,7 +37,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { verboseMessage( `Pruning orphaned configuration artifacts in realm "${state.getRealm()}"...` ); diff --git a/src/cli/log/log-fetch.ts b/src/cli/log/log-fetch.ts index 2b32c5612..a8c37606e 100644 --- a/src/cli/log/log-fetch.ts +++ b/src/cli/log/log-fetch.ts @@ -15,7 +15,8 @@ const SECONDS_IN_30_DAYS = 2592000; const SECONDS_IN_1_HOUR = 3600; const LOG_TIME_WINDOW_MAX = SECONDS_IN_30_DAYS; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/log/log-key-delete.ts b/src/cli/log/log-key-delete.ts index a6d7a0d9f..fbc5409ee 100644 --- a/src/cli/log/log-key-delete.ts +++ b/src/cli/log/log-key-delete.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,7 +6,8 @@ import { deleteLogApiKey, deleteLogApiKeys } from '../../ops/LogOps'; import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/log/log-key-describe.ts b/src/cli/log/log-key-describe.ts index e4ac9c76e..b100b918d 100644 --- a/src/cli/log/log-key-describe.ts +++ b/src/cli/log/log-key-describe.ts @@ -1,9 +1,11 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/log/log-key-list.ts b/src/cli/log/log-key-list.ts index d0db3c9ab..705e882ad 100644 --- a/src/cli/log/log-key-list.ts +++ b/src/cli/log/log-key-list.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,7 +6,8 @@ import { listLogApiKeys } from '../../ops/LogOps'; import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/log/log-list.ts b/src/cli/log/log-list.ts index 6292243c3..f30f5f948 100644 --- a/src/cli/log/log-list.ts +++ b/src/cli/log/log-list.ts @@ -9,7 +9,8 @@ import { FrodoCommand } from '../FrodoCommand'; const { getConnectionProfile, saveConnectionProfile } = frodo.conn; const { getLogSources } = frodo.cloud.log; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/log/log-tail.ts b/src/cli/log/log-tail.ts index 490d32de7..3589e3bdc 100644 --- a/src/cli/log/log-tail.ts +++ b/src/cli/log/log-tail.ts @@ -11,7 +11,8 @@ import { sourcesOptionM } from './log'; const { resolveLevel } = frodo.cloud.log; const { getConnectionProfile, saveConnectionProfile } = frodo.conn; -const deploymentTypes = ['cloud']; +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( diff --git a/src/cli/mapping/mapping-delete.ts b/src/cli/mapping/mapping-delete.ts index df53cca76..a585cf9fe 100644 --- a/src/cli/mapping/mapping-delete.ts +++ b/src/cli/mapping/mapping-delete.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,7 +6,17 @@ import { deleteMapping, deleteMappings } from '../../ops/MappingOps'; import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand('frodo mapping delete', [], deploymentTypes); diff --git a/src/cli/mapping/mapping-export.ts b/src/cli/mapping/mapping-export.ts index 72f4fca51..05c234e3b 100644 --- a/src/cli/mapping/mapping-export.ts +++ b/src/cli/mapping/mapping-export.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -9,7 +10,17 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand('frodo mapping export', [], deploymentTypes); diff --git a/src/cli/mapping/mapping-import.ts b/src/cli/mapping/mapping-import.ts index 752069460..f259169f6 100644 --- a/src/cli/mapping/mapping-import.ts +++ b/src/cli/mapping/mapping-import.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -10,7 +11,17 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand('frodo mapping import', [], deploymentTypes); diff --git a/src/cli/mapping/mapping-list.ts b/src/cli/mapping/mapping-list.ts index b12b56a12..5fe44e9eb 100644 --- a/src/cli/mapping/mapping-list.ts +++ b/src/cli/mapping/mapping-list.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,7 +6,17 @@ import { listMappings } from '../../ops/MappingOps'; import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand('frodo mapping list', [], deploymentTypes); diff --git a/src/cli/mapping/mapping-rename.ts b/src/cli/mapping/mapping-rename.ts index 95d293fc9..ab3471fc7 100644 --- a/src/cli/mapping/mapping-rename.ts +++ b/src/cli/mapping/mapping-rename.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,7 +6,17 @@ import { renameMapping, renameMappings } from '../../ops/MappingOps'; import { printMessage, verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand('frodo mapping rename', [], deploymentTypes); diff --git a/src/cli/oauth/oauth-client-delete.ts b/src/cli/oauth/oauth-client-delete.ts index 39defb09d..0ab8ec940 100644 --- a/src/cli/oauth/oauth-client-delete.ts +++ b/src/cli/oauth/oauth-client-delete.ts @@ -1,11 +1,28 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; import { deleteOauth2ClientById } from '../../ops/OAuth2ClientOps'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo oauth client delete'); + const program = new FrodoCommand( + 'frodo oauth client delete', + [], + deploymentTypes + ); program .description('Delete OAuth2 clients.') @@ -35,7 +52,7 @@ export default function setup() { options, command ); - if (options.appId && (await getTokens())) { + if (options.appId && (await getTokens(false, true, deploymentTypes))) { const outcome = deleteOauth2ClientById(options.appId); if (!outcome) process.exitCode = 1; } else { diff --git a/src/cli/oauth/oauth-client-describe.ts b/src/cli/oauth/oauth-client-describe.ts index 3c6a769d5..416fece7e 100644 --- a/src/cli/oauth/oauth-client-describe.ts +++ b/src/cli/oauth/oauth-client-describe.ts @@ -1,10 +1,27 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo oauth client describe'); + const program = new FrodoCommand( + 'frodo oauth client describe', + [], + deploymentTypes + ); program .description('Describe OAuth2 client.') @@ -20,7 +37,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { // code goes here } else { process.exitCode = 1; diff --git a/src/cli/oauth/oauth-client-export.ts b/src/cli/oauth/oauth-client-export.ts index 2c83fbdbf..23116d414 100644 --- a/src/cli/oauth/oauth-client-export.ts +++ b/src/cli/oauth/oauth-client-export.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -9,8 +10,24 @@ import { import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo oauth client export'); + const program = new FrodoCommand( + 'frodo oauth client export', + [], + deploymentTypes + ); program .description('Export OAuth2 clients.') @@ -54,7 +71,7 @@ export default function setup() { command ); // export - if (options.appId && (await getTokens())) { + if (options.appId && (await getTokens(false, true, deploymentTypes))) { verboseMessage('Exporting OAuth2 client...'); const outcome = await exportOAuth2ClientToFile( options.appId, @@ -68,7 +85,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // -a/--all - else if (options.all && (await getTokens())) { + else if ( + options.all && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting all OAuth2 clients to file...'); const outcome = await exportOAuth2ClientsToFile( options.file, @@ -81,7 +101,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // -A/--all-separate - else if (options.allSeparate && (await getTokens())) { + else if ( + options.allSeparate && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting all clients to separate files...'); const outcome = await exportOAuth2ClientsToFiles(options.metadata, { useStringArrays: true, diff --git a/src/cli/oauth/oauth-client-import.ts b/src/cli/oauth/oauth-client-import.ts index bf4867b08..0c36af6c7 100644 --- a/src/cli/oauth/oauth-client-import.ts +++ b/src/cli/oauth/oauth-client-import.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -10,8 +11,24 @@ import { import { printMessage, verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo oauth client import'); + const program = new FrodoCommand( + 'frodo oauth client import', + [], + deploymentTypes + ); program .description('Import OAuth2 clients.') @@ -49,7 +66,11 @@ export default function setup() { command ); // import by id - if (options.file && options.appId && (await getTokens())) { + if ( + options.file && + options.appId && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage(`Importing OAuth2 client "${options.appId}"...`); const outcome = await importOAuth2ClientFromFile( options.appId, @@ -61,7 +82,11 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // --all -a - else if (options.all && options.file && (await getTokens())) { + else if ( + options.all && + options.file && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( `Importing all OAuth2 clients from a single file (${options.file})...` ); @@ -71,7 +96,11 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // --all-separate -A - else if (options.allSeparate && !options.file && (await getTokens())) { + else if ( + options.allSeparate && + !options.file && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( 'Importing all OAuth2 clients from separate files in current directory...' ); @@ -81,7 +110,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // import first provider from file - else if (options.file && (await getTokens())) { + else if ( + options.file && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( `Importing first OAuth2 client from file "${options.file}"...` ); diff --git a/src/cli/oauth/oauth-client-list.ts b/src/cli/oauth/oauth-client-list.ts index a9ba75adc..f75f57c7a 100644 --- a/src/cli/oauth/oauth-client-list.ts +++ b/src/cli/oauth/oauth-client-list.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,8 +6,24 @@ import { listOAuth2Clients } from '../../ops/OAuth2ClientOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo oauth client list'); + const program = new FrodoCommand( + 'frodo oauth client list', + [], + deploymentTypes + ); program .description('List OAuth2 clients.') @@ -24,7 +41,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { verboseMessage(`Listing OAuth2 clients...`); const outcome = await listOAuth2Clients(options.long); if (!outcome) process.exitCode = 1; diff --git a/src/cli/promote/promote.ts b/src/cli/promote/promote.ts index 83b848bf2..1c7dd09e2 100644 --- a/src/cli/promote/promote.ts +++ b/src/cli/promote/promote.ts @@ -1,4 +1,4 @@ -import { FrodoError } from '@rockcarver/frodo-lib'; +import { frodo, FrodoError } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -6,10 +6,16 @@ import { compareExportToDirectory } from '../../ops/PromoteOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY } = + frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { - const program = new FrodoCommand('promote'); + const program = new FrodoCommand('promote', [], deploymentTypes); program .description('Prepares a tenant to be promoted') diff --git a/src/cli/realm/realm-add-custom-domain.ts b/src/cli/realm/realm-add-custom-domain.ts index 443891671..b776aceea 100644 --- a/src/cli/realm/realm-add-custom-domain.ts +++ b/src/cli/realm/realm-add-custom-domain.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -6,8 +6,24 @@ import { addCustomDomain } from '../../ops/RealmOps'; import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo realm add-custom-domain'); + const program = new FrodoCommand( + 'frodo realm add-custom-domain', + [], + deploymentTypes + ); program .description('Add custom domain (realm DNS alias).') @@ -28,7 +44,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { verboseMessage( `Adding custom DNS domain ${ options.domain diff --git a/src/cli/realm/realm-describe.ts b/src/cli/realm/realm-describe.ts index 655c5dcf2..88ede05b0 100644 --- a/src/cli/realm/realm-describe.ts +++ b/src/cli/realm/realm-describe.ts @@ -5,8 +5,20 @@ import { describeRealm } from '../../ops/RealmOps'; import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo realm describe'); + const program = new FrodoCommand('frodo realm describe', [], deploymentTypes); program.description('Describe realms.').action( // implement command logic inside action handler @@ -19,7 +31,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { verboseMessage(`Retrieving details of realm ${state.getRealm()}...`); describeRealm(frodo.utils.getRealmName(state.getRealm())); } else { diff --git a/src/cli/realm/realm-export.ts b/src/cli/realm/realm-export.ts index cef020a80..4566e38b9 100644 --- a/src/cli/realm/realm-export.ts +++ b/src/cli/realm/realm-export.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -10,8 +11,20 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo realm export'); + const program = new FrodoCommand('frodo realm export', [], deploymentTypes); program .description('Export realms.') @@ -58,7 +71,10 @@ export default function setup() { command ); // export by id - if (options.realmId && (await getTokens())) { + if ( + options.realmId && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting realm...'); const outcome = await exportRealmById( options.realmId, @@ -68,7 +84,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // export by name - else if (options.realmName && (await getTokens())) { + else if ( + options.realmName && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting realm...'); const outcome = await exportRealmByName( options.realmName, @@ -78,7 +97,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // -a / --all - else if (options.all && (await getTokens())) { + else if ( + options.all && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting all realms to a single file...'); const outcome = await exportRealmsToFile( options.file, @@ -87,7 +109,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // -A / --all-separate - else if (options.allSeparate && (await getTokens())) { + else if ( + options.allSeparate && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting all realms to separate files...'); const outcome = await exportRealmsToFiles(options.metadata); if (!outcome) process.exitCode = 1; diff --git a/src/cli/realm/realm-import.ts b/src/cli/realm/realm-import.ts index f75e8080e..7d98523b9 100644 --- a/src/cli/realm/realm-import.ts +++ b/src/cli/realm/realm-import.ts @@ -14,7 +14,7 @@ const { CLASSIC_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; const deploymentTypes = [CLASSIC_DEPLOYMENT_TYPE_KEY]; export default function setup() { - const program = new FrodoCommand('frodo realm import'); + const program = new FrodoCommand('frodo realm import', [], deploymentTypes); program .description('Import realms.') diff --git a/src/cli/realm/realm-list.ts b/src/cli/realm/realm-list.ts index e6cf34091..14cea554b 100644 --- a/src/cli/realm/realm-list.ts +++ b/src/cli/realm/realm-list.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,8 +6,20 @@ import { listRealms } from '../../ops/RealmOps'; import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo realm list'); + const program = new FrodoCommand('frodo realm list', [], deploymentTypes); program .description('List realms.') @@ -24,7 +37,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { verboseMessage('Listing all realms...'); await listRealms(options.long); } else { diff --git a/src/cli/realm/realm-remove-custom-domain.ts b/src/cli/realm/realm-remove-custom-domain.ts index f4275b193..e58de117d 100644 --- a/src/cli/realm/realm-remove-custom-domain.ts +++ b/src/cli/realm/realm-remove-custom-domain.ts @@ -5,10 +5,26 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + const { removeCustomDomain } = frodo.realm; export default function setup() { - const program = new FrodoCommand('frodo realm remove-custom-domain'); + const program = new FrodoCommand( + 'frodo realm remove-custom-domain', + [], + deploymentTypes + ); program .description('Remove custom domain (realm DNS alias).') @@ -29,7 +45,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { verboseMessage( `Removing custom DNS domain ${ options.domain diff --git a/src/cli/role/role-delete.ts b/src/cli/role/role-delete.ts index a248d4033..1821e39f9 100644 --- a/src/cli/role/role-delete.ts +++ b/src/cli/role/role-delete.ts @@ -4,12 +4,16 @@ import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; import { FrodoCommand } from '../FrodoCommand'; -const { CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY } = - frodo.utils.constants; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; const deploymentTypes = [ CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, ]; export default function setup() { diff --git a/src/cli/role/role-describe.ts b/src/cli/role/role-describe.ts index 643a71e40..8e8c04201 100644 --- a/src/cli/role/role-describe.ts +++ b/src/cli/role/role-describe.ts @@ -4,12 +4,16 @@ import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; import { FrodoCommand } from '../FrodoCommand'; -const { CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY } = - frodo.utils.constants; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; const deploymentTypes = [ CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, ]; export default function setup() { diff --git a/src/cli/role/role-export.ts b/src/cli/role/role-export.ts index f82248535..ddba9ccde 100644 --- a/src/cli/role/role-export.ts +++ b/src/cli/role/role-export.ts @@ -10,12 +10,16 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const { CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY } = - frodo.utils.constants; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; const deploymentTypes = [ CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, ]; export default function setup() { diff --git a/src/cli/role/role-import.ts b/src/cli/role/role-import.ts index 23dede098..5c1c0d433 100644 --- a/src/cli/role/role-import.ts +++ b/src/cli/role/role-import.ts @@ -11,12 +11,16 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const { CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY } = - frodo.utils.constants; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; const deploymentTypes = [ CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, ]; export default function setup() { diff --git a/src/cli/role/role-list.ts b/src/cli/role/role-list.ts index 15b2205fa..34d2a61b9 100644 --- a/src/cli/role/role-list.ts +++ b/src/cli/role/role-list.ts @@ -6,12 +6,16 @@ import { listRoles } from '../../ops/InternalRoleOps'; import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const { CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY } = - frodo.utils.constants; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; const deploymentTypes = [ CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY, + IDM_DEPLOYMENT_TYPE_KEY, ]; export default function setup() { diff --git a/src/cli/saml/saml-cot-export.ts b/src/cli/saml/saml-cot-export.ts index 422ff16c1..92c5a1157 100644 --- a/src/cli/saml/saml-cot-export.ts +++ b/src/cli/saml/saml-cot-export.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -10,8 +10,24 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo saml cot export'); + const program = new FrodoCommand( + 'frodo saml cot export', + [], + deploymentTypes + ); program .description('Export SAML circles of trust.') @@ -57,7 +73,7 @@ export default function setup() { command ); // export by id/name - if (options.cotId && (await getTokens())) { + if (options.cotId && (await getTokens(false, true, deploymentTypes))) { verboseMessage( `Exporting circle of trust "${ options.cotId @@ -71,7 +87,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // --all -a - else if (options.all && (await getTokens())) { + else if ( + options.all && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting all circles of trust to a single file...'); const outcome = await exportCirclesOfTrustToFile( options.file, @@ -80,7 +99,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // --all-separate -A - else if (options.allSeparate && (await getTokens())) { + else if ( + options.allSeparate && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting all circles of trust to separate files...'); const outcome = await exportCirclesOfTrustToFiles(options.metadata); if (!outcome) process.exitCode = 1; diff --git a/src/cli/saml/saml-cot-import.ts b/src/cli/saml/saml-cot-import.ts index af6a6ee58..bc638696c 100644 --- a/src/cli/saml/saml-cot-import.ts +++ b/src/cli/saml/saml-cot-import.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -11,8 +11,24 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo saml cot import'); + const program = new FrodoCommand( + 'frodo saml cot import', + [], + deploymentTypes + ); program .description('Import SAML circles of trust.') @@ -52,7 +68,11 @@ export default function setup() { command ); // import by id - if (options.file && options.cotId && (await getTokens())) { + if ( + options.file && + options.cotId && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( `Importing circle of trust "${ options.cotId @@ -65,7 +85,11 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // --all -a - else if (options.all && options.file && (await getTokens())) { + else if ( + options.all && + options.file && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( `Importing all circles of trust from a single file (${options.file})...` ); @@ -73,7 +97,11 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // --all-separate -A - else if (options.allSeparate && !options.file && (await getTokens())) { + else if ( + options.allSeparate && + !options.file && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( 'Importing all circles of trust from separate files (*.saml.json) in current directory...' ); @@ -81,7 +109,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // import first from file - else if (options.file && (await getTokens())) { + else if ( + options.file && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( `Importing first circle of trust from file "${ options.file diff --git a/src/cli/saml/saml-cot-list.ts b/src/cli/saml/saml-cot-list.ts index 05d768092..f16ee25e4 100644 --- a/src/cli/saml/saml-cot-list.ts +++ b/src/cli/saml/saml-cot-list.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -6,8 +6,20 @@ import { listCirclesOfTrust } from '../../ops/CirclesOfTrustOps'; import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo saml cot list'); + const program = new FrodoCommand('frodo saml cot list', [], deploymentTypes); program .description('List SAML circles of trust.') @@ -25,7 +37,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { verboseMessage( `Listing SAML circles of trust in realm "${state.getRealm()}"...` ); diff --git a/src/cli/saml/saml-delete.ts b/src/cli/saml/saml-delete.ts index 60e5607d7..bbb6f59bd 100644 --- a/src/cli/saml/saml-delete.ts +++ b/src/cli/saml/saml-delete.ts @@ -5,11 +5,23 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { printMessage, verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + const { deleteSaml2Provider, deleteSaml2Providers } = frodo.saml2.entityProvider; export default function setup() { - const program = new FrodoCommand('frodo saml delete'); + const program = new FrodoCommand('frodo saml delete', [], deploymentTypes); program .description('Delete SAML entity providers.') @@ -34,12 +46,18 @@ export default function setup() { command ); // -i / --entity-id - if (options.entityId && (await getTokens())) { + if ( + options.entityId && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage(`Deleting entity provider '${options.entityId}'...`); await deleteSaml2Provider(options.entityId); } // -a / --all - else if (options.all && (await getTokens())) { + else if ( + options.all && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage(`Deleting all entity providers...`); await deleteSaml2Providers(); } diff --git a/src/cli/saml/saml-describe.ts b/src/cli/saml/saml-describe.ts index 55d3f0e6d..b6707ad84 100644 --- a/src/cli/saml/saml-describe.ts +++ b/src/cli/saml/saml-describe.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -6,8 +6,20 @@ import { describeSaml2Provider } from '../../ops/Saml2Ops'; import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo saml describe'); + const program = new FrodoCommand('frodo saml describe', [], deploymentTypes); program .description('Describe the configuration of an entity provider.') @@ -23,7 +35,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { verboseMessage( `Describing SAML entity provider ${ options.entityId diff --git a/src/cli/saml/saml-export.ts b/src/cli/saml/saml-export.ts index e2234896e..350eb9cb3 100644 --- a/src/cli/saml/saml-export.ts +++ b/src/cli/saml/saml-export.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -10,8 +10,20 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo saml export'); + const program = new FrodoCommand('frodo saml export', [], deploymentTypes); program .description('Export SAML entity providers.') @@ -60,7 +72,10 @@ export default function setup() { command ); // export by id/name - if (options.entityId && (await getTokens())) { + if ( + options.entityId && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( `Exporting provider "${ options.entityId @@ -77,7 +92,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // --all -a - else if (options.all && (await getTokens())) { + else if ( + options.all && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting all providers to a single file...'); const outcome = await exportSaml2ProvidersToFile( options.file, @@ -89,7 +107,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // --all-separate -A - else if (options.allSeparate && (await getTokens())) { + else if ( + options.allSeparate && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting all providers to separate files...'); const outcome = await exportSaml2ProvidersToFiles(options.metadata, { deps: options.deps, diff --git a/src/cli/saml/saml-import.ts b/src/cli/saml/saml-import.ts index 70f7640a9..e2e9c68fa 100644 --- a/src/cli/saml/saml-import.ts +++ b/src/cli/saml/saml-import.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -11,8 +11,20 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo saml import'); + const program = new FrodoCommand('frodo saml import', [], deploymentTypes); program .description('Import SAML entity providers.') @@ -55,7 +67,11 @@ export default function setup() { command ); // import by id - if (options.file && options.entityId && (await getTokens())) { + if ( + options.file && + options.entityId && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( `Importing provider "${ options.entityId @@ -71,7 +87,11 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // --all -a - else if (options.all && options.file && (await getTokens())) { + else if ( + options.all && + options.file && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( `Importing all providers from a single file (${options.file})...` ); @@ -81,7 +101,11 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // --all-separate -A - else if (options.allSeparate && !options.file && (await getTokens())) { + else if ( + options.allSeparate && + !options.file && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( 'Importing all providers from separate files (*.saml.json) in current directory...' ); @@ -91,7 +115,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // import first provider from file - else if (options.file && (await getTokens())) { + else if ( + options.file && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( `Importing first provider from file "${ options.file diff --git a/src/cli/saml/saml-list.ts b/src/cli/saml/saml-list.ts index 84118109d..6e96c69c0 100644 --- a/src/cli/saml/saml-list.ts +++ b/src/cli/saml/saml-list.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -6,8 +6,20 @@ import { listSaml2Providers } from '../../ops/Saml2Ops'; import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo saml list'); + const program = new FrodoCommand('frodo saml list', [], deploymentTypes); program .description('List SAML entity providers.') @@ -25,7 +37,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { verboseMessage( `Listing SAML entity providers in realm "${state.getRealm()}"...` ); diff --git a/src/cli/saml/saml-metadata-export.ts b/src/cli/saml/saml-metadata-export.ts index f4f467c23..cee331987 100644 --- a/src/cli/saml/saml-metadata-export.ts +++ b/src/cli/saml/saml-metadata-export.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -6,8 +6,24 @@ import { exportSaml2MetadataToFile } from '../../ops/Saml2Ops'; import { printMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo saml metadata export'); + const program = new FrodoCommand( + 'frodo saml metadata export', + [], + deploymentTypes + ); program .description('Export SAML metadata.') @@ -41,7 +57,10 @@ export default function setup() { command ); // export by id/name - if (options.entityId && (await getTokens())) { + if ( + options.entityId && + (await getTokens(false, true, deploymentTypes)) + ) { printMessage( `Exporting metadata for provider "${ options.entityId @@ -54,7 +73,7 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // // --all-separate -A - // else if (options.allSeparate && (await getTokens())) { + // else if (options.allSeparate && (await getTokens(false, true, deploymentTypes))) { // printMessage('Exporting all providers to separate files...'); // exportProvidersToFiles(); // } diff --git a/src/cli/script/script-delete.ts b/src/cli/script/script-delete.ts index 814880b47..30d87c8d4 100644 --- a/src/cli/script/script-delete.ts +++ b/src/cli/script/script-delete.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -10,8 +10,20 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo script delete'); + const program = new FrodoCommand('frodo script delete', [], deploymentTypes); program .description('Delete scripts.') @@ -44,7 +56,10 @@ export default function setup() { options, command ); - if (options.scriptId && (await getTokens())) { + if ( + options.scriptId && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( `Deleting script ${ options.scriptId @@ -52,7 +67,10 @@ export default function setup() { ); const outcome = await deleteScriptId(options.scriptId); if (!outcome) process.exitCode = 1; - } else if (options.scriptName && (await getTokens())) { + } else if ( + options.scriptName && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( `Deleting script ${ options.scriptName @@ -60,7 +78,10 @@ export default function setup() { ); const outcome = await deleteScriptName(options.scriptName); if (!outcome) process.exitCode = 1; - } else if (options.all && (await getTokens())) { + } else if ( + options.all && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Deleting all non-default scripts...'); const outcome = await deleteAllScripts(); if (!outcome) process.exitCode = 1; diff --git a/src/cli/script/script-describe.ts b/src/cli/script/script-describe.ts index ac5b47799..9c20cf39e 100644 --- a/src/cli/script/script-describe.ts +++ b/src/cli/script/script-describe.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,8 +6,24 @@ import { describeScript } from '../../ops/ScriptOps'; import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo script describe'); + const program = new FrodoCommand( + 'frodo script describe', + [], + deploymentTypes + ); program .description('Describe script.') @@ -36,7 +53,10 @@ export default function setup() { options, command ); - if ((options.scriptName || options.scriptId) && (await getTokens())) { + if ( + (options.scriptName || options.scriptId) && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( `Describing script ${options.scriptName ? options.scriptName : options.scriptId}...` ); diff --git a/src/cli/script/script-export.ts b/src/cli/script/script-export.ts index 3c5433571..127577e00 100644 --- a/src/cli/script/script-export.ts +++ b/src/cli/script/script-export.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -10,8 +11,20 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo script export'); + const program = new FrodoCommand('frodo script export', [], deploymentTypes); program .description('Export scripts.') @@ -83,7 +96,10 @@ export default function setup() { command ); // export by id - if (options.scriptId && (await getTokens())) { + if ( + options.scriptId && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting script...'); const outcome = await exportScriptToFile( options.scriptId, @@ -101,7 +117,7 @@ export default function setup() { // export by name else if ( (options.scriptName || options.script) && - (await getTokens()) + (await getTokens(false, true, deploymentTypes)) ) { verboseMessage('Exporting script...'); const outcome = await exportScriptByNameToFile( @@ -118,7 +134,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // -a / --all - else if (options.all && (await getTokens())) { + else if ( + options.all && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting all scripts to a single file...'); const outcome = await exportScriptsToFile( options.file, @@ -132,7 +151,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // -A / --all-separate - else if (options.allSeparate && (await getTokens())) { + else if ( + options.allSeparate && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting all scripts to separate files...'); const outcome = await exportScriptsToFiles( options.extract, diff --git a/src/cli/script/script-import.ts b/src/cli/script/script-import.ts index 7be05d00c..e0ea44dde 100644 --- a/src/cli/script/script-import.ts +++ b/src/cli/script/script-import.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -9,8 +9,20 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo script import'); + const program = new FrodoCommand('frodo script import', [], deploymentTypes); program .description('Import scripts.') @@ -76,7 +88,7 @@ export default function setup() { command ); - if (options.file && (await getTokens())) { + if (options.file && (await getTokens(false, true, deploymentTypes))) { verboseMessage( `Importing script(s) into realm "${state.getRealm()}"...` ); @@ -91,7 +103,10 @@ export default function setup() { } ); if (!outcome) process.exitCode = 1; - } else if (options.allSeparate && (await getTokens())) { + } else if ( + options.allSeparate && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage( `Importing all script files into realm "${state.getRealm()}"...` ); diff --git a/src/cli/script/script-list.ts b/src/cli/script/script-list.ts index bbe41c76d..c4b6b7172 100644 --- a/src/cli/script/script-list.ts +++ b/src/cli/script/script-list.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -6,8 +6,20 @@ import { listScripts } from '../../ops/ScriptOps'; import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo script list'); + const program = new FrodoCommand('frodo script list', [], deploymentTypes); program .description('List scripts.') @@ -40,7 +52,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { verboseMessage(`Listing scripts in realm "${state.getRealm()}"...`); const outcome = await listScripts( options.long, diff --git a/src/cli/service/service-delete.ts b/src/cli/service/service-delete.ts index 92a7867e5..b5d52a79d 100644 --- a/src/cli/service/service-delete.ts +++ b/src/cli/service/service-delete.ts @@ -1,11 +1,24 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; import { deleteService, deleteServices } from '../../ops/ServiceOps.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo service delete'); + const program = new FrodoCommand('frodo service delete', [], deploymentTypes); interface ServiceDeleteOptions { id?: string; @@ -43,10 +56,13 @@ export default function setup() { const globalConfig = options.global ?? false; - if (options.id && (await getTokens())) { + if (options.id && (await getTokens(false, true, deploymentTypes))) { const outcome = await deleteService(options.id, globalConfig); if (!outcome) process.exitCode = 1; - } else if (options.all && (await getTokens())) { + } else if ( + options.all && + (await getTokens(false, true, deploymentTypes)) + ) { const outcome = await deleteServices(globalConfig); if (!outcome) process.exitCode = 1; } else { diff --git a/src/cli/service/service-export.ts b/src/cli/service/service-export.ts index 6f4022bbf..9e69c9a1f 100644 --- a/src/cli/service/service-export.ts +++ b/src/cli/service/service-export.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -9,8 +10,20 @@ import { import { printMessage, verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo service export'); + const program = new FrodoCommand('frodo service export', [], deploymentTypes); interface ServiceExportOptions { file?: string; @@ -70,7 +83,10 @@ export default function setup() { const globalConfig = options.global ?? false; // export by name - if (options.serviceId && (await getTokens())) { + if ( + options.serviceId && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting service...'); const outcome = await exportServiceToFile( options.serviceId, @@ -81,7 +97,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // -a / --all - else if (options.all && (await getTokens())) { + else if ( + options.all && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting all services to a single file...'); const outcome = await exportServicesToFile( options.file, @@ -91,7 +110,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // -A / --all-separate - else if (options.allSeparate && (await getTokens())) { + else if ( + options.allSeparate && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Exporting all services to separate files...'); const outcome = await exportServicesToFiles( globalConfig, diff --git a/src/cli/service/service-import.ts b/src/cli/service/service-import.ts index 2b6b22529..4235b2a11 100644 --- a/src/cli/service/service-import.ts +++ b/src/cli/service/service-import.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -10,8 +11,20 @@ import { import { printMessage, verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo service import'); + const program = new FrodoCommand('frodo service import', [], deploymentTypes); interface ServiceImportOptions { file?: string; @@ -92,7 +105,11 @@ export default function setup() { : (options.currentRealm ?? false); // import by id - if (options.serviceId && options.file && (await getTokens())) { + if ( + options.serviceId && + options.file && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Importing service...'); const outcome = await importServiceFromFile( options.serviceId, @@ -106,7 +123,11 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // -a / --all - else if (options.all && options.file && (await getTokens())) { + else if ( + options.all && + options.file && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Importing all services from a single file...'); const outcome = await importServicesFromFile(options.file, { clean, @@ -116,7 +137,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // -A / --all-separate - else if (options.allSeparate && (await getTokens())) { + else if ( + options.allSeparate && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Importing all services from separate files...'); const outcome = await importServicesFromFiles({ clean, @@ -126,7 +150,10 @@ export default function setup() { if (!outcome) process.exitCode = 1; } // import file - else if (options.file && (await getTokens())) { + else if ( + options.file && + (await getTokens(false, true, deploymentTypes)) + ) { verboseMessage('Importing service...'); const outcome = await importFirstServiceFromFile(options.file, { clean, diff --git a/src/cli/service/service-list.ts b/src/cli/service/service-list.ts index c303700f1..c08b191f2 100644 --- a/src/cli/service/service-list.ts +++ b/src/cli/service/service-list.ts @@ -1,3 +1,4 @@ +import { frodo } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -5,8 +6,20 @@ import { listServices } from '../../ops/ServiceOps.js'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; +const { + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +} = frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, + CLASSIC_DEPLOYMENT_TYPE_KEY, +]; + export default function setup() { - const program = new FrodoCommand('frodo service list'); + const program = new FrodoCommand('frodo service list', [], deploymentTypes); program .description('List AM services.') @@ -23,7 +36,7 @@ export default function setup() { options, command ); - if (await getTokens()) { + if (await getTokens(false, true, deploymentTypes)) { verboseMessage(`Listing all AM services for realm: ${realm}`); const outcome = await listServices(options.long, options.global); if (!outcome) process.exitCode = 1; diff --git a/src/cli/theme/theme-delete.ts b/src/cli/theme/theme-delete.ts index 5608ceadc..3558a4b62 100644 --- a/src/cli/theme/theme-delete.ts +++ b/src/cli/theme/theme-delete.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -10,7 +10,13 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY } = + frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand('frodo theme delete', [], deploymentTypes); diff --git a/src/cli/theme/theme-export.ts b/src/cli/theme/theme-export.ts index bf7e430a4..b8077b171 100644 --- a/src/cli/theme/theme-export.ts +++ b/src/cli/theme/theme-export.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -11,7 +11,13 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY } = + frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand('frodo theme export', [], deploymentTypes); diff --git a/src/cli/theme/theme-import.ts b/src/cli/theme/theme-import.ts index ef3805417..5678007fc 100644 --- a/src/cli/theme/theme-import.ts +++ b/src/cli/theme/theme-import.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -12,7 +12,13 @@ import { import { printMessage, verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY } = + frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand('frodo theme import', [], deploymentTypes); diff --git a/src/cli/theme/theme-list.ts b/src/cli/theme/theme-list.ts index b4681074a..978fc2124 100644 --- a/src/cli/theme/theme-list.ts +++ b/src/cli/theme/theme-list.ts @@ -1,4 +1,4 @@ -import { state } from '@rockcarver/frodo-lib'; +import { frodo, state } from '@rockcarver/frodo-lib'; import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; @@ -6,7 +6,13 @@ import { listThemes } from '../../ops/ThemeOps'; import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const deploymentTypes = ['cloud', 'forgeops']; +const { CLOUD_DEPLOYMENT_TYPE_KEY, FORGEOPS_DEPLOYMENT_TYPE_KEY } = + frodo.utils.constants; + +const deploymentTypes = [ + CLOUD_DEPLOYMENT_TYPE_KEY, + FORGEOPS_DEPLOYMENT_TYPE_KEY, +]; export default function setup() { const program = new FrodoCommand('frodo theme list', [], deploymentTypes); diff --git a/src/utils/Config.ts b/src/utils/Config.ts index 38349baab..7c1a53de7 100644 --- a/src/utils/Config.ts +++ b/src/utils/Config.ts @@ -20,6 +20,7 @@ const { getFilePath, readFiles, saveTextToFile, saveJsonToFile } = frodo.utils; const { exportFullConfiguration } = frodo.config; const { getDefaultNoiseFilter } = frodo.cloud.log; +const { IDM_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; export const FRODO_CONFIG_PATH_KEY = 'FRODO_CONFIG_PATH'; export const FRODO_LOG_NOISEFILTER_FILENAME = 'LoggingNoiseFilter.json'; @@ -111,7 +112,11 @@ export async function getFullExportConfig( export async function getFullExportConfigFromDirectory( directory: string ): Promise { - const realms = fs.readdirSync(directory + '/realm'); + const realms = + state.getDeploymentType() === IDM_DEPLOYMENT_TYPE_KEY + ? [] + : fs.readdirSync(directory + '/realm'); + const fullExportConfig: FullExportInterface = { meta: {} as ExportMetaData, global: {} as unknown as FullGlobalExportInterface, diff --git a/test/client_cli/en/__snapshots__/admin-add-autoid-static-user-mapping.test.js.snap b/test/client_cli/en/__snapshots__/admin-add-autoid-static-user-mapping.test.js.snap index b55c8d804..75c9ab8f7 100644 --- a/test/client_cli/en/__snapshots__/admin-add-autoid-static-user-mapping.test.js.snap +++ b/test/client_cli/en/__snapshots__/admin-add-autoid-static-user-mapping.test.js.snap @@ -69,7 +69,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/admin-create-oauth2-client-with-admin-privileges.test.js.snap b/test/client_cli/en/__snapshots__/admin-create-oauth2-client-with-admin-privileges.test.js.snap index 255e07e34..7bd0429b4 100644 --- a/test/client_cli/en/__snapshots__/admin-create-oauth2-client-with-admin-privileges.test.js.snap +++ b/test/client_cli/en/__snapshots__/admin-create-oauth2-client-with-admin-privileges.test.js.snap @@ -91,7 +91,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --no-llt-esv Don't store the token in a secret and output to console instead. This option diff --git a/test/client_cli/en/__snapshots__/admin-get-access-token.test.js.snap b/test/client_cli/en/__snapshots__/admin-get-access-token.test.js.snap index 3c97ee932..7cdc976cc 100644 --- a/test/client_cli/en/__snapshots__/admin-get-access-token.test.js.snap +++ b/test/client_cli/en/__snapshots__/admin-get-access-token.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. -s, --client-secret [secret] Client secret. --sa-id Service account id. diff --git a/test/client_cli/en/__snapshots__/admin-grant-oauth2-client-admin-privileges.test.js.snap b/test/client_cli/en/__snapshots__/admin-grant-oauth2-client-admin-privileges.test.js.snap index 0d949b256..ea34e35dd 100644 --- a/test/client_cli/en/__snapshots__/admin-grant-oauth2-client-admin-privileges.test.js.snap +++ b/test/client_cli/en/__snapshots__/admin-grant-oauth2-client-admin-privileges.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/admin-hide-generic-extension-attributes.test.js.snap b/test/client_cli/en/__snapshots__/admin-hide-generic-extension-attributes.test.js.snap index 96e5fe6fd..2a0eab543 100644 --- a/test/client_cli/en/__snapshots__/admin-hide-generic-extension-attributes.test.js.snap +++ b/test/client_cli/en/__snapshots__/admin-hide-generic-extension-attributes.test.js.snap @@ -74,7 +74,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/admin-list-oauth2-clients-with-admin-privileges.test.js.snap b/test/client_cli/en/__snapshots__/admin-list-oauth2-clients-with-admin-privileges.test.js.snap index 998383de8..b4a114bf7 100644 --- a/test/client_cli/en/__snapshots__/admin-list-oauth2-clients-with-admin-privileges.test.js.snap +++ b/test/client_cli/en/__snapshots__/admin-list-oauth2-clients-with-admin-privileges.test.js.snap @@ -72,7 +72,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/admin-list-oauth2-clients-with-custom-privileges.test.js.snap b/test/client_cli/en/__snapshots__/admin-list-oauth2-clients-with-custom-privileges.test.js.snap index 922e02437..ae12e0e56 100644 --- a/test/client_cli/en/__snapshots__/admin-list-oauth2-clients-with-custom-privileges.test.js.snap +++ b/test/client_cli/en/__snapshots__/admin-list-oauth2-clients-with-custom-privileges.test.js.snap @@ -72,7 +72,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/admin-list-static-user-mappings.test.js.snap b/test/client_cli/en/__snapshots__/admin-list-static-user-mappings.test.js.snap index 6235f9b95..40fb0222a 100644 --- a/test/client_cli/en/__snapshots__/admin-list-static-user-mappings.test.js.snap +++ b/test/client_cli/en/__snapshots__/admin-list-static-user-mappings.test.js.snap @@ -72,7 +72,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/admin-remove-static-user-mapping.test.js.snap b/test/client_cli/en/__snapshots__/admin-remove-static-user-mapping.test.js.snap index 550ca843e..3dfcfda8c 100644 --- a/test/client_cli/en/__snapshots__/admin-remove-static-user-mapping.test.js.snap +++ b/test/client_cli/en/__snapshots__/admin-remove-static-user-mapping.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/admin-repair-org-model.test.js.snap b/test/client_cli/en/__snapshots__/admin-repair-org-model.test.js.snap index a1b861397..05ec23b8a 100644 --- a/test/client_cli/en/__snapshots__/admin-repair-org-model.test.js.snap +++ b/test/client_cli/en/__snapshots__/admin-repair-org-model.test.js.snap @@ -77,7 +77,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/admin-revoke-oauth2-client-admin-privileges.test.js.snap b/test/client_cli/en/__snapshots__/admin-revoke-oauth2-client-admin-privileges.test.js.snap index ec5b8fef1..b7115c067 100644 --- a/test/client_cli/en/__snapshots__/admin-revoke-oauth2-client-admin-privileges.test.js.snap +++ b/test/client_cli/en/__snapshots__/admin-revoke-oauth2-client-admin-privileges.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/admin-show-generic-extension-attributes.test.js.snap b/test/client_cli/en/__snapshots__/admin-show-generic-extension-attributes.test.js.snap index df5163fc9..b757bc5cb 100644 --- a/test/client_cli/en/__snapshots__/admin-show-generic-extension-attributes.test.js.snap +++ b/test/client_cli/en/__snapshots__/admin-show-generic-extension-attributes.test.js.snap @@ -76,7 +76,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/agent-delete.test.js.snap b/test/client_cli/en/__snapshots__/agent-delete.test.js.snap index 8723663b1..e5f68d0fb 100644 --- a/test/client_cli/en/__snapshots__/agent-delete.test.js.snap +++ b/test/client_cli/en/__snapshots__/agent-delete.test.js.snap @@ -74,7 +74,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/agent-describe.test.js.snap b/test/client_cli/en/__snapshots__/agent-describe.test.js.snap index c51ae5e4e..37ee4abe3 100644 --- a/test/client_cli/en/__snapshots__/agent-describe.test.js.snap +++ b/test/client_cli/en/__snapshots__/agent-describe.test.js.snap @@ -74,7 +74,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/agent-export.test.js.snap b/test/client_cli/en/__snapshots__/agent-export.test.js.snap index 140f21f16..5202032a9 100644 --- a/test/client_cli/en/__snapshots__/agent-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/agent-export.test.js.snap @@ -81,7 +81,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -N, --no-metadata Does not include metadata in the export file. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/agent-gateway-delete.test.js.snap b/test/client_cli/en/__snapshots__/agent-gateway-delete.test.js.snap index bc58fdf8f..c9c83c144 100644 --- a/test/client_cli/en/__snapshots__/agent-gateway-delete.test.js.snap +++ b/test/client_cli/en/__snapshots__/agent-gateway-delete.test.js.snap @@ -75,7 +75,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/agent-gateway-describe.test.js.snap b/test/client_cli/en/__snapshots__/agent-gateway-describe.test.js.snap index 79f939fb4..a81b5797d 100644 --- a/test/client_cli/en/__snapshots__/agent-gateway-describe.test.js.snap +++ b/test/client_cli/en/__snapshots__/agent-gateway-describe.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/agent-gateway-export.test.js.snap b/test/client_cli/en/__snapshots__/agent-gateway-export.test.js.snap index ce89b195a..c44242797 100644 --- a/test/client_cli/en/__snapshots__/agent-gateway-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/agent-gateway-export.test.js.snap @@ -81,7 +81,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -N, --no-metadata Does not include metadata in the export file. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/agent-gateway-import.test.js.snap b/test/client_cli/en/__snapshots__/agent-gateway-import.test.js.snap index d67b2c9f2..b6c5e9610 100644 --- a/test/client_cli/en/__snapshots__/agent-gateway-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/agent-gateway-import.test.js.snap @@ -82,7 +82,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/agent-gateway-list.test.js.snap b/test/client_cli/en/__snapshots__/agent-gateway-list.test.js.snap index d9fbf7810..543b0b891 100644 --- a/test/client_cli/en/__snapshots__/agent-gateway-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/agent-gateway-list.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/agent-import.test.js.snap b/test/client_cli/en/__snapshots__/agent-import.test.js.snap index 3d8bb5213..f97158839 100644 --- a/test/client_cli/en/__snapshots__/agent-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/agent-import.test.js.snap @@ -82,7 +82,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/agent-java-delete.test.js.snap b/test/client_cli/en/__snapshots__/agent-java-delete.test.js.snap index c2624a67d..33d3d961e 100644 --- a/test/client_cli/en/__snapshots__/agent-java-delete.test.js.snap +++ b/test/client_cli/en/__snapshots__/agent-java-delete.test.js.snap @@ -74,7 +74,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/agent-java-describe.test.js.snap b/test/client_cli/en/__snapshots__/agent-java-describe.test.js.snap index 2cfbf6770..91e84b832 100644 --- a/test/client_cli/en/__snapshots__/agent-java-describe.test.js.snap +++ b/test/client_cli/en/__snapshots__/agent-java-describe.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/agent-java-export.test.js.snap b/test/client_cli/en/__snapshots__/agent-java-export.test.js.snap index 940f712c9..82eee9656 100644 --- a/test/client_cli/en/__snapshots__/agent-java-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/agent-java-export.test.js.snap @@ -80,7 +80,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -N, --no-metadata Does not include metadata in the export file. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/agent-java-import.test.js.snap b/test/client_cli/en/__snapshots__/agent-java-import.test.js.snap index 53afa6b74..b582ec7e2 100644 --- a/test/client_cli/en/__snapshots__/agent-java-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/agent-java-import.test.js.snap @@ -81,7 +81,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/agent-java-list.test.js.snap b/test/client_cli/en/__snapshots__/agent-java-list.test.js.snap index 45b53f8c9..6a4046ca5 100644 --- a/test/client_cli/en/__snapshots__/agent-java-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/agent-java-list.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/agent-list.test.js.snap b/test/client_cli/en/__snapshots__/agent-list.test.js.snap index 6700357b3..744da79de 100644 --- a/test/client_cli/en/__snapshots__/agent-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/agent-list.test.js.snap @@ -74,7 +74,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/agent-web-delete.test.js.snap b/test/client_cli/en/__snapshots__/agent-web-delete.test.js.snap index a311eab31..f095d2c42 100644 --- a/test/client_cli/en/__snapshots__/agent-web-delete.test.js.snap +++ b/test/client_cli/en/__snapshots__/agent-web-delete.test.js.snap @@ -75,7 +75,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/agent-web-describe.test.js.snap b/test/client_cli/en/__snapshots__/agent-web-describe.test.js.snap index b82e5ab1a..85b3fc0b8 100644 --- a/test/client_cli/en/__snapshots__/agent-web-describe.test.js.snap +++ b/test/client_cli/en/__snapshots__/agent-web-describe.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/agent-web-export.test.js.snap b/test/client_cli/en/__snapshots__/agent-web-export.test.js.snap index 2a817336e..50a9d6ec2 100644 --- a/test/client_cli/en/__snapshots__/agent-web-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/agent-web-export.test.js.snap @@ -80,7 +80,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -N, --no-metadata Does not include metadata in the export file. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/agent-web-import.test.js.snap b/test/client_cli/en/__snapshots__/agent-web-import.test.js.snap index 4649f8318..32afb4a18 100644 --- a/test/client_cli/en/__snapshots__/agent-web-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/agent-web-import.test.js.snap @@ -81,7 +81,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/agent-web-list.test.js.snap b/test/client_cli/en/__snapshots__/agent-web-list.test.js.snap index 5f1331447..7af59f4cf 100644 --- a/test/client_cli/en/__snapshots__/agent-web-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/agent-web-list.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/app-delete.test.js.snap b/test/client_cli/en/__snapshots__/app-delete.test.js.snap index 592f2d02d..02f49ff94 100644 --- a/test/client_cli/en/__snapshots__/app-delete.test.js.snap +++ b/test/client_cli/en/__snapshots__/app-delete.test.js.snap @@ -76,7 +76,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --no-deep No deep delete. This leaves orphaned configuration artifacts behind. diff --git a/test/client_cli/en/__snapshots__/app-export.test.js.snap b/test/client_cli/en/__snapshots__/app-export.test.js.snap index 1de27341d..da396fda5 100644 --- a/test/client_cli/en/__snapshots__/app-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/app-export.test.js.snap @@ -81,7 +81,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -N, --no-metadata Does not include metadata in the export file. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/app-import.test.js.snap b/test/client_cli/en/__snapshots__/app-import.test.js.snap index 0f4513e73..cdea09887 100644 --- a/test/client_cli/en/__snapshots__/app-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/app-import.test.js.snap @@ -81,7 +81,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --no-deps Do not include any dependencies (scripts). diff --git a/test/client_cli/en/__snapshots__/app-list.test.js.snap b/test/client_cli/en/__snapshots__/app-list.test.js.snap index 5766b42f9..6fcbfa2dc 100644 --- a/test/client_cli/en/__snapshots__/app-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/app-list.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/authn-describe.test.js.snap b/test/client_cli/en/__snapshots__/authn-describe.test.js.snap index 9529aeaca..3ab653462 100644 --- a/test/client_cli/en/__snapshots__/authn-describe.test.js.snap +++ b/test/client_cli/en/__snapshots__/authn-describe.test.js.snap @@ -74,7 +74,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/authn-export.test.js.snap b/test/client_cli/en/__snapshots__/authn-export.test.js.snap index a205c3e38..cc09c7b72 100644 --- a/test/client_cli/en/__snapshots__/authn-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/authn-export.test.js.snap @@ -74,7 +74,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -N, --no-metadata Does not include metadata in the export file. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/authn-import.test.js.snap b/test/client_cli/en/__snapshots__/authn-import.test.js.snap index e1bdc4073..437693a72 100644 --- a/test/client_cli/en/__snapshots__/authn-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/authn-import.test.js.snap @@ -74,7 +74,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/authz-policy-delete.test.js.snap b/test/client_cli/en/__snapshots__/authz-policy-delete.test.js.snap index 744499154..49495c6a4 100644 --- a/test/client_cli/en/__snapshots__/authz-policy-delete.test.js.snap +++ b/test/client_cli/en/__snapshots__/authz-policy-delete.test.js.snap @@ -76,7 +76,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/authz-policy-describe.test.js.snap b/test/client_cli/en/__snapshots__/authz-policy-describe.test.js.snap index a57f9a3f6..1d57d51fa 100644 --- a/test/client_cli/en/__snapshots__/authz-policy-describe.test.js.snap +++ b/test/client_cli/en/__snapshots__/authz-policy-describe.test.js.snap @@ -74,7 +74,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/authz-policy-export.test.js.snap b/test/client_cli/en/__snapshots__/authz-policy-export.test.js.snap index f574540ab..98b6f309f 100644 --- a/test/client_cli/en/__snapshots__/authz-policy-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/authz-policy-export.test.js.snap @@ -80,7 +80,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -N, --no-metadata Does not include metadata in the export file. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/authz-policy-import.test.js.snap b/test/client_cli/en/__snapshots__/authz-policy-import.test.js.snap index 18ce5583e..09f1dc204 100644 --- a/test/client_cli/en/__snapshots__/authz-policy-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/authz-policy-import.test.js.snap @@ -81,7 +81,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --no-deps Do not import dependencies (scripts) even if they are available in the import diff --git a/test/client_cli/en/__snapshots__/authz-policy-list.test.js.snap b/test/client_cli/en/__snapshots__/authz-policy-list.test.js.snap index bf357cc9a..3fb17f780 100644 --- a/test/client_cli/en/__snapshots__/authz-policy-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/authz-policy-list.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/authz-set-delete.test.js.snap b/test/client_cli/en/__snapshots__/authz-set-delete.test.js.snap index 390602502..e03e6e026 100644 --- a/test/client_cli/en/__snapshots__/authz-set-delete.test.js.snap +++ b/test/client_cli/en/__snapshots__/authz-set-delete.test.js.snap @@ -75,7 +75,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/authz-set-describe.test.js.snap b/test/client_cli/en/__snapshots__/authz-set-describe.test.js.snap index 7eb683e1e..b488af397 100644 --- a/test/client_cli/en/__snapshots__/authz-set-describe.test.js.snap +++ b/test/client_cli/en/__snapshots__/authz-set-describe.test.js.snap @@ -74,7 +74,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/authz-set-export.test.js.snap b/test/client_cli/en/__snapshots__/authz-set-export.test.js.snap index 073ee7c73..d9bba2695 100644 --- a/test/client_cli/en/__snapshots__/authz-set-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/authz-set-export.test.js.snap @@ -81,7 +81,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -N, --no-metadata Does not include metadata in the export file. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/authz-set-import.test.js.snap b/test/client_cli/en/__snapshots__/authz-set-import.test.js.snap index ac611010f..858e63a3f 100644 --- a/test/client_cli/en/__snapshots__/authz-set-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/authz-set-import.test.js.snap @@ -82,7 +82,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --no-deps Do not include any dependencies (policies, scripts). diff --git a/test/client_cli/en/__snapshots__/authz-type-delete.test.js.snap b/test/client_cli/en/__snapshots__/authz-type-delete.test.js.snap index 9197713ce..79d04dc3d 100644 --- a/test/client_cli/en/__snapshots__/authz-type-delete.test.js.snap +++ b/test/client_cli/en/__snapshots__/authz-type-delete.test.js.snap @@ -76,7 +76,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -n, --type-name Resource type name. If specified, -a is ignored. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/authz-type-describe.test.js.snap b/test/client_cli/en/__snapshots__/authz-type-describe.test.js.snap index a372d1b2f..b0b042202 100644 --- a/test/client_cli/en/__snapshots__/authz-type-describe.test.js.snap +++ b/test/client_cli/en/__snapshots__/authz-type-describe.test.js.snap @@ -74,7 +74,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -n, --type-name Resource type name. --no-cache Disable token cache for this operation. --sa-id Service account id. diff --git a/test/client_cli/en/__snapshots__/authz-type-export.test.js.snap b/test/client_cli/en/__snapshots__/authz-type-export.test.js.snap index f1937ef7c..136d20455 100644 --- a/test/client_cli/en/__snapshots__/authz-type-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/authz-type-export.test.js.snap @@ -81,7 +81,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -n, --type-name Resource type name. If specified, -a and -A are ignored. -N, --no-metadata Does not include metadata in the export diff --git a/test/client_cli/en/__snapshots__/authz-type-import.test.js.snap b/test/client_cli/en/__snapshots__/authz-type-import.test.js.snap index b72e1a2ec..94c65b5cb 100644 --- a/test/client_cli/en/__snapshots__/authz-type-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/authz-type-import.test.js.snap @@ -81,7 +81,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -n, --type-name Resource type name. If specified, -a and -A are ignored. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/authz-type-list.test.js.snap b/test/client_cli/en/__snapshots__/authz-type-list.test.js.snap index d517950ce..9d7f2034a 100644 --- a/test/client_cli/en/__snapshots__/authz-type-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/authz-type-list.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/config-export.test.js.snap b/test/client_cli/en/__snapshots__/config-export.test.js.snap index 4b7ffd871..9d59b5666 100644 --- a/test/client_cli/en/__snapshots__/config-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/config-export.test.js.snap @@ -97,7 +97,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -N, --no-metadata Does not include metadata in the export file. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/config-import.test.js.snap b/test/client_cli/en/__snapshots__/config-import.test.js.snap index f1b55e7e6..b1969a6ff 100644 --- a/test/client_cli/en/__snapshots__/config-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/config-import.test.js.snap @@ -94,7 +94,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --re-uuid-journeys Generate new UUIDs for all journey nodes during import. (default: off) diff --git a/test/client_cli/en/__snapshots__/conn-save.test.js.snap b/test/client_cli/en/__snapshots__/conn-save.test.js.snap index 6bc294566..3d8808957 100644 --- a/test/client_cli/en/__snapshots__/conn-save.test.js.snap +++ b/test/client_cli/en/__snapshots__/conn-save.test.js.snap @@ -28,7 +28,7 @@ Options: classic: A classic Access Management-only deployment with custom layout and configuration. cloud: A ForgeRock Identity Cloud environment. forgeops: A ForgeOps CDK or CDM deployment. - The detected or provided deployment type controls certain behavior like obtaining an Identity Management admin token or not and whether to export/import referenced email templates or how to walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", "forgeops") + The detected or provided deployment type controls certain behavior like obtaining an Identity Management admin token or not and whether to export/import referenced email templates or how to walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", "forgeops", "idm") --no-cache Disable token cache for this operation. --no-log-api Do not create and add log API key and secret. --no-sa Do not create and add service account. @@ -96,7 +96,7 @@ Options: classic: A classic Access Management-only deployment with custom layout and configuration. cloud: A ForgeRock Identity Cloud environment. forgeops: A ForgeOps CDK or CDM deployment. - The detected or provided deployment type controls certain behavior like obtaining an Identity Management admin token or not and whether to export/import referenced email templates or how to walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", "forgeops") + The detected or provided deployment type controls certain behavior like obtaining an Identity Management admin token or not and whether to export/import referenced email templates or how to walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", "forgeops", "idm") --no-cache Disable token cache for this operation. --no-log-api Do not create and add log API key and secret. --no-sa Do not create and add service account. @@ -164,7 +164,7 @@ Options: classic: A classic Access Management-only deployment with custom layout and configuration. cloud: A ForgeRock Identity Cloud environment. forgeops: A ForgeOps CDK or CDM deployment. - The detected or provided deployment type controls certain behavior like obtaining an Identity Management admin token or not and whether to export/import referenced email templates or how to walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", "forgeops") + The detected or provided deployment type controls certain behavior like obtaining an Identity Management admin token or not and whether to export/import referenced email templates or how to walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", "forgeops", "idm") --no-cache Disable token cache for this operation. --no-log-api Do not create and add log API key and secret. --no-sa Do not create and add service account. @@ -232,7 +232,7 @@ Options: classic: A classic Access Management-only deployment with custom layout and configuration. cloud: A ForgeRock Identity Cloud environment. forgeops: A ForgeOps CDK or CDM deployment. - The detected or provided deployment type controls certain behavior like obtaining an Identity Management admin token or not and whether to export/import referenced email templates or how to walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", "forgeops") + The detected or provided deployment type controls certain behavior like obtaining an Identity Management admin token or not and whether to export/import referenced email templates or how to walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", "forgeops", "idm") --no-cache Disable token cache for this operation. --no-log-api Do not create and add log API key and secret. --no-sa Do not create and add service account. diff --git a/test/client_cli/en/__snapshots__/email-template-export.test.js.snap b/test/client_cli/en/__snapshots__/email-template-export.test.js.snap index 3053f1191..3050770bb 100644 --- a/test/client_cli/en/__snapshots__/email-template-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/email-template-export.test.js.snap @@ -82,7 +82,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -N, --no-metadata Does not include metadata in the export file. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/email-template-import.test.js.snap b/test/client_cli/en/__snapshots__/email-template-import.test.js.snap index 3ec645b61..36b1f92f0 100644 --- a/test/client_cli/en/__snapshots__/email-template-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/email-template-import.test.js.snap @@ -81,7 +81,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --raw Import raw email template files. Raw templates do not contain the id/name, diff --git a/test/client_cli/en/__snapshots__/email-template-list.test.js.snap b/test/client_cli/en/__snapshots__/email-template-list.test.js.snap index 190cab019..c405d106f 100644 --- a/test/client_cli/en/__snapshots__/email-template-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/email-template-list.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/esv-apply.test.js.snap b/test/client_cli/en/__snapshots__/esv-apply.test.js.snap index 65ed568a1..d2b1d6b46 100644 --- a/test/client_cli/en/__snapshots__/esv-apply.test.js.snap +++ b/test/client_cli/en/__snapshots__/esv-apply.test.js.snap @@ -74,7 +74,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --no-wait Don't wait for the updates to finish applying. diff --git a/test/client_cli/en/__snapshots__/esv-secret-create.test.js.snap b/test/client_cli/en/__snapshots__/esv-secret-create.test.js.snap index 9c4f96b97..72e9d5765 100644 --- a/test/client_cli/en/__snapshots__/esv-secret-create.test.js.snap +++ b/test/client_cli/en/__snapshots__/esv-secret-create.test.js.snap @@ -75,7 +75,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --no-use-in-placeholders Secret cannot be used in placeholders. --sa-id Service account id. diff --git a/test/client_cli/en/__snapshots__/esv-secret-delete.test.js.snap b/test/client_cli/en/__snapshots__/esv-secret-delete.test.js.snap index 9720ca71d..67169ce31 100644 --- a/test/client_cli/en/__snapshots__/esv-secret-delete.test.js.snap +++ b/test/client_cli/en/__snapshots__/esv-secret-delete.test.js.snap @@ -71,7 +71,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/esv-secret-describe.test.js.snap b/test/client_cli/en/__snapshots__/esv-secret-describe.test.js.snap index 5629e72e7..8238675f5 100644 --- a/test/client_cli/en/__snapshots__/esv-secret-describe.test.js.snap +++ b/test/client_cli/en/__snapshots__/esv-secret-describe.test.js.snap @@ -74,7 +74,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/esv-secret-export.test.js.snap b/test/client_cli/en/__snapshots__/esv-secret-export.test.js.snap index 6f5f6cce3..c0a42da3d 100644 --- a/test/client_cli/en/__snapshots__/esv-secret-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/esv-secret-export.test.js.snap @@ -83,7 +83,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -N, --no-metadata Does not include metadata in the export file. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/esv-secret-import.test.js.snap b/test/client_cli/en/__snapshots__/esv-secret-import.test.js.snap index 6a790b0dc..a0311175f 100644 --- a/test/client_cli/en/__snapshots__/esv-secret-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/esv-secret-import.test.js.snap @@ -84,7 +84,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/esv-secret-list.test.js.snap b/test/client_cli/en/__snapshots__/esv-secret-list.test.js.snap index 20dc280b3..0a33b3cd9 100644 --- a/test/client_cli/en/__snapshots__/esv-secret-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/esv-secret-list.test.js.snap @@ -74,7 +74,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/esv-secret-set.test.js.snap b/test/client_cli/en/__snapshots__/esv-secret-set.test.js.snap index 441356f70..9a07b8cf8 100644 --- a/test/client_cli/en/__snapshots__/esv-secret-set.test.js.snap +++ b/test/client_cli/en/__snapshots__/esv-secret-set.test.js.snap @@ -70,7 +70,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/esv-secret-version-activate.test.js.snap b/test/client_cli/en/__snapshots__/esv-secret-version-activate.test.js.snap index f14c2bbff..03ddf6447 100644 --- a/test/client_cli/en/__snapshots__/esv-secret-version-activate.test.js.snap +++ b/test/client_cli/en/__snapshots__/esv-secret-version-activate.test.js.snap @@ -69,7 +69,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/esv-secret-version-create.test.js.snap b/test/client_cli/en/__snapshots__/esv-secret-version-create.test.js.snap index 53f96e356..c9f2f4f79 100644 --- a/test/client_cli/en/__snapshots__/esv-secret-version-create.test.js.snap +++ b/test/client_cli/en/__snapshots__/esv-secret-version-create.test.js.snap @@ -72,7 +72,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/esv-secret-version-deactivate.test.js.snap b/test/client_cli/en/__snapshots__/esv-secret-version-deactivate.test.js.snap index 51a18724f..d2ea0adec 100644 --- a/test/client_cli/en/__snapshots__/esv-secret-version-deactivate.test.js.snap +++ b/test/client_cli/en/__snapshots__/esv-secret-version-deactivate.test.js.snap @@ -69,7 +69,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/esv-secret-version-delete.test.js.snap b/test/client_cli/en/__snapshots__/esv-secret-version-delete.test.js.snap index b1fbc393e..255e9aec8 100644 --- a/test/client_cli/en/__snapshots__/esv-secret-version-delete.test.js.snap +++ b/test/client_cli/en/__snapshots__/esv-secret-version-delete.test.js.snap @@ -71,7 +71,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/esv-secret-version-list.test.js.snap b/test/client_cli/en/__snapshots__/esv-secret-version-list.test.js.snap index 839962660..6fc12341b 100644 --- a/test/client_cli/en/__snapshots__/esv-secret-version-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/esv-secret-version-list.test.js.snap @@ -70,7 +70,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/esv-variable-create.test.js.snap b/test/client_cli/en/__snapshots__/esv-variable-create.test.js.snap index 57774a259..1575828ea 100644 --- a/test/client_cli/en/__snapshots__/esv-variable-create.test.js.snap +++ b/test/client_cli/en/__snapshots__/esv-variable-create.test.js.snap @@ -70,7 +70,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/esv-variable-delete.test.js.snap b/test/client_cli/en/__snapshots__/esv-variable-delete.test.js.snap index bcf382eb6..cec130982 100644 --- a/test/client_cli/en/__snapshots__/esv-variable-delete.test.js.snap +++ b/test/client_cli/en/__snapshots__/esv-variable-delete.test.js.snap @@ -72,7 +72,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --no-deep No deep delete. This leaves orphaned configuration artifacts behind. diff --git a/test/client_cli/en/__snapshots__/esv-variable-describe.test.js.snap b/test/client_cli/en/__snapshots__/esv-variable-describe.test.js.snap index e3bfa6d47..196edef46 100644 --- a/test/client_cli/en/__snapshots__/esv-variable-describe.test.js.snap +++ b/test/client_cli/en/__snapshots__/esv-variable-describe.test.js.snap @@ -74,7 +74,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/esv-variable-export.test.js.snap b/test/client_cli/en/__snapshots__/esv-variable-export.test.js.snap index 2e01d8792..f5d8faffc 100644 --- a/test/client_cli/en/__snapshots__/esv-variable-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/esv-variable-export.test.js.snap @@ -76,7 +76,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -N, --no-metadata Does not include metadata in the export file. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/esv-variable-import.test.js.snap b/test/client_cli/en/__snapshots__/esv-variable-import.test.js.snap index 4727ab958..ac88294ac 100644 --- a/test/client_cli/en/__snapshots__/esv-variable-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/esv-variable-import.test.js.snap @@ -77,7 +77,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/esv-variable-list.test.js.snap b/test/client_cli/en/__snapshots__/esv-variable-list.test.js.snap index f40191719..5dfe5f484 100644 --- a/test/client_cli/en/__snapshots__/esv-variable-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/esv-variable-list.test.js.snap @@ -74,7 +74,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/esv-variable-set.test.js.snap b/test/client_cli/en/__snapshots__/esv-variable-set.test.js.snap index 8237a6b6f..78f4ddd5b 100644 --- a/test/client_cli/en/__snapshots__/esv-variable-set.test.js.snap +++ b/test/client_cli/en/__snapshots__/esv-variable-set.test.js.snap @@ -70,7 +70,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/idm-count.test.js.snap b/test/client_cli/en/__snapshots__/idm-count.test.js.snap index 1ceeb4636..bfdf419e1 100644 --- a/test/client_cli/en/__snapshots__/idm-count.test.js.snap +++ b/test/client_cli/en/__snapshots__/idm-count.test.js.snap @@ -72,7 +72,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. -o, --managed-object Type of managed object to count. E.g. "alpha_user", "alpha_role", "user", diff --git a/test/client_cli/en/__snapshots__/idm-delete.test.js.snap b/test/client_cli/en/__snapshots__/idm-delete.test.js.snap index aaecb77aa..5671cd406 100644 --- a/test/client_cli/en/__snapshots__/idm-delete.test.js.snap +++ b/test/client_cli/en/__snapshots__/idm-delete.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/idm-export.test.js.snap b/test/client_cli/en/__snapshots__/idm-export.test.js.snap index da40cbe0c..9f2253e41 100644 --- a/test/client_cli/en/__snapshots__/idm-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/idm-export.test.js.snap @@ -88,7 +88,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -N, --no-metadata Does not include metadata in the export file. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/idm-import.test.js.snap b/test/client_cli/en/__snapshots__/idm-import.test.js.snap index 2365775c9..506f66e5e 100644 --- a/test/client_cli/en/__snapshots__/idm-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/idm-import.test.js.snap @@ -86,7 +86,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/idm-list.test.js.snap b/test/client_cli/en/__snapshots__/idm-list.test.js.snap index 91a77306a..3fdeac7d8 100644 --- a/test/client_cli/en/__snapshots__/idm-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/idm-list.test.js.snap @@ -72,7 +72,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/idm-schema-object-export.test.js.snap b/test/client_cli/en/__snapshots__/idm-schema-object-export.test.js.snap index 4ec904db0..ade223f95 100644 --- a/test/client_cli/en/__snapshots__/idm-schema-object-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/idm-schema-object-export.test.js.snap @@ -76,7 +76,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/idm-schema-object-import.test.js.snap b/test/client_cli/en/__snapshots__/idm-schema-object-import.test.js.snap index 4ec904db0..ade223f95 100644 --- a/test/client_cli/en/__snapshots__/idm-schema-object-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/idm-schema-object-import.test.js.snap @@ -76,7 +76,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/idp-delete.test.js.snap b/test/client_cli/en/__snapshots__/idp-delete.test.js.snap index 99b7a467a..713962c7a 100644 --- a/test/client_cli/en/__snapshots__/idp-delete.test.js.snap +++ b/test/client_cli/en/__snapshots__/idp-delete.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/idp-export.test.js.snap b/test/client_cli/en/__snapshots__/idp-export.test.js.snap index bb57f882f..4dd5af7ca 100644 --- a/test/client_cli/en/__snapshots__/idp-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/idp-export.test.js.snap @@ -81,7 +81,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -N, --no-metadata Does not include metadata in the export file. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/idp-import.test.js.snap b/test/client_cli/en/__snapshots__/idp-import.test.js.snap index 6c4130b49..658bee668 100644 --- a/test/client_cli/en/__snapshots__/idp-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/idp-import.test.js.snap @@ -81,7 +81,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --no-deps Do not include any dependencies (scripts). diff --git a/test/client_cli/en/__snapshots__/idp-list.test.js.snap b/test/client_cli/en/__snapshots__/idp-list.test.js.snap index 72135d594..dbb15e4a9 100644 --- a/test/client_cli/en/__snapshots__/idp-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/idp-list.test.js.snap @@ -72,7 +72,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/info.test.js.snap b/test/client_cli/en/__snapshots__/info.test.js.snap index 7b378eb21..fdf8b4d61 100644 --- a/test/client_cli/en/__snapshots__/info.test.js.snap +++ b/test/client_cli/en/__snapshots__/info.test.js.snap @@ -69,7 +69,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/journey-delete.test.js.snap b/test/client_cli/en/__snapshots__/journey-delete.test.js.snap index 8645489e1..d6a623a0a 100644 --- a/test/client_cli/en/__snapshots__/journey-delete.test.js.snap +++ b/test/client_cli/en/__snapshots__/journey-delete.test.js.snap @@ -76,7 +76,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --no-deep No deep delete. This leaves orphaned configuration artifacts behind. diff --git a/test/client_cli/en/__snapshots__/journey-describe.test.js.snap b/test/client_cli/en/__snapshots__/journey-describe.test.js.snap index 2be83270d..e2571badf 100644 --- a/test/client_cli/en/__snapshots__/journey-describe.test.js.snap +++ b/test/client_cli/en/__snapshots__/journey-describe.test.js.snap @@ -79,7 +79,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --markdown Output in markdown. --no-cache Disable token cache for this operation. -o, --override-version Override version. Notation: diff --git a/test/client_cli/en/__snapshots__/journey-disable.test.js.snap b/test/client_cli/en/__snapshots__/journey-disable.test.js.snap index 90bbd60d2..b6a700566 100644 --- a/test/client_cli/en/__snapshots__/journey-disable.test.js.snap +++ b/test/client_cli/en/__snapshots__/journey-disable.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/journey-enable.test.js.snap b/test/client_cli/en/__snapshots__/journey-enable.test.js.snap index c0dd964b2..57d74a3ec 100644 --- a/test/client_cli/en/__snapshots__/journey-enable.test.js.snap +++ b/test/client_cli/en/__snapshots__/journey-enable.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/journey-export.test.js.snap b/test/client_cli/en/__snapshots__/journey-export.test.js.snap index c17a8d94e..8bfdc7c58 100644 --- a/test/client_cli/en/__snapshots__/journey-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/journey-export.test.js.snap @@ -81,7 +81,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -N, --no-metadata Does not include metadata in the export file. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/journey-import.test.js.snap b/test/client_cli/en/__snapshots__/journey-import.test.js.snap index 4047dc74b..4cf22c487 100644 --- a/test/client_cli/en/__snapshots__/journey-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/journey-import.test.js.snap @@ -81,7 +81,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --no-deps Do not include any dependencies (scripts, email templates, SAML entity diff --git a/test/client_cli/en/__snapshots__/journey-list.test.js.snap b/test/client_cli/en/__snapshots__/journey-list.test.js.snap index e9579d4e2..08f01a8bb 100644 --- a/test/client_cli/en/__snapshots__/journey-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/journey-list.test.js.snap @@ -74,7 +74,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/journey-prune.test.js.snap b/test/client_cli/en/__snapshots__/journey-prune.test.js.snap index 7e657abbc..3f51b962d 100644 --- a/test/client_cli/en/__snapshots__/journey-prune.test.js.snap +++ b/test/client_cli/en/__snapshots__/journey-prune.test.js.snap @@ -74,7 +74,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/log-fetch.test.js.snap b/test/client_cli/en/__snapshots__/log-fetch.test.js.snap index 378545575..4a01a413d 100644 --- a/test/client_cli/en/__snapshots__/log-fetch.test.js.snap +++ b/test/client_cli/en/__snapshots__/log-fetch.test.js.snap @@ -93,7 +93,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. -s, --search-string Filter by a specific string (ANDed with transactionID filter) @@ -221,7 +221,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. -s, --search-string Filter by a specific string (ANDed with transactionID filter) diff --git a/test/client_cli/en/__snapshots__/log-list.test.js.snap b/test/client_cli/en/__snapshots__/log-list.test.js.snap index b869cc629..d5dce03c8 100644 --- a/test/client_cli/en/__snapshots__/log-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/log-list.test.js.snap @@ -68,7 +68,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) @@ -168,7 +168,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/log-tail.test.js.snap b/test/client_cli/en/__snapshots__/log-tail.test.js.snap index 1385dd60e..fab8d5185 100644 --- a/test/client_cli/en/__snapshots__/log-tail.test.js.snap +++ b/test/client_cli/en/__snapshots__/log-tail.test.js.snap @@ -83,7 +83,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) @@ -199,7 +199,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/mapping-delete.test.js.snap b/test/client_cli/en/__snapshots__/mapping-delete.test.js.snap index 0711bcf73..d27259c26 100644 --- a/test/client_cli/en/__snapshots__/mapping-delete.test.js.snap +++ b/test/client_cli/en/__snapshots__/mapping-delete.test.js.snap @@ -28,7 +28,7 @@ Options: classic: A classic Access Management-only deployment with custom layout and configuration. cloud: A ForgeRock Identity Cloud environment. forgeops: A ForgeOps CDK or CDM deployment. - The detected or provided deployment type controls certain behavior like obtaining an Identity Management admin token or not and whether to export/import referenced email templates or how to walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", "forgeops") + The detected or provided deployment type controls certain behavior like obtaining an Identity Management admin token or not and whether to export/import referenced email templates or how to walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) associated with the the service account. diff --git a/test/client_cli/en/__snapshots__/mapping-export.test.js.snap b/test/client_cli/en/__snapshots__/mapping-export.test.js.snap index 065a57e9d..fa71316eb 100644 --- a/test/client_cli/en/__snapshots__/mapping-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/mapping-export.test.js.snap @@ -30,7 +30,7 @@ Options: classic: A classic Access Management-only deployment with custom layout and configuration. cloud: A ForgeRock Identity Cloud environment. forgeops: A ForgeOps CDK or CDM deployment. - The detected or provided deployment type controls certain behavior like obtaining an Identity Management admin token or not and whether to export/import referenced email templates or how to walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", "forgeops") + The detected or provided deployment type controls certain behavior like obtaining an Identity Management admin token or not and whether to export/import referenced email templates or how to walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", "forgeops", "idm") -N, --no-metadata Does not include metadata in the export file. --no-cache Disable token cache for this operation. --no-deps Do not include any dependencies in export. diff --git a/test/client_cli/en/__snapshots__/mapping-import.test.js.snap b/test/client_cli/en/__snapshots__/mapping-import.test.js.snap index c83159977..0f64db4fa 100644 --- a/test/client_cli/en/__snapshots__/mapping-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/mapping-import.test.js.snap @@ -82,7 +82,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --no-deps Do not include any dependencies. --sa-id Service account id. diff --git a/test/client_cli/en/__snapshots__/mapping-list.test.js.snap b/test/client_cli/en/__snapshots__/mapping-list.test.js.snap index fa6581dab..52c6c075f 100644 --- a/test/client_cli/en/__snapshots__/mapping-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/mapping-list.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/mapping-rename.test.js.snap b/test/client_cli/en/__snapshots__/mapping-rename.test.js.snap index 8450139b9..5245f2137 100644 --- a/test/client_cli/en/__snapshots__/mapping-rename.test.js.snap +++ b/test/client_cli/en/__snapshots__/mapping-rename.test.js.snap @@ -86,7 +86,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/oauth-client-delete.test.js.snap b/test/client_cli/en/__snapshots__/oauth-client-delete.test.js.snap index f4643f35a..6d5f1a2b1 100644 --- a/test/client_cli/en/__snapshots__/oauth-client-delete.test.js.snap +++ b/test/client_cli/en/__snapshots__/oauth-client-delete.test.js.snap @@ -76,7 +76,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --no-deep No deep delete. This leaves orphaned configuration artifacts behind. diff --git a/test/client_cli/en/__snapshots__/oauth-client-export.test.js.snap b/test/client_cli/en/__snapshots__/oauth-client-export.test.js.snap index 10e8aa7f7..d0027129a 100644 --- a/test/client_cli/en/__snapshots__/oauth-client-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/oauth-client-export.test.js.snap @@ -80,7 +80,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -N, --no-metadata Does not include metadata in the export file. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/oauth-client-import.test.js.snap b/test/client_cli/en/__snapshots__/oauth-client-import.test.js.snap index 0439dc5a6..eb082cc07 100644 --- a/test/client_cli/en/__snapshots__/oauth-client-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/oauth-client-import.test.js.snap @@ -81,7 +81,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --no-deps Do not include any dependencies (scripts). diff --git a/test/client_cli/en/__snapshots__/oauth-client-list.test.js.snap b/test/client_cli/en/__snapshots__/oauth-client-list.test.js.snap index de5402261..8b407940d 100644 --- a/test/client_cli/en/__snapshots__/oauth-client-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/oauth-client-list.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/promote.test.js.snap b/test/client_cli/en/__snapshots__/promote.test.js.snap index 2f5865035..65b67602b 100644 --- a/test/client_cli/en/__snapshots__/promote.test.js.snap +++ b/test/client_cli/en/__snapshots__/promote.test.js.snap @@ -74,7 +74,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -M, --master-dir The directory where the master configurations is located. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/realm-add-custom-domain.test.js.snap b/test/client_cli/en/__snapshots__/realm-add-custom-domain.test.js.snap index 0fda55a2e..8bd4214a3 100644 --- a/test/client_cli/en/__snapshots__/realm-add-custom-domain.test.js.snap +++ b/test/client_cli/en/__snapshots__/realm-add-custom-domain.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/realm-describe.test.js.snap b/test/client_cli/en/__snapshots__/realm-describe.test.js.snap index 05ef9d0d8..cc6763b19 100644 --- a/test/client_cli/en/__snapshots__/realm-describe.test.js.snap +++ b/test/client_cli/en/__snapshots__/realm-describe.test.js.snap @@ -72,7 +72,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/realm-export.test.js.snap b/test/client_cli/en/__snapshots__/realm-export.test.js.snap index b59a2ef07..83b3c65f1 100644 --- a/test/client_cli/en/__snapshots__/realm-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/realm-export.test.js.snap @@ -80,7 +80,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -n, --realm-name Realm name. If specified, -a and -A are ignored. -N, --no-metadata Does not include metadata in the export diff --git a/test/client_cli/en/__snapshots__/realm-import.test.js.snap b/test/client_cli/en/__snapshots__/realm-import.test.js.snap index 686b58f2b..0d56fd599 100644 --- a/test/client_cli/en/__snapshots__/realm-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/realm-import.test.js.snap @@ -81,7 +81,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -n, --realm-name Realm name. If specified, only one realm is imported and the options -a and -A are ignored. diff --git a/test/client_cli/en/__snapshots__/realm-list.test.js.snap b/test/client_cli/en/__snapshots__/realm-list.test.js.snap index a1effb3ea..a1509b0b7 100644 --- a/test/client_cli/en/__snapshots__/realm-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/realm-list.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/realm-remove-custom-domain.test.js.snap b/test/client_cli/en/__snapshots__/realm-remove-custom-domain.test.js.snap index e3af3148b..729187257 100644 --- a/test/client_cli/en/__snapshots__/realm-remove-custom-domain.test.js.snap +++ b/test/client_cli/en/__snapshots__/realm-remove-custom-domain.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/role-export.test.js.snap b/test/client_cli/en/__snapshots__/role-export.test.js.snap index 6a59049ee..fd2b2782e 100644 --- a/test/client_cli/en/__snapshots__/role-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/role-export.test.js.snap @@ -82,7 +82,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -n, --role-name Internal role name. If specified, only one internal role is exported and the options -a and -A are ignored. diff --git a/test/client_cli/en/__snapshots__/role-import.test.js.snap b/test/client_cli/en/__snapshots__/role-import.test.js.snap index 67196159f..96e589f1c 100644 --- a/test/client_cli/en/__snapshots__/role-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/role-import.test.js.snap @@ -82,7 +82,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -n, --role-name Internal role name. If specified, only one internal role is imported and the options -a and -A are ignored. diff --git a/test/client_cli/en/__snapshots__/role-list.test.js.snap b/test/client_cli/en/__snapshots__/role-list.test.js.snap index e97092410..cdccff717 100644 --- a/test/client_cli/en/__snapshots__/role-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/role-list.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/saml-cot-export.test.js.snap b/test/client_cli/en/__snapshots__/saml-cot-export.test.js.snap index 0d46a2a79..7a5197937 100644 --- a/test/client_cli/en/__snapshots__/saml-cot-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/saml-cot-export.test.js.snap @@ -82,7 +82,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -N, --no-metadata Does not include metadata in the export file. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/saml-cot-import.test.js.snap b/test/client_cli/en/__snapshots__/saml-cot-import.test.js.snap index dc88c059e..5f6f07301 100644 --- a/test/client_cli/en/__snapshots__/saml-cot-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/saml-cot-import.test.js.snap @@ -83,7 +83,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/saml-cot-list.test.js.snap b/test/client_cli/en/__snapshots__/saml-cot-list.test.js.snap index 86559f430..b12960cd8 100644 --- a/test/client_cli/en/__snapshots__/saml-cot-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/saml-cot-list.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/saml-delete.test.js.snap b/test/client_cli/en/__snapshots__/saml-delete.test.js.snap index 0b4754f19..08f3c62c7 100644 --- a/test/client_cli/en/__snapshots__/saml-delete.test.js.snap +++ b/test/client_cli/en/__snapshots__/saml-delete.test.js.snap @@ -75,7 +75,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/saml-describe.test.js.snap b/test/client_cli/en/__snapshots__/saml-describe.test.js.snap index 5623e1014..9e31dfcc7 100644 --- a/test/client_cli/en/__snapshots__/saml-describe.test.js.snap +++ b/test/client_cli/en/__snapshots__/saml-describe.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/saml-export.test.js.snap b/test/client_cli/en/__snapshots__/saml-export.test.js.snap index 5056f3887..6143b9e1e 100644 --- a/test/client_cli/en/__snapshots__/saml-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/saml-export.test.js.snap @@ -84,7 +84,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -N, --no-metadata Does not include metadata in the export file. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/saml-import.test.js.snap b/test/client_cli/en/__snapshots__/saml-import.test.js.snap index b1192f2ef..5e405c37b 100644 --- a/test/client_cli/en/__snapshots__/saml-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/saml-import.test.js.snap @@ -83,7 +83,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --no-deps Do not include any dependencies (scripts). diff --git a/test/client_cli/en/__snapshots__/saml-list.test.js.snap b/test/client_cli/en/__snapshots__/saml-list.test.js.snap index 5b944cc3f..6480f541e 100644 --- a/test/client_cli/en/__snapshots__/saml-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/saml-list.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/saml-metadata-export.test.js.snap b/test/client_cli/en/__snapshots__/saml-metadata-export.test.js.snap index c19a1d519..ce64912e7 100644 --- a/test/client_cli/en/__snapshots__/saml-metadata-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/saml-metadata-export.test.js.snap @@ -78,7 +78,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/script-delete.test.js.snap b/test/client_cli/en/__snapshots__/script-delete.test.js.snap index 182e76faf..9a01ae87e 100644 --- a/test/client_cli/en/__snapshots__/script-delete.test.js.snap +++ b/test/client_cli/en/__snapshots__/script-delete.test.js.snap @@ -76,7 +76,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -n, --script-name Name of the script. If specified, -a and -A are ignored. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/script-describe.test.js.snap b/test/client_cli/en/__snapshots__/script-describe.test.js.snap index a7a5432a4..810c1888a 100644 --- a/test/client_cli/en/__snapshots__/script-describe.test.js.snap +++ b/test/client_cli/en/__snapshots__/script-describe.test.js.snap @@ -78,7 +78,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -n, --script-name Name of the script. --no-cache Disable token cache for this operation. --sa-id Service account id. diff --git a/test/client_cli/en/__snapshots__/script-export.test.js.snap b/test/client_cli/en/__snapshots__/script-export.test.js.snap index fd16724a3..58874c4ec 100644 --- a/test/client_cli/en/__snapshots__/script-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/script-export.test.js.snap @@ -82,7 +82,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -n, --script-name Name of the script. If specified, -a and -A are ignored. -N, --no-metadata Does not include metadata in the export diff --git a/test/client_cli/en/__snapshots__/script-import.test.js.snap b/test/client_cli/en/__snapshots__/script-import.test.js.snap index 72cd828da..8cfadfd55 100644 --- a/test/client_cli/en/__snapshots__/script-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/script-import.test.js.snap @@ -80,7 +80,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -n, --script-name Name of the script. If specified, -a and -A are ignored. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/script-list.test.js.snap b/test/client_cli/en/__snapshots__/script-list.test.js.snap index bf3dc5c33..bdb807feb 100644 --- a/test/client_cli/en/__snapshots__/script-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/script-list.test.js.snap @@ -78,7 +78,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/server-export.test.js.snap b/test/client_cli/en/__snapshots__/server-export.test.js.snap index 9d2d44c20..5c10413c2 100644 --- a/test/client_cli/en/__snapshots__/server-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/server-export.test.js.snap @@ -83,7 +83,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -N, --no-metadata Does not include metadata in the export file. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/server-import.test.js.snap b/test/client_cli/en/__snapshots__/server-import.test.js.snap index 388103399..70aa6a130 100644 --- a/test/client_cli/en/__snapshots__/server-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/server-import.test.js.snap @@ -83,7 +83,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/server-list.test.js.snap b/test/client_cli/en/__snapshots__/server-list.test.js.snap index 4e4679fb6..411145253 100644 --- a/test/client_cli/en/__snapshots__/server-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/server-list.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/service-delete.test.js.snap b/test/client_cli/en/__snapshots__/service-delete.test.js.snap index f56b7f63f..377751ce1 100644 --- a/test/client_cli/en/__snapshots__/service-delete.test.js.snap +++ b/test/client_cli/en/__snapshots__/service-delete.test.js.snap @@ -75,7 +75,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/service-export.test.js.snap b/test/client_cli/en/__snapshots__/service-export.test.js.snap index 3adbd1f42..068172131 100644 --- a/test/client_cli/en/__snapshots__/service-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/service-export.test.js.snap @@ -80,7 +80,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -N, --no-metadata Does not include metadata in the export file. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/service-import.test.js.snap b/test/client_cli/en/__snapshots__/service-import.test.js.snap index 19ff14e5c..b15ff64ff 100644 --- a/test/client_cli/en/__snapshots__/service-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/service-import.test.js.snap @@ -83,7 +83,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. -r, --current-realm Import service(s) into the current realm. Use this flag if you exported a diff --git a/test/client_cli/en/__snapshots__/service-list.test.js.snap b/test/client_cli/en/__snapshots__/service-list.test.js.snap index 5b2754504..509097167 100644 --- a/test/client_cli/en/__snapshots__/service-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/service-list.test.js.snap @@ -74,7 +74,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/shell.test.js.snap b/test/client_cli/en/__snapshots__/shell.test.js.snap index 93a19e872..5a1752203 100644 --- a/test/client_cli/en/__snapshots__/shell.test.js.snap +++ b/test/client_cli/en/__snapshots__/shell.test.js.snap @@ -74,7 +74,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/client_cli/en/__snapshots__/theme-delete.test.js.snap b/test/client_cli/en/__snapshots__/theme-delete.test.js.snap index 620217b5b..219857313 100644 --- a/test/client_cli/en/__snapshots__/theme-delete.test.js.snap +++ b/test/client_cli/en/__snapshots__/theme-delete.test.js.snap @@ -76,7 +76,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -n, --theme-name Name of the theme. If specified, -a and -A are ignored. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/theme-export.test.js.snap b/test/client_cli/en/__snapshots__/theme-export.test.js.snap index cf3edc234..85beaa4d5 100644 --- a/test/client_cli/en/__snapshots__/theme-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/theme-export.test.js.snap @@ -81,7 +81,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -n, --theme-name Name of the theme. If specified, -a and -A are ignored. -N, --no-metadata Does not include metadata in the export diff --git a/test/client_cli/en/__snapshots__/theme-import.test.js.snap b/test/client_cli/en/__snapshots__/theme-import.test.js.snap index 4aa6ee3de..9585ed956 100644 --- a/test/client_cli/en/__snapshots__/theme-import.test.js.snap +++ b/test/client_cli/en/__snapshots__/theme-import.test.js.snap @@ -81,7 +81,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") -n, --theme-name Name of the theme. If specified, -a and -A are ignored. --no-cache Disable token cache for this operation. diff --git a/test/client_cli/en/__snapshots__/theme-list.test.js.snap b/test/client_cli/en/__snapshots__/theme-list.test.js.snap index 77796bfe3..deb70478a 100644 --- a/test/client_cli/en/__snapshots__/theme-list.test.js.snap +++ b/test/client_cli/en/__snapshots__/theme-list.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/e2e/__snapshots__/config-import.e2e.test.js.snap b/test/e2e/__snapshots__/config-import.e2e.test.js.snap index 0725ed988..9dbf1c5e5 100644 --- a/test/e2e/__snapshots__/config-import.e2e.test.js.snap +++ b/test/e2e/__snapshots__/config-import.e2e.test.js.snap @@ -112,6 +112,8 @@ Error Importing Services " `; +exports[`frodo config import "frodo config import -AD test/e2e/exports/all-separate/idm -m idm": should export all IDM config to a on prem idm. 1`] = `""`; + exports[`frodo config import "frodo config import -AdD test/e2e/exports/all-separate/classic -m classic" Import everything from directory "test/e2e/exports/all-separate/classic" 1`] = ` "Connected to http://openam-frodo-dev.classic.com:8080/am [/] as user amAdmin Error Importing Authentication Settings @@ -840,6 +842,8 @@ Error Importing Services " `; +exports[`frodo config import "frodo config import -af test/e2e/exports/all/idm/all.config.json -m idm": should import all IDM config to on-prem idm 1`] = `""`; + exports[`frodo config import "frodo config import -f test/e2e/exports/all-separate/classic/realm/root/webhookService/Cool-Webhook.webhookService.json -m classic" Import the webhook service with no errors 1`] = `""`; exports[`frodo config import "frodo config import -gf test/e2e/exports/all-separate/classic/global/server/01.server.json -m classic" Import server 01 along with extracted properties and no errors 1`] = `""`; diff --git a/test/e2e/__snapshots__/email-template-import.e2e.test.js.snap b/test/e2e/__snapshots__/email-template-import.e2e.test.js.snap index cfea4124c..ef03354d1 100644 --- a/test/e2e/__snapshots__/email-template-import.e2e.test.js.snap +++ b/test/e2e/__snapshots__/email-template-import.e2e.test.js.snap @@ -14,6 +14,10 @@ exports[`frodo email template import "frodo email template import --raw -i welco exports[`frodo email template import "frodo email template import --template-id welcome --file test/e2e/exports/all/allEmailTemplates.template.email.json": should import the email template with the id "welcome" from the file "test/e2e/exports/all/allEmailTemplates.template.email.json" 1`] = `""`; +exports[`frodo email template import "frodo email template import -AD test/e2e/exports/all-separate/idm/global/emailTemplate -m idm": should import all on prem idm email templates from the directory" 1`] = `""`; + exports[`frodo email template import "frodo email template import -af allEmailTemplates.template.email.json -D test/e2e/exports/all": should import all email templates from the file "test/e2e/exports/all/allEmailTemplates.template.email.json" 1`] = `""`; exports[`frodo email template import "frodo email template import -af test/e2e/exports/all/allEmailTemplates.template.email.json": should import all email templates from the file "test/e2e/exports/all/allEmailTemplates.template.email.json" 1`] = `""`; + +exports[`frodo email template import "frodo email template import -af test/e2e/exports/all/idm/allEmailTemplates.template.email.json -m idm": should import email template for on prem idm from one file 1`] = `""`; diff --git a/test/e2e/__snapshots__/esv-secret-create.e2e.test.js.snap b/test/e2e/__snapshots__/esv-secret-create.e2e.test.js.snap index b8d018bbd..d9e51d700 100644 --- a/test/e2e/__snapshots__/esv-secret-create.e2e.test.js.snap +++ b/test/e2e/__snapshots__/esv-secret-create.e2e.test.js.snap @@ -89,7 +89,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --no-use-in-placeholders Secret cannot be used in placeholders. --sa-id Service account id. diff --git a/test/e2e/__snapshots__/idm-import.e2e.test.js.snap b/test/e2e/__snapshots__/idm-import.e2e.test.js.snap index 0524a36cb..2ecd81c19 100644 --- a/test/e2e/__snapshots__/idm-import.e2e.test.js.snap +++ b/test/e2e/__snapshots__/idm-import.e2e.test.js.snap @@ -39,8 +39,12 @@ Error updating config entity endpoint/testEndpoint2 " `; +exports[`frodo idm import "frodo idm import -AD test/e2e/exports/all-separate/idm/global/idm -m idm": Should import on prem idm config according to the idmenv and entity files" 1`] = `""`; + exports[`frodo idm import "frodo idm import -af test/e2e/exports/all/all.idm.json -e test/e2e/env/testEnvFile.env -E test/e2e/env/testEntitiesFile.json": Should import all configs from the file 'test/e2e/exports/all/all.idm.json' according to the env and entity files" 1`] = `""`; +exports[`frodo idm import "frodo idm import -af test/e2e/exports/all/idm/all.idm.json -m idm": Should import on prem idm config' according to the idmenv and entity files" 1`] = `""`; + exports[`frodo idm import "frodo idm import -f test/e2e/exports/all-separate/cloud/global/idm/script.idm.json": should import the idm config from the file named 'test/e2e/exports/all-separate/cloud/global/idm/script.idm.json'" 1`] = `""`; exports[`frodo idm import "frodo idm import -i script -D test/e2e/exports/all-separate/cloud/global/idm": should import the idm config with name 'script' from the directory test/e2e/exports/all-separate/cloud/global/idm" 1`] = `""`; diff --git a/test/e2e/__snapshots__/idp-delete.e2e.test.js.snap b/test/e2e/__snapshots__/idp-delete.e2e.test.js.snap index ceae3f37b..81e254462 100644 --- a/test/e2e/__snapshots__/idp-delete.e2e.test.js.snap +++ b/test/e2e/__snapshots__/idp-delete.e2e.test.js.snap @@ -73,7 +73,7 @@ Options: walk through the tenant admin login flow of Identity Cloud and handle MFA (choices: "classic", "cloud", - "forgeops") + "forgeops", "idm") --no-cache Disable token cache for this operation. --sa-id Service account id. --sa-jwk-file File containing the JSON Web Key (JWK) diff --git a/test/e2e/__snapshots__/mapping-import.e2e.test.js.snap b/test/e2e/__snapshots__/mapping-import.e2e.test.js.snap index 2b55b8881..f94b01a2b 100644 --- a/test/e2e/__snapshots__/mapping-import.e2e.test.js.snap +++ b/test/e2e/__snapshots__/mapping-import.e2e.test.js.snap @@ -10,8 +10,12 @@ exports[`frodo mapping import "frodo mapping import --no-deps --mapping-id mappi exports[`frodo mapping import "frodo mapping import -AD test/e2e/exports/all-separate/cloud/global/idm": should import all mappings from the test/e2e/exports/all-separate/cloud/global/idm directory" 1`] = `""`; +exports[`frodo mapping import "frodo mapping import -AD test/e2e/exports/all-separate/idm/global/sync -m idm": should import all IDM mappings from the directory" 1`] = `""`; + exports[`frodo mapping import "frodo mapping import -af test/e2e/exports/all/allMappings.mapping.json": should import all mappings from the file "test/e2e/exports/all/allMappings.mapping.json" 1`] = `""`; +exports[`frodo mapping import "frodo mapping import -af test/e2e/exports/all/idm/allMappings.mapping.json -m idm": should import all IDM mappings from file." 1`] = `""`; + exports[`frodo mapping import "frodo mapping import -f test/e2e/exports/all/allMappings.mapping.json": should import the first mapping from the file "test/e2e/exports/all/allMappings.mapping.json" 1`] = `""`; exports[`frodo mapping import "frodo mapping import -i sync/managedAlpha_application_managedBravo_application -f test/e2e/exports/all/allMappings.mapping.json": should import the mapping with the id "sync/managedAlpha_application_managedBravo_application" from the file "test/e2e/exports/all/allMappings.mapping.json" 1`] = `""`; diff --git a/test/e2e/__snapshots__/role-import.e2e.test.js.snap b/test/e2e/__snapshots__/role-import.e2e.test.js.snap index 1e90df4f1..b83011f5a 100644 --- a/test/e2e/__snapshots__/role-import.e2e.test.js.snap +++ b/test/e2e/__snapshots__/role-import.e2e.test.js.snap @@ -10,8 +10,12 @@ exports[`frodo role import "frodo role import --role-name test-internal-role --f exports[`frodo role import "frodo role import -AD test/e2e/exports/all-separate/cloud/global/internalRole": should import all roles from the test/e2e/exports/all-separate/cloud/global/internalRole directory" 1`] = `""`; +exports[`frodo role import "frodo role import -AD test/e2e/exports/all-separate/idm/global/internalRole -m idm ": should import all on prem idm roles from the directory" 1`] = `""`; + exports[`frodo role import "frodo role import -af test/e2e/exports/all/allInternalRoles.internalRole.json": should import all roles from the file "test/e2e/exports/all/allInternalRoles.internalRole.json" 1`] = `""`; +exports[`frodo role import "frodo role import -af test/e2e/exports/all/idm/allInternalRoles.internalRole.json -m idm": should import all on prem idm roles from one file" 1`] = `""`; + exports[`frodo role import "frodo role import -f test/e2e/exports/all/allInternalRoles.internalRole.json": should import the first role from the file "test/e2e/exports/all/allInternalRoles.internalRole.json" 1`] = `""`; exports[`frodo role import "frodo role import -i ccb11ba1-333b-4197-95db-89bb08a2ab56 -f test/e2e/exports/all/allInternalRoles.internalRole.json": should import the role with the id "ccb11ba1-333b-4197-95db-89bb08a2ab56" from the file "test/e2e/exports/all/allInternalRoles.internalRole.json" 1`] = `""`; diff --git a/test/e2e/config-export.e2e.test.js b/test/e2e/config-export.e2e.test.js index 49ad6eda7..359e13c21 100644 --- a/test/e2e/config-export.e2e.test.js +++ b/test/e2e/config-export.e2e.test.js @@ -63,15 +63,24 @@ FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openam-frodo-dev.classic.co FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openam-frodo-dev.classic.com:8080/am frodo config export --all-separate --no-metadata --default --directory exportAllTestDir8 --include-active-values --use-string-arrays --no-decode --no-coords --type classic FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openam-frodo-dev.classic.com:8080/am frodo config export --realm-only -AD exportAllTestDir10 -m classic FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openam-frodo-dev.classic.com:8080/am frodo config export --global-only -af testExportAllGlobal.json -m classic + +// IDM +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo config export -af idmexport.json -m idm +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo config export -aD exportAllTestDir12 -f testExportAllIdm.config.json -m idm +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo config export -AD exportAllTestDir13 -m idm */ + + + import { getEnv, testExport } from './utils/TestUtils'; -import { connection as c, classic_connection as cc } from './utils/TestConfig'; +import { connection as c, classic_connection as cc, idm_connection as ic } from './utils/TestConfig'; process.env['FRODO_MOCK'] = '1'; process.env['FRODO_CONNECTION_PROFILES_PATH'] = './test/e2e/env/Connections.json'; const env = getEnv(c); const classicEnv = getEnv(cc); +const idmEnv = getEnv(ic) const type = 'config'; @@ -177,4 +186,22 @@ describe.skip('frodo config export', () => { const CMD = `frodo config export --global-only -af ${exportFile} -m classic`; await testExport(CMD, env, type, exportFile); }); + + test('"frodo config export -af idmexport.json -m idm": should export all IDM config to a single file.', async () => { + const exportFile = 'idmexport.json'; + const CMD = `frodo config export -af ${exportFile} -m idm`; + await testExport(CMD, idmEnv, type, exportFile); + }); + + test('"frodo config export -aD exportAllTestDir12 -f testExportAllIdm.config.json -m idm": should export all IDM config to a single file.', async () => { + const exportFile = 'testExportAllIdm.config.json'; + const exportDirectory = 'exportAllTestDir12'; + const CMD = `frodo config export -aD ${exportDirectory} -f ${exportFile} -m idm`; + await testExport(CMD, idmEnv, type, exportFile, exportDirectory, false); + }); + test('"frodo config export -AD exportAllTestDir13 -m idm": should export all IDM config to the directory with separate mappings', async () => { + const exportDirectory = 'exportAllTestDir13'; + const CMD = `frodo config export -AD ${exportDirectory} -m idm`; + await testExport(CMD, idmEnv, undefined, undefined, exportDirectory, false); + }); }); diff --git a/test/e2e/email-template-export.e2e.test.js b/test/e2e/email-template-export.e2e.test.js index 9b4f27d2d..5451d2be3 100644 --- a/test/e2e/email-template-export.e2e.test.js +++ b/test/e2e/email-template-export.e2e.test.js @@ -46,7 +46,7 @@ * the recordings must be committed to the frodo-lib project. */ -/* +/* Cloud FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo email template export --template-id welcome FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo email template export -i welcome -f my-welcome.template.email.json FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo email template export -Ni welcome -D emailTemplateExportTestDir1 @@ -55,13 +55,18 @@ FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgebloc FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo email template export -NaD emailTemplateExportTestDir2 FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo email template export -A FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo email template export --all-separate --no-metadata --directory emailTemplateExportTestDir3 + +// IDM +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo email template export -AD testDir4 -m idm +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo email template export -aD testDir5 -m idm + */ import { getEnv, testExport } from './utils/TestUtils'; -import { connection as c } from './utils/TestConfig'; +import { connection as c, idm_connection as ic } from './utils/TestConfig'; process.env['FRODO_MOCK'] = '1'; const env = getEnv(c); - +const idmenv = getEnv(ic); const type = 'template.email'; describe('frodo email template export', () => { @@ -110,4 +115,14 @@ describe('frodo email template export', () => { const CMD = `frodo email template export --all-separate --no-metadata --directory ${exportDirectory}`; await testExport(CMD, env, type, undefined, exportDirectory, false); }); + test('"frodo email template export -AD emailTemplateExportTestDir4 -m idm": should export all email templates to separate files in the directory emailTemplateExportTestDir3', async () => { + const exportDirectory = 'emailTemplateExportTestDir4'; + const CMD = `frodo email template export -AD emailTemplateExportTestDir4 -m idm`; + await testExport(CMD, idmenv, type, undefined, exportDirectory, false); + }); + test('"frodo email template export -aD emailTemplateExportTestDir5 -m idm": should export all email templates to separate files in the directory emailTemplateExportTestDir3', async () => { + const exportDirectory = 'emailTemplateExportTestDir5'; + const CMD = `frodo email template export -aD emailTemplateExportTestDir5 -m idm`; + await testExport(CMD, idmenv, type, undefined, exportDirectory, false); + }); }); diff --git a/test/e2e/email-template-import.e2e.test.js b/test/e2e/email-template-import.e2e.test.js index 0d13d7fb4..014a5e2a4 100644 --- a/test/e2e/email-template-import.e2e.test.js +++ b/test/e2e/email-template-import.e2e.test.js @@ -46,7 +46,8 @@ * the recordings must be committed to the frodo-lib project. */ -/* + +/* Cloud FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo email template import --raw -i welcome -f emailTemplate-welcome.json -D test/e2e/exports/all-separate/raw FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo email template import --template-id welcome --file test/e2e/exports/all/allEmailTemplates.template.email.json FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo email template import --raw -f emailTemplate-welcome.json -D test/e2e/exports/all-separate/raw @@ -56,16 +57,21 @@ FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgebloc FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo email template import -af allEmailTemplates.template.email.json -D test/e2e/exports/all FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo email template import --raw -AD test/e2e/exports/all-separate/raw FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo email template import --all-separate --directory test/e2e/exports/all-separate/cloud/global/emailTemplate + +// IDM +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo email template import -af test/e2e/exports/all/idm/allEmailTemplates.template.email.json -m idm +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo email template import -AD test/e2e/exports/all-separate/idm/global/emailTemplate -m idm */ import cp from 'child_process'; import { promisify } from 'util'; import { getEnv, removeAnsiEscapeCodes } from './utils/TestUtils'; -import { connection as c } from './utils/TestConfig'; +import { connection as c , idm_connection as ic } from './utils/TestConfig'; const exec = promisify(cp.exec); process.env['FRODO_MOCK'] = '1'; const env = getEnv(c); +const idmenv = getEnv(ic); const allDirectory = 'test/e2e/exports/all'; const allAlphaEmailTemplatesFileName = 'allEmailTemplates.template.email.json'; @@ -129,4 +135,15 @@ describe('frodo email template import', () => { const { stdout } = await exec(CMD, env); expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); }); + test(`"frodo email template import -af test/e2e/exports/all/idm/allEmailTemplates.template.email.json -m idm": should import email template for on prem idm from one file`, async () => { + const CMD = `frodo email template import -af test/e2e/exports/all/idm/allEmailTemplates.template.email.json -m idm`; + const { stdout } = await exec(CMD, idmenv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + }); + + test(`"frodo email template import -AD test/e2e/exports/all-separate/idm/global/emailTemplate -m idm": should import all on prem idm email templates from the directory"`, async () => { + const CMD = `frodo email template import -AD test/e2e/exports/all-separate/idm/global/emailTemplate -m idm`; + const { stdout } = await exec(CMD, idmenv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + }); }); diff --git a/test/e2e/exports/all-separate/idm/global/emailTemplate/forgottenUsername.emailTemplate.json b/test/e2e/exports/all-separate/idm/global/emailTemplate/forgottenUsername.emailTemplate.json new file mode 100644 index 000000000..602417ba7 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/emailTemplate/forgottenUsername.emailTemplate.json @@ -0,0 +1,26 @@ +{ + "emailTemplate": { + "forgottenUsername": { + "_id": "emailTemplate/forgottenUsername", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

", + "fr": "{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

" + }, + "mimeType": "text/html", + "subject": { + "en": "Account Information - username", + "fr": "Informations sur le compte - nom d'utilisateur" + } + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.188Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/emailTemplate/registration.emailTemplate.json b/test/e2e/exports/all-separate/idm/global/emailTemplate/registration.emailTemplate.json new file mode 100644 index 000000000..b22b6ef20 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/emailTemplate/registration.emailTemplate.json @@ -0,0 +1,26 @@ +{ + "emailTemplate": { + "registration": { + "_id": "emailTemplate/registration", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

This is your registration email.

Email verification link

", + "fr": "

Ceci est votre mail d'inscription.

Lien de vérification email

" + }, + "mimeType": "text/html", + "subject": { + "en": "Register new account", + "fr": "Créer un nouveau compte" + } + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.189Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/emailTemplate/resetPassword.emailTemplate.json b/test/e2e/exports/all-separate/idm/global/emailTemplate/resetPassword.emailTemplate.json new file mode 100644 index 000000000..72ee11ce6 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/emailTemplate/resetPassword.emailTemplate.json @@ -0,0 +1,26 @@ +{ + "emailTemplate": { + "resetPassword": { + "_id": "emailTemplate/resetPassword", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Click to reset your password

Password reset link

", + "fr": "

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

" + }, + "mimeType": "text/html", + "subject": { + "en": "Reset your password", + "fr": "Réinitialisez votre mot de passe" + } + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.189Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/emailTemplate/updatePassword.emailTemplate.json b/test/e2e/exports/all-separate/idm/global/emailTemplate/updatePassword.emailTemplate.json new file mode 100644 index 000000000..2437b70d4 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/emailTemplate/updatePassword.emailTemplate.json @@ -0,0 +1,24 @@ +{ + "emailTemplate": { + "updatePassword": { + "_id": "emailTemplate/updatePassword", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Verify email to update password

Update password link

" + }, + "mimeType": "text/html", + "subject": { + "en": "Update your password" + } + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.189Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/emailTemplate/welcome.emailTemplate.json b/test/e2e/exports/all-separate/idm/global/emailTemplate/welcome.emailTemplate.json new file mode 100644 index 000000000..ec0358d5e --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/emailTemplate/welcome.emailTemplate.json @@ -0,0 +1,26 @@ +{ + "emailTemplate": { + "welcome": { + "_id": "emailTemplate/welcome", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Welcome to OpenIDM. Your username is '{{object.userName}}'.

", + "fr": "

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

" + }, + "mimeType": "text/html", + "subject": { + "en": "Your account has been created", + "fr": "Votre compte vient d’être créé !" + } + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.189Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/access.idm.json b/test/e2e/exports/all-separate/idm/global/idm/access.idm.json new file mode 100644 index 000000000..0e341e129 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/access.idm.json @@ -0,0 +1,333 @@ +{ + "idm": { + "access": { + "_id": "access", + "configs": [ + { + "actions": "", + "methods": "read", + "pattern": "health", + "roles": "*" + }, + { + "actions": "*", + "methods": "read", + "pattern": "info/*", + "roles": "*" + }, + { + "actions": "login,logout", + "methods": "read,action", + "pattern": "authentication", + "roles": "*" + }, + { + "actions": "validate", + "methods": "action", + "pattern": "util/validateQueryFilter", + "roles": "*" + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/themeconfig", + "roles": "*" + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/theme-*", + "roles": "*" + }, + { + "actions": "*", + "customAuthz": "checkIfAnyFeatureEnabled(['registration', 'passwordReset'])", + "methods": "read", + "pattern": "config/selfservice/kbaConfig", + "roles": "*" + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/dashboard", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "methods": "query", + "pattern": "info/features", + "roles": "*" + }, + { + "actions": "listPrivileges", + "methods": "action", + "pattern": "privilege", + "roles": "*" + }, + { + "actions": "*", + "methods": "read", + "pattern": "privilege/*", + "roles": "*" + }, + { + "actions": "submitRequirements", + "methods": "read,action", + "pattern": "selfservice/termsAndConditions", + "roles": "*" + }, + { + "actions": "submitRequirements", + "methods": "read,action", + "pattern": "selfservice/kbaUpdate", + "roles": "*" + }, + { + "actions": "", + "customAuthz": "isMyProfile()", + "methods": "read,query", + "pattern": "profile/*", + "roles": "*" + }, + { + "actions": "*", + "customAuthz": "checkIfAnyFeatureEnabled('kba')", + "methods": "read", + "pattern": "selfservice/kba", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "methods": "read", + "pattern": "schema/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "methods": "action,query", + "pattern": "consent", + "roles": "internal/role/openidm-authorized" + }, + { + "customAuthz": "checkIfApiRequest()", + "methods": "read", + "pattern": "*", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "*", + "excludePatterns": "repo,repo/*", + "methods": "*", + "pattern": "*", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "", + "methods": "create,read,update,delete,patch,query", + "pattern": "system/*", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "*", + "methods": "script", + "pattern": "system/*", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "test,testConfig,createconfiguration,liveSync,authenticate", + "methods": "action", + "pattern": "system/*", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "*", + "customAuthz": "disallowCommandAction()", + "methods": "*", + "pattern": "repo", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "*", + "customAuthz": "disallowCommandAction()", + "methods": "*", + "pattern": "repo/*", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "command", + "customAuthz": "request.additionalParameters.commandId === 'delete-mapping-links'", + "methods": "action", + "pattern": "repo/link", + "roles": "internal/role/openidm-admin" + }, + { + "methods": "create,read,query,patch", + "pattern": "managed/*", + "roles": "internal/role/platform-provisioning" + }, + { + "methods": "read,query", + "pattern": "internal/role/*", + "roles": "internal/role/platform-provisioning" + }, + { + "actions": "*", + "methods": "create,read,action,update", + "pattern": "profile/*", + "roles": "internal/role/platform-provisioning" + }, + { + "actions": "*", + "methods": "read,action", + "pattern": "policy/*", + "roles": "internal/role/platform-provisioning" + }, + { + "methods": "read", + "pattern": "schema/*", + "roles": "internal/role/platform-provisioning" + }, + { + "actions": "*", + "methods": "action,query", + "pattern": "consent", + "roles": "internal/role/platform-provisioning" + }, + { + "methods": "read", + "pattern": "selfservice/kba", + "roles": "internal/role/platform-provisioning" + }, + { + "methods": "read", + "pattern": "selfservice/terms", + "roles": "internal/role/platform-provisioning" + }, + { + "actions": "sendTemplate", + "methods": "action", + "pattern": "external/email", + "roles": "internal/role/platform-provisioning" + }, + { + "actions": "authenticate", + "methods": "action", + "pattern": "system/*", + "roles": "internal/role/platform-provisioning" + }, + { + "actions": "*", + "methods": "read,action", + "pattern": "policy/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "reauthenticate", + "methods": "action", + "pattern": "authentication", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "bind,unbind", + "customAuthz": "ownDataOnly()", + "methods": "read,action,delete", + "pattern": "*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "patch", + "customAuthz": "ownDataOnly() && onlyEditableManagedObjectProperties('user', []) && reauthIfProtectedAttributeChange()", + "methods": "update,patch,action", + "pattern": "*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "methods": "read", + "pattern": "endpoint/getprocessesforuser", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "methods": "query", + "pattern": "endpoint/gettasksview", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "complete", + "customAuthz": "isMyTask()", + "methods": "action", + "pattern": "workflow/taskinstance/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "customAuthz": "canUpdateTask()", + "methods": "read,update", + "pattern": "workflow/taskinstance/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "customAuthz": "isAllowedToStartProcess()", + "methods": "create", + "pattern": "workflow/processinstance", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "read", + "methods": "*", + "pattern": "workflow/processdefinition/*", + "roles": "internal/role/openidm-authorized" + }, + { + "customAuthz": "restrictPatchToFields(['password'])", + "methods": "patch", + "pattern": "managed/user/*", + "roles": "internal/role/openidm-cert" + }, + { + "actions": "*", + "customAuthz": "ownRelationshipProperty('_meta', false)", + "methods": "read", + "pattern": "internal/usermeta/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "customAuthz": "ownRelationshipProperty('_notifications', true)", + "methods": "read,delete", + "pattern": "internal/notification/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "customAuthz": "ownRelationshipCollection(['idps','_meta','_notifications'])", + "methods": "read,query", + "pattern": "managed/user/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "deleteNotificationsForTarget", + "customAuthz": "request.additionalParameters.target === (context.security.authorization.component + '/' + context.security.authorization.id)", + "methods": "action", + "pattern": "notification", + "roles": "internal/role/openidm-authorized" + } + ] + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.189Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/apiVersion.idm.json b/test/e2e/exports/all-separate/idm/global/idm/apiVersion.idm.json new file mode 100644 index 000000000..bcee3ac38 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/apiVersion.idm.json @@ -0,0 +1,58 @@ +{ + "idm": { + "apiVersion": { + "_id": "apiVersion", + "warning": { + "enabled": { + "$bool": "&{openidm.apiVersion.warning.enabled|false}" + }, + "includeScripts": { + "$bool": "&{openidm.apiVersion.warning.includeScripts|false}" + }, + "logFilterResourcePaths": [ + "audit", + "authentication", + "cluster", + "config", + "consent", + "csv", + "external/rest", + "identityProviders", + "info", + "internal", + "internal/role", + "internal/user", + "internal/usermeta", + "managed", + "managed/assignment", + "managed/organization", + "managed/role", + "managed/user", + "notification", + "policy", + "privilege", + "profile", + "recon", + "recon/assoc", + "repo", + "selfservice/kba", + "selfservice/terms", + "scheduler/job", + "scheduler/trigger", + "schema", + "sync", + "sync/mappings", + "system", + "taskscanner" + ] + } + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.189Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/audit.idm.json b/test/e2e/exports/all-separate/idm/global/idm/audit.idm.json new file mode 100644 index 000000000..8ce2ffc16 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/audit.idm.json @@ -0,0 +1,158 @@ +{ + "idm": { + "audit": { + "_id": "audit", + "auditServiceConfig": { + "availableAuditEventHandlers": [ + "org.forgerock.audit.handlers.csv.CsvAuditEventHandler", + "org.forgerock.audit.handlers.jms.JmsAuditEventHandler", + "org.forgerock.audit.handlers.json.JsonAuditEventHandler", + "org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler", + "org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler", + "org.forgerock.openidm.audit.impl.RouterAuditEventHandler", + "org.forgerock.audit.handlers.syslog.SyslogAuditEventHandler" + ], + "caseInsensitiveFields": [ + "/access/http/request/headers", + "/access/http/response/headers" + ], + "filterPolicies": { + "field": { + "excludeIf": [], + "includeIf": [] + } + }, + "handlerForQueries": "json" + }, + "eventHandlers": [ + { + "class": "org.forgerock.audit.handlers.json.JsonAuditEventHandler", + "config": { + "buffering": { + "maxSize": 100000, + "writeInterval": "100 millis" + }, + "enabled": { + "$bool": "&{openidm.audit.handler.json.enabled|true}" + }, + "logDirectory": "&{idm.data.dir}/audit", + "name": "json", + "topics": [ + "access", + "activity", + "sync", + "authentication", + "config" + ] + } + }, + { + "class": "org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler", + "config": { + "enabled": { + "$bool": "&{openidm.audit.handler.stdout.enabled|false}" + }, + "name": "stdout", + "topics": [ + "access", + "activity", + "sync", + "authentication", + "config" + ] + } + }, + { + "class": "org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler", + "config": { + "enabled": { + "$bool": "&{openidm.audit.handler.repo.enabled|false}" + }, + "name": "repo", + "topics": [ + "access", + "activity", + "sync", + "authentication", + "config" + ] + } + } + ], + "eventTopics": { + "access": { + "defaultEvents": true, + "filter": { + "script": { + "globals": {}, + "source": "//seantest", + "type": "groovy" + } + }, + "name": "access" + }, + "activity": { + "defaultEvents": true, + "filter": { + "actions": [ + "create", + "update", + "delete", + "patch", + "action" + ] + }, + "name": "activity", + "passwordFields": [ + "password" + ], + "watchedFields": [] + }, + "authentication": { + "defaultEvents": true, + "filter": { + "script": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript" + } + }, + "name": "authentication" + }, + "config": { + "defaultEvents": true, + "filter": { + "actions": [ + "create", + "update", + "delete", + "patch", + "action" + ] + }, + "name": "config" + }, + "recon": { + "defaultEvents": true, + "name": "recon" + }, + "sync": { + "defaultEvents": true, + "name": "sync" + } + }, + "exceptionFormatter": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript" + } + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.189Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/authentication.idm.json b/test/e2e/exports/all-separate/idm/global/idm/authentication.idm.json new file mode 100644 index 000000000..8b0b06c82 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/authentication.idm.json @@ -0,0 +1,96 @@ +{ + "idm": { + "authentication": { + "_id": "authentication", + "serverAuthContext": { + "authModules": [ + { + "enabled": true, + "name": "STATIC_USER", + "properties": { + "augmentSecurityContext": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript" + }, + "defaultUserRoles": [ + "internal/role/openidm-reg" + ], + "password": { + "$crypto": { + "type": "x-simple-encryption", + "value": { + "cipher": "AES/CBC/PKCS5Padding", + "data": "fzE1J3P9LZOmuCuecCDnaQ==", + "iv": "nhI8UHymNRChGIyOC+5Sag==", + "keySize": 32, + "mac": "XfF7VE/o5Shv6AqW1Xe3TQ==", + "purpose": "idm.config.encryption", + "salt": "v0NHakffrjBJNL3zjhEOtg==", + "stableId": "openidm-sym-default" + } + } + }, + "queryOnResource": "internal/user", + "username": "anonymous" + } + }, + { + "enabled": true, + "name": "STATIC_USER", + "properties": { + "defaultUserRoles": [ + "internal/role/openidm-authorized", + "internal/role/openidm-admin" + ], + "password": "&{openidm.admin.password}", + "queryOnResource": "internal/user", + "username": "openidm-admin" + } + }, + { + "enabled": true, + "name": "MANAGED_USER", + "properties": { + "augmentSecurityContext": { + "source": "var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield);", + "type": "text/javascript" + }, + "defaultUserRoles": [ + "internal/role/openidm-authorized" + ], + "propertyMapping": { + "additionalUserFields": [ + "adminOfOrg", + "ownerOfOrg" + ], + "authenticationId": "username", + "userCredential": "password", + "userRoles": "authzRoles" + }, + "queryId": "credential-query", + "queryOnResource": "managed/user" + } + } + ], + "sessionModule": { + "name": "JWT_SESSION", + "properties": { + "enableDynamicRoles": false, + "isHttpOnly": true, + "maxTokenLifeMinutes": 120, + "sessionOnly": true, + "tokenIdleTimeMinutes": 30 + } + } + } + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.189Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/cluster.idm.json b/test/e2e/exports/all-separate/idm/global/idm/cluster.idm.json new file mode 100644 index 000000000..d8731c2f4 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/cluster.idm.json @@ -0,0 +1,20 @@ +{ + "idm": { + "cluster": { + "_id": "cluster", + "enabled": true, + "instanceCheckInInterval": 5000, + "instanceCheckInOffset": 0, + "instanceId": "&{openidm.node.id}", + "instanceRecoveryTimeout": 30000, + "instanceTimeout": 30000 + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.189Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/endpoint/getavailableuserstoassign.idm.json b/test/e2e/exports/all-separate/idm/global/idm/endpoint/getavailableuserstoassign.idm.json new file mode 100644 index 000000000..7b8d56079 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/endpoint/getavailableuserstoassign.idm.json @@ -0,0 +1,16 @@ +{ + "idm": { + "endpoint/getavailableuserstoassign": { + "_id": "endpoint/getavailableuserstoassign", + "file": "workflow/getavailableuserstoassign.js", + "type": "text/javascript" + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.189Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/endpoint/getprocessesforuser.idm.json b/test/e2e/exports/all-separate/idm/global/idm/endpoint/getprocessesforuser.idm.json new file mode 100644 index 000000000..3b9859e75 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/endpoint/getprocessesforuser.idm.json @@ -0,0 +1,16 @@ +{ + "idm": { + "endpoint/getprocessesforuser": { + "_id": "endpoint/getprocessesforuser", + "file": "workflow/getprocessesforuser.js", + "type": "text/javascript" + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.189Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/endpoint/gettasksview.idm.json b/test/e2e/exports/all-separate/idm/global/idm/endpoint/gettasksview.idm.json new file mode 100644 index 000000000..5cd42ea25 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/endpoint/gettasksview.idm.json @@ -0,0 +1,16 @@ +{ + "idm": { + "endpoint/gettasksview": { + "_id": "endpoint/gettasksview", + "file": "workflow/gettasksview.js", + "type": "text/javascript" + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.189Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/endpoint/mappingDetails.idm.json b/test/e2e/exports/all-separate/idm/global/idm/endpoint/mappingDetails.idm.json new file mode 100644 index 000000000..1c1296f7e --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/endpoint/mappingDetails.idm.json @@ -0,0 +1,17 @@ +{ + "idm": { + "endpoint/mappingDetails": { + "_id": "endpoint/mappingDetails", + "context": "endpoint/mappingDetails", + "file": "mappingDetails.js", + "type": "text/javascript" + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.189Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/endpoint/oauthproxy.idm.json b/test/e2e/exports/all-separate/idm/global/idm/endpoint/oauthproxy.idm.json new file mode 100644 index 000000000..210141d62 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/endpoint/oauthproxy.idm.json @@ -0,0 +1,17 @@ +{ + "idm": { + "endpoint/oauthproxy": { + "_id": "endpoint/oauthproxy", + "context": "endpoint/oauthproxy", + "file": "oauthProxy.js", + "type": "text/javascript" + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.189Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/endpoint/removeRepoPathFromRelationships.idm.json b/test/e2e/exports/all-separate/idm/global/idm/endpoint/removeRepoPathFromRelationships.idm.json new file mode 100644 index 000000000..a01751651 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/endpoint/removeRepoPathFromRelationships.idm.json @@ -0,0 +1,16 @@ +{ + "idm": { + "endpoint/removeRepoPathFromRelationships": { + "_id": "endpoint/removeRepoPathFromRelationships", + "file": "update/removeRepoPathFromRelationships.js", + "type": "text/javascript" + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.189Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/endpoint/repairMetadata.idm.json b/test/e2e/exports/all-separate/idm/global/idm/endpoint/repairMetadata.idm.json new file mode 100644 index 000000000..8974be5d3 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/endpoint/repairMetadata.idm.json @@ -0,0 +1,16 @@ +{ + "idm": { + "endpoint/repairMetadata": { + "_id": "endpoint/repairMetadata", + "file": "meta/metadataScanner.js", + "type": "text/javascript" + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.190Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/endpoint/updateInternalUserAndInternalRoleEntries.idm.json b/test/e2e/exports/all-separate/idm/global/idm/endpoint/updateInternalUserAndInternalRoleEntries.idm.json new file mode 100644 index 000000000..e06137d46 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/endpoint/updateInternalUserAndInternalRoleEntries.idm.json @@ -0,0 +1,16 @@ +{ + "idm": { + "endpoint/updateInternalUserAndInternalRoleEntries": { + "_id": "endpoint/updateInternalUserAndInternalRoleEntries", + "file": "update/updateInternalUserAndInternalRoleEntries.js", + "type": "text/javascript" + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.190Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/endpoint/validateQueryFilter.idm.json b/test/e2e/exports/all-separate/idm/global/idm/endpoint/validateQueryFilter.idm.json new file mode 100644 index 000000000..8755b8fa1 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/endpoint/validateQueryFilter.idm.json @@ -0,0 +1,17 @@ +{ + "idm": { + "endpoint/validateQueryFilter": { + "_id": "endpoint/validateQueryFilter", + "context": "util/validateQueryFilter", + "source": "try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } };", + "type": "text/javascript" + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.190Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/external.rest.idm.json b/test/e2e/exports/all-separate/idm/global/idm/external.rest.idm.json new file mode 100644 index 000000000..47a69edce --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/external.rest.idm.json @@ -0,0 +1,15 @@ +{ + "idm": { + "external.rest": { + "_id": "external.rest", + "hostnameVerifier": "&{openidm.external.rest.hostnameVerifier}" + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.190Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/internal.idm.json b/test/e2e/exports/all-separate/idm/global/idm/internal.idm.json new file mode 100644 index 000000000..8dd85921b --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/internal.idm.json @@ -0,0 +1,49 @@ +{ + "idm": { + "internal": { + "_id": "internal", + "objects": [ + { + "name": "role", + "properties": { + "authzMembers": { + "items": { + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ] + } + } + } + }, + { + "name": "notification", + "properties": { + "target": { + "reversePropertyName": "_notifications" + } + } + } + ] + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.190Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/managed.idm.json b/test/e2e/exports/all-separate/idm/global/idm/managed.idm.json new file mode 100644 index 000000000..072076cf1 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/managed.idm.json @@ -0,0 +1,1902 @@ +{ + "idm": { + "managed": { + "_id": "managed", + "objects": [ + { + "lastSync": { + "effectiveAssignmentsProperty": "effectiveAssignments", + "lastSyncProperty": "lastSync" + }, + "name": "user", + "notifications": { + "property": "_notifications" + }, + "postDelete": { + "source": "require('postDelete-idp-cleanup').removeConnectedIdpData(oldObject, resourceName, request);require('postDelete-notification-cleanup').removeConnectedNotificationData(oldObject, resourceName, request);", + "type": "text/javascript" + }, + "schema": { + "$schema": "http://json-schema.org/draft-03/schema", + "icon": "fa-user", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User", + "mat-icon": "people", + "order": [ + "_id", + "userName", + "password", + "givenName", + "sn", + "mail", + "description", + "accountStatus", + "telephoneNumber", + "postalAddress", + "city", + "postalCode", + "country", + "stateProvince", + "roles", + "assignments", + "manager", + "authzRoles", + "reports", + "effectiveRoles", + "effectiveAssignments", + "lastSync", + "kbaInfo", + "preferences", + "consentedMappings", + "ownerOfOrg", + "adminOfOrg", + "memberOfOrg", + "memberOfOrgIDs", + "activeDate", + "inactiveDate" + ], + "properties": { + "_id": { + "description": "User ID", + "isPersonal": false, + "policies": [ + { + "params": { + "forbiddenChars": [ + "/" + ] + }, + "policyId": "cannot-contain-characters" + } + ], + "searchable": false, + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": false + }, + "accountStatus": { + "default": "active", + "description": "Status", + "isPersonal": false, + "policies": [ + { + "params": { + "regexp": "^(active|inactive)$" + }, + "policyId": "regexpMatches" + } + ], + "searchable": true, + "title": "Status", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "activeDate": { + "description": "Active Date", + "format": "datetime", + "isPersonal": false, + "policies": [ + { + "policyId": "valid-datetime" + } + ], + "searchable": false, + "title": "Active Date", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "adminOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/organization", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "admins", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Administer", + "type": "array", + "userEditable": false, + "viewable": true + }, + "assignments": { + "description": "Assignments", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Assignment", + "path": "managed/assignment", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Assignments Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Assignments", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "authzRoles": { + "description": "Authorization Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Authorization Roles Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Internal Role", + "path": "internal/role", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "authzMembers", + "reverseRelationship": true, + "title": "Authorization Roles Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Authorization Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "city": { + "description": "City", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "title": "City", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "consentedMappings": { + "description": "Consented Mappings", + "isPersonal": false, + "isVirtual": false, + "items": { + "order": [ + "mapping", + "consentDate" + ], + "properties": { + "consentDate": { + "description": "Consent Date", + "format": "datetime", + "policies": [ + { + "policyId": "valid-datetime" + } + ], + "searchable": true, + "title": "Consent Date", + "type": "string", + "userEditable": true, + "viewable": true + }, + "mapping": { + "description": "Mapping", + "searchable": true, + "title": "Mapping", + "type": "string", + "userEditable": true, + "viewable": true + } + }, + "required": [ + "mapping", + "consentDate" + ], + "title": "Consented Mapping", + "type": "object" + }, + "returnByDefault": false, + "searchable": false, + "title": "Consented Mappings", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false + }, + "country": { + "description": "Country", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "title": "Country", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "description": { + "description": "Description", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "searchable": true, + "title": "Description", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "effectiveAssignments": { + "description": "Effective Assignments", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Assignments Items", + "type": "object" + }, + "queryConfig": { + "referencedObjectFields": [ + "*" + ], + "referencedRelationshipFields": [ + [ + "roles", + "assignments" + ], + [ + "assignments" + ] + ] + }, + "returnByDefault": true, + "title": "Effective Assignments", + "type": "array", + "usageDescription": "", + "viewable": false + }, + "effectiveRoles": { + "description": "Effective Roles", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Roles Items", + "type": "object" + }, + "queryConfig": { + "referencedRelationshipFields": [ + "roles" + ] + }, + "returnByDefault": true, + "title": "Effective Roles", + "type": "array", + "usageDescription": "", + "viewable": false + }, + "givenName": { + "description": "First Name", + "isPersonal": true, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "searchable": true, + "title": "First Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "inactiveDate": { + "description": "Inactive Date", + "format": "datetime", + "isPersonal": false, + "policies": [ + { + "policyId": "valid-datetime" + } + ], + "searchable": false, + "title": "Inactive Date", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "kbaInfo": { + "description": "KBA Info", + "isPersonal": true, + "items": { + "order": [ + "answer", + "customQuestion", + "questionId" + ], + "properties": { + "answer": { + "description": "Answer", + "type": "string" + }, + "customQuestion": { + "description": "Custom question", + "type": "string" + }, + "questionId": { + "description": "Question ID", + "type": "string" + } + }, + "required": [], + "title": "KBA Info Items", + "type": "object" + }, + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false + }, + "lastSync": { + "description": "Last Sync timestamp", + "isPersonal": false, + "order": [ + "effectiveAssignments", + "timestamp" + ], + "properties": { + "effectiveAssignments": { + "description": "Effective Assignments", + "items": { + "title": "Effective Assignments Items", + "type": "object" + }, + "title": "Effective Assignments", + "type": "array" + }, + "timestamp": { + "description": "Timestamp", + "policies": [ + { + "policyId": "valid-datetime" + } + ], + "type": "string" + } + }, + "required": [], + "scope": "private", + "searchable": false, + "title": "Last Sync timestamp", + "type": "object", + "usageDescription": "", + "viewable": false + }, + "mail": { + "description": "Email Address", + "isPersonal": true, + "policies": [ + { + "policyId": "valid-email-address-format" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "searchable": true, + "title": "Email Address", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "manager": { + "description": "Manager", + "isPersonal": false, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Manager _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "reports", + "reverseRelationship": true, + "searchable": false, + "title": "Manager", + "type": "relationship", + "usageDescription": "", + "userEditable": false, + "validate": true, + "viewable": true + }, + "memberOfOrg": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/organization", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations to which I Belong", + "type": "array", + "userEditable": false, + "viewable": true + }, + "memberOfOrgIDs": { + "isVirtual": true, + "items": { + "title": "org identifiers", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs" + ], + "referencedRelationshipFields": [ + "memberOfOrg" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "MemberOfOrgIDs", + "type": "array", + "userEditable": false, + "viewable": false + }, + "ownerOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/organization", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "owners", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Own", + "type": "array", + "userEditable": false, + "viewable": true + }, + "password": { + "description": "Password", + "encryption": { + "purpose": "idm.password.encryption" + }, + "isPersonal": false, + "isProtected": true, + "policies": [ + { + "params": { + "minLength": 8 + }, + "policyId": "minimum-length" + }, + { + "params": { + "numCaps": 1 + }, + "policyId": "at-least-X-capitals" + }, + { + "params": { + "numNums": 1 + }, + "policyId": "at-least-X-numbers" + }, + { + "params": { + "disallowedFields": [ + "userName", + "givenName", + "sn" + ] + }, + "policyId": "cannot-contain-others" + } + ], + "scope": "private", + "searchable": false, + "title": "Password", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": false + }, + "postalAddress": { + "description": "Address 1", + "isPersonal": true, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "title": "Address 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "postalCode": { + "description": "Postal Code", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "title": "Postal Code", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "preferences": { + "description": "Preferences", + "isPersonal": false, + "order": [ + "updates", + "marketing" + ], + "properties": { + "marketing": { + "description": "Send me special offers and services", + "type": "boolean" + }, + "updates": { + "description": "Send me news and updates", + "type": "boolean" + } + }, + "required": [], + "searchable": false, + "title": "Preferences", + "type": "object", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "reports": { + "description": "Direct Reports", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Direct Reports Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "manager", + "reverseRelationship": true, + "title": "Direct Reports Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Direct Reports", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "roles": { + "description": "Provisioning Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Role", + "path": "managed/role", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Provisioning Roles Items", + "type": "relationship", + "validate": true + }, + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Provisioning Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "sn": { + "description": "Last Name", + "isPersonal": true, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "searchable": true, + "title": "Last Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "stateProvince": { + "description": "State/Province", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "title": "State/Province", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "telephoneNumber": { + "description": "Telephone Number", + "isPersonal": true, + "pattern": "^\\+?([0-9\\- \\(\\)])*$", + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "title": "Telephone Number", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "userName": { + "description": "Username", + "isPersonal": true, + "policies": [ + { + "policyId": "valid-username" + }, + { + "params": { + "forbiddenChars": [ + "/" + ] + }, + "policyId": "cannot-contain-characters" + }, + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "searchable": true, + "title": "Username", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + } + }, + "required": [ + "userName", + "givenName", + "sn", + "mail" + ], + "title": "User", + "type": "object", + "viewable": true + } + }, + { + "name": "role", + "onCreate": { + "globals": {}, + "source": "//asdfasdfadsfasdf", + "type": "text/javascript" + }, + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "icon": "fa-check-square", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role", + "mat-icon": "assignment_ind", + "order": [ + "_id", + "name", + "description", + "members", + "assignments", + "condition", + "temporalConstraints" + ], + "properties": { + "_id": { + "description": "Role ID", + "searchable": false, + "title": "Name", + "type": "string", + "viewable": false + }, + "assignments": { + "description": "Managed Assignments", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Managed Assignments Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Assignment", + "path": "managed/assignment", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Managed Assignments Items", + "type": "relationship", + "validate": true + }, + "notifyRelationships": [ + "members" + ], + "returnByDefault": false, + "title": "Managed Assignments", + "type": "array", + "viewable": true + }, + "condition": { + "description": "A conditional filter for this role", + "isConditional": true, + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false + }, + "description": { + "description": "The role description, used for display purposes.", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true + }, + "members": { + "description": "Role Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Role Members Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Role Members Items", + "type": "relationship", + "validate": true + }, + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Role Members", + "type": "array", + "viewable": true + }, + "name": { + "description": "The role name, used for display purposes.", + "policies": [ + { + "policyId": "unique" + } + ], + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true + }, + "temporalConstraints": { + "description": "An array of temporal constraints for a role", + "isTemporalConstraint": true, + "items": { + "order": [ + "duration" + ], + "properties": { + "duration": { + "description": "Duration", + "type": "string" + } + }, + "required": [ + "duration" + ], + "title": "Temporal Constraints Items", + "type": "object" + }, + "notifyRelationships": [ + "members" + ], + "returnByDefault": true, + "title": "Temporal Constraints", + "type": "array", + "viewable": false + } + }, + "required": [ + "name" + ], + "title": "Role", + "type": "object" + } + }, + { + "attributeEncryption": {}, + "name": "assignment", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "A role assignment", + "icon": "fa-key", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment", + "mat-icon": "vpn_key", + "order": [ + "_id", + "name", + "description", + "mapping", + "attributes", + "linkQualifiers", + "roles", + "members", + "condition", + "weight" + ], + "properties": { + "_id": { + "description": "The assignment ID", + "searchable": false, + "title": "Name", + "type": "string", + "viewable": false + }, + "attributes": { + "description": "The attributes operated on by this assignment.", + "items": { + "order": [ + "assignmentOperation", + "unassignmentOperation", + "name", + "value" + ], + "properties": { + "assignmentOperation": { + "description": "Assignment operation", + "type": "string" + }, + "name": { + "description": "Name", + "type": "string" + }, + "unassignmentOperation": { + "description": "Unassignment operation", + "type": "string" + }, + "value": { + "description": "Value", + "type": "string" + } + }, + "required": [], + "title": "Assignment Attributes Items", + "type": "object" + }, + "notifyRelationships": [ + "roles", + "members" + ], + "title": "Assignment Attributes", + "type": "array", + "viewable": true + }, + "condition": { + "description": "A conditional filter for this assignment", + "isConditional": true, + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false + }, + "description": { + "description": "The assignment description, used for display purposes.", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true + }, + "linkQualifiers": { + "description": "Conditional link qualifiers to restrict this assignment to.", + "items": { + "title": "Link Qualifiers Items", + "type": "string" + }, + "title": "Link Qualifiers", + "type": "array", + "viewable": true + }, + "mapping": { + "description": "The name of the mapping this assignment applies to", + "policies": [ + { + "policyId": "mapping-exists" + } + ], + "searchable": true, + "title": "Mapping", + "type": "string", + "viewable": true + }, + "members": { + "description": "Assignment Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Assignment Members Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "assignments", + "reverseRelationship": true, + "title": "Assignment Members Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Assignment Members", + "type": "array", + "viewable": true + }, + "name": { + "description": "The assignment name, used for display purposes.", + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true + }, + "roles": { + "description": "Managed Roles", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Managed Roles Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Role", + "notify": true, + "path": "managed/role", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "assignments", + "reverseRelationship": true, + "title": "Managed Roles Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Managed Roles", + "type": "array", + "userEditable": false, + "viewable": true + }, + "weight": { + "description": "The weight of the assignment.", + "notifyRelationships": [ + "roles", + "members" + ], + "searchable": false, + "title": "Weight", + "type": [ + "number", + "null" + ], + "viewable": true + } + }, + "required": [ + "name", + "description", + "mapping" + ], + "title": "Assignment", + "type": "object" + } + }, + { + "name": "organization", + "onCreate": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript" + }, + "onRead": { + "globals": {}, + "source": "//seantest", + "type": "groovy" + }, + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "An organization or tenant, whose resources are managed by organizational admins.", + "icon": "fa-building", + "mat-icon": "domain", + "order": [ + "name", + "description", + "owners", + "admins", + "members", + "parent", + "children", + "adminIDs", + "ownerIDs", + "parentAdminIDs", + "parentOwnerIDs", + "parentIDs" + ], + "properties": { + "adminIDs": { + "isVirtual": true, + "items": { + "title": "admin ids", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id" + ], + "referencedRelationshipFields": [ + "admins" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "Admin user ids", + "type": "array", + "userEditable": false, + "viewable": false + }, + "admins": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "notify": false, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "adminOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "notifyRelationships": [ + "children" + ], + "returnByDefault": false, + "searchable": false, + "title": "Administrators", + "type": "array", + "userEditable": false, + "viewable": true + }, + "children": { + "description": "Child Organizations", + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/organization", + "query": { + "fields": [ + "name", + "description" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "parent", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Child Organizations", + "type": "array", + "userEditable": false, + "viewable": false + }, + "description": { + "searchable": true, + "title": "Description", + "type": "string", + "userEditable": true, + "viewable": true + }, + "members": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "memberOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "searchable": false, + "title": "Members", + "type": "array", + "userEditable": false, + "viewable": true + }, + "name": { + "searchable": true, + "title": "Name", + "type": "string", + "userEditable": true, + "viewable": true + }, + "ownerIDs": { + "isVirtual": true, + "items": { + "title": "owner ids", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id" + ], + "referencedRelationshipFields": [ + "owners" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "Owner user ids", + "type": "array", + "userEditable": false, + "viewable": false + }, + "owners": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "notify": false, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "ownerOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "notifyRelationships": [ + "children" + ], + "returnByDefault": false, + "searchable": false, + "title": "Owner", + "type": "array", + "userEditable": false, + "viewable": true + }, + "parent": { + "description": "Parent Organization", + "notifyRelationships": [ + "children", + "members" + ], + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/organization", + "query": { + "fields": [ + "name", + "description" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "returnByDefault": false, + "reversePropertyName": "children", + "reverseRelationship": true, + "searchable": false, + "title": "Parent Organization", + "type": "relationship", + "userEditable": false, + "validate": true, + "viewable": true + }, + "parentAdminIDs": { + "isVirtual": true, + "items": { + "title": "user ids of parent admins", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "adminIDs", + "parentAdminIDs" + ], + "referencedRelationshipFields": [ + "parent" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent admins", + "type": "array", + "userEditable": false, + "viewable": false + }, + "parentIDs": { + "isVirtual": true, + "items": { + "title": "parent org ids", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs" + ], + "referencedRelationshipFields": [ + "parent" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "parent org ids", + "type": "array", + "userEditable": false, + "viewable": false + }, + "parentOwnerIDs": { + "isVirtual": true, + "items": { + "title": "user ids of parent owners", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "ownerIDs", + "parentOwnerIDs" + ], + "referencedRelationshipFields": [ + "parent" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent owners", + "type": "array", + "userEditable": false, + "viewable": false + } + }, + "required": [ + "name" + ], + "title": "Organization", + "type": "object" + } + }, + { + "name": "seantestmanagedobject", + "schema": { + "description": null, + "icon": "fa-database", + "mat-icon": null, + "title": null + } + } + ] + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.190Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/metrics.idm.json b/test/e2e/exports/all-separate/idm/global/idm/metrics.idm.json new file mode 100644 index 000000000..40c5f3f5e --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/metrics.idm.json @@ -0,0 +1,15 @@ +{ + "idm": { + "metrics": { + "_id": "metrics", + "enabled": false + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.191Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/notification/passwordUpdate.idm.json b/test/e2e/exports/all-separate/idm/global/idm/notification/passwordUpdate.idm.json new file mode 100644 index 000000000..9a5907d42 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/notification/passwordUpdate.idm.json @@ -0,0 +1,38 @@ +{ + "idm": { + "notification/passwordUpdate": { + "_id": "notification/passwordUpdate", + "condition": { + "file": "propertiesModifiedFilter.groovy", + "globals": { + "propertiesToCheck": [ + "password" + ] + }, + "type": "groovy" + }, + "enabled": { + "$bool": "&{openidm.notifications.passwordUpdate|false}" + }, + "methods": [ + "update", + "patch" + ], + "notification": { + "message": "Your password has been updated.", + "notificationType": "info" + }, + "path": "managed/user/*", + "target": { + "resource": "managed/user/{{response/_id}}" + } + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.191Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/notification/profileUpdate.idm.json b/test/e2e/exports/all-separate/idm/global/idm/notification/profileUpdate.idm.json new file mode 100644 index 000000000..677a7727b --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/notification/profileUpdate.idm.json @@ -0,0 +1,50 @@ +{ + "idm": { + "notification/profileUpdate": { + "_id": "notification/profileUpdate", + "condition": { + "file": "propertiesModifiedFilter.groovy", + "globals": { + "propertiesToCheck": [ + "userName", + "givenName", + "sn", + "mail", + "description", + "accountStatus", + "telephoneNumber", + "postalAddress", + "city", + "postalCode", + "country", + "stateProvince", + "preferences" + ] + }, + "type": "groovy" + }, + "enabled": { + "$bool": "&{openidm.notifications.profileUpdate|false}" + }, + "methods": [ + "update", + "patch" + ], + "notification": { + "message": "Your profile has been updated.", + "notificationType": "info" + }, + "path": "managed/user/*", + "target": { + "resource": "managed/user/{{response/_id}}" + } + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.191Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/notificationFactory.idm.json b/test/e2e/exports/all-separate/idm/global/idm/notificationFactory.idm.json new file mode 100644 index 000000000..c3e372428 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/notificationFactory.idm.json @@ -0,0 +1,23 @@ +{ + "idm": { + "notificationFactory": { + "_id": "notificationFactory", + "enabled": { + "$bool": "&{openidm.notifications|false}" + }, + "threadPool": { + "maxPoolThreads": 2, + "maxQueueSize": 20000, + "steadyPoolThreads": 1, + "threadKeepAlive": 60 + } + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.191Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/policy.idm.json b/test/e2e/exports/all-separate/idm/global/idm/policy.idm.json new file mode 100644 index 000000000..f0f6e5364 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/policy.idm.json @@ -0,0 +1,274 @@ +{ + "idm": { + "policy": { + "_id": "policy", + "additionalFiles": [], + "file": "policy.js", + "resources": [ + { + "calculatedProperties": { + "source": "require('selfServicePolicies').getRegistrationProperties()", + "type": "text/javascript" + }, + "resource": "selfservice/registration" + }, + { + "calculatedProperties": { + "source": "require('selfServicePolicies').getResetProperties()", + "type": "text/javascript" + }, + "resource": "selfservice/reset" + }, + { + "properties": [ + { + "name": "_id", + "policies": [ + { + "params": { + "forbiddenChars": [ + "/" + ] + }, + "policyId": "cannot-contain-characters" + } + ] + }, + { + "name": "password", + "policies": [ + { + "params": { + "minLength": 8 + }, + "policyId": "minimum-length" + } + ] + } + ], + "resource": "internal/user/*" + }, + { + "properties": [ + { + "name": "name", + "policies": [ + { + "policyId": "required" + }, + { + "policyId": "not-empty" + }, + { + "params": { + "forbiddenChars": [ + "/*" + ] + }, + "policyId": "cannot-contain-characters" + } + ] + }, + { + "name": "temporalConstraints", + "policies": [ + { + "policyId": "valid-temporal-constraints" + } + ] + }, + { + "name": "condition", + "policies": [ + { + "policyId": "valid-query-filter" + } + ] + }, + { + "name": "privileges", + "policies": [ + { + "params": { + "types": [ + "array" + ] + }, + "policyId": "valid-type" + }, + { + "params": { + "properties": [ + { + "name": "name", + "policies": [ + { + "policyId": "required" + }, + { + "policyId": "not-empty" + }, + { + "params": { + "types": [ + "string" + ] + }, + "policyId": "valid-type" + } + ] + }, + { + "name": "path", + "policies": [ + { + "policyId": "required" + }, + { + "policyId": "not-empty" + }, + { + "params": { + "forbiddenChars": [ + "/*" + ] + }, + "policyId": "cannot-contain-characters" + }, + { + "policyId": "valid-privilege-path" + } + ] + }, + { + "name": "accessFlags", + "policies": [ + { + "policyId": "required" + }, + { + "policyId": "not-empty" + }, + { + "params": { + "types": [ + "array" + ] + }, + "policyId": "valid-type" + }, + { + "policyId": "valid-accessFlags-object" + } + ] + }, + { + "name": "actions", + "policies": [ + { + "policyId": "required" + }, + { + "params": { + "types": [ + "array" + ] + }, + "policyId": "valid-type" + } + ] + }, + { + "name": "permissions", + "policies": [ + { + "policyId": "required" + }, + { + "policyId": "not-empty" + }, + { + "params": { + "types": [ + "array" + ] + }, + "policyId": "valid-type" + }, + { + "policyId": "valid-permissions" + } + ] + }, + { + "name": "filter", + "policies": [ + { + "params": { + "types": [ + "string", + "null" + ] + }, + "policyId": "valid-type" + }, + { + "policyId": "valid-query-filter" + } + ] + } + ] + }, + "policyId": "valid-array-items" + } + ] + } + ], + "resource": "internal/role/*" + }, + { + "properties": [ + { + "name": "temporalConstraints", + "policies": [ + { + "policyId": "valid-temporal-constraints" + } + ] + }, + { + "name": "condition", + "policies": [ + { + "policyId": "valid-query-filter" + } + ] + } + ], + "resource": "managed/role/*" + }, + { + "properties": [ + { + "name": "objects", + "policies": [ + { + "policyId": "valid-event-scripts" + } + ] + } + ], + "resource": "config/managed" + } + ], + "type": "text/javascript" + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.191Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/privilegeAssignments.idm.json b/test/e2e/exports/all-separate/idm/global/idm/privilegeAssignments.idm.json new file mode 100644 index 000000000..bce148457 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/privilegeAssignments.idm.json @@ -0,0 +1,38 @@ +{ + "idm": { + "privilegeAssignments": { + "_id": "privilegeAssignments", + "privilegeAssignments": [ + { + "name": "ownerPrivileges", + "privileges": [ + "owner-view-update-delete-orgs", + "owner-create-orgs", + "owner-view-update-delete-admins-and-members", + "owner-create-admins", + "admin-view-update-delete-members", + "admin-create-members" + ], + "relationshipField": "ownerOfOrg" + }, + { + "name": "adminPrivileges", + "privileges": [ + "admin-view-update-delete-orgs", + "admin-create-orgs", + "admin-view-update-delete-members", + "admin-create-members" + ], + "relationshipField": "adminOfOrg" + } + ] + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.191Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/privileges.idm.json b/test/e2e/exports/all-separate/idm/global/idm/privileges.idm.json new file mode 100644 index 000000000..c3962a607 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/privileges.idm.json @@ -0,0 +1,736 @@ +{ + "idm": { + "privileges": { + "_id": "privileges", + "privileges": [ + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "owners", + "readOnly": true + }, + { + "attribute": "admins", + "readOnly": false + }, + { + "attribute": "members", + "readOnly": false + }, + { + "attribute": "parent", + "readOnly": false + }, + { + "attribute": "children", + "readOnly": false + }, + { + "attribute": "parentIDs", + "readOnly": true + }, + { + "attribute": "adminIDs", + "readOnly": true + }, + { + "attribute": "parentAdminIDs", + "readOnly": true + }, + { + "attribute": "ownerIDs", + "readOnly": true + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/ownerIDs eq \"{{_id}}\" or /parentOwnerIDs eq \"{{_id}}\"", + "name": "owner-view-update-delete-orgs", + "path": "managed/organization", + "permissions": [ + "VIEW", + "UPDATE", + "DELETE" + ] + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "owners", + "readOnly": true + }, + { + "attribute": "admins", + "readOnly": false + }, + { + "attribute": "members", + "readOnly": false + }, + { + "attribute": "parent", + "readOnly": false + }, + { + "attribute": "children", + "readOnly": false + }, + { + "attribute": "parentIDs", + "readOnly": true + }, + { + "attribute": "adminIDs", + "readOnly": true + }, + { + "attribute": "parentAdminIDs", + "readOnly": true + }, + { + "attribute": "ownerIDs", + "readOnly": true + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/parent pr", + "name": "owner-create-orgs", + "path": "managed/organization", + "permissions": [ + "CREATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false + }, + { + "attribute": "password", + "readOnly": false + }, + { + "attribute": "givenName", + "readOnly": false + }, + { + "attribute": "sn", + "readOnly": false + }, + { + "attribute": "mail", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "accountStatus", + "readOnly": false + }, + { + "attribute": "telephoneNumber", + "readOnly": false + }, + { + "attribute": "postalAddress", + "readOnly": false + }, + { + "attribute": "city", + "readOnly": false + }, + { + "attribute": "postalCode", + "readOnly": false + }, + { + "attribute": "country", + "readOnly": false + }, + { + "attribute": "stateProvince", + "readOnly": false + }, + { + "attribute": "roles", + "readOnly": false + }, + { + "attribute": "manager", + "readOnly": false + }, + { + "attribute": "authzRoles", + "readOnly": false + }, + { + "attribute": "reports", + "readOnly": false + }, + { + "attribute": "effectiveRoles", + "readOnly": false + }, + { + "attribute": "effectiveAssignments", + "readOnly": false + }, + { + "attribute": "lastSync", + "readOnly": false + }, + { + "attribute": "kbaInfo", + "readOnly": false + }, + { + "attribute": "preferences", + "readOnly": false + }, + { + "attribute": "consentedMappings", + "readOnly": false + }, + { + "attribute": "memberOfOrg", + "readOnly": false + }, + { + "attribute": "adminOfOrg", + "readOnly": false + }, + { + "attribute": "ownerOfOrg", + "readOnly": true + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/memberOfOrgIDs eq \"__org_id_placeholder__\"", + "name": "owner-view-update-delete-admins-and-members", + "path": "managed/user", + "permissions": [ + "VIEW", + "DELETE", + "UPDATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false + }, + { + "attribute": "password", + "readOnly": false + }, + { + "attribute": "givenName", + "readOnly": false + }, + { + "attribute": "sn", + "readOnly": false + }, + { + "attribute": "mail", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "accountStatus", + "readOnly": false + }, + { + "attribute": "telephoneNumber", + "readOnly": false + }, + { + "attribute": "postalAddress", + "readOnly": false + }, + { + "attribute": "city", + "readOnly": false + }, + { + "attribute": "postalCode", + "readOnly": false + }, + { + "attribute": "country", + "readOnly": false + }, + { + "attribute": "stateProvince", + "readOnly": false + }, + { + "attribute": "roles", + "readOnly": false + }, + { + "attribute": "manager", + "readOnly": false + }, + { + "attribute": "authzRoles", + "readOnly": false + }, + { + "attribute": "reports", + "readOnly": false + }, + { + "attribute": "effectiveRoles", + "readOnly": false + }, + { + "attribute": "effectiveAssignments", + "readOnly": false + }, + { + "attribute": "lastSync", + "readOnly": false + }, + { + "attribute": "kbaInfo", + "readOnly": false + }, + { + "attribute": "preferences", + "readOnly": false + }, + { + "attribute": "consentedMappings", + "readOnly": false + }, + { + "attribute": "memberOfOrg", + "readOnly": false + }, + { + "attribute": "adminOfOrg", + "readOnly": false + }, + { + "attribute": "ownerOfOrg", + "readOnly": true + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/memberOfOrg/0 pr and /adminOfOrg/0 pr and !(/ownerOfOrg pr)", + "name": "owner-create-admins", + "path": "managed/user", + "permissions": [ + "CREATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "owners", + "readOnly": true + }, + { + "attribute": "admins", + "readOnly": true + }, + { + "attribute": "members", + "readOnly": false + }, + { + "attribute": "parent", + "readOnly": false + }, + { + "attribute": "children", + "readOnly": false + }, + { + "attribute": "parentIDs", + "readOnly": true + }, + { + "attribute": "adminIDs", + "readOnly": true + }, + { + "attribute": "parentAdminIDs", + "readOnly": true + }, + { + "attribute": "ownerIDs", + "readOnly": true + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/adminIDs eq \"{{_id}}\" or /parentAdminIDs eq \"{{_id}}\"", + "name": "admin-view-update-delete-orgs", + "path": "managed/organization", + "permissions": [ + "VIEW", + "UPDATE", + "DELETE" + ] + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "owners", + "readOnly": true + }, + { + "attribute": "admins", + "readOnly": true + }, + { + "attribute": "members", + "readOnly": false + }, + { + "attribute": "parent", + "readOnly": false + }, + { + "attribute": "children", + "readOnly": false + }, + { + "attribute": "parentIDs", + "readOnly": true + }, + { + "attribute": "adminIDs", + "readOnly": true + }, + { + "attribute": "parentAdminIDs", + "readOnly": true + }, + { + "attribute": "ownerIDs", + "readOnly": true + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/parent pr", + "name": "admin-create-orgs", + "path": "managed/organization", + "permissions": [ + "CREATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false + }, + { + "attribute": "password", + "readOnly": false + }, + { + "attribute": "givenName", + "readOnly": false + }, + { + "attribute": "sn", + "readOnly": false + }, + { + "attribute": "mail", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "accountStatus", + "readOnly": false + }, + { + "attribute": "telephoneNumber", + "readOnly": false + }, + { + "attribute": "postalAddress", + "readOnly": false + }, + { + "attribute": "city", + "readOnly": false + }, + { + "attribute": "postalCode", + "readOnly": false + }, + { + "attribute": "country", + "readOnly": false + }, + { + "attribute": "stateProvince", + "readOnly": false + }, + { + "attribute": "roles", + "readOnly": false + }, + { + "attribute": "manager", + "readOnly": false + }, + { + "attribute": "authzRoles", + "readOnly": false + }, + { + "attribute": "reports", + "readOnly": false + }, + { + "attribute": "effectiveRoles", + "readOnly": false + }, + { + "attribute": "effectiveAssignments", + "readOnly": false + }, + { + "attribute": "lastSync", + "readOnly": false + }, + { + "attribute": "kbaInfo", + "readOnly": false + }, + { + "attribute": "preferences", + "readOnly": false + }, + { + "attribute": "consentedMappings", + "readOnly": false + }, + { + "attribute": "memberOfOrg", + "readOnly": false + }, + { + "attribute": "adminOfOrg", + "readOnly": true + }, + { + "attribute": "ownerOfOrg", + "readOnly": true + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/memberOfOrgIDs eq \"__org_id_placeholder__\"", + "name": "admin-view-update-delete-members", + "path": "managed/user", + "permissions": [ + "VIEW", + "DELETE", + "UPDATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false + }, + { + "attribute": "password", + "readOnly": false + }, + { + "attribute": "givenName", + "readOnly": false + }, + { + "attribute": "sn", + "readOnly": false + }, + { + "attribute": "mail", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "accountStatus", + "readOnly": false + }, + { + "attribute": "telephoneNumber", + "readOnly": false + }, + { + "attribute": "postalAddress", + "readOnly": false + }, + { + "attribute": "city", + "readOnly": false + }, + { + "attribute": "postalCode", + "readOnly": false + }, + { + "attribute": "country", + "readOnly": false + }, + { + "attribute": "stateProvince", + "readOnly": false + }, + { + "attribute": "roles", + "readOnly": false + }, + { + "attribute": "manager", + "readOnly": false + }, + { + "attribute": "authzRoles", + "readOnly": false + }, + { + "attribute": "reports", + "readOnly": false + }, + { + "attribute": "effectiveRoles", + "readOnly": false + }, + { + "attribute": "effectiveAssignments", + "readOnly": false + }, + { + "attribute": "lastSync", + "readOnly": false + }, + { + "attribute": "kbaInfo", + "readOnly": false + }, + { + "attribute": "preferences", + "readOnly": false + }, + { + "attribute": "consentedMappings", + "readOnly": false + }, + { + "attribute": "memberOfOrg", + "readOnly": false + }, + { + "attribute": "adminOfOrg", + "readOnly": true + }, + { + "attribute": "ownerOfOrg", + "readOnly": true + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/memberOfOrg/0 pr and !(/adminOfOrg pr) and !(/ownerOfOrg pr)", + "name": "admin-create-members", + "path": "managed/user", + "permissions": [ + "CREATE" + ] + } + ] + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.191Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/process/access.idm.json b/test/e2e/exports/all-separate/idm/global/idm/process/access.idm.json new file mode 100644 index 000000000..9e6b48f77 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/process/access.idm.json @@ -0,0 +1,30 @@ +{ + "idm": { + "process/access": { + "_id": "process/access", + "workflowAccess": [ + { + "propertiesCheck": { + "matches": ".*", + "property": "_id", + "requiresRole": "internal/role/openidm-authorized" + } + }, + { + "propertiesCheck": { + "matches": ".*", + "property": "_id", + "requiresRole": "internal/role/openidm-admin" + } + } + ] + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.192Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/repo.ds.idm.json b/test/e2e/exports/all-separate/idm/global/idm/repo.ds.idm.json new file mode 100644 index 000000000..84035b522 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/repo.ds.idm.json @@ -0,0 +1,1026 @@ +{ + "idm": { + "repo.ds": { + "_id": "repo.ds", + "commands": { + "delete-mapping-links": { + "_queryFilter": "/linkType eq \"${mapping}\"", + "operation": "DELETE" + }, + "delete-target-ids-for-recon": { + "_queryFilter": "/reconId eq \"${reconId}\"", + "operation": "DELETE" + } + }, + "embedded": false, + "ldapConnectionFactories": { + "bind": { + "connectionPoolSize": 50, + "connectionSecurity": "startTLS", + "heartBeatIntervalSeconds": 60, + "heartBeatTimeoutMilliSeconds": 10000, + "primaryLdapServers": [ + { + "hostname": "opendj-frodo-dev.classic.com", + "port": 2389 + } + ], + "secondaryLdapServers": [] + }, + "root": { + "authentication": { + "simple": { + "bindDn": "uid=admin", + "bindPassword": { + "$crypto": { + "type": "x-simple-encryption", + "value": { + "cipher": "AES/CBC/PKCS5Padding", + "data": "lJ/B6T9e9CDKHCN8TxkD4g==", + "iv": "EdrerzwEUUkHG582cLDw5w==", + "keySize": 32, + "mac": "Aty9fXUtl4pexGlHOc+CBg==", + "purpose": "idm.config.encryption", + "salt": "BITSKlnPeT5klcuEZbngzw==", + "stableId": "openidm-sym-default" + } + } + } + } + }, + "inheritFrom": "bind" + } + }, + "maxConnectionAttempts": 5, + "resourceMapping": { + "defaultMapping": { + "dnTemplate": "ou=generic,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "explicitMapping": { + "clusteredrecontargetids": { + "dnTemplate": "ou=clusteredrecontargetids,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-recon-clusteredTargetIds" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly" + }, + "reconId": { + "ldapAttribute": "fr-idm-recon-id", + "type": "simple" + }, + "targetIds": { + "ldapAttribute": "fr-idm-recon-targetIds", + "type": "json" + } + } + }, + "dsconfig/attributeValue": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-attribute-value-password-validator" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "checkSubstrings": { + "ldapAttribute": "ds-cfg-check-substrings", + "type": "simple" + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple" + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple" + }, + "matchAttribute": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-match-attribute", + "type": "simple" + }, + "minSubstringLength": { + "ldapAttribute": "ds-cfg-min-substring-length", + "type": "simple" + }, + "testReversedPassword": { + "isRequired": true, + "ldapAttribute": "ds-cfg-test-reversed-password", + "type": "simple" + } + } + }, + "dsconfig/characterSet": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-character-set-password-validator" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "allowUnclassifiedCharacters": { + "isRequired": true, + "ldapAttribute": "ds-cfg-allow-unclassified-characters", + "type": "simple" + }, + "characterSet": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-character-set", + "type": "simple" + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple" + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple" + }, + "minCharacterSets": { + "ldapAttribute": "ds-cfg-min-character-sets", + "type": "simple" + } + } + }, + "dsconfig/dictionary": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-dictionary-password-validator" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "caseSensitiveValidation": { + "isRequired": true, + "ldapAttribute": "ds-cfg-case-sensitive-validation", + "type": "simple" + }, + "checkSubstrings": { + "ldapAttribute": "ds-cfg-check-substrings", + "type": "simple" + }, + "dictionaryFile": { + "isRequired": true, + "ldapAttribute": "ds-cfg-dictionary-file", + "type": "simple" + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple" + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple" + }, + "minSubstringLength": { + "ldapAttribute": "ds-cfg-min-substring-length", + "type": "simple" + }, + "testReversedPassword": { + "isRequired": true, + "ldapAttribute": "ds-cfg-test-reversed-password", + "type": "simple" + } + } + }, + "dsconfig/lengthBased": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-length-based-password-validator" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple" + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple" + }, + "maxPasswordLength": { + "ldapAttribute": "ds-cfg-max-password-length", + "type": "simple" + }, + "minPasswordLength": { + "ldapAttribute": "ds-cfg-min-password-length", + "type": "simple" + } + } + }, + "dsconfig/passwordPolicies": { + "dnTemplate": "cn=Password Policies,cn=config", + "objectClasses": [ + "ds-cfg-password-policy", + "ds-cfg-authentication-policy" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "defaultPasswordStorageScheme": { + "isMultiValued": true, + "isRequired": true, + "ldapAttribute": "ds-cfg-default-password-storage-scheme", + "type": "simple" + }, + "maxPasswordAge": { + "ldapAttribute": "ds-cfg-max-password-age", + "type": "simple" + }, + "passwordAttribute": { + "isRequired": true, + "ldapAttribute": "ds-cfg-password-attribute", + "type": "simple" + }, + "passwordHistoryCount": { + "ldapAttribute": "ds-cfg-password-history-count", + "type": "simple" + }, + "validator": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-password-validator", + "type": "simple" + } + } + }, + "dsconfig/repeatedCharacters": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-repeated-characters-password-validator" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "caseSensitiveValidation": { + "isRequired": true, + "ldapAttribute": "ds-cfg-case-sensitive-validation", + "type": "simple" + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple" + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple" + }, + "maxConsecutiveLength": { + "isRequired": true, + "ldapAttribute": "ds-cfg-max-consecutive-length", + "type": "simple" + } + } + }, + "dsconfig/similarityBased": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-similarity-based-password-validator" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple" + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple" + }, + "minPasswordDifference": { + "isRequired": true, + "ldapAttribute": "ds-cfg-min-password-difference", + "type": "simple" + } + } + }, + "dsconfig/uniqueCharacters": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-unique-characters-password-validator" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "caseSensitiveValidation": { + "isRequired": true, + "ldapAttribute": "ds-cfg-case-sensitive-validation", + "type": "simple" + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple" + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple" + }, + "minUniqueCharacters": { + "isRequired": true, + "ldapAttribute": "ds-cfg-min-unique-characters", + "type": "simple" + } + } + }, + "dsconfig/userDefinedVirtualAttribute": { + "dnTemplate": "cn=Virtual Attributes,cn=config", + "objectClasses": [ + "ds-cfg-user-defined-virtual-attribute", + "ds-cfg-virtual-attribute" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "attributeType": { + "isRequired": true, + "ldapAttribute": "ds-cfg-attribute-type", + "type": "simple" + }, + "baseDn": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-base-dn", + "type": "simple" + }, + "conflictBehavior": { + "ldapAttribute": "ds-cfg-conflict-behavior", + "type": "simple" + }, + "enabled": { + "isRequired": true, + "ldapAttribute": "ds-cfg-enabled", + "type": "simple" + }, + "filter": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-filter", + "type": "simple" + }, + "groupDn": { + "ldapAttribute": "ds-cfg-group-dn", + "type": "simple" + }, + "javaClass": { + "isRequired": true, + "ldapAttribute": "ds-cfg-java-class", + "type": "simple" + }, + "scope": { + "ldapAttribute": "ds-cfg-scope", + "type": "simple" + }, + "value": { + "isMultiValued": true, + "isRequired": true, + "ldapAttribute": "ds-cfg-value", + "type": "simple" + } + } + }, + "internal/role": { + "dnTemplate": "ou=roles,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "fr-idm-internal-role" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "authzMembers": { + "isMultiValued": true, + "propertyName": "authzRoles", + "resourcePath": "managed/user", + "type": "reverseReference" + }, + "condition": { + "ldapAttribute": "fr-idm-condition", + "type": "simple" + }, + "description": { + "ldapAttribute": "description", + "type": "simple" + }, + "name": { + "ldapAttribute": "fr-idm-name", + "type": "simple" + }, + "privileges": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-privilege", + "type": "json" + }, + "temporalConstraints": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-temporal-constraints", + "type": "json" + } + } + }, + "internal/user": { + "dnTemplate": "ou=users,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-internal-user" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly" + }, + "password": { + "ldapAttribute": "fr-idm-password", + "type": "json" + } + } + }, + "link": { + "dnTemplate": "ou=links,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-link" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly" + }, + "firstId": { + "ldapAttribute": "fr-idm-link-firstId", + "type": "simple" + }, + "linkQualifier": { + "ldapAttribute": "fr-idm-link-qualifier", + "type": "simple" + }, + "linkType": { + "ldapAttribute": "fr-idm-link-type", + "type": "simple" + }, + "secondId": { + "ldapAttribute": "fr-idm-link-secondId", + "type": "simple" + } + } + }, + "locks": { + "dnTemplate": "ou=locks,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-lock" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly" + }, + "nodeId": { + "ldapAttribute": "fr-idm-lock-nodeid", + "type": "simple" + } + } + }, + "recon/assoc": { + "dnTemplate": "ou=assoc,ou=recon,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "namingStrategy": { + "dnAttribute": "fr-idm-reconassoc-reconid", + "type": "clientDnNaming" + }, + "objectClasses": [ + "fr-idm-reconassoc" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "fr-idm-reconassoc-reconid", + "type": "simple" + }, + "finishTime": { + "ldapAttribute": "fr-idm-reconassoc-finishtime", + "type": "simple" + }, + "isAnalysis": { + "ldapAttribute": "fr-idm-reconassoc-isanalysis", + "type": "simple" + }, + "mapping": { + "ldapAttribute": "fr-idm-reconassoc-mapping", + "type": "simple" + }, + "sourceResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-sourceresourcecollection", + "type": "simple" + }, + "targetResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-targetresourcecollection", + "type": "simple" + } + }, + "subResources": { + "entry": { + "namingStrategy": { + "dnAttribute": "uid", + "type": "clientDnNaming" + }, + "resource": "recon-assoc-entry", + "type": "collection" + } + } + }, + "recon/assoc/entry": { + "objectClasses": [ + "uidObject", + "fr-idm-reconassocentry" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple" + }, + "action": { + "ldapAttribute": "fr-idm-reconassocentry-action", + "type": "simple" + }, + "ambiguousTargetObjectIds": { + "ldapAttribute": "fr-idm-reconassocentry-ambiguoustargetobjectids", + "type": "simple" + }, + "exception": { + "ldapAttribute": "fr-idm-reconassocentry-exception", + "type": "simple" + }, + "isAnalysis": { + "ldapAttribute": "fr-idm-reconassoc-isanalysis", + "type": "simple" + }, + "linkQualifier": { + "ldapAttribute": "fr-idm-reconassocentry-linkqualifier", + "type": "simple" + }, + "mapping": { + "ldapAttribute": "fr-idm-reconassoc-mapping", + "type": "simple" + }, + "message": { + "ldapAttribute": "fr-idm-reconassocentry-message", + "type": "simple" + }, + "messageDetail": { + "ldapAttribute": "fr-idm-reconassocentry-messagedetail", + "type": "simple" + }, + "phase": { + "ldapAttribute": "fr-idm-reconassocentry-phase", + "type": "simple" + }, + "reconId": { + "ldapAttribute": "fr-idm-reconassocentry-reconid", + "type": "simple" + }, + "situation": { + "ldapAttribute": "fr-idm-reconassocentry-situation", + "type": "simple" + }, + "sourceObjectId": { + "ldapAttribute": "fr-idm-reconassocentry-sourceObjectId", + "type": "simple" + }, + "sourceResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-sourceresourcecollection", + "type": "simple" + }, + "status": { + "ldapAttribute": "fr-idm-reconassocentry-status", + "type": "simple" + }, + "targetObjectId": { + "ldapAttribute": "fr-idm-reconassocentry-targetObjectId", + "type": "simple" + }, + "targetResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-targetresourcecollection", + "type": "simple" + } + }, + "resourceName": "recon-assoc-entry", + "subResourceRouting": [ + { + "prefix": "entry", + "template": "recon/assoc/{reconId}/entry" + } + ] + }, + "sync/queue": { + "dnTemplate": "ou=queue,ou=sync,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-syncqueue" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly" + }, + "context": { + "ldapAttribute": "fr-idm-syncqueue-context", + "type": "json" + }, + "createDate": { + "ldapAttribute": "fr-idm-syncqueue-createdate", + "type": "simple" + }, + "mapping": { + "ldapAttribute": "fr-idm-syncqueue-mapping", + "type": "simple" + }, + "newObject": { + "ldapAttribute": "fr-idm-syncqueue-newobject", + "type": "json" + }, + "nodeId": { + "ldapAttribute": "fr-idm-syncqueue-nodeid", + "type": "simple" + }, + "objectRev": { + "ldapAttribute": "fr-idm-syncqueue-objectRev", + "type": "simple" + }, + "oldObject": { + "ldapAttribute": "fr-idm-syncqueue-oldobject", + "type": "json" + }, + "resourceCollection": { + "ldapAttribute": "fr-idm-syncqueue-resourcecollection", + "type": "simple" + }, + "resourceId": { + "ldapAttribute": "fr-idm-syncqueue-resourceid", + "type": "simple" + }, + "state": { + "ldapAttribute": "fr-idm-syncqueue-state", + "type": "simple" + }, + "syncAction": { + "ldapAttribute": "fr-idm-syncqueue-syncaction", + "type": "simple" + } + } + } + }, + "genericMapping": { + "cluster/*": { + "dnTemplate": "ou=cluster,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-cluster-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchClusterObject", + "objectClasses": [ + "uidObject", + "fr-idm-cluster-obj" + ] + }, + "config": { + "dnTemplate": "ou=config,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "file": { + "dnTemplate": "ou=file,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "import": { + "dnTemplate": "ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "import/*": { + "dnTemplate": "ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "internal/notification": { + "dnTemplate": "ou=notification,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-notification-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-notification" + ], + "properties": { + "target": { + "propertyName": "_notifications", + "resourcePath": "managed/user", + "type": "reverseReference" + } + } + }, + "internal/usermeta": { + "dnTemplate": "ou=usermeta,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-generic-obj" + ], + "properties": { + "target": { + "propertyName": "_meta", + "resourcePath": "managed/user", + "type": "reverseReference" + } + } + }, + "jsonstorage": { + "dnTemplate": "ou=jsonstorage,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "managed/*": { + "dnTemplate": "ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "managed/assignment": { + "dnTemplate": "ou=assignment,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-managed-assignment-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-assignment" + ], + "properties": { + "condition": { + "ldapAttribute": "fr-idm-assignment-condition", + "type": "simple" + }, + "members": { + "isMultiValued": true, + "propertyName": "assignments", + "resourcePath": "managed/user", + "type": "reverseReference" + }, + "roles": { + "isMultiValued": true, + "propertyName": "assignments", + "resourcePath": "managed/role", + "type": "reverseReference" + } + } + }, + "managed/organization": { + "dnTemplate": "ou=organization,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-managed-organization-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-organization" + ], + "properties": { + "admins": { + "isMultiValued": true, + "propertyName": "adminOfOrg", + "resourcePath": "managed/user", + "type": "reverseReference" + }, + "children": { + "isMultiValued": true, + "propertyName": "parent", + "resourcePath": "managed/organization", + "type": "reverseReference" + }, + "members": { + "isMultiValued": true, + "propertyName": "memberOfOrg", + "resourcePath": "managed/user", + "type": "reverseReference" + }, + "name": { + "ldapAttribute": "fr-idm-managed-organization-name", + "type": "simple" + }, + "owners": { + "isMultiValued": true, + "propertyName": "ownerOfOrg", + "resourcePath": "managed/user", + "type": "reverseReference" + }, + "parent": { + "ldapAttribute": "fr-idm-managed-organization-parent", + "primaryKey": "uid", + "resourcePath": "managed/organization", + "type": "reference" + } + } + }, + "managed/role": { + "dnTemplate": "ou=role,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-managed-role-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchManagedRole", + "objectClasses": [ + "uidObject", + "fr-idm-managed-role" + ], + "properties": { + "assignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-role-assignments", + "primaryKey": "uid", + "resourcePath": "managed/assignment", + "type": "reference" + }, + "members": { + "isMultiValued": true, + "propertyName": "roles", + "resourcePath": "managed/user", + "type": "reverseReference" + } + } + }, + "managed/user": { + "dnTemplate": "ou=user,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-managed-user-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchManagedUser", + "objectClasses": [ + "uidObject", + "fr-idm-managed-user" + ], + "properties": { + "_meta": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-meta", + "primaryKey": "uid", + "resourcePath": "internal/usermeta", + "type": "reference" + }, + "_notifications": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-notifications", + "primaryKey": "uid", + "resourcePath": "internal/notification", + "type": "reference" + }, + "adminOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-admin", + "primaryKey": "uid", + "resourcePath": "managed/organization", + "type": "reference" + }, + "assignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-assignment-member", + "primaryKey": "uid", + "resourcePath": "managed/assignment", + "type": "reference" + }, + "authzRoles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-authzroles-internal-role", + "primaryKey": "cn", + "resourcePath": "internal/role", + "type": "reference" + }, + "manager": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-manager", + "primaryKey": "uid", + "resourcePath": "managed/user", + "type": "reference" + }, + "memberOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-member", + "primaryKey": "uid", + "resourcePath": "managed/organization", + "type": "reference" + }, + "ownerOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-owner", + "primaryKey": "uid", + "resourcePath": "managed/organization", + "type": "reference" + }, + "passwordExpirationTime": { + "ldapAttribute": "pwdExpirationTime", + "type": "simple", + "writability": "readOnlyDiscardWrites" + }, + "passwordLastChangedTime": { + "ldapAttribute": "pwdChangedTime", + "type": "simple", + "writability": "readOnlyDiscardWrites" + }, + "reports": { + "isMultiValued": true, + "propertyName": "manager", + "resourcePath": "managed/user", + "type": "reverseReference" + }, + "roles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-roles", + "primaryKey": "uid", + "resourcePath": "managed/role", + "type": "reference" + } + } + }, + "reconprogressstate": { + "dnTemplate": "ou=reconprogressstate,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "relationships": { + "dnTemplate": "ou=relationships,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-relationship-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchRelationship", + "objectClasses": [ + "uidObject", + "fr-idm-relationship" + ] + }, + "scheduler": { + "dnTemplate": "ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "scheduler/*": { + "dnTemplate": "ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "ui/*": { + "dnTemplate": "ou=ui,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "updates": { + "dnTemplate": "ou=updates,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + } + } + }, + "rest2LdapOptions": { + "mvccAttribute": "etag", + "readOnUpdatePolicy": "controls", + "returnNullForMissingProperties": true, + "useMvcc": true, + "usePermissiveModify": true, + "useSubtreeDelete": false + }, + "security": { + "fileBasedTrustManagerFile": "&{idm.install.dir}/security/truststore", + "fileBasedTrustManagerPasswordFile": "&{idm.install.dir}/security/storepass", + "fileBasedTrustManagerType": "JKS", + "trustManager": "file" + } + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.192Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/repo.init.idm.json b/test/e2e/exports/all-separate/idm/global/idm/repo.init.idm.json new file mode 100644 index 000000000..07dea4d1d --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/repo.init.idm.json @@ -0,0 +1,64 @@ +{ + "idm": { + "repo.init": { + "_id": "repo.init", + "insert": { + "internal/role": [ + { + "description": "Administrative access", + "id": "openidm-admin", + "name": "openidm-admin" + }, + { + "description": "Basic minimum user", + "id": "openidm-authorized", + "name": "openidm-authorized" + }, + { + "description": "Anonymous access", + "id": "openidm-reg", + "name": "openidm-reg" + }, + { + "description": "Authenticated via certificate", + "id": "openidm-cert", + "name": "openidm-cert" + }, + { + "description": "Allowed to reassign workflow tasks", + "id": "openidm-tasks-manager", + "name": "openidm-tasks-manager" + }, + { + "description": "Platform provisioning access", + "id": "platform-provisioning", + "name": "platform-provisioning" + } + ], + "internal/user": [ + { + "id": "openidm-admin", + "password": "&{openidm.admin.password}" + }, + { + "id": "anonymous", + "password": "anonymous" + }, + { + "id": "idm-provisioning" + }, + { + "id": "connector-server-client" + } + ] + } + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.194Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/router.idm.json b/test/e2e/exports/all-separate/idm/global/idm/router.idm.json new file mode 100644 index 000000000..3aa24f875 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/router.idm.json @@ -0,0 +1,48 @@ +{ + "idm": { + "router": { + "_id": "router", + "filters": [ + { + "methods": [ + "create", + "update" + ], + "onRequest": { + "file": "policyFilter.js", + "type": "text/javascript" + }, + "pattern": "^(managed|internal)($|(/.+))" + }, + { + "methods": [ + "update" + ], + "onRequest": { + "file": "policyFilter.js", + "type": "text/javascript" + }, + "pattern": "^config/managed$" + }, + { + "condition": { + "source": "(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0)", + "type": "text/javascript" + }, + "onResponse": { + "source": "require('relationshipFilter').filterResponse()", + "type": "text/javascript" + }, + "pattern": "^(managed|internal)($|(/.+))" + } + ] + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.194Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/schedule/seantest.idm.json b/test/e2e/exports/all-separate/idm/global/idm/schedule/seantest.idm.json new file mode 100644 index 000000000..1d24af410 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/schedule/seantest.idm.json @@ -0,0 +1,34 @@ +{ + "idm": { + "schedule/seantest": { + "_id": "schedule/seantest", + "concurrentExecution": false, + "enabled": false, + "endTime": null, + "invokeContext": { + "script": { + "globals": {}, + "source": "//sean has changed this script. Let's see if it is still working. qqqqqqqqqqqqqqSchedule1\n", + "type": "text/javascript" + } + }, + "invokeLogLevel": "info", + "invokeService": "script", + "misfirePolicy": "fireAndProceed", + "persisted": true, + "recoverable": false, + "repeatCount": 0, + "repeatInterval": 0, + "schedule": null, + "startTime": null, + "type": "simple" + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.194Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/schedule/taskscan_activate.idm.json b/test/e2e/exports/all-separate/idm/global/idm/schedule/taskscan_activate.idm.json new file mode 100644 index 000000000..46235fc80 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/schedule/taskscan_activate.idm.json @@ -0,0 +1,42 @@ +{ + "idm": { + "schedule/taskscan_activate": { + "_id": "schedule/taskscan_activate", + "concurrentExecution": false, + "enabled": false, + "invokeContext": { + "numberOfThreads": 5, + "scan": { + "_queryFilter": "((/activeDate le \"${Time.nowWithOffset}\") AND (!(/inactiveDate pr) or /inactiveDate ge \"${Time.nowWithOffset}\"))", + "object": "managed/user", + "recovery": { + "timeout": "10m" + }, + "taskState": { + "completed": "/activateAccount/task-completed", + "started": "/activateAccount/task-started" + } + }, + "task": { + "script": { + "globals": {}, + "source": "var patch = [{ \"operation\" : \"replace\", \"field\" : \"/accountStatus\", \"value\" : \"active\" }];\n\nlogger.debug(\"Performing Activate Account Task on {} ({})\", input.mail, objectID);\n\nopenidm.patch(objectID, null, patch); true;", + "type": "text/javascript" + } + }, + "waitForCompletion": false + }, + "invokeService": "taskscanner", + "persisted": true, + "repeatInterval": 86400000, + "type": "simple" + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.194Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/schedule/taskscan_expire.idm.json b/test/e2e/exports/all-separate/idm/global/idm/schedule/taskscan_expire.idm.json new file mode 100644 index 000000000..b8a12f177 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/schedule/taskscan_expire.idm.json @@ -0,0 +1,42 @@ +{ + "idm": { + "schedule/taskscan_expire": { + "_id": "schedule/taskscan_expire", + "concurrentExecution": false, + "enabled": false, + "invokeContext": { + "numberOfThreads": 5, + "scan": { + "_queryFilter": "((/inactiveDate lt \"${Time.nowWithOffset}\") AND (!(/activeDate pr) or /activeDate le \"${Time.nowWithOffset}\"))", + "object": "managed/user", + "recovery": { + "timeout": "10m" + }, + "taskState": { + "completed": "/expireAccount/task-completed", + "started": "/expireAccount/task-started" + } + }, + "task": { + "script": { + "globals": {}, + "source": "var patch = [{ \"operation\" : \"replace\", \"field\" : \"/accountStatus\", \"value\" : \"inactive\" }];\n\nlogger.debug(\"Performing Expire Account Task on {} ({})\", input.mail, objectID);\n\nopenidm.patch(objectID, null, patch); true;", + "type": "text/javascript" + } + }, + "waitForCompletion": false + }, + "invokeService": "taskscanner", + "persisted": true, + "repeatInterval": 86400000, + "type": "simple" + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.194Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/scheduler.idm.json b/test/e2e/exports/all-separate/idm/global/idm/scheduler.idm.json new file mode 100644 index 000000000..fafb6d996 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/scheduler.idm.json @@ -0,0 +1,22 @@ +{ + "idm": { + "scheduler": { + "_id": "scheduler", + "scheduler": { + "executePersistentSchedules": { + "$bool": "&{openidm.scheduler.execute.persistent.schedules}" + } + }, + "threadPool": { + "threadCount": 10 + } + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.194Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/script.idm.json b/test/e2e/exports/all-separate/idm/global/idm/script.idm.json new file mode 100644 index 000000000..e1ec99319 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/script.idm.json @@ -0,0 +1,49 @@ +{ + "idm": { + "script": { + "ECMAScript": { + "javascript.optimization.level": 9, + "javascript.recompile.minimumInterval": 60000 + }, + "Groovy": { + "#groovy.disabled.global.ast.transformations": "", + "#groovy.errors.tolerance": 10, + "#groovy.output.debug": false, + "#groovy.output.verbose": false, + "#groovy.script.base": "#any class extends groovy.lang.Script", + "#groovy.script.extension": ".groovy", + "#groovy.target.bytecode": "1.8", + "#groovy.target.directory": "&{idm.data.dir}/classes", + "#groovy.target.indy": true, + "#groovy.warnings": "likely errors #othere values [none,likely,possible,paranoia]", + "groovy.classpath": "&{idm.install.dir}/lib", + "groovy.recompile": true, + "groovy.recompile.minimumInterval": 60000, + "groovy.source.encoding": "UTF-8" + }, + "_id": "script", + "properties": {}, + "sources": { + "default": { + "directory": "&{idm.install.dir}/bin/defaults/script" + }, + "install": { + "directory": "&{idm.install.dir}" + }, + "project": { + "directory": "&{idm.instance.dir}" + }, + "project-script": { + "directory": "&{idm.instance.dir}/script" + } + } + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.194Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/secrets.idm.json b/test/e2e/exports/all-separate/idm/global/idm/secrets.idm.json new file mode 100644 index 000000000..710ba7786 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/secrets.idm.json @@ -0,0 +1,119 @@ +{ + "idm": { + "secrets": { + "_id": "secrets", + "stores": [ + { + "class": "org.forgerock.openidm.secrets.config.KeyStoreSecretStore", + "config": { + "file": "&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}", + "mappings": [ + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}" + ], + "secretId": "idm.default", + "types": [ + "ENCRYPT", + "DECRYPT" + ] + }, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}" + ], + "secretId": "idm.config.encryption", + "types": [ + "ENCRYPT", + "DECRYPT" + ] + }, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}" + ], + "secretId": "idm.password.encryption", + "types": [ + "ENCRYPT", + "DECRYPT" + ] + }, + { + "aliases": [ + "&{openidm.https.keystore.cert.alias|openidm-localhost}" + ], + "secretId": "idm.jwt.session.module.encryption", + "types": [ + "ENCRYPT", + "DECRYPT" + ] + }, + { + "aliases": [ + "&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}" + ], + "secretId": "idm.jwt.session.module.signing", + "types": [ + "SIGN", + "VERIFY" + ] + }, + { + "aliases": [ + "selfservice" + ], + "secretId": "idm.selfservice.encryption", + "types": [ + "ENCRYPT", + "DECRYPT" + ] + }, + { + "aliases": [ + "&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}" + ], + "secretId": "idm.selfservice.signing", + "types": [ + "SIGN", + "VERIFY" + ] + }, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}" + ], + "secretId": "idm.assignment.attribute.encryption", + "types": [ + "ENCRYPT", + "DECRYPT" + ] + } + ], + "providerName": "&{openidm.keystore.provider|SunJCE}", + "storePassword": "&{openidm.keystore.password|changeit}", + "storetype": "&{openidm.keystore.type|JCEKS}" + }, + "name": "mainKeyStore" + }, + { + "class": "org.forgerock.openidm.secrets.config.KeyStoreSecretStore", + "config": { + "file": "&{openidm.truststore.location|&{idm.install.dir}/security/truststore}", + "mappings": [], + "providerName": "&{openidm.truststore.provider|SUN}", + "storePassword": "&{openidm.truststore.password|changeit}", + "storetype": "&{openidm.truststore.type|JKS}" + }, + "name": "mainTrustStore" + } + ] + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.194Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/selfservice.kba.idm.json b/test/e2e/exports/all-separate/idm/global/idm/selfservice.kba.idm.json new file mode 100644 index 000000000..c3c697975 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/selfservice.kba.idm.json @@ -0,0 +1,27 @@ +{ + "idm": { + "selfservice.kba": { + "_id": "selfservice.kba", + "kbaPropertyName": "kbaInfo", + "minimumAnswersToDefine": 2, + "minimumAnswersToVerify": 1, + "questions": { + "1": { + "en": "What's your favorite color?", + "en_GB": "What is your favourite colour?", + "fr": "Quelle est votre couleur préférée?" + }, + "2": { + "en": "Who was your first employer?" + } + } + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.194Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/selfservice.propertymap.idm.json b/test/e2e/exports/all-separate/idm/global/idm/selfservice.propertymap.idm.json new file mode 100644 index 000000000..20ed23906 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/selfservice.propertymap.idm.json @@ -0,0 +1,62 @@ +{ + "idm": { + "selfservice.propertymap": { + "_id": "selfservice.propertymap", + "properties": [ + { + "source": "givenName", + "target": "givenName" + }, + { + "source": "familyName", + "target": "sn" + }, + { + "source": "email", + "target": "mail" + }, + { + "condition": "/object/postalAddress pr", + "source": "postalAddress", + "target": "postalAddress" + }, + { + "condition": "/object/addressLocality pr", + "source": "addressLocality", + "target": "city" + }, + { + "condition": "/object/addressRegion pr", + "source": "addressRegion", + "target": "stateProvince" + }, + { + "condition": "/object/postalCode pr", + "source": "postalCode", + "target": "postalCode" + }, + { + "condition": "/object/country pr", + "source": "country", + "target": "country" + }, + { + "condition": "/object/phone pr", + "source": "phone", + "target": "telephoneNumber" + }, + { + "source": "username", + "target": "userName" + } + ] + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.194Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/selfservice.terms.idm.json b/test/e2e/exports/all-separate/idm/global/idm/selfservice.terms.idm.json new file mode 100644 index 000000000..5a0f306dc --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/selfservice.terms.idm.json @@ -0,0 +1,29 @@ +{ + "idm": { + "selfservice.terms": { + "_id": "selfservice.terms", + "active": "0.0", + "uiConfig": { + "buttonText": "Accept", + "displayName": "We've updated our terms", + "purpose": "You must accept the updated terms in order to proceed." + }, + "versions": [ + { + "createDate": "2019-10-28T04:20:11.320Z", + "termsTranslations": { + "en": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum." + }, + "version": "0.0" + } + ] + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.194Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/servletfilter/cors.idm.json b/test/e2e/exports/all-separate/idm/global/idm/servletfilter/cors.idm.json new file mode 100644 index 000000000..4e8cdb6ca --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/servletfilter/cors.idm.json @@ -0,0 +1,25 @@ +{ + "idm": { + "servletfilter/cors": { + "_id": "servletfilter/cors", + "filterClass": "org.eclipse.jetty.ee10.servlets.CrossOriginFilter", + "initParams": { + "allowCredentials": true, + "allowedHeaders": "accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with", + "allowedMethods": "GET,POST,PUT,DELETE,PATCH", + "allowedOrigins": "https://localhost:&{openidm.port.https}", + "chainPreflight": false + }, + "urlPatterns": [ + "/*" + ] + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.195Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/servletfilter/payload.idm.json b/test/e2e/exports/all-separate/idm/global/idm/servletfilter/payload.idm.json new file mode 100644 index 000000000..9c9045d89 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/servletfilter/payload.idm.json @@ -0,0 +1,21 @@ +{ + "idm": { + "servletfilter/payload": { + "_id": "servletfilter/payload", + "filterClass": "org.forgerock.openidm.jetty.LargePayloadServletFilter", + "initParams": { + "maxRequestSizeInMegabytes": 5 + }, + "urlPatterns": [ + "&{openidm.servlet.alias}/*" + ] + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.195Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/servletfilter/upload.idm.json b/test/e2e/exports/all-separate/idm/global/idm/servletfilter/upload.idm.json new file mode 100644 index 000000000..ba1a8578a --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/servletfilter/upload.idm.json @@ -0,0 +1,21 @@ +{ + "idm": { + "servletfilter/upload": { + "_id": "servletfilter/upload", + "filterClass": "org.forgerock.openidm.jetty.LargePayloadServletFilter", + "initParams": { + "maxRequestSizeInMegabytes": 50 + }, + "urlPatterns": [ + "&{openidm.servlet.upload.alias}/*" + ] + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.195Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/ui.context/admin.idm.json b/test/e2e/exports/all-separate/idm/global/idm/ui.context/admin.idm.json new file mode 100644 index 000000000..ab65eeb0d --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/ui.context/admin.idm.json @@ -0,0 +1,22 @@ +{ + "idm": { + "ui.context/admin": { + "_id": "ui.context/admin", + "cacheEnabled": true, + "defaultDir": "&{idm.install.dir}/ui/admin/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/admin/extension", + "responseHeaders": { + "X-Frame-Options": "SAMEORIGIN" + }, + "urlContextRoot": "/admin" + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.195Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/ui.context/api.idm.json b/test/e2e/exports/all-separate/idm/global/idm/ui.context/api.idm.json new file mode 100644 index 000000000..d3e319fdf --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/ui.context/api.idm.json @@ -0,0 +1,20 @@ +{ + "idm": { + "ui.context/api": { + "_id": "ui.context/api", + "authEnabled": true, + "cacheEnabled": false, + "defaultDir": "&{idm.install.dir}/ui/api/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/api/extension", + "urlContextRoot": "/api" + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.195Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/ui.context/enduser.idm.json b/test/e2e/exports/all-separate/idm/global/idm/ui.context/enduser.idm.json new file mode 100644 index 000000000..8ced46174 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/ui.context/enduser.idm.json @@ -0,0 +1,21 @@ +{ + "idm": { + "ui.context/enduser": { + "_id": "ui.context/enduser", + "cacheEnabled": true, + "defaultDir": "&{idm.install.dir}/ui/enduser", + "enabled": true, + "responseHeaders": { + "X-Frame-Options": "DENY" + }, + "urlContextRoot": "/" + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.195Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/ui.context/oauth.idm.json b/test/e2e/exports/all-separate/idm/global/idm/ui.context/oauth.idm.json new file mode 100644 index 000000000..cc3566250 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/ui.context/oauth.idm.json @@ -0,0 +1,19 @@ +{ + "idm": { + "ui.context/oauth": { + "_id": "ui.context/oauth", + "cacheEnabled": true, + "defaultDir": "&{idm.install.dir}/ui/oauth/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/oauth/extension", + "urlContextRoot": "/oauthReturn" + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.195Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/ui/configuration.idm.json b/test/e2e/exports/all-separate/idm/global/idm/ui/configuration.idm.json new file mode 100644 index 000000000..591745915 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/ui/configuration.idm.json @@ -0,0 +1,40 @@ +{ + "idm": { + "ui/configuration": { + "_id": "ui/configuration", + "configuration": { + "defaultNotificationType": "info", + "forgotUsername": false, + "lang": "en", + "notificationTypes": { + "error": { + "iconPath": "images/notifications/error.png", + "name": "common.notification.types.error" + }, + "info": { + "iconPath": "images/notifications/info.png", + "name": "common.notification.types.info" + }, + "warning": { + "iconPath": "images/notifications/warning.png", + "name": "common.notification.types.warning" + } + }, + "passwordReset": false, + "passwordResetLink": "", + "roles": { + "internal/role/openidm-admin": "ui-admin", + "internal/role/openidm-authorized": "ui-user" + }, + "selfRegistration": false + } + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.195Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/ui/dashboard.idm.json b/test/e2e/exports/all-separate/idm/global/idm/ui/dashboard.idm.json new file mode 100644 index 000000000..c0aa3cc5e --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/ui/dashboard.idm.json @@ -0,0 +1,205 @@ +{ + "idm": { + "ui/dashboard": { + "_id": "ui/dashboard", + "adminDashboards": [ + { + "isDefault": true, + "name": "Quick Start", + "widgets": [ + { + "cards": [ + { + "href": "#connectors/add/", + "icon": "fa-database", + "name": "Add Connector" + }, + { + "href": "#mapping/add/", + "icon": "fa-map-marker", + "name": "Create Mapping" + }, + { + "href": "#resource/managed/role/list/", + "icon": "fa-check-square-o", + "name": "Manage Roles" + }, + { + "href": "#managed/add/", + "icon": "fa-tablet", + "name": "Add Device" + }, + { + "href": "#selfservice/userregistration/", + "icon": "fa-gear", + "name": "Configure Registration" + }, + { + "href": "#selfservice/passwordreset/", + "icon": "fa-gear", + "name": "Configure Password Reset" + }, + { + "href": "#resource/managed/user/list/", + "icon": "fa-user", + "name": "Manage Users" + }, + { + "href": "#settings/", + "icon": "fa-user", + "name": "Configure System Preferences" + } + ], + "size": "large", + "type": "quickStart" + } + ] + }, + { + "isDefault": false, + "name": "System Monitoring", + "widgets": [ + { + "legendRange": { + "month": [ + 500, + 2500, + 5000 + ], + "week": [ + 10, + 30, + 90, + 270, + 810 + ], + "year": [ + 10000, + 40000, + 100000, + 250000 + ] + }, + "maxRange": "#24423c", + "minRange": "#b0d4cd", + "size": "large", + "type": "audit" + }, + { + "size": "large", + "type": "clusterStatus" + }, + { + "size": "large", + "type": "systemHealthFull" + }, + { + "barchart": "false", + "size": "large", + "type": "lastRecon" + } + ] + }, + { + "isDefault": false, + "name": "Resource Report", + "widgets": [ + { + "selected": "activeUsers", + "size": "x-small", + "type": "counter" + }, + { + "selected": "rolesEnabled", + "size": "x-small", + "type": "counter" + }, + { + "selected": "activeConnectors", + "size": "x-small", + "type": "counter" + }, + { + "size": "large", + "type": "resourceList" + } + ] + }, + { + "isDefault": false, + "name": "Business Report", + "widgets": [ + { + "graphType": "fa-pie-chart", + "providers": [ + "Username/Password" + ], + "size": "x-small", + "type": "signIns", + "widgetTitle": "Sign-Ins" + }, + { + "graphType": "fa-bar-chart", + "size": "x-small", + "type": "passwordResets", + "widgetTitle": "Password Resets" + }, + { + "graphType": "fa-line-chart", + "providers": [ + "Username/Password" + ], + "size": "x-small", + "type": "newRegistrations", + "widgetTitle": "New Registrations" + }, + { + "size": "x-small", + "timezone": { + "hours": "07", + "minutes": "00", + "negative": true + }, + "type": "socialLogin" + }, + { + "selected": "socialEnabled", + "size": "x-small", + "type": "counter" + }, + { + "selected": "manualRegistrations", + "size": "x-small", + "type": "counter" + } + ] + }, + { + "isDefault": false, + "name": "seantestdashboard", + "widgets": [ + { + "size": "large", + "type": "resourceList" + } + ] + } + ], + "dashboard": { + "widgets": [ + { + "size": "large", + "type": "Welcome" + } + ] + } + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.195Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/ui/profile.idm.json b/test/e2e/exports/all-separate/idm/global/idm/ui/profile.idm.json new file mode 100644 index 000000000..dfed4cd65 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/ui/profile.idm.json @@ -0,0 +1,52 @@ +{ + "idm": { + "ui/profile": { + "_id": "ui/profile", + "tabs": [ + { + "name": "personalInfoTab", + "view": "org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab" + }, + { + "name": "signInAndSecurity", + "view": "org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab" + }, + { + "name": "preference", + "view": "org/forgerock/openidm/ui/user/profile/PreferencesTab" + }, + { + "name": "trustedDevice", + "view": "org/forgerock/openidm/ui/user/profile/TrustedDevicesTab" + }, + { + "name": "oauthApplication", + "view": "org/forgerock/openidm/ui/user/profile/OauthApplicationsTab" + }, + { + "name": "privacyAndConsent", + "view": "org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab" + }, + { + "name": "sharing", + "view": "org/forgerock/openidm/ui/user/profile/uma/SharingTab" + }, + { + "name": "auditHistory", + "view": "org/forgerock/openidm/ui/user/profile/uma/ActivityTab" + }, + { + "name": "accountControls", + "view": "org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab" + } + ] + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.195Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/ui/themeconfig.idm.json b/test/e2e/exports/all-separate/idm/global/idm/ui/themeconfig.idm.json new file mode 100644 index 000000000..4fbf84178 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/ui/themeconfig.idm.json @@ -0,0 +1,38 @@ +{ + "idm": { + "ui/themeconfig": { + "_id": "ui/themeconfig", + "icon": "favicon.ico", + "path": "", + "settings": { + "footer": { + "mailto": "info@pingidentity.com" + }, + "loginLogo": { + "alt": "Ping Identity", + "height": "120px", + "src": "images/login-logo-dark.png", + "title": "Ping Identity", + "width": "120px" + }, + "logo": { + "alt": "Ping Identity", + "src": "images/logo-horizontal-white.png", + "title": "Ping Identity" + } + }, + "stylesheets": [ + "css/bootstrap-3.4.1-custom.css", + "css/structure.css", + "css/theme.css" + ] + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.195Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/webserver.idm.json b/test/e2e/exports/all-separate/idm/global/idm/webserver.idm.json new file mode 100644 index 000000000..36e308dcd --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/webserver.idm.json @@ -0,0 +1,23 @@ +{ + "idm": { + "webserver": { + "_id": "webserver", + "gzip": { + "enabled": true, + "includedMethods": [ + "GET" + ] + }, + "maxThreads": { + "$int": "&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}" + } + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.195Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/webserver.listener/http.idm.json b/test/e2e/exports/all-separate/idm/global/idm/webserver.listener/http.idm.json new file mode 100644 index 000000000..ada98af42 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/webserver.listener/http.idm.json @@ -0,0 +1,20 @@ +{ + "idm": { + "webserver.listener/http": { + "_id": "webserver.listener/http", + "enabled": { + "$bool": "&{openidm.http.enabled|true}" + }, + "port": { + "$int": "&{openidm.port.http|8080}" + } + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.195Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/webserver.listener/https.idm.json b/test/e2e/exports/all-separate/idm/global/idm/webserver.listener/https.idm.json new file mode 100644 index 000000000..daaead7bc --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/webserver.listener/https.idm.json @@ -0,0 +1,22 @@ +{ + "idm": { + "webserver.listener/https": { + "_id": "webserver.listener/https", + "enabled": { + "$bool": "&{openidm.https.enabled|true}" + }, + "port": { + "$int": "&{openidm.port.https|8443}" + }, + "secure": true, + "sslCertAlias": "&{openidm.https.keystore.cert.alias|openidm-localhost}" + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.195Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/webserver.listener/mutualAuth.idm.json b/test/e2e/exports/all-separate/idm/global/idm/webserver.listener/mutualAuth.idm.json new file mode 100644 index 000000000..c7c5c4861 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/webserver.listener/mutualAuth.idm.json @@ -0,0 +1,23 @@ +{ + "idm": { + "webserver.listener/mutualAuth": { + "_id": "webserver.listener/mutualAuth", + "enabled": { + "$bool": "&{openidm.mutualauth.enabled|true}" + }, + "mutualAuth": true, + "port": { + "$int": "&{openidm.port.mutualauth|8444}" + }, + "secure": true, + "sslCertAlias": "&{openidm.https.keystore.cert.alias|openidm-localhost}" + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.195Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/internalRole/openidm-admin.internalRole.json b/test/e2e/exports/all-separate/idm/global/internalRole/openidm-admin.internalRole.json new file mode 100644 index 000000000..ea5e4f6e6 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/internalRole/openidm-admin.internalRole.json @@ -0,0 +1,19 @@ +{ + "internalRole": { + "openidm-admin": { + "_id": "openidm-admin", + "condition": null, + "description": "Administrative access", + "name": "openidm-admin", + "privileges": [], + "temporalConstraints": [] + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.195Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/internalRole/openidm-authorized.internalRole.json b/test/e2e/exports/all-separate/idm/global/internalRole/openidm-authorized.internalRole.json new file mode 100644 index 000000000..fb58f60c6 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/internalRole/openidm-authorized.internalRole.json @@ -0,0 +1,19 @@ +{ + "internalRole": { + "openidm-authorized": { + "_id": "openidm-authorized", + "condition": null, + "description": "Basic minimum user", + "name": "openidm-authorized", + "privileges": [], + "temporalConstraints": [] + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.195Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/internalRole/openidm-cert.internalRole.json b/test/e2e/exports/all-separate/idm/global/internalRole/openidm-cert.internalRole.json new file mode 100644 index 000000000..39ca04d7a --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/internalRole/openidm-cert.internalRole.json @@ -0,0 +1,19 @@ +{ + "internalRole": { + "openidm-cert": { + "_id": "openidm-cert", + "condition": null, + "description": "Authenticated via certificate", + "name": "openidm-cert", + "privileges": [], + "temporalConstraints": [] + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.195Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/internalRole/openidm-reg.internalRole.json b/test/e2e/exports/all-separate/idm/global/internalRole/openidm-reg.internalRole.json new file mode 100644 index 000000000..d4b90278f --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/internalRole/openidm-reg.internalRole.json @@ -0,0 +1,19 @@ +{ + "internalRole": { + "openidm-reg": { + "_id": "openidm-reg", + "condition": null, + "description": "Anonymous access", + "name": "openidm-reg", + "privileges": [], + "temporalConstraints": [] + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.195Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/internalRole/openidm-tasks-manager.internalRole.json b/test/e2e/exports/all-separate/idm/global/internalRole/openidm-tasks-manager.internalRole.json new file mode 100644 index 000000000..866672923 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/internalRole/openidm-tasks-manager.internalRole.json @@ -0,0 +1,19 @@ +{ + "internalRole": { + "openidm-tasks-manager": { + "_id": "openidm-tasks-manager", + "condition": null, + "description": "Allowed to reassign workflow tasks", + "name": "openidm-tasks-manager", + "privileges": [], + "temporalConstraints": [] + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.195Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/internalRole/platform-provisioning.internalRole.json b/test/e2e/exports/all-separate/idm/global/internalRole/platform-provisioning.internalRole.json new file mode 100644 index 000000000..0c4edf24c --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/internalRole/platform-provisioning.internalRole.json @@ -0,0 +1,19 @@ +{ + "internalRole": { + "platform-provisioning": { + "_id": "platform-provisioning", + "condition": null, + "description": "Platform provisioning access", + "name": "platform-provisioning", + "privileges": [], + "temporalConstraints": [] + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.195Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/mapping/mappingtest.mapping.json b/test/e2e/exports/all-separate/idm/global/mapping/mappingtest.mapping.json new file mode 100644 index 000000000..7faca487c --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/mapping/mappingtest.mapping.json @@ -0,0 +1,83 @@ +{ + "mapping": { + "mapping/mappingtest": { + "_id": "mapping/mappingtest", + "consentRequired": false, + "displayName": "mappingtest", + "icon": null, + "name": "mappingtest", + "policies": [ + { + "action": { + "globals": {}, + "source": "//asdfasdf", + "type": "text/javascript" + }, + "situation": "AMBIGUOUS" + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING" + }, + { + "action": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "groovy" + }, + "situation": "MISSING" + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED" + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED" + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED" + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY" + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED" + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED" + }, + { + "action": "ASYNC", + "situation": "ALL_GONE" + }, + { + "action": "ASYNC", + "situation": "CONFIRMED" + }, + { + "action": "ASYNC", + "situation": "FOUND" + }, + { + "action": "ASYNC", + "situation": "ABSENT" + } + ], + "properties": [], + "source": "managed/assignment", + "target": "managed/organization" + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.195Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/mapping/seantestmapping.mapping.json b/test/e2e/exports/all-separate/idm/global/mapping/seantestmapping.mapping.json new file mode 100644 index 000000000..2a8c68159 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/mapping/seantestmapping.mapping.json @@ -0,0 +1,75 @@ +{ + "mapping": { + "mapping/seantestmapping": { + "_id": "mapping/seantestmapping", + "consentRequired": false, + "displayName": "seantestmapping", + "icon": null, + "name": "seantestmapping", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT" + }, + { + "action": "ASYNC", + "situation": "ALL_GONE" + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS" + }, + { + "action": "ASYNC", + "situation": "CONFIRMED" + }, + { + "action": "ASYNC", + "situation": "FOUND" + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED" + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY" + }, + { + "action": "ASYNC", + "situation": "MISSING" + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED" + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING" + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED" + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED" + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED" + } + ], + "properties": [], + "source": "managed/assignment", + "target": "managed/organization" + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.195Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/sync/managedAssignment_managedUser.sync.json b/test/e2e/exports/all-separate/idm/global/sync/managedAssignment_managedUser.sync.json new file mode 100644 index 000000000..57bd18555 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/sync/managedAssignment_managedUser.sync.json @@ -0,0 +1,90 @@ +{ + "_id": "sync/managedAssignment_managedUser", + "consentRequired": false, + "displayName": "managedAssignment_managedUser", + "icon": null, + "name": "managedAssignment_managedUser", + "policies": [ + { + "action": { + "globals": {}, + "source": "//asdfasdf", + "type": "groovy" + }, + "situation": "AMBIGUOUS" + }, + { + "action": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "text/javascript" + }, + "condition": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "groovy" + }, + "postAction": { + "globals": {}, + "source": "//asdfasdf", + "type": "text/javascript" + }, + "situation": "SOURCE_MISSING" + }, + { + "action": "ASYNC", + "situation": "MISSING" + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED" + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED" + }, + { + "action": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "text/javascript" + }, + "situation": "UNASSIGNED" + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY" + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED" + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED" + }, + { + "action": "ASYNC", + "situation": "ALL_GONE" + }, + { + "action": "ASYNC", + "situation": "CONFIRMED" + }, + { + "action": "ASYNC", + "situation": "FOUND" + }, + { + "action": "ASYNC", + "situation": "ABSENT" + } + ], + "properties": [], + "source": "managed/assignment", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject" + ], + "target": "managed/user" +} diff --git a/test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedRole.sync.json b/test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedRole.sync.json new file mode 100644 index 000000000..1257224df --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedRole.sync.json @@ -0,0 +1,87 @@ +{ + "_id": "sync/managedOrganization_managedRole", + "consentRequired": false, + "displayName": "managedOrganization_managedRole", + "icon": null, + "name": "managedOrganization_managedRole", + "policies": [ + { + "action": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript" + }, + "situation": "AMBIGUOUS" + }, + { + "action": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript" + }, + "condition": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript" + }, + "situation": "SOURCE_MISSING" + }, + { + "action": { + "globals": {}, + "source": "//seantest", + "type": "groovy" + }, + "postAction": { + "globals": {}, + "source": "//seantest", + "type": "groovy" + }, + "situation": "MISSING" + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED" + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED" + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED" + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY" + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED" + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED" + }, + { + "action": "ASYNC", + "situation": "ALL_GONE" + }, + { + "action": "ASYNC", + "situation": "CONFIRMED" + }, + { + "action": "ASYNC", + "situation": "FOUND" + }, + { + "action": "ASYNC", + "situation": "ABSENT" + } + ], + "properties": [], + "source": "managed/organization", + "syncAfter": [], + "target": "managed/role" +} diff --git a/test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedSeantestmanagedobject.sync.json b/test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedSeantestmanagedobject.sync.json new file mode 100644 index 000000000..2dc7fe016 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedSeantestmanagedobject.sync.json @@ -0,0 +1,67 @@ +{ + "_id": "sync/managedOrganization_managedSeantestmanagedobject", + "consentRequired": false, + "displayName": "managedOrganization_managedSeantestmanagedobject", + "icon": null, + "name": "managedOrganization_managedSeantestmanagedobject", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT" + }, + { + "action": "ASYNC", + "situation": "ALL_GONE" + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS" + }, + { + "action": "ASYNC", + "situation": "CONFIRMED" + }, + { + "action": "ASYNC", + "situation": "FOUND" + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED" + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY" + }, + { + "action": "ASYNC", + "situation": "MISSING" + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED" + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING" + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED" + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED" + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED" + } + ], + "properties": [], + "source": "managed/organization", + "syncAfter": [ + "managedOrganization_managedRole" + ], + "target": "managed/seantestmanagedobject" +} diff --git a/test/e2e/exports/all-separate/idm/global/sync/managedSeantestmanagedobject_managedUser.sync.json b/test/e2e/exports/all-separate/idm/global/sync/managedSeantestmanagedobject_managedUser.sync.json new file mode 100644 index 000000000..cafbf33c6 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/sync/managedSeantestmanagedobject_managedUser.sync.json @@ -0,0 +1,69 @@ +{ + "_id": "sync/managedSeantestmanagedobject_managedUser", + "consentRequired": false, + "displayName": "managedSeantestmanagedobject_managedUser", + "icon": null, + "name": "managedSeantestmanagedobject_managedUser", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT" + }, + { + "action": "ASYNC", + "situation": "ALL_GONE" + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS" + }, + { + "action": "ASYNC", + "situation": "CONFIRMED" + }, + { + "action": "ASYNC", + "situation": "FOUND" + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED" + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY" + }, + { + "action": "ASYNC", + "situation": "MISSING" + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED" + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING" + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED" + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED" + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED" + } + ], + "properties": [], + "source": "managed/seantestmanagedobject", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser" + ], + "target": "managed/user" +} diff --git a/test/e2e/exports/all-separate/idm/global/sync/sync.idm.json b/test/e2e/exports/all-separate/idm/global/sync/sync.idm.json new file mode 100644 index 000000000..148271a71 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/sync/sync.idm.json @@ -0,0 +1,20 @@ +{ + "idm": { + "sync": { + "_id": "sync", + "mappings": [ + "file://managedOrganization_managedRole.sync.json", + "file://managedOrganization_managedSeantestmanagedobject.sync.json", + "file://managedAssignment_managedUser.sync.json", + "file://managedSeantestmanagedobject_managedUser.sync.json" + ] + } + }, + "meta": { + "exportDate": "2025-05-28T20:27:39.196Z", + "exportTool": "frodo", + "exportToolVersion": "v3.1.0 [v20.18.0]", + "exportedBy": "openidm-admin", + "origin": "http://openidm-frodo-dev.classic.com:9080/openidm" + } +} diff --git a/test/e2e/exports/all/idm/all.config.json b/test/e2e/exports/all/idm/all.config.json new file mode 100644 index 000000000..dec536b26 --- /dev/null +++ b/test/e2e/exports/all/idm/all.config.json @@ -0,0 +1,6068 @@ +{ + "global": { + "emailTemplate": { + "forgottenUsername": { + "_id": "emailTemplate/forgottenUsername", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

", + "fr": "{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

" + }, + "mimeType": "text/html", + "subject": { + "en": "Account Information - username", + "fr": "Informations sur le compte - nom d'utilisateur" + } + }, + "registration": { + "_id": "emailTemplate/registration", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

This is your registration email.

Email verification link

", + "fr": "

Ceci est votre mail d'inscription.

Lien de vérification email

" + }, + "mimeType": "text/html", + "subject": { + "en": "Register new account", + "fr": "Créer un nouveau compte" + } + }, + "resetPassword": { + "_id": "emailTemplate/resetPassword", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Click to reset your password

Password reset link

", + "fr": "

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

" + }, + "mimeType": "text/html", + "subject": { + "en": "Reset your password", + "fr": "Réinitialisez votre mot de passe" + } + }, + "updatePassword": { + "_id": "emailTemplate/updatePassword", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Verify email to update password

Update password link

" + }, + "mimeType": "text/html", + "subject": { + "en": "Update your password" + } + }, + "welcome": { + "_id": "emailTemplate/welcome", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Welcome to OpenIDM. Your username is '{{object.userName}}'.

", + "fr": "

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

" + }, + "mimeType": "text/html", + "subject": { + "en": "Your account has been created", + "fr": "Votre compte vient d’être créé !" + } + } + }, + "idm": { + "access": { + "_id": "access", + "configs": [ + { + "actions": "", + "methods": "read", + "pattern": "health", + "roles": "*" + }, + { + "actions": "*", + "methods": "read", + "pattern": "info/*", + "roles": "*" + }, + { + "actions": "login,logout", + "methods": "read,action", + "pattern": "authentication", + "roles": "*" + }, + { + "actions": "validate", + "methods": "action", + "pattern": "util/validateQueryFilter", + "roles": "*" + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/themeconfig", + "roles": "*" + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/theme-*", + "roles": "*" + }, + { + "actions": "*", + "customAuthz": "checkIfAnyFeatureEnabled(['registration', 'passwordReset'])", + "methods": "read", + "pattern": "config/selfservice/kbaConfig", + "roles": "*" + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/dashboard", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "methods": "query", + "pattern": "info/features", + "roles": "*" + }, + { + "actions": "listPrivileges", + "methods": "action", + "pattern": "privilege", + "roles": "*" + }, + { + "actions": "*", + "methods": "read", + "pattern": "privilege/*", + "roles": "*" + }, + { + "actions": "submitRequirements", + "methods": "read,action", + "pattern": "selfservice/termsAndConditions", + "roles": "*" + }, + { + "actions": "submitRequirements", + "methods": "read,action", + "pattern": "selfservice/kbaUpdate", + "roles": "*" + }, + { + "actions": "", + "customAuthz": "isMyProfile()", + "methods": "read,query", + "pattern": "profile/*", + "roles": "*" + }, + { + "actions": "*", + "customAuthz": "checkIfAnyFeatureEnabled('kba')", + "methods": "read", + "pattern": "selfservice/kba", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "methods": "read", + "pattern": "schema/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "methods": "action,query", + "pattern": "consent", + "roles": "internal/role/openidm-authorized" + }, + { + "customAuthz": "checkIfApiRequest()", + "methods": "read", + "pattern": "*", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "*", + "excludePatterns": "repo,repo/*", + "methods": "*", + "pattern": "*", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "", + "methods": "create,read,update,delete,patch,query", + "pattern": "system/*", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "*", + "methods": "script", + "pattern": "system/*", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "test,testConfig,createconfiguration,liveSync,authenticate", + "methods": "action", + "pattern": "system/*", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "*", + "customAuthz": "disallowCommandAction()", + "methods": "*", + "pattern": "repo", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "*", + "customAuthz": "disallowCommandAction()", + "methods": "*", + "pattern": "repo/*", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "command", + "customAuthz": "request.additionalParameters.commandId === 'delete-mapping-links'", + "methods": "action", + "pattern": "repo/link", + "roles": "internal/role/openidm-admin" + }, + { + "methods": "create,read,query,patch", + "pattern": "managed/*", + "roles": "internal/role/platform-provisioning" + }, + { + "methods": "read,query", + "pattern": "internal/role/*", + "roles": "internal/role/platform-provisioning" + }, + { + "actions": "*", + "methods": "create,read,action,update", + "pattern": "profile/*", + "roles": "internal/role/platform-provisioning" + }, + { + "actions": "*", + "methods": "read,action", + "pattern": "policy/*", + "roles": "internal/role/platform-provisioning" + }, + { + "methods": "read", + "pattern": "schema/*", + "roles": "internal/role/platform-provisioning" + }, + { + "actions": "*", + "methods": "action,query", + "pattern": "consent", + "roles": "internal/role/platform-provisioning" + }, + { + "methods": "read", + "pattern": "selfservice/kba", + "roles": "internal/role/platform-provisioning" + }, + { + "methods": "read", + "pattern": "selfservice/terms", + "roles": "internal/role/platform-provisioning" + }, + { + "actions": "sendTemplate", + "methods": "action", + "pattern": "external/email", + "roles": "internal/role/platform-provisioning" + }, + { + "actions": "authenticate", + "methods": "action", + "pattern": "system/*", + "roles": "internal/role/platform-provisioning" + }, + { + "actions": "*", + "methods": "read,action", + "pattern": "policy/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "reauthenticate", + "methods": "action", + "pattern": "authentication", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "bind,unbind", + "customAuthz": "ownDataOnly()", + "methods": "read,action,delete", + "pattern": "*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "patch", + "customAuthz": "ownDataOnly() && onlyEditableManagedObjectProperties('user', []) && reauthIfProtectedAttributeChange()", + "methods": "update,patch,action", + "pattern": "*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "methods": "read", + "pattern": "endpoint/getprocessesforuser", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "methods": "query", + "pattern": "endpoint/gettasksview", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "complete", + "customAuthz": "isMyTask()", + "methods": "action", + "pattern": "workflow/taskinstance/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "customAuthz": "canUpdateTask()", + "methods": "read,update", + "pattern": "workflow/taskinstance/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "customAuthz": "isAllowedToStartProcess()", + "methods": "create", + "pattern": "workflow/processinstance", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "read", + "methods": "*", + "pattern": "workflow/processdefinition/*", + "roles": "internal/role/openidm-authorized" + }, + { + "customAuthz": "restrictPatchToFields(['password'])", + "methods": "patch", + "pattern": "managed/user/*", + "roles": "internal/role/openidm-cert" + }, + { + "actions": "*", + "customAuthz": "ownRelationshipProperty('_meta', false)", + "methods": "read", + "pattern": "internal/usermeta/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "customAuthz": "ownRelationshipProperty('_notifications', true)", + "methods": "read,delete", + "pattern": "internal/notification/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "customAuthz": "ownRelationshipCollection(['idps','_meta','_notifications'])", + "methods": "read,query", + "pattern": "managed/user/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "deleteNotificationsForTarget", + "customAuthz": "request.additionalParameters.target === (context.security.authorization.component + '/' + context.security.authorization.id)", + "methods": "action", + "pattern": "notification", + "roles": "internal/role/openidm-authorized" + } + ] + }, + "apiVersion": { + "_id": "apiVersion", + "warning": { + "enabled": { + "$bool": "&{openidm.apiVersion.warning.enabled|false}" + }, + "includeScripts": { + "$bool": "&{openidm.apiVersion.warning.includeScripts|false}" + }, + "logFilterResourcePaths": [ + "audit", + "authentication", + "cluster", + "config", + "consent", + "csv", + "external/rest", + "identityProviders", + "info", + "internal", + "internal/role", + "internal/user", + "internal/usermeta", + "managed", + "managed/assignment", + "managed/organization", + "managed/role", + "managed/user", + "notification", + "policy", + "privilege", + "profile", + "recon", + "recon/assoc", + "repo", + "selfservice/kba", + "selfservice/terms", + "scheduler/job", + "scheduler/trigger", + "schema", + "sync", + "sync/mappings", + "system", + "taskscanner" + ] + } + }, + "audit": { + "_id": "audit", + "auditServiceConfig": { + "availableAuditEventHandlers": [ + "org.forgerock.audit.handlers.csv.CsvAuditEventHandler", + "org.forgerock.audit.handlers.jms.JmsAuditEventHandler", + "org.forgerock.audit.handlers.json.JsonAuditEventHandler", + "org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler", + "org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler", + "org.forgerock.openidm.audit.impl.RouterAuditEventHandler", + "org.forgerock.audit.handlers.syslog.SyslogAuditEventHandler" + ], + "caseInsensitiveFields": [ + "/access/http/request/headers", + "/access/http/response/headers" + ], + "filterPolicies": { + "field": { + "excludeIf": [], + "includeIf": [] + } + }, + "handlerForQueries": "json" + }, + "eventHandlers": [ + { + "class": "org.forgerock.audit.handlers.json.JsonAuditEventHandler", + "config": { + "buffering": { + "maxSize": 100000, + "writeInterval": "100 millis" + }, + "enabled": { + "$bool": "&{openidm.audit.handler.json.enabled|true}" + }, + "logDirectory": "&{idm.data.dir}/audit", + "name": "json", + "topics": [ + "access", + "activity", + "sync", + "authentication", + "config" + ] + } + }, + { + "class": "org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler", + "config": { + "enabled": { + "$bool": "&{openidm.audit.handler.stdout.enabled|false}" + }, + "name": "stdout", + "topics": [ + "access", + "activity", + "sync", + "authentication", + "config" + ] + } + }, + { + "class": "org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler", + "config": { + "enabled": { + "$bool": "&{openidm.audit.handler.repo.enabled|false}" + }, + "name": "repo", + "topics": [ + "access", + "activity", + "sync", + "authentication", + "config" + ] + } + } + ], + "eventTopics": { + "access": { + "defaultEvents": true, + "filter": { + "script": { + "globals": {}, + "source": "//seantest", + "type": "groovy" + } + }, + "name": "access" + }, + "activity": { + "defaultEvents": true, + "filter": { + "actions": [ + "create", + "update", + "delete", + "patch", + "action" + ] + }, + "name": "activity", + "passwordFields": [ + "password" + ], + "watchedFields": [] + }, + "authentication": { + "defaultEvents": true, + "filter": { + "script": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript" + } + }, + "name": "authentication" + }, + "config": { + "defaultEvents": true, + "filter": { + "actions": [ + "create", + "update", + "delete", + "patch", + "action" + ] + }, + "name": "config" + }, + "recon": { + "defaultEvents": true, + "name": "recon" + }, + "sync": { + "defaultEvents": true, + "name": "sync" + } + }, + "exceptionFormatter": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript" + } + }, + "authentication": { + "_id": "authentication", + "serverAuthContext": { + "authModules": [ + { + "enabled": true, + "name": "STATIC_USER", + "properties": { + "augmentSecurityContext": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript" + }, + "defaultUserRoles": [ + "internal/role/openidm-reg" + ], + "password": { + "$crypto": { + "type": "x-simple-encryption", + "value": { + "cipher": "AES/CBC/PKCS5Padding", + "data": "fzE1J3P9LZOmuCuecCDnaQ==", + "iv": "nhI8UHymNRChGIyOC+5Sag==", + "keySize": 32, + "mac": "XfF7VE/o5Shv6AqW1Xe3TQ==", + "purpose": "idm.config.encryption", + "salt": "v0NHakffrjBJNL3zjhEOtg==", + "stableId": "openidm-sym-default" + } + } + }, + "queryOnResource": "internal/user", + "username": "anonymous" + } + }, + { + "enabled": true, + "name": "STATIC_USER", + "properties": { + "defaultUserRoles": [ + "internal/role/openidm-authorized", + "internal/role/openidm-admin" + ], + "password": "&{openidm.admin.password}", + "queryOnResource": "internal/user", + "username": "openidm-admin" + } + }, + { + "enabled": true, + "name": "MANAGED_USER", + "properties": { + "augmentSecurityContext": { + "source": "var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield);", + "type": "text/javascript" + }, + "defaultUserRoles": [ + "internal/role/openidm-authorized" + ], + "propertyMapping": { + "additionalUserFields": [ + "adminOfOrg", + "ownerOfOrg" + ], + "authenticationId": "username", + "userCredential": "password", + "userRoles": "authzRoles" + }, + "queryId": "credential-query", + "queryOnResource": "managed/user" + } + } + ], + "sessionModule": { + "name": "JWT_SESSION", + "properties": { + "enableDynamicRoles": false, + "isHttpOnly": true, + "maxTokenLifeMinutes": 120, + "sessionOnly": true, + "tokenIdleTimeMinutes": 30 + } + } + } + }, + "cluster": { + "_id": "cluster", + "enabled": true, + "instanceCheckInInterval": 5000, + "instanceCheckInOffset": 0, + "instanceId": "&{openidm.node.id}", + "instanceRecoveryTimeout": 30000, + "instanceTimeout": 30000 + }, + "endpoint/getavailableuserstoassign": { + "_id": "endpoint/getavailableuserstoassign", + "file": "workflow/getavailableuserstoassign.js", + "type": "text/javascript" + }, + "endpoint/getprocessesforuser": { + "_id": "endpoint/getprocessesforuser", + "file": "workflow/getprocessesforuser.js", + "type": "text/javascript" + }, + "endpoint/gettasksview": { + "_id": "endpoint/gettasksview", + "file": "workflow/gettasksview.js", + "type": "text/javascript" + }, + "endpoint/mappingDetails": { + "_id": "endpoint/mappingDetails", + "context": "endpoint/mappingDetails", + "file": "mappingDetails.js", + "type": "text/javascript" + }, + "endpoint/oauthproxy": { + "_id": "endpoint/oauthproxy", + "context": "endpoint/oauthproxy", + "file": "oauthProxy.js", + "type": "text/javascript" + }, + "endpoint/removeRepoPathFromRelationships": { + "_id": "endpoint/removeRepoPathFromRelationships", + "file": "update/removeRepoPathFromRelationships.js", + "type": "text/javascript" + }, + "endpoint/repairMetadata": { + "_id": "endpoint/repairMetadata", + "file": "meta/metadataScanner.js", + "type": "text/javascript" + }, + "endpoint/updateInternalUserAndInternalRoleEntries": { + "_id": "endpoint/updateInternalUserAndInternalRoleEntries", + "file": "update/updateInternalUserAndInternalRoleEntries.js", + "type": "text/javascript" + }, + "endpoint/validateQueryFilter": { + "_id": "endpoint/validateQueryFilter", + "context": "util/validateQueryFilter", + "source": "try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } };", + "type": "text/javascript" + }, + "external.rest": { + "_id": "external.rest", + "hostnameVerifier": "&{openidm.external.rest.hostnameVerifier}" + }, + "internal": { + "_id": "internal", + "objects": [ + { + "name": "role", + "properties": { + "authzMembers": { + "items": { + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ] + } + } + } + }, + { + "name": "notification", + "properties": { + "target": { + "reversePropertyName": "_notifications" + } + } + } + ] + }, + "managed": { + "_id": "managed", + "objects": [ + { + "lastSync": { + "effectiveAssignmentsProperty": "effectiveAssignments", + "lastSyncProperty": "lastSync" + }, + "name": "user", + "notifications": { + "property": "_notifications" + }, + "postDelete": { + "source": "require('postDelete-idp-cleanup').removeConnectedIdpData(oldObject, resourceName, request);require('postDelete-notification-cleanup').removeConnectedNotificationData(oldObject, resourceName, request);", + "type": "text/javascript" + }, + "schema": { + "$schema": "http://json-schema.org/draft-03/schema", + "icon": "fa-user", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User", + "mat-icon": "people", + "order": [ + "_id", + "userName", + "password", + "givenName", + "sn", + "mail", + "description", + "accountStatus", + "telephoneNumber", + "postalAddress", + "city", + "postalCode", + "country", + "stateProvince", + "roles", + "assignments", + "manager", + "authzRoles", + "reports", + "effectiveRoles", + "effectiveAssignments", + "lastSync", + "kbaInfo", + "preferences", + "consentedMappings", + "ownerOfOrg", + "adminOfOrg", + "memberOfOrg", + "memberOfOrgIDs", + "activeDate", + "inactiveDate" + ], + "properties": { + "_id": { + "description": "User ID", + "isPersonal": false, + "policies": [ + { + "params": { + "forbiddenChars": [ + "/" + ] + }, + "policyId": "cannot-contain-characters" + } + ], + "searchable": false, + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": false + }, + "accountStatus": { + "default": "active", + "description": "Status", + "isPersonal": false, + "policies": [ + { + "params": { + "regexp": "^(active|inactive)$" + }, + "policyId": "regexpMatches" + } + ], + "searchable": true, + "title": "Status", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "activeDate": { + "description": "Active Date", + "format": "datetime", + "isPersonal": false, + "policies": [ + { + "policyId": "valid-datetime" + } + ], + "searchable": false, + "title": "Active Date", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "adminOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/organization", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "admins", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Administer", + "type": "array", + "userEditable": false, + "viewable": true + }, + "assignments": { + "description": "Assignments", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Assignment", + "path": "managed/assignment", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Assignments Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Assignments", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "authzRoles": { + "description": "Authorization Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Authorization Roles Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Internal Role", + "path": "internal/role", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "authzMembers", + "reverseRelationship": true, + "title": "Authorization Roles Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Authorization Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "city": { + "description": "City", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "title": "City", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "consentedMappings": { + "description": "Consented Mappings", + "isPersonal": false, + "isVirtual": false, + "items": { + "order": [ + "mapping", + "consentDate" + ], + "properties": { + "consentDate": { + "description": "Consent Date", + "format": "datetime", + "policies": [ + { + "policyId": "valid-datetime" + } + ], + "searchable": true, + "title": "Consent Date", + "type": "string", + "userEditable": true, + "viewable": true + }, + "mapping": { + "description": "Mapping", + "searchable": true, + "title": "Mapping", + "type": "string", + "userEditable": true, + "viewable": true + } + }, + "required": [ + "mapping", + "consentDate" + ], + "title": "Consented Mapping", + "type": "object" + }, + "returnByDefault": false, + "searchable": false, + "title": "Consented Mappings", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false + }, + "country": { + "description": "Country", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "title": "Country", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "description": { + "description": "Description", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "searchable": true, + "title": "Description", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "effectiveAssignments": { + "description": "Effective Assignments", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Assignments Items", + "type": "object" + }, + "queryConfig": { + "referencedObjectFields": [ + "*" + ], + "referencedRelationshipFields": [ + [ + "roles", + "assignments" + ], + [ + "assignments" + ] + ] + }, + "returnByDefault": true, + "title": "Effective Assignments", + "type": "array", + "usageDescription": "", + "viewable": false + }, + "effectiveRoles": { + "description": "Effective Roles", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Roles Items", + "type": "object" + }, + "queryConfig": { + "referencedRelationshipFields": [ + "roles" + ] + }, + "returnByDefault": true, + "title": "Effective Roles", + "type": "array", + "usageDescription": "", + "viewable": false + }, + "givenName": { + "description": "First Name", + "isPersonal": true, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "searchable": true, + "title": "First Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "inactiveDate": { + "description": "Inactive Date", + "format": "datetime", + "isPersonal": false, + "policies": [ + { + "policyId": "valid-datetime" + } + ], + "searchable": false, + "title": "Inactive Date", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "kbaInfo": { + "description": "KBA Info", + "isPersonal": true, + "items": { + "order": [ + "answer", + "customQuestion", + "questionId" + ], + "properties": { + "answer": { + "description": "Answer", + "type": "string" + }, + "customQuestion": { + "description": "Custom question", + "type": "string" + }, + "questionId": { + "description": "Question ID", + "type": "string" + } + }, + "required": [], + "title": "KBA Info Items", + "type": "object" + }, + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false + }, + "lastSync": { + "description": "Last Sync timestamp", + "isPersonal": false, + "order": [ + "effectiveAssignments", + "timestamp" + ], + "properties": { + "effectiveAssignments": { + "description": "Effective Assignments", + "items": { + "title": "Effective Assignments Items", + "type": "object" + }, + "title": "Effective Assignments", + "type": "array" + }, + "timestamp": { + "description": "Timestamp", + "policies": [ + { + "policyId": "valid-datetime" + } + ], + "type": "string" + } + }, + "required": [], + "scope": "private", + "searchable": false, + "title": "Last Sync timestamp", + "type": "object", + "usageDescription": "", + "viewable": false + }, + "mail": { + "description": "Email Address", + "isPersonal": true, + "policies": [ + { + "policyId": "valid-email-address-format" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "searchable": true, + "title": "Email Address", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "manager": { + "description": "Manager", + "isPersonal": false, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Manager _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "reports", + "reverseRelationship": true, + "searchable": false, + "title": "Manager", + "type": "relationship", + "usageDescription": "", + "userEditable": false, + "validate": true, + "viewable": true + }, + "memberOfOrg": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/organization", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations to which I Belong", + "type": "array", + "userEditable": false, + "viewable": true + }, + "memberOfOrgIDs": { + "isVirtual": true, + "items": { + "title": "org identifiers", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs" + ], + "referencedRelationshipFields": [ + "memberOfOrg" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "MemberOfOrgIDs", + "type": "array", + "userEditable": false, + "viewable": false + }, + "ownerOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/organization", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "owners", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Own", + "type": "array", + "userEditable": false, + "viewable": true + }, + "password": { + "description": "Password", + "encryption": { + "purpose": "idm.password.encryption" + }, + "isPersonal": false, + "isProtected": true, + "policies": [ + { + "params": { + "minLength": 8 + }, + "policyId": "minimum-length" + }, + { + "params": { + "numCaps": 1 + }, + "policyId": "at-least-X-capitals" + }, + { + "params": { + "numNums": 1 + }, + "policyId": "at-least-X-numbers" + }, + { + "params": { + "disallowedFields": [ + "userName", + "givenName", + "sn" + ] + }, + "policyId": "cannot-contain-others" + } + ], + "scope": "private", + "searchable": false, + "title": "Password", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": false + }, + "postalAddress": { + "description": "Address 1", + "isPersonal": true, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "title": "Address 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "postalCode": { + "description": "Postal Code", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "title": "Postal Code", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "preferences": { + "description": "Preferences", + "isPersonal": false, + "order": [ + "updates", + "marketing" + ], + "properties": { + "marketing": { + "description": "Send me special offers and services", + "type": "boolean" + }, + "updates": { + "description": "Send me news and updates", + "type": "boolean" + } + }, + "required": [], + "searchable": false, + "title": "Preferences", + "type": "object", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "reports": { + "description": "Direct Reports", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Direct Reports Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "manager", + "reverseRelationship": true, + "title": "Direct Reports Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Direct Reports", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "roles": { + "description": "Provisioning Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Role", + "path": "managed/role", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Provisioning Roles Items", + "type": "relationship", + "validate": true + }, + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Provisioning Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "sn": { + "description": "Last Name", + "isPersonal": true, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "searchable": true, + "title": "Last Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "stateProvince": { + "description": "State/Province", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "title": "State/Province", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "telephoneNumber": { + "description": "Telephone Number", + "isPersonal": true, + "pattern": "^\\+?([0-9\\- \\(\\)])*$", + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "title": "Telephone Number", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "userName": { + "description": "Username", + "isPersonal": true, + "policies": [ + { + "policyId": "valid-username" + }, + { + "params": { + "forbiddenChars": [ + "/" + ] + }, + "policyId": "cannot-contain-characters" + }, + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "searchable": true, + "title": "Username", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + } + }, + "required": [ + "userName", + "givenName", + "sn", + "mail" + ], + "title": "User", + "type": "object", + "viewable": true + } + }, + { + "name": "role", + "onCreate": { + "globals": {}, + "source": "//asdfasdfadsfasdf", + "type": "text/javascript" + }, + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "icon": "fa-check-square", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role", + "mat-icon": "assignment_ind", + "order": [ + "_id", + "name", + "description", + "members", + "assignments", + "condition", + "temporalConstraints" + ], + "properties": { + "_id": { + "description": "Role ID", + "searchable": false, + "title": "Name", + "type": "string", + "viewable": false + }, + "assignments": { + "description": "Managed Assignments", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Managed Assignments Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Assignment", + "path": "managed/assignment", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Managed Assignments Items", + "type": "relationship", + "validate": true + }, + "notifyRelationships": [ + "members" + ], + "returnByDefault": false, + "title": "Managed Assignments", + "type": "array", + "viewable": true + }, + "condition": { + "description": "A conditional filter for this role", + "isConditional": true, + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false + }, + "description": { + "description": "The role description, used for display purposes.", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true + }, + "members": { + "description": "Role Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Role Members Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Role Members Items", + "type": "relationship", + "validate": true + }, + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Role Members", + "type": "array", + "viewable": true + }, + "name": { + "description": "The role name, used for display purposes.", + "policies": [ + { + "policyId": "unique" + } + ], + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true + }, + "temporalConstraints": { + "description": "An array of temporal constraints for a role", + "isTemporalConstraint": true, + "items": { + "order": [ + "duration" + ], + "properties": { + "duration": { + "description": "Duration", + "type": "string" + } + }, + "required": [ + "duration" + ], + "title": "Temporal Constraints Items", + "type": "object" + }, + "notifyRelationships": [ + "members" + ], + "returnByDefault": true, + "title": "Temporal Constraints", + "type": "array", + "viewable": false + } + }, + "required": [ + "name" + ], + "title": "Role", + "type": "object" + } + }, + { + "attributeEncryption": {}, + "name": "assignment", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "A role assignment", + "icon": "fa-key", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment", + "mat-icon": "vpn_key", + "order": [ + "_id", + "name", + "description", + "mapping", + "attributes", + "linkQualifiers", + "roles", + "members", + "condition", + "weight" + ], + "properties": { + "_id": { + "description": "The assignment ID", + "searchable": false, + "title": "Name", + "type": "string", + "viewable": false + }, + "attributes": { + "description": "The attributes operated on by this assignment.", + "items": { + "order": [ + "assignmentOperation", + "unassignmentOperation", + "name", + "value" + ], + "properties": { + "assignmentOperation": { + "description": "Assignment operation", + "type": "string" + }, + "name": { + "description": "Name", + "type": "string" + }, + "unassignmentOperation": { + "description": "Unassignment operation", + "type": "string" + }, + "value": { + "description": "Value", + "type": "string" + } + }, + "required": [], + "title": "Assignment Attributes Items", + "type": "object" + }, + "notifyRelationships": [ + "roles", + "members" + ], + "title": "Assignment Attributes", + "type": "array", + "viewable": true + }, + "condition": { + "description": "A conditional filter for this assignment", + "isConditional": true, + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false + }, + "description": { + "description": "The assignment description, used for display purposes.", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true + }, + "linkQualifiers": { + "description": "Conditional link qualifiers to restrict this assignment to.", + "items": { + "title": "Link Qualifiers Items", + "type": "string" + }, + "title": "Link Qualifiers", + "type": "array", + "viewable": true + }, + "mapping": { + "description": "The name of the mapping this assignment applies to", + "policies": [ + { + "policyId": "mapping-exists" + } + ], + "searchable": true, + "title": "Mapping", + "type": "string", + "viewable": true + }, + "members": { + "description": "Assignment Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Assignment Members Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "assignments", + "reverseRelationship": true, + "title": "Assignment Members Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Assignment Members", + "type": "array", + "viewable": true + }, + "name": { + "description": "The assignment name, used for display purposes.", + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true + }, + "roles": { + "description": "Managed Roles", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Managed Roles Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Role", + "notify": true, + "path": "managed/role", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "assignments", + "reverseRelationship": true, + "title": "Managed Roles Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Managed Roles", + "type": "array", + "userEditable": false, + "viewable": true + }, + "weight": { + "description": "The weight of the assignment.", + "notifyRelationships": [ + "roles", + "members" + ], + "searchable": false, + "title": "Weight", + "type": [ + "number", + "null" + ], + "viewable": true + } + }, + "required": [ + "name", + "description", + "mapping" + ], + "title": "Assignment", + "type": "object" + } + }, + { + "name": "organization", + "onCreate": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript" + }, + "onRead": { + "globals": {}, + "source": "//seantest", + "type": "groovy" + }, + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "An organization or tenant, whose resources are managed by organizational admins.", + "icon": "fa-building", + "mat-icon": "domain", + "order": [ + "name", + "description", + "owners", + "admins", + "members", + "parent", + "children", + "adminIDs", + "ownerIDs", + "parentAdminIDs", + "parentOwnerIDs", + "parentIDs" + ], + "properties": { + "adminIDs": { + "isVirtual": true, + "items": { + "title": "admin ids", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id" + ], + "referencedRelationshipFields": [ + "admins" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "Admin user ids", + "type": "array", + "userEditable": false, + "viewable": false + }, + "admins": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "notify": false, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "adminOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "notifyRelationships": [ + "children" + ], + "returnByDefault": false, + "searchable": false, + "title": "Administrators", + "type": "array", + "userEditable": false, + "viewable": true + }, + "children": { + "description": "Child Organizations", + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/organization", + "query": { + "fields": [ + "name", + "description" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "parent", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Child Organizations", + "type": "array", + "userEditable": false, + "viewable": false + }, + "description": { + "searchable": true, + "title": "Description", + "type": "string", + "userEditable": true, + "viewable": true + }, + "members": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "memberOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "searchable": false, + "title": "Members", + "type": "array", + "userEditable": false, + "viewable": true + }, + "name": { + "searchable": true, + "title": "Name", + "type": "string", + "userEditable": true, + "viewable": true + }, + "ownerIDs": { + "isVirtual": true, + "items": { + "title": "owner ids", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id" + ], + "referencedRelationshipFields": [ + "owners" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "Owner user ids", + "type": "array", + "userEditable": false, + "viewable": false + }, + "owners": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "notify": false, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "ownerOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "notifyRelationships": [ + "children" + ], + "returnByDefault": false, + "searchable": false, + "title": "Owner", + "type": "array", + "userEditable": false, + "viewable": true + }, + "parent": { + "description": "Parent Organization", + "notifyRelationships": [ + "children", + "members" + ], + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/organization", + "query": { + "fields": [ + "name", + "description" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "returnByDefault": false, + "reversePropertyName": "children", + "reverseRelationship": true, + "searchable": false, + "title": "Parent Organization", + "type": "relationship", + "userEditable": false, + "validate": true, + "viewable": true + }, + "parentAdminIDs": { + "isVirtual": true, + "items": { + "title": "user ids of parent admins", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "adminIDs", + "parentAdminIDs" + ], + "referencedRelationshipFields": [ + "parent" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent admins", + "type": "array", + "userEditable": false, + "viewable": false + }, + "parentIDs": { + "isVirtual": true, + "items": { + "title": "parent org ids", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs" + ], + "referencedRelationshipFields": [ + "parent" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "parent org ids", + "type": "array", + "userEditable": false, + "viewable": false + }, + "parentOwnerIDs": { + "isVirtual": true, + "items": { + "title": "user ids of parent owners", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "ownerIDs", + "parentOwnerIDs" + ], + "referencedRelationshipFields": [ + "parent" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent owners", + "type": "array", + "userEditable": false, + "viewable": false + } + }, + "required": [ + "name" + ], + "title": "Organization", + "type": "object" + } + }, + { + "name": "seantestmanagedobject", + "schema": { + "description": null, + "icon": "fa-database", + "mat-icon": null, + "title": null + } + } + ] + }, + "metrics": { + "_id": "metrics", + "enabled": false + }, + "notification/passwordUpdate": { + "_id": "notification/passwordUpdate", + "condition": { + "file": "propertiesModifiedFilter.groovy", + "globals": { + "propertiesToCheck": [ + "password" + ] + }, + "type": "groovy" + }, + "enabled": { + "$bool": "&{openidm.notifications.passwordUpdate|false}" + }, + "methods": [ + "update", + "patch" + ], + "notification": { + "message": "Your password has been updated.", + "notificationType": "info" + }, + "path": "managed/user/*", + "target": { + "resource": "managed/user/{{response/_id}}" + } + }, + "notification/profileUpdate": { + "_id": "notification/profileUpdate", + "condition": { + "file": "propertiesModifiedFilter.groovy", + "globals": { + "propertiesToCheck": [ + "userName", + "givenName", + "sn", + "mail", + "description", + "accountStatus", + "telephoneNumber", + "postalAddress", + "city", + "postalCode", + "country", + "stateProvince", + "preferences" + ] + }, + "type": "groovy" + }, + "enabled": { + "$bool": "&{openidm.notifications.profileUpdate|false}" + }, + "methods": [ + "update", + "patch" + ], + "notification": { + "message": "Your profile has been updated.", + "notificationType": "info" + }, + "path": "managed/user/*", + "target": { + "resource": "managed/user/{{response/_id}}" + } + }, + "notificationFactory": { + "_id": "notificationFactory", + "enabled": { + "$bool": "&{openidm.notifications|false}" + }, + "threadPool": { + "maxPoolThreads": 2, + "maxQueueSize": 20000, + "steadyPoolThreads": 1, + "threadKeepAlive": 60 + } + }, + "policy": { + "_id": "policy", + "additionalFiles": [], + "file": "policy.js", + "resources": [ + { + "calculatedProperties": { + "source": "require('selfServicePolicies').getRegistrationProperties()", + "type": "text/javascript" + }, + "resource": "selfservice/registration" + }, + { + "calculatedProperties": { + "source": "require('selfServicePolicies').getResetProperties()", + "type": "text/javascript" + }, + "resource": "selfservice/reset" + }, + { + "properties": [ + { + "name": "_id", + "policies": [ + { + "params": { + "forbiddenChars": [ + "/" + ] + }, + "policyId": "cannot-contain-characters" + } + ] + }, + { + "name": "password", + "policies": [ + { + "params": { + "minLength": 8 + }, + "policyId": "minimum-length" + } + ] + } + ], + "resource": "internal/user/*" + }, + { + "properties": [ + { + "name": "name", + "policies": [ + { + "policyId": "required" + }, + { + "policyId": "not-empty" + }, + { + "params": { + "forbiddenChars": [ + "/*" + ] + }, + "policyId": "cannot-contain-characters" + } + ] + }, + { + "name": "temporalConstraints", + "policies": [ + { + "policyId": "valid-temporal-constraints" + } + ] + }, + { + "name": "condition", + "policies": [ + { + "policyId": "valid-query-filter" + } + ] + }, + { + "name": "privileges", + "policies": [ + { + "params": { + "types": [ + "array" + ] + }, + "policyId": "valid-type" + }, + { + "params": { + "properties": [ + { + "name": "name", + "policies": [ + { + "policyId": "required" + }, + { + "policyId": "not-empty" + }, + { + "params": { + "types": [ + "string" + ] + }, + "policyId": "valid-type" + } + ] + }, + { + "name": "path", + "policies": [ + { + "policyId": "required" + }, + { + "policyId": "not-empty" + }, + { + "params": { + "forbiddenChars": [ + "/*" + ] + }, + "policyId": "cannot-contain-characters" + }, + { + "policyId": "valid-privilege-path" + } + ] + }, + { + "name": "accessFlags", + "policies": [ + { + "policyId": "required" + }, + { + "policyId": "not-empty" + }, + { + "params": { + "types": [ + "array" + ] + }, + "policyId": "valid-type" + }, + { + "policyId": "valid-accessFlags-object" + } + ] + }, + { + "name": "actions", + "policies": [ + { + "policyId": "required" + }, + { + "params": { + "types": [ + "array" + ] + }, + "policyId": "valid-type" + } + ] + }, + { + "name": "permissions", + "policies": [ + { + "policyId": "required" + }, + { + "policyId": "not-empty" + }, + { + "params": { + "types": [ + "array" + ] + }, + "policyId": "valid-type" + }, + { + "policyId": "valid-permissions" + } + ] + }, + { + "name": "filter", + "policies": [ + { + "params": { + "types": [ + "string", + "null" + ] + }, + "policyId": "valid-type" + }, + { + "policyId": "valid-query-filter" + } + ] + } + ] + }, + "policyId": "valid-array-items" + } + ] + } + ], + "resource": "internal/role/*" + }, + { + "properties": [ + { + "name": "temporalConstraints", + "policies": [ + { + "policyId": "valid-temporal-constraints" + } + ] + }, + { + "name": "condition", + "policies": [ + { + "policyId": "valid-query-filter" + } + ] + } + ], + "resource": "managed/role/*" + }, + { + "properties": [ + { + "name": "objects", + "policies": [ + { + "policyId": "valid-event-scripts" + } + ] + } + ], + "resource": "config/managed" + } + ], + "type": "text/javascript" + }, + "privilegeAssignments": { + "_id": "privilegeAssignments", + "privilegeAssignments": [ + { + "name": "ownerPrivileges", + "privileges": [ + "owner-view-update-delete-orgs", + "owner-create-orgs", + "owner-view-update-delete-admins-and-members", + "owner-create-admins", + "admin-view-update-delete-members", + "admin-create-members" + ], + "relationshipField": "ownerOfOrg" + }, + { + "name": "adminPrivileges", + "privileges": [ + "admin-view-update-delete-orgs", + "admin-create-orgs", + "admin-view-update-delete-members", + "admin-create-members" + ], + "relationshipField": "adminOfOrg" + } + ] + }, + "privileges": { + "_id": "privileges", + "privileges": [ + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "owners", + "readOnly": true + }, + { + "attribute": "admins", + "readOnly": false + }, + { + "attribute": "members", + "readOnly": false + }, + { + "attribute": "parent", + "readOnly": false + }, + { + "attribute": "children", + "readOnly": false + }, + { + "attribute": "parentIDs", + "readOnly": true + }, + { + "attribute": "adminIDs", + "readOnly": true + }, + { + "attribute": "parentAdminIDs", + "readOnly": true + }, + { + "attribute": "ownerIDs", + "readOnly": true + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/ownerIDs eq \"{{_id}}\" or /parentOwnerIDs eq \"{{_id}}\"", + "name": "owner-view-update-delete-orgs", + "path": "managed/organization", + "permissions": [ + "VIEW", + "UPDATE", + "DELETE" + ] + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "owners", + "readOnly": true + }, + { + "attribute": "admins", + "readOnly": false + }, + { + "attribute": "members", + "readOnly": false + }, + { + "attribute": "parent", + "readOnly": false + }, + { + "attribute": "children", + "readOnly": false + }, + { + "attribute": "parentIDs", + "readOnly": true + }, + { + "attribute": "adminIDs", + "readOnly": true + }, + { + "attribute": "parentAdminIDs", + "readOnly": true + }, + { + "attribute": "ownerIDs", + "readOnly": true + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/parent pr", + "name": "owner-create-orgs", + "path": "managed/organization", + "permissions": [ + "CREATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false + }, + { + "attribute": "password", + "readOnly": false + }, + { + "attribute": "givenName", + "readOnly": false + }, + { + "attribute": "sn", + "readOnly": false + }, + { + "attribute": "mail", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "accountStatus", + "readOnly": false + }, + { + "attribute": "telephoneNumber", + "readOnly": false + }, + { + "attribute": "postalAddress", + "readOnly": false + }, + { + "attribute": "city", + "readOnly": false + }, + { + "attribute": "postalCode", + "readOnly": false + }, + { + "attribute": "country", + "readOnly": false + }, + { + "attribute": "stateProvince", + "readOnly": false + }, + { + "attribute": "roles", + "readOnly": false + }, + { + "attribute": "manager", + "readOnly": false + }, + { + "attribute": "authzRoles", + "readOnly": false + }, + { + "attribute": "reports", + "readOnly": false + }, + { + "attribute": "effectiveRoles", + "readOnly": false + }, + { + "attribute": "effectiveAssignments", + "readOnly": false + }, + { + "attribute": "lastSync", + "readOnly": false + }, + { + "attribute": "kbaInfo", + "readOnly": false + }, + { + "attribute": "preferences", + "readOnly": false + }, + { + "attribute": "consentedMappings", + "readOnly": false + }, + { + "attribute": "memberOfOrg", + "readOnly": false + }, + { + "attribute": "adminOfOrg", + "readOnly": false + }, + { + "attribute": "ownerOfOrg", + "readOnly": true + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/memberOfOrgIDs eq \"__org_id_placeholder__\"", + "name": "owner-view-update-delete-admins-and-members", + "path": "managed/user", + "permissions": [ + "VIEW", + "DELETE", + "UPDATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false + }, + { + "attribute": "password", + "readOnly": false + }, + { + "attribute": "givenName", + "readOnly": false + }, + { + "attribute": "sn", + "readOnly": false + }, + { + "attribute": "mail", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "accountStatus", + "readOnly": false + }, + { + "attribute": "telephoneNumber", + "readOnly": false + }, + { + "attribute": "postalAddress", + "readOnly": false + }, + { + "attribute": "city", + "readOnly": false + }, + { + "attribute": "postalCode", + "readOnly": false + }, + { + "attribute": "country", + "readOnly": false + }, + { + "attribute": "stateProvince", + "readOnly": false + }, + { + "attribute": "roles", + "readOnly": false + }, + { + "attribute": "manager", + "readOnly": false + }, + { + "attribute": "authzRoles", + "readOnly": false + }, + { + "attribute": "reports", + "readOnly": false + }, + { + "attribute": "effectiveRoles", + "readOnly": false + }, + { + "attribute": "effectiveAssignments", + "readOnly": false + }, + { + "attribute": "lastSync", + "readOnly": false + }, + { + "attribute": "kbaInfo", + "readOnly": false + }, + { + "attribute": "preferences", + "readOnly": false + }, + { + "attribute": "consentedMappings", + "readOnly": false + }, + { + "attribute": "memberOfOrg", + "readOnly": false + }, + { + "attribute": "adminOfOrg", + "readOnly": false + }, + { + "attribute": "ownerOfOrg", + "readOnly": true + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/memberOfOrg/0 pr and /adminOfOrg/0 pr and !(/ownerOfOrg pr)", + "name": "owner-create-admins", + "path": "managed/user", + "permissions": [ + "CREATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "owners", + "readOnly": true + }, + { + "attribute": "admins", + "readOnly": true + }, + { + "attribute": "members", + "readOnly": false + }, + { + "attribute": "parent", + "readOnly": false + }, + { + "attribute": "children", + "readOnly": false + }, + { + "attribute": "parentIDs", + "readOnly": true + }, + { + "attribute": "adminIDs", + "readOnly": true + }, + { + "attribute": "parentAdminIDs", + "readOnly": true + }, + { + "attribute": "ownerIDs", + "readOnly": true + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/adminIDs eq \"{{_id}}\" or /parentAdminIDs eq \"{{_id}}\"", + "name": "admin-view-update-delete-orgs", + "path": "managed/organization", + "permissions": [ + "VIEW", + "UPDATE", + "DELETE" + ] + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "owners", + "readOnly": true + }, + { + "attribute": "admins", + "readOnly": true + }, + { + "attribute": "members", + "readOnly": false + }, + { + "attribute": "parent", + "readOnly": false + }, + { + "attribute": "children", + "readOnly": false + }, + { + "attribute": "parentIDs", + "readOnly": true + }, + { + "attribute": "adminIDs", + "readOnly": true + }, + { + "attribute": "parentAdminIDs", + "readOnly": true + }, + { + "attribute": "ownerIDs", + "readOnly": true + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/parent pr", + "name": "admin-create-orgs", + "path": "managed/organization", + "permissions": [ + "CREATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false + }, + { + "attribute": "password", + "readOnly": false + }, + { + "attribute": "givenName", + "readOnly": false + }, + { + "attribute": "sn", + "readOnly": false + }, + { + "attribute": "mail", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "accountStatus", + "readOnly": false + }, + { + "attribute": "telephoneNumber", + "readOnly": false + }, + { + "attribute": "postalAddress", + "readOnly": false + }, + { + "attribute": "city", + "readOnly": false + }, + { + "attribute": "postalCode", + "readOnly": false + }, + { + "attribute": "country", + "readOnly": false + }, + { + "attribute": "stateProvince", + "readOnly": false + }, + { + "attribute": "roles", + "readOnly": false + }, + { + "attribute": "manager", + "readOnly": false + }, + { + "attribute": "authzRoles", + "readOnly": false + }, + { + "attribute": "reports", + "readOnly": false + }, + { + "attribute": "effectiveRoles", + "readOnly": false + }, + { + "attribute": "effectiveAssignments", + "readOnly": false + }, + { + "attribute": "lastSync", + "readOnly": false + }, + { + "attribute": "kbaInfo", + "readOnly": false + }, + { + "attribute": "preferences", + "readOnly": false + }, + { + "attribute": "consentedMappings", + "readOnly": false + }, + { + "attribute": "memberOfOrg", + "readOnly": false + }, + { + "attribute": "adminOfOrg", + "readOnly": true + }, + { + "attribute": "ownerOfOrg", + "readOnly": true + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/memberOfOrgIDs eq \"__org_id_placeholder__\"", + "name": "admin-view-update-delete-members", + "path": "managed/user", + "permissions": [ + "VIEW", + "DELETE", + "UPDATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false + }, + { + "attribute": "password", + "readOnly": false + }, + { + "attribute": "givenName", + "readOnly": false + }, + { + "attribute": "sn", + "readOnly": false + }, + { + "attribute": "mail", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "accountStatus", + "readOnly": false + }, + { + "attribute": "telephoneNumber", + "readOnly": false + }, + { + "attribute": "postalAddress", + "readOnly": false + }, + { + "attribute": "city", + "readOnly": false + }, + { + "attribute": "postalCode", + "readOnly": false + }, + { + "attribute": "country", + "readOnly": false + }, + { + "attribute": "stateProvince", + "readOnly": false + }, + { + "attribute": "roles", + "readOnly": false + }, + { + "attribute": "manager", + "readOnly": false + }, + { + "attribute": "authzRoles", + "readOnly": false + }, + { + "attribute": "reports", + "readOnly": false + }, + { + "attribute": "effectiveRoles", + "readOnly": false + }, + { + "attribute": "effectiveAssignments", + "readOnly": false + }, + { + "attribute": "lastSync", + "readOnly": false + }, + { + "attribute": "kbaInfo", + "readOnly": false + }, + { + "attribute": "preferences", + "readOnly": false + }, + { + "attribute": "consentedMappings", + "readOnly": false + }, + { + "attribute": "memberOfOrg", + "readOnly": false + }, + { + "attribute": "adminOfOrg", + "readOnly": true + }, + { + "attribute": "ownerOfOrg", + "readOnly": true + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/memberOfOrg/0 pr and !(/adminOfOrg pr) and !(/ownerOfOrg pr)", + "name": "admin-create-members", + "path": "managed/user", + "permissions": [ + "CREATE" + ] + } + ] + }, + "process/access": { + "_id": "process/access", + "workflowAccess": [ + { + "propertiesCheck": { + "matches": ".*", + "property": "_id", + "requiresRole": "internal/role/openidm-authorized" + } + }, + { + "propertiesCheck": { + "matches": ".*", + "property": "_id", + "requiresRole": "internal/role/openidm-admin" + } + } + ] + }, + "repo.ds": { + "_id": "repo.ds", + "commands": { + "delete-mapping-links": { + "_queryFilter": "/linkType eq \"${mapping}\"", + "operation": "DELETE" + }, + "delete-target-ids-for-recon": { + "_queryFilter": "/reconId eq \"${reconId}\"", + "operation": "DELETE" + } + }, + "embedded": false, + "ldapConnectionFactories": { + "bind": { + "connectionPoolSize": 50, + "connectionSecurity": "startTLS", + "heartBeatIntervalSeconds": 60, + "heartBeatTimeoutMilliSeconds": 10000, + "primaryLdapServers": [ + { + "hostname": "opendj-frodo-dev.classic.com", + "port": 2389 + } + ], + "secondaryLdapServers": [] + }, + "root": { + "authentication": { + "simple": { + "bindDn": "uid=admin", + "bindPassword": { + "$crypto": { + "type": "x-simple-encryption", + "value": { + "cipher": "AES/CBC/PKCS5Padding", + "data": "lJ/B6T9e9CDKHCN8TxkD4g==", + "iv": "EdrerzwEUUkHG582cLDw5w==", + "keySize": 32, + "mac": "Aty9fXUtl4pexGlHOc+CBg==", + "purpose": "idm.config.encryption", + "salt": "BITSKlnPeT5klcuEZbngzw==", + "stableId": "openidm-sym-default" + } + } + } + } + }, + "inheritFrom": "bind" + } + }, + "maxConnectionAttempts": 5, + "resourceMapping": { + "defaultMapping": { + "dnTemplate": "ou=generic,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "explicitMapping": { + "clusteredrecontargetids": { + "dnTemplate": "ou=clusteredrecontargetids,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-recon-clusteredTargetIds" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly" + }, + "reconId": { + "ldapAttribute": "fr-idm-recon-id", + "type": "simple" + }, + "targetIds": { + "ldapAttribute": "fr-idm-recon-targetIds", + "type": "json" + } + } + }, + "dsconfig/attributeValue": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-attribute-value-password-validator" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "checkSubstrings": { + "ldapAttribute": "ds-cfg-check-substrings", + "type": "simple" + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple" + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple" + }, + "matchAttribute": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-match-attribute", + "type": "simple" + }, + "minSubstringLength": { + "ldapAttribute": "ds-cfg-min-substring-length", + "type": "simple" + }, + "testReversedPassword": { + "isRequired": true, + "ldapAttribute": "ds-cfg-test-reversed-password", + "type": "simple" + } + } + }, + "dsconfig/characterSet": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-character-set-password-validator" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "allowUnclassifiedCharacters": { + "isRequired": true, + "ldapAttribute": "ds-cfg-allow-unclassified-characters", + "type": "simple" + }, + "characterSet": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-character-set", + "type": "simple" + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple" + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple" + }, + "minCharacterSets": { + "ldapAttribute": "ds-cfg-min-character-sets", + "type": "simple" + } + } + }, + "dsconfig/dictionary": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-dictionary-password-validator" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "caseSensitiveValidation": { + "isRequired": true, + "ldapAttribute": "ds-cfg-case-sensitive-validation", + "type": "simple" + }, + "checkSubstrings": { + "ldapAttribute": "ds-cfg-check-substrings", + "type": "simple" + }, + "dictionaryFile": { + "isRequired": true, + "ldapAttribute": "ds-cfg-dictionary-file", + "type": "simple" + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple" + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple" + }, + "minSubstringLength": { + "ldapAttribute": "ds-cfg-min-substring-length", + "type": "simple" + }, + "testReversedPassword": { + "isRequired": true, + "ldapAttribute": "ds-cfg-test-reversed-password", + "type": "simple" + } + } + }, + "dsconfig/lengthBased": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-length-based-password-validator" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple" + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple" + }, + "maxPasswordLength": { + "ldapAttribute": "ds-cfg-max-password-length", + "type": "simple" + }, + "minPasswordLength": { + "ldapAttribute": "ds-cfg-min-password-length", + "type": "simple" + } + } + }, + "dsconfig/passwordPolicies": { + "dnTemplate": "cn=Password Policies,cn=config", + "objectClasses": [ + "ds-cfg-password-policy", + "ds-cfg-authentication-policy" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "defaultPasswordStorageScheme": { + "isMultiValued": true, + "isRequired": true, + "ldapAttribute": "ds-cfg-default-password-storage-scheme", + "type": "simple" + }, + "maxPasswordAge": { + "ldapAttribute": "ds-cfg-max-password-age", + "type": "simple" + }, + "passwordAttribute": { + "isRequired": true, + "ldapAttribute": "ds-cfg-password-attribute", + "type": "simple" + }, + "passwordHistoryCount": { + "ldapAttribute": "ds-cfg-password-history-count", + "type": "simple" + }, + "validator": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-password-validator", + "type": "simple" + } + } + }, + "dsconfig/repeatedCharacters": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-repeated-characters-password-validator" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "caseSensitiveValidation": { + "isRequired": true, + "ldapAttribute": "ds-cfg-case-sensitive-validation", + "type": "simple" + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple" + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple" + }, + "maxConsecutiveLength": { + "isRequired": true, + "ldapAttribute": "ds-cfg-max-consecutive-length", + "type": "simple" + } + } + }, + "dsconfig/similarityBased": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-similarity-based-password-validator" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple" + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple" + }, + "minPasswordDifference": { + "isRequired": true, + "ldapAttribute": "ds-cfg-min-password-difference", + "type": "simple" + } + } + }, + "dsconfig/uniqueCharacters": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-unique-characters-password-validator" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "caseSensitiveValidation": { + "isRequired": true, + "ldapAttribute": "ds-cfg-case-sensitive-validation", + "type": "simple" + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple" + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple" + }, + "minUniqueCharacters": { + "isRequired": true, + "ldapAttribute": "ds-cfg-min-unique-characters", + "type": "simple" + } + } + }, + "dsconfig/userDefinedVirtualAttribute": { + "dnTemplate": "cn=Virtual Attributes,cn=config", + "objectClasses": [ + "ds-cfg-user-defined-virtual-attribute", + "ds-cfg-virtual-attribute" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "attributeType": { + "isRequired": true, + "ldapAttribute": "ds-cfg-attribute-type", + "type": "simple" + }, + "baseDn": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-base-dn", + "type": "simple" + }, + "conflictBehavior": { + "ldapAttribute": "ds-cfg-conflict-behavior", + "type": "simple" + }, + "enabled": { + "isRequired": true, + "ldapAttribute": "ds-cfg-enabled", + "type": "simple" + }, + "filter": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-filter", + "type": "simple" + }, + "groupDn": { + "ldapAttribute": "ds-cfg-group-dn", + "type": "simple" + }, + "javaClass": { + "isRequired": true, + "ldapAttribute": "ds-cfg-java-class", + "type": "simple" + }, + "scope": { + "ldapAttribute": "ds-cfg-scope", + "type": "simple" + }, + "value": { + "isMultiValued": true, + "isRequired": true, + "ldapAttribute": "ds-cfg-value", + "type": "simple" + } + } + }, + "internal/role": { + "dnTemplate": "ou=roles,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "fr-idm-internal-role" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "authzMembers": { + "isMultiValued": true, + "propertyName": "authzRoles", + "resourcePath": "managed/user", + "type": "reverseReference" + }, + "condition": { + "ldapAttribute": "fr-idm-condition", + "type": "simple" + }, + "description": { + "ldapAttribute": "description", + "type": "simple" + }, + "name": { + "ldapAttribute": "fr-idm-name", + "type": "simple" + }, + "privileges": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-privilege", + "type": "json" + }, + "temporalConstraints": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-temporal-constraints", + "type": "json" + } + } + }, + "internal/user": { + "dnTemplate": "ou=users,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-internal-user" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly" + }, + "password": { + "ldapAttribute": "fr-idm-password", + "type": "json" + } + } + }, + "link": { + "dnTemplate": "ou=links,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-link" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly" + }, + "firstId": { + "ldapAttribute": "fr-idm-link-firstId", + "type": "simple" + }, + "linkQualifier": { + "ldapAttribute": "fr-idm-link-qualifier", + "type": "simple" + }, + "linkType": { + "ldapAttribute": "fr-idm-link-type", + "type": "simple" + }, + "secondId": { + "ldapAttribute": "fr-idm-link-secondId", + "type": "simple" + } + } + }, + "locks": { + "dnTemplate": "ou=locks,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-lock" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly" + }, + "nodeId": { + "ldapAttribute": "fr-idm-lock-nodeid", + "type": "simple" + } + } + }, + "recon/assoc": { + "dnTemplate": "ou=assoc,ou=recon,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "namingStrategy": { + "dnAttribute": "fr-idm-reconassoc-reconid", + "type": "clientDnNaming" + }, + "objectClasses": [ + "fr-idm-reconassoc" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "fr-idm-reconassoc-reconid", + "type": "simple" + }, + "finishTime": { + "ldapAttribute": "fr-idm-reconassoc-finishtime", + "type": "simple" + }, + "isAnalysis": { + "ldapAttribute": "fr-idm-reconassoc-isanalysis", + "type": "simple" + }, + "mapping": { + "ldapAttribute": "fr-idm-reconassoc-mapping", + "type": "simple" + }, + "sourceResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-sourceresourcecollection", + "type": "simple" + }, + "targetResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-targetresourcecollection", + "type": "simple" + } + }, + "subResources": { + "entry": { + "namingStrategy": { + "dnAttribute": "uid", + "type": "clientDnNaming" + }, + "resource": "recon-assoc-entry", + "type": "collection" + } + } + }, + "recon/assoc/entry": { + "objectClasses": [ + "uidObject", + "fr-idm-reconassocentry" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple" + }, + "action": { + "ldapAttribute": "fr-idm-reconassocentry-action", + "type": "simple" + }, + "ambiguousTargetObjectIds": { + "ldapAttribute": "fr-idm-reconassocentry-ambiguoustargetobjectids", + "type": "simple" + }, + "exception": { + "ldapAttribute": "fr-idm-reconassocentry-exception", + "type": "simple" + }, + "isAnalysis": { + "ldapAttribute": "fr-idm-reconassoc-isanalysis", + "type": "simple" + }, + "linkQualifier": { + "ldapAttribute": "fr-idm-reconassocentry-linkqualifier", + "type": "simple" + }, + "mapping": { + "ldapAttribute": "fr-idm-reconassoc-mapping", + "type": "simple" + }, + "message": { + "ldapAttribute": "fr-idm-reconassocentry-message", + "type": "simple" + }, + "messageDetail": { + "ldapAttribute": "fr-idm-reconassocentry-messagedetail", + "type": "simple" + }, + "phase": { + "ldapAttribute": "fr-idm-reconassocentry-phase", + "type": "simple" + }, + "reconId": { + "ldapAttribute": "fr-idm-reconassocentry-reconid", + "type": "simple" + }, + "situation": { + "ldapAttribute": "fr-idm-reconassocentry-situation", + "type": "simple" + }, + "sourceObjectId": { + "ldapAttribute": "fr-idm-reconassocentry-sourceObjectId", + "type": "simple" + }, + "sourceResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-sourceresourcecollection", + "type": "simple" + }, + "status": { + "ldapAttribute": "fr-idm-reconassocentry-status", + "type": "simple" + }, + "targetObjectId": { + "ldapAttribute": "fr-idm-reconassocentry-targetObjectId", + "type": "simple" + }, + "targetResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-targetresourcecollection", + "type": "simple" + } + }, + "resourceName": "recon-assoc-entry", + "subResourceRouting": [ + { + "prefix": "entry", + "template": "recon/assoc/{reconId}/entry" + } + ] + }, + "sync/queue": { + "dnTemplate": "ou=queue,ou=sync,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-syncqueue" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly" + }, + "context": { + "ldapAttribute": "fr-idm-syncqueue-context", + "type": "json" + }, + "createDate": { + "ldapAttribute": "fr-idm-syncqueue-createdate", + "type": "simple" + }, + "mapping": { + "ldapAttribute": "fr-idm-syncqueue-mapping", + "type": "simple" + }, + "newObject": { + "ldapAttribute": "fr-idm-syncqueue-newobject", + "type": "json" + }, + "nodeId": { + "ldapAttribute": "fr-idm-syncqueue-nodeid", + "type": "simple" + }, + "objectRev": { + "ldapAttribute": "fr-idm-syncqueue-objectRev", + "type": "simple" + }, + "oldObject": { + "ldapAttribute": "fr-idm-syncqueue-oldobject", + "type": "json" + }, + "resourceCollection": { + "ldapAttribute": "fr-idm-syncqueue-resourcecollection", + "type": "simple" + }, + "resourceId": { + "ldapAttribute": "fr-idm-syncqueue-resourceid", + "type": "simple" + }, + "state": { + "ldapAttribute": "fr-idm-syncqueue-state", + "type": "simple" + }, + "syncAction": { + "ldapAttribute": "fr-idm-syncqueue-syncaction", + "type": "simple" + } + } + } + }, + "genericMapping": { + "cluster/*": { + "dnTemplate": "ou=cluster,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-cluster-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchClusterObject", + "objectClasses": [ + "uidObject", + "fr-idm-cluster-obj" + ] + }, + "config": { + "dnTemplate": "ou=config,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "file": { + "dnTemplate": "ou=file,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "import": { + "dnTemplate": "ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "import/*": { + "dnTemplate": "ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "internal/notification": { + "dnTemplate": "ou=notification,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-notification-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-notification" + ], + "properties": { + "target": { + "propertyName": "_notifications", + "resourcePath": "managed/user", + "type": "reverseReference" + } + } + }, + "internal/usermeta": { + "dnTemplate": "ou=usermeta,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-generic-obj" + ], + "properties": { + "target": { + "propertyName": "_meta", + "resourcePath": "managed/user", + "type": "reverseReference" + } + } + }, + "jsonstorage": { + "dnTemplate": "ou=jsonstorage,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "managed/*": { + "dnTemplate": "ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "managed/assignment": { + "dnTemplate": "ou=assignment,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-managed-assignment-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-assignment" + ], + "properties": { + "condition": { + "ldapAttribute": "fr-idm-assignment-condition", + "type": "simple" + }, + "members": { + "isMultiValued": true, + "propertyName": "assignments", + "resourcePath": "managed/user", + "type": "reverseReference" + }, + "roles": { + "isMultiValued": true, + "propertyName": "assignments", + "resourcePath": "managed/role", + "type": "reverseReference" + } + } + }, + "managed/organization": { + "dnTemplate": "ou=organization,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-managed-organization-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-organization" + ], + "properties": { + "admins": { + "isMultiValued": true, + "propertyName": "adminOfOrg", + "resourcePath": "managed/user", + "type": "reverseReference" + }, + "children": { + "isMultiValued": true, + "propertyName": "parent", + "resourcePath": "managed/organization", + "type": "reverseReference" + }, + "members": { + "isMultiValued": true, + "propertyName": "memberOfOrg", + "resourcePath": "managed/user", + "type": "reverseReference" + }, + "name": { + "ldapAttribute": "fr-idm-managed-organization-name", + "type": "simple" + }, + "owners": { + "isMultiValued": true, + "propertyName": "ownerOfOrg", + "resourcePath": "managed/user", + "type": "reverseReference" + }, + "parent": { + "ldapAttribute": "fr-idm-managed-organization-parent", + "primaryKey": "uid", + "resourcePath": "managed/organization", + "type": "reference" + } + } + }, + "managed/role": { + "dnTemplate": "ou=role,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-managed-role-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchManagedRole", + "objectClasses": [ + "uidObject", + "fr-idm-managed-role" + ], + "properties": { + "assignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-role-assignments", + "primaryKey": "uid", + "resourcePath": "managed/assignment", + "type": "reference" + }, + "members": { + "isMultiValued": true, + "propertyName": "roles", + "resourcePath": "managed/user", + "type": "reverseReference" + } + } + }, + "managed/user": { + "dnTemplate": "ou=user,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-managed-user-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchManagedUser", + "objectClasses": [ + "uidObject", + "fr-idm-managed-user" + ], + "properties": { + "_meta": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-meta", + "primaryKey": "uid", + "resourcePath": "internal/usermeta", + "type": "reference" + }, + "_notifications": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-notifications", + "primaryKey": "uid", + "resourcePath": "internal/notification", + "type": "reference" + }, + "adminOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-admin", + "primaryKey": "uid", + "resourcePath": "managed/organization", + "type": "reference" + }, + "assignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-assignment-member", + "primaryKey": "uid", + "resourcePath": "managed/assignment", + "type": "reference" + }, + "authzRoles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-authzroles-internal-role", + "primaryKey": "cn", + "resourcePath": "internal/role", + "type": "reference" + }, + "manager": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-manager", + "primaryKey": "uid", + "resourcePath": "managed/user", + "type": "reference" + }, + "memberOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-member", + "primaryKey": "uid", + "resourcePath": "managed/organization", + "type": "reference" + }, + "ownerOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-owner", + "primaryKey": "uid", + "resourcePath": "managed/organization", + "type": "reference" + }, + "passwordExpirationTime": { + "ldapAttribute": "pwdExpirationTime", + "type": "simple", + "writability": "readOnlyDiscardWrites" + }, + "passwordLastChangedTime": { + "ldapAttribute": "pwdChangedTime", + "type": "simple", + "writability": "readOnlyDiscardWrites" + }, + "reports": { + "isMultiValued": true, + "propertyName": "manager", + "resourcePath": "managed/user", + "type": "reverseReference" + }, + "roles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-roles", + "primaryKey": "uid", + "resourcePath": "managed/role", + "type": "reference" + } + } + }, + "reconprogressstate": { + "dnTemplate": "ou=reconprogressstate,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "relationships": { + "dnTemplate": "ou=relationships,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-relationship-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchRelationship", + "objectClasses": [ + "uidObject", + "fr-idm-relationship" + ] + }, + "scheduler": { + "dnTemplate": "ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "scheduler/*": { + "dnTemplate": "ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "ui/*": { + "dnTemplate": "ou=ui,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "updates": { + "dnTemplate": "ou=updates,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + } + } + }, + "rest2LdapOptions": { + "mvccAttribute": "etag", + "readOnUpdatePolicy": "controls", + "returnNullForMissingProperties": true, + "useMvcc": true, + "usePermissiveModify": true, + "useSubtreeDelete": false + }, + "security": { + "fileBasedTrustManagerFile": "&{idm.install.dir}/security/truststore", + "fileBasedTrustManagerPasswordFile": "&{idm.install.dir}/security/storepass", + "fileBasedTrustManagerType": "JKS", + "trustManager": "file" + } + }, + "repo.init": { + "_id": "repo.init", + "insert": { + "internal/role": [ + { + "description": "Administrative access", + "id": "openidm-admin", + "name": "openidm-admin" + }, + { + "description": "Basic minimum user", + "id": "openidm-authorized", + "name": "openidm-authorized" + }, + { + "description": "Anonymous access", + "id": "openidm-reg", + "name": "openidm-reg" + }, + { + "description": "Authenticated via certificate", + "id": "openidm-cert", + "name": "openidm-cert" + }, + { + "description": "Allowed to reassign workflow tasks", + "id": "openidm-tasks-manager", + "name": "openidm-tasks-manager" + }, + { + "description": "Platform provisioning access", + "id": "platform-provisioning", + "name": "platform-provisioning" + } + ], + "internal/user": [ + { + "id": "openidm-admin", + "password": "&{openidm.admin.password}" + }, + { + "id": "anonymous", + "password": "anonymous" + }, + { + "id": "idm-provisioning" + }, + { + "id": "connector-server-client" + } + ] + } + }, + "router": { + "_id": "router", + "filters": [ + { + "methods": [ + "create", + "update" + ], + "onRequest": { + "file": "policyFilter.js", + "type": "text/javascript" + }, + "pattern": "^(managed|internal)($|(/.+))" + }, + { + "methods": [ + "update" + ], + "onRequest": { + "file": "policyFilter.js", + "type": "text/javascript" + }, + "pattern": "^config/managed$" + }, + { + "condition": { + "source": "(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0)", + "type": "text/javascript" + }, + "onResponse": { + "source": "require('relationshipFilter').filterResponse()", + "type": "text/javascript" + }, + "pattern": "^(managed|internal)($|(/.+))" + } + ] + }, + "schedule/seantest": { + "_id": "schedule/seantest", + "concurrentExecution": false, + "enabled": false, + "endTime": null, + "invokeContext": { + "script": { + "globals": {}, + "source": "//sean has changed this script. Let's see if it is still working. qqqqqqqqqqqqqqSchedule1\n", + "type": "text/javascript" + } + }, + "invokeLogLevel": "info", + "invokeService": "script", + "misfirePolicy": "fireAndProceed", + "persisted": true, + "recoverable": false, + "repeatCount": 0, + "repeatInterval": 0, + "schedule": null, + "startTime": null, + "type": "simple" + }, + "schedule/taskscan_activate": { + "_id": "schedule/taskscan_activate", + "concurrentExecution": false, + "enabled": false, + "invokeContext": { + "numberOfThreads": 5, + "scan": { + "_queryFilter": "((/activeDate le \"${Time.nowWithOffset}\") AND (!(/inactiveDate pr) or /inactiveDate ge \"${Time.nowWithOffset}\"))", + "object": "managed/user", + "recovery": { + "timeout": "10m" + }, + "taskState": { + "completed": "/activateAccount/task-completed", + "started": "/activateAccount/task-started" + } + }, + "task": { + "script": { + "globals": {}, + "source": "var patch = [{ \"operation\" : \"replace\", \"field\" : \"/accountStatus\", \"value\" : \"active\" }];\n\nlogger.debug(\"Performing Activate Account Task on {} ({})\", input.mail, objectID);\n\nopenidm.patch(objectID, null, patch); true;", + "type": "text/javascript" + } + }, + "waitForCompletion": false + }, + "invokeService": "taskscanner", + "persisted": true, + "repeatInterval": 86400000, + "type": "simple" + }, + "schedule/taskscan_expire": { + "_id": "schedule/taskscan_expire", + "concurrentExecution": false, + "enabled": false, + "invokeContext": { + "numberOfThreads": 5, + "scan": { + "_queryFilter": "((/inactiveDate lt \"${Time.nowWithOffset}\") AND (!(/activeDate pr) or /activeDate le \"${Time.nowWithOffset}\"))", + "object": "managed/user", + "recovery": { + "timeout": "10m" + }, + "taskState": { + "completed": "/expireAccount/task-completed", + "started": "/expireAccount/task-started" + } + }, + "task": { + "script": { + "globals": {}, + "source": "var patch = [{ \"operation\" : \"replace\", \"field\" : \"/accountStatus\", \"value\" : \"inactive\" }];\n\nlogger.debug(\"Performing Expire Account Task on {} ({})\", input.mail, objectID);\n\nopenidm.patch(objectID, null, patch); true;", + "type": "text/javascript" + } + }, + "waitForCompletion": false + }, + "invokeService": "taskscanner", + "persisted": true, + "repeatInterval": 86400000, + "type": "simple" + }, + "scheduler": { + "_id": "scheduler", + "scheduler": { + "executePersistentSchedules": { + "$bool": "&{openidm.scheduler.execute.persistent.schedules}" + } + }, + "threadPool": { + "threadCount": 10 + } + }, + "script": { + "ECMAScript": { + "javascript.optimization.level": 9, + "javascript.recompile.minimumInterval": 60000 + }, + "Groovy": { + "#groovy.disabled.global.ast.transformations": "", + "#groovy.errors.tolerance": 10, + "#groovy.output.debug": false, + "#groovy.output.verbose": false, + "#groovy.script.base": "#any class extends groovy.lang.Script", + "#groovy.script.extension": ".groovy", + "#groovy.target.bytecode": "1.8", + "#groovy.target.directory": "&{idm.data.dir}/classes", + "#groovy.target.indy": true, + "#groovy.warnings": "likely errors #othere values [none,likely,possible,paranoia]", + "groovy.classpath": "&{idm.install.dir}/lib", + "groovy.recompile": true, + "groovy.recompile.minimumInterval": 60000, + "groovy.source.encoding": "UTF-8" + }, + "_id": "script", + "properties": {}, + "sources": { + "default": { + "directory": "&{idm.install.dir}/bin/defaults/script" + }, + "install": { + "directory": "&{idm.install.dir}" + }, + "project": { + "directory": "&{idm.instance.dir}" + }, + "project-script": { + "directory": "&{idm.instance.dir}/script" + } + } + }, + "secrets": { + "_id": "secrets", + "stores": [ + { + "class": "org.forgerock.openidm.secrets.config.KeyStoreSecretStore", + "config": { + "file": "&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}", + "mappings": [ + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}" + ], + "secretId": "idm.default", + "types": [ + "ENCRYPT", + "DECRYPT" + ] + }, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}" + ], + "secretId": "idm.config.encryption", + "types": [ + "ENCRYPT", + "DECRYPT" + ] + }, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}" + ], + "secretId": "idm.password.encryption", + "types": [ + "ENCRYPT", + "DECRYPT" + ] + }, + { + "aliases": [ + "&{openidm.https.keystore.cert.alias|openidm-localhost}" + ], + "secretId": "idm.jwt.session.module.encryption", + "types": [ + "ENCRYPT", + "DECRYPT" + ] + }, + { + "aliases": [ + "&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}" + ], + "secretId": "idm.jwt.session.module.signing", + "types": [ + "SIGN", + "VERIFY" + ] + }, + { + "aliases": [ + "selfservice" + ], + "secretId": "idm.selfservice.encryption", + "types": [ + "ENCRYPT", + "DECRYPT" + ] + }, + { + "aliases": [ + "&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}" + ], + "secretId": "idm.selfservice.signing", + "types": [ + "SIGN", + "VERIFY" + ] + }, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}" + ], + "secretId": "idm.assignment.attribute.encryption", + "types": [ + "ENCRYPT", + "DECRYPT" + ] + } + ], + "providerName": "&{openidm.keystore.provider|SunJCE}", + "storePassword": "&{openidm.keystore.password|changeit}", + "storetype": "&{openidm.keystore.type|JCEKS}" + }, + "name": "mainKeyStore" + }, + { + "class": "org.forgerock.openidm.secrets.config.KeyStoreSecretStore", + "config": { + "file": "&{openidm.truststore.location|&{idm.install.dir}/security/truststore}", + "mappings": [], + "providerName": "&{openidm.truststore.provider|SUN}", + "storePassword": "&{openidm.truststore.password|changeit}", + "storetype": "&{openidm.truststore.type|JKS}" + }, + "name": "mainTrustStore" + } + ] + }, + "selfservice.kba": { + "_id": "selfservice.kba", + "kbaPropertyName": "kbaInfo", + "minimumAnswersToDefine": 2, + "minimumAnswersToVerify": 1, + "questions": { + "1": { + "en": "What's your favorite color?", + "en_GB": "What is your favourite colour?", + "fr": "Quelle est votre couleur préférée?" + }, + "2": { + "en": "Who was your first employer?" + } + } + }, + "selfservice.propertymap": { + "_id": "selfservice.propertymap", + "properties": [ + { + "source": "givenName", + "target": "givenName" + }, + { + "source": "familyName", + "target": "sn" + }, + { + "source": "email", + "target": "mail" + }, + { + "condition": "/object/postalAddress pr", + "source": "postalAddress", + "target": "postalAddress" + }, + { + "condition": "/object/addressLocality pr", + "source": "addressLocality", + "target": "city" + }, + { + "condition": "/object/addressRegion pr", + "source": "addressRegion", + "target": "stateProvince" + }, + { + "condition": "/object/postalCode pr", + "source": "postalCode", + "target": "postalCode" + }, + { + "condition": "/object/country pr", + "source": "country", + "target": "country" + }, + { + "condition": "/object/phone pr", + "source": "phone", + "target": "telephoneNumber" + }, + { + "source": "username", + "target": "userName" + } + ] + }, + "selfservice.terms": { + "_id": "selfservice.terms", + "active": "0.0", + "uiConfig": { + "buttonText": "Accept", + "displayName": "We've updated our terms", + "purpose": "You must accept the updated terms in order to proceed." + }, + "versions": [ + { + "createDate": "2019-10-28T04:20:11.320Z", + "termsTranslations": { + "en": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum." + }, + "version": "0.0" + } + ] + }, + "servletfilter/cors": { + "_id": "servletfilter/cors", + "filterClass": "org.eclipse.jetty.ee10.servlets.CrossOriginFilter", + "initParams": { + "allowCredentials": true, + "allowedHeaders": "accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with", + "allowedMethods": "GET,POST,PUT,DELETE,PATCH", + "allowedOrigins": "https://localhost:&{openidm.port.https}", + "chainPreflight": false + }, + "urlPatterns": [ + "/*" + ] + }, + "servletfilter/payload": { + "_id": "servletfilter/payload", + "filterClass": "org.forgerock.openidm.jetty.LargePayloadServletFilter", + "initParams": { + "maxRequestSizeInMegabytes": 5 + }, + "urlPatterns": [ + "&{openidm.servlet.alias}/*" + ] + }, + "servletfilter/upload": { + "_id": "servletfilter/upload", + "filterClass": "org.forgerock.openidm.jetty.LargePayloadServletFilter", + "initParams": { + "maxRequestSizeInMegabytes": 50 + }, + "urlPatterns": [ + "&{openidm.servlet.upload.alias}/*" + ] + }, + "ui.context/admin": { + "_id": "ui.context/admin", + "cacheEnabled": true, + "defaultDir": "&{idm.install.dir}/ui/admin/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/admin/extension", + "responseHeaders": { + "X-Frame-Options": "SAMEORIGIN" + }, + "urlContextRoot": "/admin" + }, + "ui.context/api": { + "_id": "ui.context/api", + "authEnabled": true, + "cacheEnabled": false, + "defaultDir": "&{idm.install.dir}/ui/api/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/api/extension", + "urlContextRoot": "/api" + }, + "ui.context/enduser": { + "_id": "ui.context/enduser", + "cacheEnabled": true, + "defaultDir": "&{idm.install.dir}/ui/enduser", + "enabled": true, + "responseHeaders": { + "X-Frame-Options": "DENY" + }, + "urlContextRoot": "/" + }, + "ui.context/oauth": { + "_id": "ui.context/oauth", + "cacheEnabled": true, + "defaultDir": "&{idm.install.dir}/ui/oauth/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/oauth/extension", + "urlContextRoot": "/oauthReturn" + }, + "ui/configuration": { + "_id": "ui/configuration", + "configuration": { + "defaultNotificationType": "info", + "forgotUsername": false, + "lang": "en", + "notificationTypes": { + "error": { + "iconPath": "images/notifications/error.png", + "name": "common.notification.types.error" + }, + "info": { + "iconPath": "images/notifications/info.png", + "name": "common.notification.types.info" + }, + "warning": { + "iconPath": "images/notifications/warning.png", + "name": "common.notification.types.warning" + } + }, + "passwordReset": false, + "passwordResetLink": "", + "roles": { + "internal/role/openidm-admin": "ui-admin", + "internal/role/openidm-authorized": "ui-user" + }, + "selfRegistration": false + } + }, + "ui/dashboard": { + "_id": "ui/dashboard", + "adminDashboards": [ + { + "isDefault": true, + "name": "Quick Start", + "widgets": [ + { + "cards": [ + { + "href": "#connectors/add/", + "icon": "fa-database", + "name": "Add Connector" + }, + { + "href": "#mapping/add/", + "icon": "fa-map-marker", + "name": "Create Mapping" + }, + { + "href": "#resource/managed/role/list/", + "icon": "fa-check-square-o", + "name": "Manage Roles" + }, + { + "href": "#managed/add/", + "icon": "fa-tablet", + "name": "Add Device" + }, + { + "href": "#selfservice/userregistration/", + "icon": "fa-gear", + "name": "Configure Registration" + }, + { + "href": "#selfservice/passwordreset/", + "icon": "fa-gear", + "name": "Configure Password Reset" + }, + { + "href": "#resource/managed/user/list/", + "icon": "fa-user", + "name": "Manage Users" + }, + { + "href": "#settings/", + "icon": "fa-user", + "name": "Configure System Preferences" + } + ], + "size": "large", + "type": "quickStart" + } + ] + }, + { + "isDefault": false, + "name": "System Monitoring", + "widgets": [ + { + "legendRange": { + "month": [ + 500, + 2500, + 5000 + ], + "week": [ + 10, + 30, + 90, + 270, + 810 + ], + "year": [ + 10000, + 40000, + 100000, + 250000 + ] + }, + "maxRange": "#24423c", + "minRange": "#b0d4cd", + "size": "large", + "type": "audit" + }, + { + "size": "large", + "type": "clusterStatus" + }, + { + "size": "large", + "type": "systemHealthFull" + }, + { + "barchart": "false", + "size": "large", + "type": "lastRecon" + } + ] + }, + { + "isDefault": false, + "name": "Resource Report", + "widgets": [ + { + "selected": "activeUsers", + "size": "x-small", + "type": "counter" + }, + { + "selected": "rolesEnabled", + "size": "x-small", + "type": "counter" + }, + { + "selected": "activeConnectors", + "size": "x-small", + "type": "counter" + }, + { + "size": "large", + "type": "resourceList" + } + ] + }, + { + "isDefault": false, + "name": "Business Report", + "widgets": [ + { + "graphType": "fa-pie-chart", + "providers": [ + "Username/Password" + ], + "size": "x-small", + "type": "signIns", + "widgetTitle": "Sign-Ins" + }, + { + "graphType": "fa-bar-chart", + "size": "x-small", + "type": "passwordResets", + "widgetTitle": "Password Resets" + }, + { + "graphType": "fa-line-chart", + "providers": [ + "Username/Password" + ], + "size": "x-small", + "type": "newRegistrations", + "widgetTitle": "New Registrations" + }, + { + "size": "x-small", + "timezone": { + "hours": "07", + "minutes": "00", + "negative": true + }, + "type": "socialLogin" + }, + { + "selected": "socialEnabled", + "size": "x-small", + "type": "counter" + }, + { + "selected": "manualRegistrations", + "size": "x-small", + "type": "counter" + } + ] + }, + { + "isDefault": false, + "name": "seantestdashboard", + "widgets": [ + { + "size": "large", + "type": "resourceList" + } + ] + } + ], + "dashboard": { + "widgets": [ + { + "size": "large", + "type": "Welcome" + } + ] + } + }, + "ui/profile": { + "_id": "ui/profile", + "tabs": [ + { + "name": "personalInfoTab", + "view": "org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab" + }, + { + "name": "signInAndSecurity", + "view": "org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab" + }, + { + "name": "preference", + "view": "org/forgerock/openidm/ui/user/profile/PreferencesTab" + }, + { + "name": "trustedDevice", + "view": "org/forgerock/openidm/ui/user/profile/TrustedDevicesTab" + }, + { + "name": "oauthApplication", + "view": "org/forgerock/openidm/ui/user/profile/OauthApplicationsTab" + }, + { + "name": "privacyAndConsent", + "view": "org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab" + }, + { + "name": "sharing", + "view": "org/forgerock/openidm/ui/user/profile/uma/SharingTab" + }, + { + "name": "auditHistory", + "view": "org/forgerock/openidm/ui/user/profile/uma/ActivityTab" + }, + { + "name": "accountControls", + "view": "org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab" + } + ] + }, + "ui/themeconfig": { + "_id": "ui/themeconfig", + "icon": "favicon.ico", + "path": "", + "settings": { + "footer": { + "mailto": "info@pingidentity.com" + }, + "loginLogo": { + "alt": "Ping Identity", + "height": "120px", + "src": "images/login-logo-dark.png", + "title": "Ping Identity", + "width": "120px" + }, + "logo": { + "alt": "Ping Identity", + "src": "images/logo-horizontal-white.png", + "title": "Ping Identity" + } + }, + "stylesheets": [ + "css/bootstrap-3.4.1-custom.css", + "css/structure.css", + "css/theme.css" + ] + }, + "webserver": { + "_id": "webserver", + "gzip": { + "enabled": true, + "includedMethods": [ + "GET" + ] + }, + "maxThreads": { + "$int": "&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}" + } + }, + "webserver.listener/http": { + "_id": "webserver.listener/http", + "enabled": { + "$bool": "&{openidm.http.enabled|true}" + }, + "port": { + "$int": "&{openidm.port.http|8080}" + } + }, + "webserver.listener/https": { + "_id": "webserver.listener/https", + "enabled": { + "$bool": "&{openidm.https.enabled|true}" + }, + "port": { + "$int": "&{openidm.port.https|8443}" + }, + "secure": true, + "sslCertAlias": "&{openidm.https.keystore.cert.alias|openidm-localhost}" + }, + "webserver.listener/mutualAuth": { + "_id": "webserver.listener/mutualAuth", + "enabled": { + "$bool": "&{openidm.mutualauth.enabled|true}" + }, + "mutualAuth": true, + "port": { + "$int": "&{openidm.port.mutualauth|8444}" + }, + "secure": true, + "sslCertAlias": "&{openidm.https.keystore.cert.alias|openidm-localhost}" + } + }, + "internalRole": { + "openidm-admin": { + "_id": "openidm-admin", + "condition": null, + "description": "Administrative access", + "name": "openidm-admin", + "privileges": [], + "temporalConstraints": [] + }, + "openidm-authorized": { + "_id": "openidm-authorized", + "condition": null, + "description": "Basic minimum user", + "name": "openidm-authorized", + "privileges": [], + "temporalConstraints": [] + }, + "openidm-cert": { + "_id": "openidm-cert", + "condition": null, + "description": "Authenticated via certificate", + "name": "openidm-cert", + "privileges": [], + "temporalConstraints": [] + }, + "openidm-reg": { + "_id": "openidm-reg", + "condition": null, + "description": "Anonymous access", + "name": "openidm-reg", + "privileges": [], + "temporalConstraints": [] + }, + "openidm-tasks-manager": { + "_id": "openidm-tasks-manager", + "condition": null, + "description": "Allowed to reassign workflow tasks", + "name": "openidm-tasks-manager", + "privileges": [], + "temporalConstraints": [] + }, + "platform-provisioning": { + "_id": "platform-provisioning", + "condition": null, + "description": "Platform provisioning access", + "name": "platform-provisioning", + "privileges": [], + "temporalConstraints": [] + } + }, + "mapping": {}, + "server": null, + "sync": { + "_id": "sync", + "mappings": [ + { + "_id": "sync/managedOrganization_managedRole", + "consentRequired": false, + "displayName": "managedOrganization_managedRole", + "icon": null, + "name": "managedOrganization_managedRole", + "policies": [ + { + "action": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript" + }, + "situation": "AMBIGUOUS" + }, + { + "action": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript" + }, + "condition": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript" + }, + "situation": "SOURCE_MISSING" + }, + { + "action": { + "globals": {}, + "source": "//seantest", + "type": "groovy" + }, + "postAction": { + "globals": {}, + "source": "//seantest", + "type": "groovy" + }, + "situation": "MISSING" + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED" + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED" + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED" + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY" + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED" + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED" + }, + { + "action": "ASYNC", + "situation": "ALL_GONE" + }, + { + "action": "ASYNC", + "situation": "CONFIRMED" + }, + { + "action": "ASYNC", + "situation": "FOUND" + }, + { + "action": "ASYNC", + "situation": "ABSENT" + } + ], + "properties": [], + "source": "managed/organization", + "syncAfter": [], + "target": "managed/role" + }, + { + "_id": "sync/managedOrganization_managedSeantestmanagedobject", + "consentRequired": false, + "displayName": "managedOrganization_managedSeantestmanagedobject", + "icon": null, + "name": "managedOrganization_managedSeantestmanagedobject", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT" + }, + { + "action": "ASYNC", + "situation": "ALL_GONE" + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS" + }, + { + "action": "ASYNC", + "situation": "CONFIRMED" + }, + { + "action": "ASYNC", + "situation": "FOUND" + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED" + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY" + }, + { + "action": "ASYNC", + "situation": "MISSING" + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED" + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING" + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED" + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED" + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED" + } + ], + "properties": [], + "source": "managed/organization", + "syncAfter": [ + "managedOrganization_managedRole" + ], + "target": "managed/seantestmanagedobject" + }, + { + "_id": "sync/managedAssignment_managedUser", + "consentRequired": false, + "displayName": "managedAssignment_managedUser", + "icon": null, + "name": "managedAssignment_managedUser", + "policies": [ + { + "action": { + "globals": {}, + "source": "//asdfasdf", + "type": "groovy" + }, + "situation": "AMBIGUOUS" + }, + { + "action": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "text/javascript" + }, + "condition": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "groovy" + }, + "postAction": { + "globals": {}, + "source": "//asdfasdf", + "type": "text/javascript" + }, + "situation": "SOURCE_MISSING" + }, + { + "action": "ASYNC", + "situation": "MISSING" + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED" + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED" + }, + { + "action": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "text/javascript" + }, + "situation": "UNASSIGNED" + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY" + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED" + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED" + }, + { + "action": "ASYNC", + "situation": "ALL_GONE" + }, + { + "action": "ASYNC", + "situation": "CONFIRMED" + }, + { + "action": "ASYNC", + "situation": "FOUND" + }, + { + "action": "ASYNC", + "situation": "ABSENT" + } + ], + "properties": [], + "source": "managed/assignment", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject" + ], + "target": "managed/user" + }, + { + "_id": "sync/seantestmapping", + "consentRequired": false, + "displayName": "seantestmapping", + "icon": null, + "name": "seantestmapping", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT" + }, + { + "action": "ASYNC", + "situation": "ALL_GONE" + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS" + }, + { + "action": "ASYNC", + "situation": "CONFIRMED" + }, + { + "action": "ASYNC", + "situation": "FOUND" + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED" + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY" + }, + { + "action": "ASYNC", + "situation": "MISSING" + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED" + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING" + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED" + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED" + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED" + } + ], + "properties": [], + "source": "managed/assignment", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser" + ], + "target": "managed/organization" + }, + { + "_id": "sync/managedSeantestmanagedobject_managedUser", + "consentRequired": false, + "displayName": "managedSeantestmanagedobject_managedUser", + "icon": null, + "name": "managedSeantestmanagedobject_managedUser", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT" + }, + { + "action": "ASYNC", + "situation": "ALL_GONE" + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS" + }, + { + "action": "ASYNC", + "situation": "CONFIRMED" + }, + { + "action": "ASYNC", + "situation": "FOUND" + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED" + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY" + }, + { + "action": "ASYNC", + "situation": "MISSING" + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED" + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING" + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED" + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED" + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED" + } + ], + "properties": [], + "source": "managed/seantestmanagedobject", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser", + "seantestmapping" + ], + "target": "managed/user" + } + ] + } + }, + "realm": {} +} diff --git a/test/e2e/exports/all/idm/all.idm.json b/test/e2e/exports/all/idm/all.idm.json new file mode 100644 index 000000000..66bf3ef52 --- /dev/null +++ b/test/e2e/exports/all/idm/all.idm.json @@ -0,0 +1,6009 @@ +{ + "idm": { + "access": { + "_id": "access", + "configs": [ + { + "actions": "", + "methods": "read", + "pattern": "health", + "roles": "*" + }, + { + "actions": "*", + "methods": "read", + "pattern": "info/*", + "roles": "*" + }, + { + "actions": "login,logout", + "methods": "read,action", + "pattern": "authentication", + "roles": "*" + }, + { + "actions": "validate", + "methods": "action", + "pattern": "util/validateQueryFilter", + "roles": "*" + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/themeconfig", + "roles": "*" + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/theme-*", + "roles": "*" + }, + { + "actions": "*", + "customAuthz": "checkIfAnyFeatureEnabled(['registration', 'passwordReset'])", + "methods": "read", + "pattern": "config/selfservice/kbaConfig", + "roles": "*" + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/dashboard", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "methods": "query", + "pattern": "info/features", + "roles": "*" + }, + { + "actions": "listPrivileges", + "methods": "action", + "pattern": "privilege", + "roles": "*" + }, + { + "actions": "*", + "methods": "read", + "pattern": "privilege/*", + "roles": "*" + }, + { + "actions": "submitRequirements", + "methods": "read,action", + "pattern": "selfservice/termsAndConditions", + "roles": "*" + }, + { + "actions": "submitRequirements", + "methods": "read,action", + "pattern": "selfservice/kbaUpdate", + "roles": "*" + }, + { + "actions": "", + "customAuthz": "isMyProfile()", + "methods": "read,query", + "pattern": "profile/*", + "roles": "*" + }, + { + "actions": "*", + "customAuthz": "checkIfAnyFeatureEnabled('kba')", + "methods": "read", + "pattern": "selfservice/kba", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "methods": "read", + "pattern": "schema/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "methods": "action,query", + "pattern": "consent", + "roles": "internal/role/openidm-authorized" + }, + { + "customAuthz": "checkIfApiRequest()", + "methods": "read", + "pattern": "*", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "*", + "excludePatterns": "repo,repo/*", + "methods": "*", + "pattern": "*", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "", + "methods": "create,read,update,delete,patch,query", + "pattern": "system/*", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "*", + "methods": "script", + "pattern": "system/*", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "test,testConfig,createconfiguration,liveSync,authenticate", + "methods": "action", + "pattern": "system/*", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "*", + "customAuthz": "disallowCommandAction()", + "methods": "*", + "pattern": "repo", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "*", + "customAuthz": "disallowCommandAction()", + "methods": "*", + "pattern": "repo/*", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "command", + "customAuthz": "request.additionalParameters.commandId === 'delete-mapping-links'", + "methods": "action", + "pattern": "repo/link", + "roles": "internal/role/openidm-admin" + }, + { + "methods": "create,read,query,patch", + "pattern": "managed/*", + "roles": "internal/role/platform-provisioning" + }, + { + "methods": "read,query", + "pattern": "internal/role/*", + "roles": "internal/role/platform-provisioning" + }, + { + "actions": "*", + "methods": "create,read,action,update", + "pattern": "profile/*", + "roles": "internal/role/platform-provisioning" + }, + { + "actions": "*", + "methods": "read,action", + "pattern": "policy/*", + "roles": "internal/role/platform-provisioning" + }, + { + "methods": "read", + "pattern": "schema/*", + "roles": "internal/role/platform-provisioning" + }, + { + "actions": "*", + "methods": "action,query", + "pattern": "consent", + "roles": "internal/role/platform-provisioning" + }, + { + "methods": "read", + "pattern": "selfservice/kba", + "roles": "internal/role/platform-provisioning" + }, + { + "methods": "read", + "pattern": "selfservice/terms", + "roles": "internal/role/platform-provisioning" + }, + { + "actions": "sendTemplate", + "methods": "action", + "pattern": "external/email", + "roles": "internal/role/platform-provisioning" + }, + { + "actions": "authenticate", + "methods": "action", + "pattern": "system/*", + "roles": "internal/role/platform-provisioning" + }, + { + "actions": "*", + "methods": "read,action", + "pattern": "policy/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "reauthenticate", + "methods": "action", + "pattern": "authentication", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "bind,unbind", + "customAuthz": "ownDataOnly()", + "methods": "read,action,delete", + "pattern": "*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "patch", + "customAuthz": "ownDataOnly() && onlyEditableManagedObjectProperties('user', []) && reauthIfProtectedAttributeChange()", + "methods": "update,patch,action", + "pattern": "*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "methods": "read", + "pattern": "endpoint/getprocessesforuser", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "methods": "query", + "pattern": "endpoint/gettasksview", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "complete", + "customAuthz": "isMyTask()", + "methods": "action", + "pattern": "workflow/taskinstance/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "customAuthz": "canUpdateTask()", + "methods": "read,update", + "pattern": "workflow/taskinstance/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "customAuthz": "isAllowedToStartProcess()", + "methods": "create", + "pattern": "workflow/processinstance", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "read", + "methods": "*", + "pattern": "workflow/processdefinition/*", + "roles": "internal/role/openidm-authorized" + }, + { + "customAuthz": "restrictPatchToFields(['password'])", + "methods": "patch", + "pattern": "managed/user/*", + "roles": "internal/role/openidm-cert" + }, + { + "actions": "*", + "customAuthz": "ownRelationshipProperty('_meta', false)", + "methods": "read", + "pattern": "internal/usermeta/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "customAuthz": "ownRelationshipProperty('_notifications', true)", + "methods": "read,delete", + "pattern": "internal/notification/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "customAuthz": "ownRelationshipCollection(['idps','_meta','_notifications'])", + "methods": "read,query", + "pattern": "managed/user/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "deleteNotificationsForTarget", + "customAuthz": "request.additionalParameters.target === (context.security.authorization.component + '/' + context.security.authorization.id)", + "methods": "action", + "pattern": "notification", + "roles": "internal/role/openidm-authorized" + } + ] + }, + "apiVersion": { + "_id": "apiVersion", + "warning": { + "enabled": { + "$bool": "&{openidm.apiVersion.warning.enabled|false}" + }, + "includeScripts": { + "$bool": "&{openidm.apiVersion.warning.includeScripts|false}" + }, + "logFilterResourcePaths": [ + "audit", + "authentication", + "cluster", + "config", + "consent", + "csv", + "external/rest", + "identityProviders", + "info", + "internal", + "internal/role", + "internal/user", + "internal/usermeta", + "managed", + "managed/assignment", + "managed/organization", + "managed/role", + "managed/user", + "notification", + "policy", + "privilege", + "profile", + "recon", + "recon/assoc", + "repo", + "selfservice/kba", + "selfservice/terms", + "scheduler/job", + "scheduler/trigger", + "schema", + "sync", + "sync/mappings", + "system", + "taskscanner" + ] + } + }, + "audit": { + "_id": "audit", + "auditServiceConfig": { + "availableAuditEventHandlers": [ + "org.forgerock.audit.handlers.csv.CsvAuditEventHandler", + "org.forgerock.audit.handlers.jms.JmsAuditEventHandler", + "org.forgerock.audit.handlers.json.JsonAuditEventHandler", + "org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler", + "org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler", + "org.forgerock.openidm.audit.impl.RouterAuditEventHandler", + "org.forgerock.audit.handlers.syslog.SyslogAuditEventHandler" + ], + "caseInsensitiveFields": [ + "/access/http/request/headers", + "/access/http/response/headers" + ], + "filterPolicies": { + "field": { + "excludeIf": [], + "includeIf": [] + } + }, + "handlerForQueries": "json" + }, + "eventHandlers": [ + { + "class": "org.forgerock.audit.handlers.json.JsonAuditEventHandler", + "config": { + "buffering": { + "maxSize": 100000, + "writeInterval": "100 millis" + }, + "enabled": { + "$bool": "&{openidm.audit.handler.json.enabled|true}" + }, + "logDirectory": "&{idm.data.dir}/audit", + "name": "json", + "topics": [ + "access", + "activity", + "sync", + "authentication", + "config" + ] + } + }, + { + "class": "org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler", + "config": { + "enabled": { + "$bool": "&{openidm.audit.handler.stdout.enabled|false}" + }, + "name": "stdout", + "topics": [ + "access", + "activity", + "sync", + "authentication", + "config" + ] + } + }, + { + "class": "org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler", + "config": { + "enabled": { + "$bool": "&{openidm.audit.handler.repo.enabled|false}" + }, + "name": "repo", + "topics": [ + "access", + "activity", + "sync", + "authentication", + "config" + ] + } + } + ], + "eventTopics": { + "access": { + "defaultEvents": true, + "filter": { + "script": { + "globals": {}, + "source": "//seantest", + "type": "groovy" + } + }, + "name": "access" + }, + "activity": { + "defaultEvents": true, + "filter": { + "actions": [ + "create", + "update", + "delete", + "patch", + "action" + ] + }, + "name": "activity", + "passwordFields": [ + "password" + ], + "watchedFields": [] + }, + "authentication": { + "defaultEvents": true, + "filter": { + "script": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript" + } + }, + "name": "authentication" + }, + "config": { + "defaultEvents": true, + "filter": { + "actions": [ + "create", + "update", + "delete", + "patch", + "action" + ] + }, + "name": "config" + }, + "recon": { + "defaultEvents": true, + "name": "recon" + }, + "sync": { + "defaultEvents": true, + "name": "sync" + } + }, + "exceptionFormatter": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript" + } + }, + "authentication": { + "_id": "authentication", + "serverAuthContext": { + "authModules": [ + { + "enabled": true, + "name": "STATIC_USER", + "properties": { + "augmentSecurityContext": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript" + }, + "defaultUserRoles": [ + "internal/role/openidm-reg" + ], + "password": { + "$crypto": { + "type": "x-simple-encryption", + "value": { + "cipher": "AES/CBC/PKCS5Padding", + "data": "fzE1J3P9LZOmuCuecCDnaQ==", + "iv": "nhI8UHymNRChGIyOC+5Sag==", + "keySize": 32, + "mac": "XfF7VE/o5Shv6AqW1Xe3TQ==", + "purpose": "idm.config.encryption", + "salt": "v0NHakffrjBJNL3zjhEOtg==", + "stableId": "openidm-sym-default" + } + } + }, + "queryOnResource": "internal/user", + "username": "anonymous" + } + }, + { + "enabled": true, + "name": "STATIC_USER", + "properties": { + "defaultUserRoles": [ + "internal/role/openidm-authorized", + "internal/role/openidm-admin" + ], + "password": "&{openidm.admin.password}", + "queryOnResource": "internal/user", + "username": "openidm-admin" + } + }, + { + "enabled": true, + "name": "MANAGED_USER", + "properties": { + "augmentSecurityContext": { + "source": "var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield);", + "type": "text/javascript" + }, + "defaultUserRoles": [ + "internal/role/openidm-authorized" + ], + "propertyMapping": { + "additionalUserFields": [ + "adminOfOrg", + "ownerOfOrg" + ], + "authenticationId": "username", + "userCredential": "password", + "userRoles": "authzRoles" + }, + "queryId": "credential-query", + "queryOnResource": "managed/user" + } + } + ], + "sessionModule": { + "name": "JWT_SESSION", + "properties": { + "enableDynamicRoles": false, + "isHttpOnly": true, + "maxTokenLifeMinutes": 120, + "sessionOnly": true, + "tokenIdleTimeMinutes": 30 + } + } + } + }, + "cluster": { + "_id": "cluster", + "enabled": true, + "instanceCheckInInterval": 5000, + "instanceCheckInOffset": 0, + "instanceId": "&{openidm.node.id}", + "instanceRecoveryTimeout": 30000, + "instanceTimeout": 30000 + }, + "emailTemplate/forgottenUsername": { + "_id": "emailTemplate/forgottenUsername", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

", + "fr": "{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

" + }, + "mimeType": "text/html", + "subject": { + "en": "Account Information - username", + "fr": "Informations sur le compte - nom d'utilisateur" + } + }, + "emailTemplate/registration": { + "_id": "emailTemplate/registration", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

This is your registration email.

Email verification link

", + "fr": "

Ceci est votre mail d'inscription.

Lien de vérification email

" + }, + "mimeType": "text/html", + "subject": { + "en": "Register new account", + "fr": "Créer un nouveau compte" + } + }, + "emailTemplate/resetPassword": { + "_id": "emailTemplate/resetPassword", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Click to reset your password

Password reset link

", + "fr": "

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

" + }, + "mimeType": "text/html", + "subject": { + "en": "Reset your password", + "fr": "Réinitialisez votre mot de passe" + } + }, + "emailTemplate/updatePassword": { + "_id": "emailTemplate/updatePassword", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Verify email to update password

Update password link

" + }, + "mimeType": "text/html", + "subject": { + "en": "Update your password" + } + }, + "emailTemplate/welcome": { + "_id": "emailTemplate/welcome", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Welcome to OpenIDM. Your username is '{{object.userName}}'.

", + "fr": "

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

" + }, + "mimeType": "text/html", + "subject": { + "en": "Your account has been created", + "fr": "Votre compte vient d’être créé !" + } + }, + "endpoint/getavailableuserstoassign": { + "_id": "endpoint/getavailableuserstoassign", + "file": "workflow/getavailableuserstoassign.js", + "type": "text/javascript" + }, + "endpoint/getprocessesforuser": { + "_id": "endpoint/getprocessesforuser", + "file": "workflow/getprocessesforuser.js", + "type": "text/javascript" + }, + "endpoint/gettasksview": { + "_id": "endpoint/gettasksview", + "file": "workflow/gettasksview.js", + "type": "text/javascript" + }, + "endpoint/mappingDetails": { + "_id": "endpoint/mappingDetails", + "context": "endpoint/mappingDetails", + "file": "mappingDetails.js", + "type": "text/javascript" + }, + "endpoint/oauthproxy": { + "_id": "endpoint/oauthproxy", + "context": "endpoint/oauthproxy", + "file": "oauthProxy.js", + "type": "text/javascript" + }, + "endpoint/removeRepoPathFromRelationships": { + "_id": "endpoint/removeRepoPathFromRelationships", + "file": "update/removeRepoPathFromRelationships.js", + "type": "text/javascript" + }, + "endpoint/repairMetadata": { + "_id": "endpoint/repairMetadata", + "file": "meta/metadataScanner.js", + "type": "text/javascript" + }, + "endpoint/updateInternalUserAndInternalRoleEntries": { + "_id": "endpoint/updateInternalUserAndInternalRoleEntries", + "file": "update/updateInternalUserAndInternalRoleEntries.js", + "type": "text/javascript" + }, + "endpoint/validateQueryFilter": { + "_id": "endpoint/validateQueryFilter", + "context": "util/validateQueryFilter", + "source": "try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } };", + "type": "text/javascript" + }, + "external.rest": { + "_id": "external.rest", + "hostnameVerifier": "&{openidm.external.rest.hostnameVerifier}" + }, + "internal": { + "_id": "internal", + "objects": [ + { + "name": "role", + "properties": { + "authzMembers": { + "items": { + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ] + } + } + } + }, + { + "name": "notification", + "properties": { + "target": { + "reversePropertyName": "_notifications" + } + } + } + ] + }, + "managed": { + "_id": "managed", + "objects": [ + { + "lastSync": { + "effectiveAssignmentsProperty": "effectiveAssignments", + "lastSyncProperty": "lastSync" + }, + "name": "user", + "notifications": { + "property": "_notifications" + }, + "postDelete": { + "source": "require('postDelete-idp-cleanup').removeConnectedIdpData(oldObject, resourceName, request);require('postDelete-notification-cleanup').removeConnectedNotificationData(oldObject, resourceName, request);", + "type": "text/javascript" + }, + "schema": { + "$schema": "http://json-schema.org/draft-03/schema", + "icon": "fa-user", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User", + "mat-icon": "people", + "order": [ + "_id", + "userName", + "password", + "givenName", + "sn", + "mail", + "description", + "accountStatus", + "telephoneNumber", + "postalAddress", + "city", + "postalCode", + "country", + "stateProvince", + "roles", + "assignments", + "manager", + "authzRoles", + "reports", + "effectiveRoles", + "effectiveAssignments", + "lastSync", + "kbaInfo", + "preferences", + "consentedMappings", + "ownerOfOrg", + "adminOfOrg", + "memberOfOrg", + "memberOfOrgIDs", + "activeDate", + "inactiveDate" + ], + "properties": { + "_id": { + "description": "User ID", + "isPersonal": false, + "policies": [ + { + "params": { + "forbiddenChars": [ + "/" + ] + }, + "policyId": "cannot-contain-characters" + } + ], + "searchable": false, + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": false + }, + "accountStatus": { + "default": "active", + "description": "Status", + "isPersonal": false, + "policies": [ + { + "params": { + "regexp": "^(active|inactive)$" + }, + "policyId": "regexpMatches" + } + ], + "searchable": true, + "title": "Status", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "activeDate": { + "description": "Active Date", + "format": "datetime", + "isPersonal": false, + "policies": [ + { + "policyId": "valid-datetime" + } + ], + "searchable": false, + "title": "Active Date", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "adminOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/organization", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "admins", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Administer", + "type": "array", + "userEditable": false, + "viewable": true + }, + "assignments": { + "description": "Assignments", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Assignment", + "path": "managed/assignment", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Assignments Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Assignments", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "authzRoles": { + "description": "Authorization Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Authorization Roles Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Internal Role", + "path": "internal/role", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "authzMembers", + "reverseRelationship": true, + "title": "Authorization Roles Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Authorization Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "city": { + "description": "City", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "title": "City", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "consentedMappings": { + "description": "Consented Mappings", + "isPersonal": false, + "isVirtual": false, + "items": { + "order": [ + "mapping", + "consentDate" + ], + "properties": { + "consentDate": { + "description": "Consent Date", + "format": "datetime", + "policies": [ + { + "policyId": "valid-datetime" + } + ], + "searchable": true, + "title": "Consent Date", + "type": "string", + "userEditable": true, + "viewable": true + }, + "mapping": { + "description": "Mapping", + "searchable": true, + "title": "Mapping", + "type": "string", + "userEditable": true, + "viewable": true + } + }, + "required": [ + "mapping", + "consentDate" + ], + "title": "Consented Mapping", + "type": "object" + }, + "returnByDefault": false, + "searchable": false, + "title": "Consented Mappings", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false + }, + "country": { + "description": "Country", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "title": "Country", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "description": { + "description": "Description", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "searchable": true, + "title": "Description", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "effectiveAssignments": { + "description": "Effective Assignments", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Assignments Items", + "type": "object" + }, + "queryConfig": { + "referencedObjectFields": [ + "*" + ], + "referencedRelationshipFields": [ + [ + "roles", + "assignments" + ], + [ + "assignments" + ] + ] + }, + "returnByDefault": true, + "title": "Effective Assignments", + "type": "array", + "usageDescription": "", + "viewable": false + }, + "effectiveRoles": { + "description": "Effective Roles", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Roles Items", + "type": "object" + }, + "queryConfig": { + "referencedRelationshipFields": [ + "roles" + ] + }, + "returnByDefault": true, + "title": "Effective Roles", + "type": "array", + "usageDescription": "", + "viewable": false + }, + "givenName": { + "description": "First Name", + "isPersonal": true, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "searchable": true, + "title": "First Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "inactiveDate": { + "description": "Inactive Date", + "format": "datetime", + "isPersonal": false, + "policies": [ + { + "policyId": "valid-datetime" + } + ], + "searchable": false, + "title": "Inactive Date", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "kbaInfo": { + "description": "KBA Info", + "isPersonal": true, + "items": { + "order": [ + "answer", + "customQuestion", + "questionId" + ], + "properties": { + "answer": { + "description": "Answer", + "type": "string" + }, + "customQuestion": { + "description": "Custom question", + "type": "string" + }, + "questionId": { + "description": "Question ID", + "type": "string" + } + }, + "required": [], + "title": "KBA Info Items", + "type": "object" + }, + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false + }, + "lastSync": { + "description": "Last Sync timestamp", + "isPersonal": false, + "order": [ + "effectiveAssignments", + "timestamp" + ], + "properties": { + "effectiveAssignments": { + "description": "Effective Assignments", + "items": { + "title": "Effective Assignments Items", + "type": "object" + }, + "title": "Effective Assignments", + "type": "array" + }, + "timestamp": { + "description": "Timestamp", + "policies": [ + { + "policyId": "valid-datetime" + } + ], + "type": "string" + } + }, + "required": [], + "scope": "private", + "searchable": false, + "title": "Last Sync timestamp", + "type": "object", + "usageDescription": "", + "viewable": false + }, + "mail": { + "description": "Email Address", + "isPersonal": true, + "policies": [ + { + "policyId": "valid-email-address-format" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "searchable": true, + "title": "Email Address", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "manager": { + "description": "Manager", + "isPersonal": false, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Manager _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "reports", + "reverseRelationship": true, + "searchable": false, + "title": "Manager", + "type": "relationship", + "usageDescription": "", + "userEditable": false, + "validate": true, + "viewable": true + }, + "memberOfOrg": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/organization", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations to which I Belong", + "type": "array", + "userEditable": false, + "viewable": true + }, + "memberOfOrgIDs": { + "isVirtual": true, + "items": { + "title": "org identifiers", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs" + ], + "referencedRelationshipFields": [ + "memberOfOrg" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "MemberOfOrgIDs", + "type": "array", + "userEditable": false, + "viewable": false + }, + "ownerOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/organization", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "owners", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Own", + "type": "array", + "userEditable": false, + "viewable": true + }, + "password": { + "description": "Password", + "encryption": { + "purpose": "idm.password.encryption" + }, + "isPersonal": false, + "isProtected": true, + "policies": [ + { + "params": { + "minLength": 8 + }, + "policyId": "minimum-length" + }, + { + "params": { + "numCaps": 1 + }, + "policyId": "at-least-X-capitals" + }, + { + "params": { + "numNums": 1 + }, + "policyId": "at-least-X-numbers" + }, + { + "params": { + "disallowedFields": [ + "userName", + "givenName", + "sn" + ] + }, + "policyId": "cannot-contain-others" + } + ], + "scope": "private", + "searchable": false, + "title": "Password", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": false + }, + "postalAddress": { + "description": "Address 1", + "isPersonal": true, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "title": "Address 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "postalCode": { + "description": "Postal Code", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "title": "Postal Code", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "preferences": { + "description": "Preferences", + "isPersonal": false, + "order": [ + "updates", + "marketing" + ], + "properties": { + "marketing": { + "description": "Send me special offers and services", + "type": "boolean" + }, + "updates": { + "description": "Send me news and updates", + "type": "boolean" + } + }, + "required": [], + "searchable": false, + "title": "Preferences", + "type": "object", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "reports": { + "description": "Direct Reports", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Direct Reports Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "manager", + "reverseRelationship": true, + "title": "Direct Reports Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Direct Reports", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "roles": { + "description": "Provisioning Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Role", + "path": "managed/role", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Provisioning Roles Items", + "type": "relationship", + "validate": true + }, + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Provisioning Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "sn": { + "description": "Last Name", + "isPersonal": true, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "searchable": true, + "title": "Last Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "stateProvince": { + "description": "State/Province", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "title": "State/Province", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "telephoneNumber": { + "description": "Telephone Number", + "isPersonal": true, + "pattern": "^\\+?([0-9\\- \\(\\)])*$", + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "title": "Telephone Number", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "userName": { + "description": "Username", + "isPersonal": true, + "policies": [ + { + "policyId": "valid-username" + }, + { + "params": { + "forbiddenChars": [ + "/" + ] + }, + "policyId": "cannot-contain-characters" + }, + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "searchable": true, + "title": "Username", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + } + }, + "required": [ + "userName", + "givenName", + "sn", + "mail" + ], + "title": "User", + "type": "object", + "viewable": true + } + }, + { + "name": "role", + "onCreate": { + "globals": {}, + "source": "//asdfasdfadsfasdf", + "type": "text/javascript" + }, + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "icon": "fa-check-square", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role", + "mat-icon": "assignment_ind", + "order": [ + "_id", + "name", + "description", + "members", + "assignments", + "condition", + "temporalConstraints" + ], + "properties": { + "_id": { + "description": "Role ID", + "searchable": false, + "title": "Name", + "type": "string", + "viewable": false + }, + "assignments": { + "description": "Managed Assignments", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Managed Assignments Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Assignment", + "path": "managed/assignment", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Managed Assignments Items", + "type": "relationship", + "validate": true + }, + "notifyRelationships": [ + "members" + ], + "returnByDefault": false, + "title": "Managed Assignments", + "type": "array", + "viewable": true + }, + "condition": { + "description": "A conditional filter for this role", + "isConditional": true, + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false + }, + "description": { + "description": "The role description, used for display purposes.", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true + }, + "members": { + "description": "Role Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Role Members Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Role Members Items", + "type": "relationship", + "validate": true + }, + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Role Members", + "type": "array", + "viewable": true + }, + "name": { + "description": "The role name, used for display purposes.", + "policies": [ + { + "policyId": "unique" + } + ], + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true + }, + "temporalConstraints": { + "description": "An array of temporal constraints for a role", + "isTemporalConstraint": true, + "items": { + "order": [ + "duration" + ], + "properties": { + "duration": { + "description": "Duration", + "type": "string" + } + }, + "required": [ + "duration" + ], + "title": "Temporal Constraints Items", + "type": "object" + }, + "notifyRelationships": [ + "members" + ], + "returnByDefault": true, + "title": "Temporal Constraints", + "type": "array", + "viewable": false + } + }, + "required": [ + "name" + ], + "title": "Role", + "type": "object" + } + }, + { + "attributeEncryption": {}, + "name": "assignment", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "A role assignment", + "icon": "fa-key", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment", + "mat-icon": "vpn_key", + "order": [ + "_id", + "name", + "description", + "mapping", + "attributes", + "linkQualifiers", + "roles", + "members", + "condition", + "weight" + ], + "properties": { + "_id": { + "description": "The assignment ID", + "searchable": false, + "title": "Name", + "type": "string", + "viewable": false + }, + "attributes": { + "description": "The attributes operated on by this assignment.", + "items": { + "order": [ + "assignmentOperation", + "unassignmentOperation", + "name", + "value" + ], + "properties": { + "assignmentOperation": { + "description": "Assignment operation", + "type": "string" + }, + "name": { + "description": "Name", + "type": "string" + }, + "unassignmentOperation": { + "description": "Unassignment operation", + "type": "string" + }, + "value": { + "description": "Value", + "type": "string" + } + }, + "required": [], + "title": "Assignment Attributes Items", + "type": "object" + }, + "notifyRelationships": [ + "roles", + "members" + ], + "title": "Assignment Attributes", + "type": "array", + "viewable": true + }, + "condition": { + "description": "A conditional filter for this assignment", + "isConditional": true, + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false + }, + "description": { + "description": "The assignment description, used for display purposes.", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true + }, + "linkQualifiers": { + "description": "Conditional link qualifiers to restrict this assignment to.", + "items": { + "title": "Link Qualifiers Items", + "type": "string" + }, + "title": "Link Qualifiers", + "type": "array", + "viewable": true + }, + "mapping": { + "description": "The name of the mapping this assignment applies to", + "policies": [ + { + "policyId": "mapping-exists" + } + ], + "searchable": true, + "title": "Mapping", + "type": "string", + "viewable": true + }, + "members": { + "description": "Assignment Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Assignment Members Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "assignments", + "reverseRelationship": true, + "title": "Assignment Members Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Assignment Members", + "type": "array", + "viewable": true + }, + "name": { + "description": "The assignment name, used for display purposes.", + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true + }, + "roles": { + "description": "Managed Roles", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Managed Roles Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Role", + "notify": true, + "path": "managed/role", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "assignments", + "reverseRelationship": true, + "title": "Managed Roles Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Managed Roles", + "type": "array", + "userEditable": false, + "viewable": true + }, + "weight": { + "description": "The weight of the assignment.", + "notifyRelationships": [ + "roles", + "members" + ], + "searchable": false, + "title": "Weight", + "type": [ + "number", + "null" + ], + "viewable": true + } + }, + "required": [ + "name", + "description", + "mapping" + ], + "title": "Assignment", + "type": "object" + } + }, + { + "name": "organization", + "onCreate": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript" + }, + "onRead": { + "globals": {}, + "source": "//seantest", + "type": "groovy" + }, + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "An organization or tenant, whose resources are managed by organizational admins.", + "icon": "fa-building", + "mat-icon": "domain", + "order": [ + "name", + "description", + "owners", + "admins", + "members", + "parent", + "children", + "adminIDs", + "ownerIDs", + "parentAdminIDs", + "parentOwnerIDs", + "parentIDs" + ], + "properties": { + "adminIDs": { + "isVirtual": true, + "items": { + "title": "admin ids", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id" + ], + "referencedRelationshipFields": [ + "admins" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "Admin user ids", + "type": "array", + "userEditable": false, + "viewable": false + }, + "admins": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "notify": false, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "adminOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "notifyRelationships": [ + "children" + ], + "returnByDefault": false, + "searchable": false, + "title": "Administrators", + "type": "array", + "userEditable": false, + "viewable": true + }, + "children": { + "description": "Child Organizations", + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/organization", + "query": { + "fields": [ + "name", + "description" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "parent", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Child Organizations", + "type": "array", + "userEditable": false, + "viewable": false + }, + "description": { + "searchable": true, + "title": "Description", + "type": "string", + "userEditable": true, + "viewable": true + }, + "members": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "memberOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "searchable": false, + "title": "Members", + "type": "array", + "userEditable": false, + "viewable": true + }, + "name": { + "searchable": true, + "title": "Name", + "type": "string", + "userEditable": true, + "viewable": true + }, + "ownerIDs": { + "isVirtual": true, + "items": { + "title": "owner ids", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id" + ], + "referencedRelationshipFields": [ + "owners" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "Owner user ids", + "type": "array", + "userEditable": false, + "viewable": false + }, + "owners": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "notify": false, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "ownerOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "notifyRelationships": [ + "children" + ], + "returnByDefault": false, + "searchable": false, + "title": "Owner", + "type": "array", + "userEditable": false, + "viewable": true + }, + "parent": { + "description": "Parent Organization", + "notifyRelationships": [ + "children", + "members" + ], + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/organization", + "query": { + "fields": [ + "name", + "description" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "returnByDefault": false, + "reversePropertyName": "children", + "reverseRelationship": true, + "searchable": false, + "title": "Parent Organization", + "type": "relationship", + "userEditable": false, + "validate": true, + "viewable": true + }, + "parentAdminIDs": { + "isVirtual": true, + "items": { + "title": "user ids of parent admins", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "adminIDs", + "parentAdminIDs" + ], + "referencedRelationshipFields": [ + "parent" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent admins", + "type": "array", + "userEditable": false, + "viewable": false + }, + "parentIDs": { + "isVirtual": true, + "items": { + "title": "parent org ids", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs" + ], + "referencedRelationshipFields": [ + "parent" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "parent org ids", + "type": "array", + "userEditable": false, + "viewable": false + }, + "parentOwnerIDs": { + "isVirtual": true, + "items": { + "title": "user ids of parent owners", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "ownerIDs", + "parentOwnerIDs" + ], + "referencedRelationshipFields": [ + "parent" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent owners", + "type": "array", + "userEditable": false, + "viewable": false + } + }, + "required": [ + "name" + ], + "title": "Organization", + "type": "object" + } + }, + { + "name": "seantestmanagedobject", + "schema": { + "description": null, + "icon": "fa-database", + "mat-icon": null, + "title": null + } + } + ] + }, + "metrics": { + "_id": "metrics", + "enabled": false + }, + "notification/passwordUpdate": { + "_id": "notification/passwordUpdate", + "condition": { + "file": "propertiesModifiedFilter.groovy", + "globals": { + "propertiesToCheck": [ + "password" + ] + }, + "type": "groovy" + }, + "enabled": { + "$bool": "&{openidm.notifications.passwordUpdate|false}" + }, + "methods": [ + "update", + "patch" + ], + "notification": { + "message": "Your password has been updated.", + "notificationType": "info" + }, + "path": "managed/user/*", + "target": { + "resource": "managed/user/{{response/_id}}" + } + }, + "notification/profileUpdate": { + "_id": "notification/profileUpdate", + "condition": { + "file": "propertiesModifiedFilter.groovy", + "globals": { + "propertiesToCheck": [ + "userName", + "givenName", + "sn", + "mail", + "description", + "accountStatus", + "telephoneNumber", + "postalAddress", + "city", + "postalCode", + "country", + "stateProvince", + "preferences" + ] + }, + "type": "groovy" + }, + "enabled": { + "$bool": "&{openidm.notifications.profileUpdate|false}" + }, + "methods": [ + "update", + "patch" + ], + "notification": { + "message": "Your profile has been updated.", + "notificationType": "info" + }, + "path": "managed/user/*", + "target": { + "resource": "managed/user/{{response/_id}}" + } + }, + "notificationFactory": { + "_id": "notificationFactory", + "enabled": { + "$bool": "&{openidm.notifications|false}" + }, + "threadPool": { + "maxPoolThreads": 2, + "maxQueueSize": 20000, + "steadyPoolThreads": 1, + "threadKeepAlive": 60 + } + }, + "policy": { + "_id": "policy", + "additionalFiles": [], + "file": "policy.js", + "resources": [ + { + "calculatedProperties": { + "source": "require('selfServicePolicies').getRegistrationProperties()", + "type": "text/javascript" + }, + "resource": "selfservice/registration" + }, + { + "calculatedProperties": { + "source": "require('selfServicePolicies').getResetProperties()", + "type": "text/javascript" + }, + "resource": "selfservice/reset" + }, + { + "properties": [ + { + "name": "_id", + "policies": [ + { + "params": { + "forbiddenChars": [ + "/" + ] + }, + "policyId": "cannot-contain-characters" + } + ] + }, + { + "name": "password", + "policies": [ + { + "params": { + "minLength": 8 + }, + "policyId": "minimum-length" + } + ] + } + ], + "resource": "internal/user/*" + }, + { + "properties": [ + { + "name": "name", + "policies": [ + { + "policyId": "required" + }, + { + "policyId": "not-empty" + }, + { + "params": { + "forbiddenChars": [ + "/*" + ] + }, + "policyId": "cannot-contain-characters" + } + ] + }, + { + "name": "temporalConstraints", + "policies": [ + { + "policyId": "valid-temporal-constraints" + } + ] + }, + { + "name": "condition", + "policies": [ + { + "policyId": "valid-query-filter" + } + ] + }, + { + "name": "privileges", + "policies": [ + { + "params": { + "types": [ + "array" + ] + }, + "policyId": "valid-type" + }, + { + "params": { + "properties": [ + { + "name": "name", + "policies": [ + { + "policyId": "required" + }, + { + "policyId": "not-empty" + }, + { + "params": { + "types": [ + "string" + ] + }, + "policyId": "valid-type" + } + ] + }, + { + "name": "path", + "policies": [ + { + "policyId": "required" + }, + { + "policyId": "not-empty" + }, + { + "params": { + "forbiddenChars": [ + "/*" + ] + }, + "policyId": "cannot-contain-characters" + }, + { + "policyId": "valid-privilege-path" + } + ] + }, + { + "name": "accessFlags", + "policies": [ + { + "policyId": "required" + }, + { + "policyId": "not-empty" + }, + { + "params": { + "types": [ + "array" + ] + }, + "policyId": "valid-type" + }, + { + "policyId": "valid-accessFlags-object" + } + ] + }, + { + "name": "actions", + "policies": [ + { + "policyId": "required" + }, + { + "params": { + "types": [ + "array" + ] + }, + "policyId": "valid-type" + } + ] + }, + { + "name": "permissions", + "policies": [ + { + "policyId": "required" + }, + { + "policyId": "not-empty" + }, + { + "params": { + "types": [ + "array" + ] + }, + "policyId": "valid-type" + }, + { + "policyId": "valid-permissions" + } + ] + }, + { + "name": "filter", + "policies": [ + { + "params": { + "types": [ + "string", + "null" + ] + }, + "policyId": "valid-type" + }, + { + "policyId": "valid-query-filter" + } + ] + } + ] + }, + "policyId": "valid-array-items" + } + ] + } + ], + "resource": "internal/role/*" + }, + { + "properties": [ + { + "name": "temporalConstraints", + "policies": [ + { + "policyId": "valid-temporal-constraints" + } + ] + }, + { + "name": "condition", + "policies": [ + { + "policyId": "valid-query-filter" + } + ] + } + ], + "resource": "managed/role/*" + }, + { + "properties": [ + { + "name": "objects", + "policies": [ + { + "policyId": "valid-event-scripts" + } + ] + } + ], + "resource": "config/managed" + } + ], + "type": "text/javascript" + }, + "privilegeAssignments": { + "_id": "privilegeAssignments", + "privilegeAssignments": [ + { + "name": "ownerPrivileges", + "privileges": [ + "owner-view-update-delete-orgs", + "owner-create-orgs", + "owner-view-update-delete-admins-and-members", + "owner-create-admins", + "admin-view-update-delete-members", + "admin-create-members" + ], + "relationshipField": "ownerOfOrg" + }, + { + "name": "adminPrivileges", + "privileges": [ + "admin-view-update-delete-orgs", + "admin-create-orgs", + "admin-view-update-delete-members", + "admin-create-members" + ], + "relationshipField": "adminOfOrg" + } + ] + }, + "privileges": { + "_id": "privileges", + "privileges": [ + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "owners", + "readOnly": true + }, + { + "attribute": "admins", + "readOnly": false + }, + { + "attribute": "members", + "readOnly": false + }, + { + "attribute": "parent", + "readOnly": false + }, + { + "attribute": "children", + "readOnly": false + }, + { + "attribute": "parentIDs", + "readOnly": true + }, + { + "attribute": "adminIDs", + "readOnly": true + }, + { + "attribute": "parentAdminIDs", + "readOnly": true + }, + { + "attribute": "ownerIDs", + "readOnly": true + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/ownerIDs eq \"{{_id}}\" or /parentOwnerIDs eq \"{{_id}}\"", + "name": "owner-view-update-delete-orgs", + "path": "managed/organization", + "permissions": [ + "VIEW", + "UPDATE", + "DELETE" + ] + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "owners", + "readOnly": true + }, + { + "attribute": "admins", + "readOnly": false + }, + { + "attribute": "members", + "readOnly": false + }, + { + "attribute": "parent", + "readOnly": false + }, + { + "attribute": "children", + "readOnly": false + }, + { + "attribute": "parentIDs", + "readOnly": true + }, + { + "attribute": "adminIDs", + "readOnly": true + }, + { + "attribute": "parentAdminIDs", + "readOnly": true + }, + { + "attribute": "ownerIDs", + "readOnly": true + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/parent pr", + "name": "owner-create-orgs", + "path": "managed/organization", + "permissions": [ + "CREATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false + }, + { + "attribute": "password", + "readOnly": false + }, + { + "attribute": "givenName", + "readOnly": false + }, + { + "attribute": "sn", + "readOnly": false + }, + { + "attribute": "mail", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "accountStatus", + "readOnly": false + }, + { + "attribute": "telephoneNumber", + "readOnly": false + }, + { + "attribute": "postalAddress", + "readOnly": false + }, + { + "attribute": "city", + "readOnly": false + }, + { + "attribute": "postalCode", + "readOnly": false + }, + { + "attribute": "country", + "readOnly": false + }, + { + "attribute": "stateProvince", + "readOnly": false + }, + { + "attribute": "roles", + "readOnly": false + }, + { + "attribute": "manager", + "readOnly": false + }, + { + "attribute": "authzRoles", + "readOnly": false + }, + { + "attribute": "reports", + "readOnly": false + }, + { + "attribute": "effectiveRoles", + "readOnly": false + }, + { + "attribute": "effectiveAssignments", + "readOnly": false + }, + { + "attribute": "lastSync", + "readOnly": false + }, + { + "attribute": "kbaInfo", + "readOnly": false + }, + { + "attribute": "preferences", + "readOnly": false + }, + { + "attribute": "consentedMappings", + "readOnly": false + }, + { + "attribute": "memberOfOrg", + "readOnly": false + }, + { + "attribute": "adminOfOrg", + "readOnly": false + }, + { + "attribute": "ownerOfOrg", + "readOnly": true + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/memberOfOrgIDs eq \"__org_id_placeholder__\"", + "name": "owner-view-update-delete-admins-and-members", + "path": "managed/user", + "permissions": [ + "VIEW", + "DELETE", + "UPDATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false + }, + { + "attribute": "password", + "readOnly": false + }, + { + "attribute": "givenName", + "readOnly": false + }, + { + "attribute": "sn", + "readOnly": false + }, + { + "attribute": "mail", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "accountStatus", + "readOnly": false + }, + { + "attribute": "telephoneNumber", + "readOnly": false + }, + { + "attribute": "postalAddress", + "readOnly": false + }, + { + "attribute": "city", + "readOnly": false + }, + { + "attribute": "postalCode", + "readOnly": false + }, + { + "attribute": "country", + "readOnly": false + }, + { + "attribute": "stateProvince", + "readOnly": false + }, + { + "attribute": "roles", + "readOnly": false + }, + { + "attribute": "manager", + "readOnly": false + }, + { + "attribute": "authzRoles", + "readOnly": false + }, + { + "attribute": "reports", + "readOnly": false + }, + { + "attribute": "effectiveRoles", + "readOnly": false + }, + { + "attribute": "effectiveAssignments", + "readOnly": false + }, + { + "attribute": "lastSync", + "readOnly": false + }, + { + "attribute": "kbaInfo", + "readOnly": false + }, + { + "attribute": "preferences", + "readOnly": false + }, + { + "attribute": "consentedMappings", + "readOnly": false + }, + { + "attribute": "memberOfOrg", + "readOnly": false + }, + { + "attribute": "adminOfOrg", + "readOnly": false + }, + { + "attribute": "ownerOfOrg", + "readOnly": true + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/memberOfOrg/0 pr and /adminOfOrg/0 pr and !(/ownerOfOrg pr)", + "name": "owner-create-admins", + "path": "managed/user", + "permissions": [ + "CREATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "owners", + "readOnly": true + }, + { + "attribute": "admins", + "readOnly": true + }, + { + "attribute": "members", + "readOnly": false + }, + { + "attribute": "parent", + "readOnly": false + }, + { + "attribute": "children", + "readOnly": false + }, + { + "attribute": "parentIDs", + "readOnly": true + }, + { + "attribute": "adminIDs", + "readOnly": true + }, + { + "attribute": "parentAdminIDs", + "readOnly": true + }, + { + "attribute": "ownerIDs", + "readOnly": true + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/adminIDs eq \"{{_id}}\" or /parentAdminIDs eq \"{{_id}}\"", + "name": "admin-view-update-delete-orgs", + "path": "managed/organization", + "permissions": [ + "VIEW", + "UPDATE", + "DELETE" + ] + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "owners", + "readOnly": true + }, + { + "attribute": "admins", + "readOnly": true + }, + { + "attribute": "members", + "readOnly": false + }, + { + "attribute": "parent", + "readOnly": false + }, + { + "attribute": "children", + "readOnly": false + }, + { + "attribute": "parentIDs", + "readOnly": true + }, + { + "attribute": "adminIDs", + "readOnly": true + }, + { + "attribute": "parentAdminIDs", + "readOnly": true + }, + { + "attribute": "ownerIDs", + "readOnly": true + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/parent pr", + "name": "admin-create-orgs", + "path": "managed/organization", + "permissions": [ + "CREATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false + }, + { + "attribute": "password", + "readOnly": false + }, + { + "attribute": "givenName", + "readOnly": false + }, + { + "attribute": "sn", + "readOnly": false + }, + { + "attribute": "mail", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "accountStatus", + "readOnly": false + }, + { + "attribute": "telephoneNumber", + "readOnly": false + }, + { + "attribute": "postalAddress", + "readOnly": false + }, + { + "attribute": "city", + "readOnly": false + }, + { + "attribute": "postalCode", + "readOnly": false + }, + { + "attribute": "country", + "readOnly": false + }, + { + "attribute": "stateProvince", + "readOnly": false + }, + { + "attribute": "roles", + "readOnly": false + }, + { + "attribute": "manager", + "readOnly": false + }, + { + "attribute": "authzRoles", + "readOnly": false + }, + { + "attribute": "reports", + "readOnly": false + }, + { + "attribute": "effectiveRoles", + "readOnly": false + }, + { + "attribute": "effectiveAssignments", + "readOnly": false + }, + { + "attribute": "lastSync", + "readOnly": false + }, + { + "attribute": "kbaInfo", + "readOnly": false + }, + { + "attribute": "preferences", + "readOnly": false + }, + { + "attribute": "consentedMappings", + "readOnly": false + }, + { + "attribute": "memberOfOrg", + "readOnly": false + }, + { + "attribute": "adminOfOrg", + "readOnly": true + }, + { + "attribute": "ownerOfOrg", + "readOnly": true + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/memberOfOrgIDs eq \"__org_id_placeholder__\"", + "name": "admin-view-update-delete-members", + "path": "managed/user", + "permissions": [ + "VIEW", + "DELETE", + "UPDATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false + }, + { + "attribute": "password", + "readOnly": false + }, + { + "attribute": "givenName", + "readOnly": false + }, + { + "attribute": "sn", + "readOnly": false + }, + { + "attribute": "mail", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "accountStatus", + "readOnly": false + }, + { + "attribute": "telephoneNumber", + "readOnly": false + }, + { + "attribute": "postalAddress", + "readOnly": false + }, + { + "attribute": "city", + "readOnly": false + }, + { + "attribute": "postalCode", + "readOnly": false + }, + { + "attribute": "country", + "readOnly": false + }, + { + "attribute": "stateProvince", + "readOnly": false + }, + { + "attribute": "roles", + "readOnly": false + }, + { + "attribute": "manager", + "readOnly": false + }, + { + "attribute": "authzRoles", + "readOnly": false + }, + { + "attribute": "reports", + "readOnly": false + }, + { + "attribute": "effectiveRoles", + "readOnly": false + }, + { + "attribute": "effectiveAssignments", + "readOnly": false + }, + { + "attribute": "lastSync", + "readOnly": false + }, + { + "attribute": "kbaInfo", + "readOnly": false + }, + { + "attribute": "preferences", + "readOnly": false + }, + { + "attribute": "consentedMappings", + "readOnly": false + }, + { + "attribute": "memberOfOrg", + "readOnly": false + }, + { + "attribute": "adminOfOrg", + "readOnly": true + }, + { + "attribute": "ownerOfOrg", + "readOnly": true + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/memberOfOrg/0 pr and !(/adminOfOrg pr) and !(/ownerOfOrg pr)", + "name": "admin-create-members", + "path": "managed/user", + "permissions": [ + "CREATE" + ] + } + ] + }, + "process/access": { + "_id": "process/access", + "workflowAccess": [ + { + "propertiesCheck": { + "matches": ".*", + "property": "_id", + "requiresRole": "internal/role/openidm-authorized" + } + }, + { + "propertiesCheck": { + "matches": ".*", + "property": "_id", + "requiresRole": "internal/role/openidm-admin" + } + } + ] + }, + "repo.ds": { + "_id": "repo.ds", + "commands": { + "delete-mapping-links": { + "_queryFilter": "/linkType eq \"${mapping}\"", + "operation": "DELETE" + }, + "delete-target-ids-for-recon": { + "_queryFilter": "/reconId eq \"${reconId}\"", + "operation": "DELETE" + } + }, + "embedded": false, + "ldapConnectionFactories": { + "bind": { + "connectionPoolSize": 50, + "connectionSecurity": "startTLS", + "heartBeatIntervalSeconds": 60, + "heartBeatTimeoutMilliSeconds": 10000, + "primaryLdapServers": [ + { + "hostname": "opendj-frodo-dev.classic.com", + "port": 2389 + } + ], + "secondaryLdapServers": [] + }, + "root": { + "authentication": { + "simple": { + "bindDn": "uid=admin", + "bindPassword": { + "$crypto": { + "type": "x-simple-encryption", + "value": { + "cipher": "AES/CBC/PKCS5Padding", + "data": "lJ/B6T9e9CDKHCN8TxkD4g==", + "iv": "EdrerzwEUUkHG582cLDw5w==", + "keySize": 32, + "mac": "Aty9fXUtl4pexGlHOc+CBg==", + "purpose": "idm.config.encryption", + "salt": "BITSKlnPeT5klcuEZbngzw==", + "stableId": "openidm-sym-default" + } + } + } + } + }, + "inheritFrom": "bind" + } + }, + "maxConnectionAttempts": 5, + "resourceMapping": { + "defaultMapping": { + "dnTemplate": "ou=generic,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "explicitMapping": { + "clusteredrecontargetids": { + "dnTemplate": "ou=clusteredrecontargetids,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-recon-clusteredTargetIds" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly" + }, + "reconId": { + "ldapAttribute": "fr-idm-recon-id", + "type": "simple" + }, + "targetIds": { + "ldapAttribute": "fr-idm-recon-targetIds", + "type": "json" + } + } + }, + "dsconfig/attributeValue": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-attribute-value-password-validator" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "checkSubstrings": { + "ldapAttribute": "ds-cfg-check-substrings", + "type": "simple" + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple" + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple" + }, + "matchAttribute": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-match-attribute", + "type": "simple" + }, + "minSubstringLength": { + "ldapAttribute": "ds-cfg-min-substring-length", + "type": "simple" + }, + "testReversedPassword": { + "isRequired": true, + "ldapAttribute": "ds-cfg-test-reversed-password", + "type": "simple" + } + } + }, + "dsconfig/characterSet": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-character-set-password-validator" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "allowUnclassifiedCharacters": { + "isRequired": true, + "ldapAttribute": "ds-cfg-allow-unclassified-characters", + "type": "simple" + }, + "characterSet": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-character-set", + "type": "simple" + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple" + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple" + }, + "minCharacterSets": { + "ldapAttribute": "ds-cfg-min-character-sets", + "type": "simple" + } + } + }, + "dsconfig/dictionary": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-dictionary-password-validator" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "caseSensitiveValidation": { + "isRequired": true, + "ldapAttribute": "ds-cfg-case-sensitive-validation", + "type": "simple" + }, + "checkSubstrings": { + "ldapAttribute": "ds-cfg-check-substrings", + "type": "simple" + }, + "dictionaryFile": { + "isRequired": true, + "ldapAttribute": "ds-cfg-dictionary-file", + "type": "simple" + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple" + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple" + }, + "minSubstringLength": { + "ldapAttribute": "ds-cfg-min-substring-length", + "type": "simple" + }, + "testReversedPassword": { + "isRequired": true, + "ldapAttribute": "ds-cfg-test-reversed-password", + "type": "simple" + } + } + }, + "dsconfig/lengthBased": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-length-based-password-validator" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple" + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple" + }, + "maxPasswordLength": { + "ldapAttribute": "ds-cfg-max-password-length", + "type": "simple" + }, + "minPasswordLength": { + "ldapAttribute": "ds-cfg-min-password-length", + "type": "simple" + } + } + }, + "dsconfig/passwordPolicies": { + "dnTemplate": "cn=Password Policies,cn=config", + "objectClasses": [ + "ds-cfg-password-policy", + "ds-cfg-authentication-policy" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "defaultPasswordStorageScheme": { + "isMultiValued": true, + "isRequired": true, + "ldapAttribute": "ds-cfg-default-password-storage-scheme", + "type": "simple" + }, + "maxPasswordAge": { + "ldapAttribute": "ds-cfg-max-password-age", + "type": "simple" + }, + "passwordAttribute": { + "isRequired": true, + "ldapAttribute": "ds-cfg-password-attribute", + "type": "simple" + }, + "passwordHistoryCount": { + "ldapAttribute": "ds-cfg-password-history-count", + "type": "simple" + }, + "validator": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-password-validator", + "type": "simple" + } + } + }, + "dsconfig/repeatedCharacters": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-repeated-characters-password-validator" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "caseSensitiveValidation": { + "isRequired": true, + "ldapAttribute": "ds-cfg-case-sensitive-validation", + "type": "simple" + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple" + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple" + }, + "maxConsecutiveLength": { + "isRequired": true, + "ldapAttribute": "ds-cfg-max-consecutive-length", + "type": "simple" + } + } + }, + "dsconfig/similarityBased": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-similarity-based-password-validator" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple" + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple" + }, + "minPasswordDifference": { + "isRequired": true, + "ldapAttribute": "ds-cfg-min-password-difference", + "type": "simple" + } + } + }, + "dsconfig/uniqueCharacters": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-unique-characters-password-validator" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "caseSensitiveValidation": { + "isRequired": true, + "ldapAttribute": "ds-cfg-case-sensitive-validation", + "type": "simple" + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple" + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple" + }, + "minUniqueCharacters": { + "isRequired": true, + "ldapAttribute": "ds-cfg-min-unique-characters", + "type": "simple" + } + } + }, + "dsconfig/userDefinedVirtualAttribute": { + "dnTemplate": "cn=Virtual Attributes,cn=config", + "objectClasses": [ + "ds-cfg-user-defined-virtual-attribute", + "ds-cfg-virtual-attribute" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "attributeType": { + "isRequired": true, + "ldapAttribute": "ds-cfg-attribute-type", + "type": "simple" + }, + "baseDn": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-base-dn", + "type": "simple" + }, + "conflictBehavior": { + "ldapAttribute": "ds-cfg-conflict-behavior", + "type": "simple" + }, + "enabled": { + "isRequired": true, + "ldapAttribute": "ds-cfg-enabled", + "type": "simple" + }, + "filter": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-filter", + "type": "simple" + }, + "groupDn": { + "ldapAttribute": "ds-cfg-group-dn", + "type": "simple" + }, + "javaClass": { + "isRequired": true, + "ldapAttribute": "ds-cfg-java-class", + "type": "simple" + }, + "scope": { + "ldapAttribute": "ds-cfg-scope", + "type": "simple" + }, + "value": { + "isMultiValued": true, + "isRequired": true, + "ldapAttribute": "ds-cfg-value", + "type": "simple" + } + } + }, + "internal/role": { + "dnTemplate": "ou=roles,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "fr-idm-internal-role" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly" + }, + "authzMembers": { + "isMultiValued": true, + "propertyName": "authzRoles", + "resourcePath": "managed/user", + "type": "reverseReference" + }, + "condition": { + "ldapAttribute": "fr-idm-condition", + "type": "simple" + }, + "description": { + "ldapAttribute": "description", + "type": "simple" + }, + "name": { + "ldapAttribute": "fr-idm-name", + "type": "simple" + }, + "privileges": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-privilege", + "type": "json" + }, + "temporalConstraints": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-temporal-constraints", + "type": "json" + } + } + }, + "internal/user": { + "dnTemplate": "ou=users,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-internal-user" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly" + }, + "password": { + "ldapAttribute": "fr-idm-password", + "type": "json" + } + } + }, + "link": { + "dnTemplate": "ou=links,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-link" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly" + }, + "firstId": { + "ldapAttribute": "fr-idm-link-firstId", + "type": "simple" + }, + "linkQualifier": { + "ldapAttribute": "fr-idm-link-qualifier", + "type": "simple" + }, + "linkType": { + "ldapAttribute": "fr-idm-link-type", + "type": "simple" + }, + "secondId": { + "ldapAttribute": "fr-idm-link-secondId", + "type": "simple" + } + } + }, + "locks": { + "dnTemplate": "ou=locks,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-lock" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly" + }, + "nodeId": { + "ldapAttribute": "fr-idm-lock-nodeid", + "type": "simple" + } + } + }, + "recon/assoc": { + "dnTemplate": "ou=assoc,ou=recon,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "namingStrategy": { + "dnAttribute": "fr-idm-reconassoc-reconid", + "type": "clientDnNaming" + }, + "objectClasses": [ + "fr-idm-reconassoc" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "fr-idm-reconassoc-reconid", + "type": "simple" + }, + "finishTime": { + "ldapAttribute": "fr-idm-reconassoc-finishtime", + "type": "simple" + }, + "isAnalysis": { + "ldapAttribute": "fr-idm-reconassoc-isanalysis", + "type": "simple" + }, + "mapping": { + "ldapAttribute": "fr-idm-reconassoc-mapping", + "type": "simple" + }, + "sourceResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-sourceresourcecollection", + "type": "simple" + }, + "targetResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-targetresourcecollection", + "type": "simple" + } + }, + "subResources": { + "entry": { + "namingStrategy": { + "dnAttribute": "uid", + "type": "clientDnNaming" + }, + "resource": "recon-assoc-entry", + "type": "collection" + } + } + }, + "recon/assoc/entry": { + "objectClasses": [ + "uidObject", + "fr-idm-reconassocentry" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple" + }, + "action": { + "ldapAttribute": "fr-idm-reconassocentry-action", + "type": "simple" + }, + "ambiguousTargetObjectIds": { + "ldapAttribute": "fr-idm-reconassocentry-ambiguoustargetobjectids", + "type": "simple" + }, + "exception": { + "ldapAttribute": "fr-idm-reconassocentry-exception", + "type": "simple" + }, + "isAnalysis": { + "ldapAttribute": "fr-idm-reconassoc-isanalysis", + "type": "simple" + }, + "linkQualifier": { + "ldapAttribute": "fr-idm-reconassocentry-linkqualifier", + "type": "simple" + }, + "mapping": { + "ldapAttribute": "fr-idm-reconassoc-mapping", + "type": "simple" + }, + "message": { + "ldapAttribute": "fr-idm-reconassocentry-message", + "type": "simple" + }, + "messageDetail": { + "ldapAttribute": "fr-idm-reconassocentry-messagedetail", + "type": "simple" + }, + "phase": { + "ldapAttribute": "fr-idm-reconassocentry-phase", + "type": "simple" + }, + "reconId": { + "ldapAttribute": "fr-idm-reconassocentry-reconid", + "type": "simple" + }, + "situation": { + "ldapAttribute": "fr-idm-reconassocentry-situation", + "type": "simple" + }, + "sourceObjectId": { + "ldapAttribute": "fr-idm-reconassocentry-sourceObjectId", + "type": "simple" + }, + "sourceResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-sourceresourcecollection", + "type": "simple" + }, + "status": { + "ldapAttribute": "fr-idm-reconassocentry-status", + "type": "simple" + }, + "targetObjectId": { + "ldapAttribute": "fr-idm-reconassocentry-targetObjectId", + "type": "simple" + }, + "targetResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-targetresourcecollection", + "type": "simple" + } + }, + "resourceName": "recon-assoc-entry", + "subResourceRouting": [ + { + "prefix": "entry", + "template": "recon/assoc/{reconId}/entry" + } + ] + }, + "sync/queue": { + "dnTemplate": "ou=queue,ou=sync,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-syncqueue" + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly" + }, + "context": { + "ldapAttribute": "fr-idm-syncqueue-context", + "type": "json" + }, + "createDate": { + "ldapAttribute": "fr-idm-syncqueue-createdate", + "type": "simple" + }, + "mapping": { + "ldapAttribute": "fr-idm-syncqueue-mapping", + "type": "simple" + }, + "newObject": { + "ldapAttribute": "fr-idm-syncqueue-newobject", + "type": "json" + }, + "nodeId": { + "ldapAttribute": "fr-idm-syncqueue-nodeid", + "type": "simple" + }, + "objectRev": { + "ldapAttribute": "fr-idm-syncqueue-objectRev", + "type": "simple" + }, + "oldObject": { + "ldapAttribute": "fr-idm-syncqueue-oldobject", + "type": "json" + }, + "resourceCollection": { + "ldapAttribute": "fr-idm-syncqueue-resourcecollection", + "type": "simple" + }, + "resourceId": { + "ldapAttribute": "fr-idm-syncqueue-resourceid", + "type": "simple" + }, + "state": { + "ldapAttribute": "fr-idm-syncqueue-state", + "type": "simple" + }, + "syncAction": { + "ldapAttribute": "fr-idm-syncqueue-syncaction", + "type": "simple" + } + } + } + }, + "genericMapping": { + "cluster/*": { + "dnTemplate": "ou=cluster,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-cluster-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchClusterObject", + "objectClasses": [ + "uidObject", + "fr-idm-cluster-obj" + ] + }, + "config": { + "dnTemplate": "ou=config,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "file": { + "dnTemplate": "ou=file,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "import": { + "dnTemplate": "ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "import/*": { + "dnTemplate": "ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "internal/notification": { + "dnTemplate": "ou=notification,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-notification-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-notification" + ], + "properties": { + "target": { + "propertyName": "_notifications", + "resourcePath": "managed/user", + "type": "reverseReference" + } + } + }, + "internal/usermeta": { + "dnTemplate": "ou=usermeta,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-generic-obj" + ], + "properties": { + "target": { + "propertyName": "_meta", + "resourcePath": "managed/user", + "type": "reverseReference" + } + } + }, + "jsonstorage": { + "dnTemplate": "ou=jsonstorage,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "managed/*": { + "dnTemplate": "ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "managed/assignment": { + "dnTemplate": "ou=assignment,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-managed-assignment-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-assignment" + ], + "properties": { + "condition": { + "ldapAttribute": "fr-idm-assignment-condition", + "type": "simple" + }, + "members": { + "isMultiValued": true, + "propertyName": "assignments", + "resourcePath": "managed/user", + "type": "reverseReference" + }, + "roles": { + "isMultiValued": true, + "propertyName": "assignments", + "resourcePath": "managed/role", + "type": "reverseReference" + } + } + }, + "managed/organization": { + "dnTemplate": "ou=organization,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-managed-organization-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-organization" + ], + "properties": { + "admins": { + "isMultiValued": true, + "propertyName": "adminOfOrg", + "resourcePath": "managed/user", + "type": "reverseReference" + }, + "children": { + "isMultiValued": true, + "propertyName": "parent", + "resourcePath": "managed/organization", + "type": "reverseReference" + }, + "members": { + "isMultiValued": true, + "propertyName": "memberOfOrg", + "resourcePath": "managed/user", + "type": "reverseReference" + }, + "name": { + "ldapAttribute": "fr-idm-managed-organization-name", + "type": "simple" + }, + "owners": { + "isMultiValued": true, + "propertyName": "ownerOfOrg", + "resourcePath": "managed/user", + "type": "reverseReference" + }, + "parent": { + "ldapAttribute": "fr-idm-managed-organization-parent", + "primaryKey": "uid", + "resourcePath": "managed/organization", + "type": "reference" + } + } + }, + "managed/role": { + "dnTemplate": "ou=role,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-managed-role-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchManagedRole", + "objectClasses": [ + "uidObject", + "fr-idm-managed-role" + ], + "properties": { + "assignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-role-assignments", + "primaryKey": "uid", + "resourcePath": "managed/assignment", + "type": "reference" + }, + "members": { + "isMultiValued": true, + "propertyName": "roles", + "resourcePath": "managed/user", + "type": "reverseReference" + } + } + }, + "managed/user": { + "dnTemplate": "ou=user,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-managed-user-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchManagedUser", + "objectClasses": [ + "uidObject", + "fr-idm-managed-user" + ], + "properties": { + "_meta": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-meta", + "primaryKey": "uid", + "resourcePath": "internal/usermeta", + "type": "reference" + }, + "_notifications": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-notifications", + "primaryKey": "uid", + "resourcePath": "internal/notification", + "type": "reference" + }, + "adminOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-admin", + "primaryKey": "uid", + "resourcePath": "managed/organization", + "type": "reference" + }, + "assignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-assignment-member", + "primaryKey": "uid", + "resourcePath": "managed/assignment", + "type": "reference" + }, + "authzRoles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-authzroles-internal-role", + "primaryKey": "cn", + "resourcePath": "internal/role", + "type": "reference" + }, + "manager": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-manager", + "primaryKey": "uid", + "resourcePath": "managed/user", + "type": "reference" + }, + "memberOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-member", + "primaryKey": "uid", + "resourcePath": "managed/organization", + "type": "reference" + }, + "ownerOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-owner", + "primaryKey": "uid", + "resourcePath": "managed/organization", + "type": "reference" + }, + "passwordExpirationTime": { + "ldapAttribute": "pwdExpirationTime", + "type": "simple", + "writability": "readOnlyDiscardWrites" + }, + "passwordLastChangedTime": { + "ldapAttribute": "pwdChangedTime", + "type": "simple", + "writability": "readOnlyDiscardWrites" + }, + "reports": { + "isMultiValued": true, + "propertyName": "manager", + "resourcePath": "managed/user", + "type": "reverseReference" + }, + "roles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-roles", + "primaryKey": "uid", + "resourcePath": "managed/role", + "type": "reference" + } + } + }, + "reconprogressstate": { + "dnTemplate": "ou=reconprogressstate,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "relationships": { + "dnTemplate": "ou=relationships,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-relationship-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchRelationship", + "objectClasses": [ + "uidObject", + "fr-idm-relationship" + ] + }, + "scheduler": { + "dnTemplate": "ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "scheduler/*": { + "dnTemplate": "ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "ui/*": { + "dnTemplate": "ou=ui,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + }, + "updates": { + "dnTemplate": "ou=updates,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com" + } + } + }, + "rest2LdapOptions": { + "mvccAttribute": "etag", + "readOnUpdatePolicy": "controls", + "returnNullForMissingProperties": true, + "useMvcc": true, + "usePermissiveModify": true, + "useSubtreeDelete": false + }, + "security": { + "fileBasedTrustManagerFile": "&{idm.install.dir}/security/truststore", + "fileBasedTrustManagerPasswordFile": "&{idm.install.dir}/security/storepass", + "fileBasedTrustManagerType": "JKS", + "trustManager": "file" + } + }, + "repo.init": { + "_id": "repo.init", + "insert": { + "internal/role": [ + { + "description": "Administrative access", + "id": "openidm-admin", + "name": "openidm-admin" + }, + { + "description": "Basic minimum user", + "id": "openidm-authorized", + "name": "openidm-authorized" + }, + { + "description": "Anonymous access", + "id": "openidm-reg", + "name": "openidm-reg" + }, + { + "description": "Authenticated via certificate", + "id": "openidm-cert", + "name": "openidm-cert" + }, + { + "description": "Allowed to reassign workflow tasks", + "id": "openidm-tasks-manager", + "name": "openidm-tasks-manager" + }, + { + "description": "Platform provisioning access", + "id": "platform-provisioning", + "name": "platform-provisioning" + } + ], + "internal/user": [ + { + "id": "openidm-admin", + "password": "&{openidm.admin.password}" + }, + { + "id": "anonymous", + "password": "anonymous" + }, + { + "id": "idm-provisioning" + }, + { + "id": "connector-server-client" + } + ] + } + }, + "router": { + "_id": "router", + "filters": [ + { + "methods": [ + "create", + "update" + ], + "onRequest": { + "file": "policyFilter.js", + "type": "text/javascript" + }, + "pattern": "^(managed|internal)($|(/.+))" + }, + { + "methods": [ + "update" + ], + "onRequest": { + "file": "policyFilter.js", + "type": "text/javascript" + }, + "pattern": "^config/managed$" + }, + { + "condition": { + "source": "(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0)", + "type": "text/javascript" + }, + "onResponse": { + "source": "require('relationshipFilter').filterResponse()", + "type": "text/javascript" + }, + "pattern": "^(managed|internal)($|(/.+))" + } + ] + }, + "schedule/seantest": { + "_id": "schedule/seantest", + "concurrentExecution": false, + "enabled": false, + "endTime": null, + "invokeContext": { + "script": { + "globals": {}, + "source": "//sean has changed this script. Let's see if it is still working. qqqqqqqqqqqqqqSchedule1\n", + "type": "text/javascript" + } + }, + "invokeLogLevel": "info", + "invokeService": "script", + "misfirePolicy": "fireAndProceed", + "persisted": true, + "recoverable": false, + "repeatCount": 0, + "repeatInterval": 0, + "schedule": null, + "startTime": null, + "type": "simple" + }, + "schedule/taskscan_activate": { + "_id": "schedule/taskscan_activate", + "concurrentExecution": false, + "enabled": false, + "invokeContext": { + "numberOfThreads": 5, + "scan": { + "_queryFilter": "((/activeDate le \"${Time.nowWithOffset}\") AND (!(/inactiveDate pr) or /inactiveDate ge \"${Time.nowWithOffset}\"))", + "object": "managed/user", + "recovery": { + "timeout": "10m" + }, + "taskState": { + "completed": "/activateAccount/task-completed", + "started": "/activateAccount/task-started" + } + }, + "task": { + "script": { + "globals": {}, + "source": "var patch = [{ \"operation\" : \"replace\", \"field\" : \"/accountStatus\", \"value\" : \"active\" }];\n\nlogger.debug(\"Performing Activate Account Task on {} ({})\", input.mail, objectID);\n\nopenidm.patch(objectID, null, patch); true;", + "type": "text/javascript" + } + }, + "waitForCompletion": false + }, + "invokeService": "taskscanner", + "persisted": true, + "repeatInterval": 86400000, + "type": "simple" + }, + "schedule/taskscan_expire": { + "_id": "schedule/taskscan_expire", + "concurrentExecution": false, + "enabled": false, + "invokeContext": { + "numberOfThreads": 5, + "scan": { + "_queryFilter": "((/inactiveDate lt \"${Time.nowWithOffset}\") AND (!(/activeDate pr) or /activeDate le \"${Time.nowWithOffset}\"))", + "object": "managed/user", + "recovery": { + "timeout": "10m" + }, + "taskState": { + "completed": "/expireAccount/task-completed", + "started": "/expireAccount/task-started" + } + }, + "task": { + "script": { + "globals": {}, + "source": "var patch = [{ \"operation\" : \"replace\", \"field\" : \"/accountStatus\", \"value\" : \"inactive\" }];\n\nlogger.debug(\"Performing Expire Account Task on {} ({})\", input.mail, objectID);\n\nopenidm.patch(objectID, null, patch); true;", + "type": "text/javascript" + } + }, + "waitForCompletion": false + }, + "invokeService": "taskscanner", + "persisted": true, + "repeatInterval": 86400000, + "type": "simple" + }, + "scheduler": { + "_id": "scheduler", + "scheduler": { + "executePersistentSchedules": { + "$bool": "&{openidm.scheduler.execute.persistent.schedules}" + } + }, + "threadPool": { + "threadCount": 10 + } + }, + "script": { + "ECMAScript": { + "javascript.optimization.level": 9, + "javascript.recompile.minimumInterval": 60000 + }, + "Groovy": { + "#groovy.disabled.global.ast.transformations": "", + "#groovy.errors.tolerance": 10, + "#groovy.output.debug": false, + "#groovy.output.verbose": false, + "#groovy.script.base": "#any class extends groovy.lang.Script", + "#groovy.script.extension": ".groovy", + "#groovy.target.bytecode": "1.8", + "#groovy.target.directory": "&{idm.data.dir}/classes", + "#groovy.target.indy": true, + "#groovy.warnings": "likely errors #othere values [none,likely,possible,paranoia]", + "groovy.classpath": "&{idm.install.dir}/lib", + "groovy.recompile": true, + "groovy.recompile.minimumInterval": 60000, + "groovy.source.encoding": "UTF-8" + }, + "_id": "script", + "properties": {}, + "sources": { + "default": { + "directory": "&{idm.install.dir}/bin/defaults/script" + }, + "install": { + "directory": "&{idm.install.dir}" + }, + "project": { + "directory": "&{idm.instance.dir}" + }, + "project-script": { + "directory": "&{idm.instance.dir}/script" + } + } + }, + "secrets": { + "_id": "secrets", + "stores": [ + { + "class": "org.forgerock.openidm.secrets.config.KeyStoreSecretStore", + "config": { + "file": "&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}", + "mappings": [ + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}" + ], + "secretId": "idm.default", + "types": [ + "ENCRYPT", + "DECRYPT" + ] + }, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}" + ], + "secretId": "idm.config.encryption", + "types": [ + "ENCRYPT", + "DECRYPT" + ] + }, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}" + ], + "secretId": "idm.password.encryption", + "types": [ + "ENCRYPT", + "DECRYPT" + ] + }, + { + "aliases": [ + "&{openidm.https.keystore.cert.alias|openidm-localhost}" + ], + "secretId": "idm.jwt.session.module.encryption", + "types": [ + "ENCRYPT", + "DECRYPT" + ] + }, + { + "aliases": [ + "&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}" + ], + "secretId": "idm.jwt.session.module.signing", + "types": [ + "SIGN", + "VERIFY" + ] + }, + { + "aliases": [ + "selfservice" + ], + "secretId": "idm.selfservice.encryption", + "types": [ + "ENCRYPT", + "DECRYPT" + ] + }, + { + "aliases": [ + "&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}" + ], + "secretId": "idm.selfservice.signing", + "types": [ + "SIGN", + "VERIFY" + ] + }, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}" + ], + "secretId": "idm.assignment.attribute.encryption", + "types": [ + "ENCRYPT", + "DECRYPT" + ] + } + ], + "providerName": "&{openidm.keystore.provider|SunJCE}", + "storePassword": "&{openidm.keystore.password|changeit}", + "storetype": "&{openidm.keystore.type|JCEKS}" + }, + "name": "mainKeyStore" + }, + { + "class": "org.forgerock.openidm.secrets.config.KeyStoreSecretStore", + "config": { + "file": "&{openidm.truststore.location|&{idm.install.dir}/security/truststore}", + "mappings": [], + "providerName": "&{openidm.truststore.provider|SUN}", + "storePassword": "&{openidm.truststore.password|changeit}", + "storetype": "&{openidm.truststore.type|JKS}" + }, + "name": "mainTrustStore" + } + ] + }, + "selfservice.kba": { + "_id": "selfservice.kba", + "kbaPropertyName": "kbaInfo", + "minimumAnswersToDefine": 2, + "minimumAnswersToVerify": 1, + "questions": { + "1": { + "en": "What's your favorite color?", + "en_GB": "What is your favourite colour?", + "fr": "Quelle est votre couleur préférée?" + }, + "2": { + "en": "Who was your first employer?" + } + } + }, + "selfservice.propertymap": { + "_id": "selfservice.propertymap", + "properties": [ + { + "source": "givenName", + "target": "givenName" + }, + { + "source": "familyName", + "target": "sn" + }, + { + "source": "email", + "target": "mail" + }, + { + "condition": "/object/postalAddress pr", + "source": "postalAddress", + "target": "postalAddress" + }, + { + "condition": "/object/addressLocality pr", + "source": "addressLocality", + "target": "city" + }, + { + "condition": "/object/addressRegion pr", + "source": "addressRegion", + "target": "stateProvince" + }, + { + "condition": "/object/postalCode pr", + "source": "postalCode", + "target": "postalCode" + }, + { + "condition": "/object/country pr", + "source": "country", + "target": "country" + }, + { + "condition": "/object/phone pr", + "source": "phone", + "target": "telephoneNumber" + }, + { + "source": "username", + "target": "userName" + } + ] + }, + "selfservice.terms": { + "_id": "selfservice.terms", + "active": "0.0", + "uiConfig": { + "buttonText": "Accept", + "displayName": "We've updated our terms", + "purpose": "You must accept the updated terms in order to proceed." + }, + "versions": [ + { + "createDate": "2019-10-28T04:20:11.320Z", + "termsTranslations": { + "en": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum." + }, + "version": "0.0" + } + ] + }, + "servletfilter/cors": { + "_id": "servletfilter/cors", + "filterClass": "org.eclipse.jetty.ee10.servlets.CrossOriginFilter", + "initParams": { + "allowCredentials": true, + "allowedHeaders": "accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with", + "allowedMethods": "GET,POST,PUT,DELETE,PATCH", + "allowedOrigins": "https://localhost:&{openidm.port.https}", + "chainPreflight": false + }, + "urlPatterns": [ + "/*" + ] + }, + "servletfilter/payload": { + "_id": "servletfilter/payload", + "filterClass": "org.forgerock.openidm.jetty.LargePayloadServletFilter", + "initParams": { + "maxRequestSizeInMegabytes": 5 + }, + "urlPatterns": [ + "&{openidm.servlet.alias}/*" + ] + }, + "servletfilter/upload": { + "_id": "servletfilter/upload", + "filterClass": "org.forgerock.openidm.jetty.LargePayloadServletFilter", + "initParams": { + "maxRequestSizeInMegabytes": 50 + }, + "urlPatterns": [ + "&{openidm.servlet.upload.alias}/*" + ] + }, + "sync": { + "_id": "sync", + "mappings": [ + { + "_id": "sync/managedOrganization_managedRole", + "consentRequired": false, + "displayName": "managedOrganization_managedRole", + "icon": null, + "name": "managedOrganization_managedRole", + "policies": [ + { + "action": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript" + }, + "situation": "AMBIGUOUS" + }, + { + "action": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript" + }, + "condition": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript" + }, + "situation": "SOURCE_MISSING" + }, + { + "action": { + "globals": {}, + "source": "//seantest", + "type": "groovy" + }, + "postAction": { + "globals": {}, + "source": "//seantest", + "type": "groovy" + }, + "situation": "MISSING" + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED" + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED" + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED" + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY" + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED" + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED" + }, + { + "action": "ASYNC", + "situation": "ALL_GONE" + }, + { + "action": "ASYNC", + "situation": "CONFIRMED" + }, + { + "action": "ASYNC", + "situation": "FOUND" + }, + { + "action": "ASYNC", + "situation": "ABSENT" + } + ], + "properties": [], + "source": "managed/organization", + "syncAfter": [], + "target": "managed/role" + }, + { + "_id": "sync/managedOrganization_managedSeantestmanagedobject", + "consentRequired": false, + "displayName": "managedOrganization_managedSeantestmanagedobject", + "icon": null, + "name": "managedOrganization_managedSeantestmanagedobject", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT" + }, + { + "action": "ASYNC", + "situation": "ALL_GONE" + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS" + }, + { + "action": "ASYNC", + "situation": "CONFIRMED" + }, + { + "action": "ASYNC", + "situation": "FOUND" + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED" + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY" + }, + { + "action": "ASYNC", + "situation": "MISSING" + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED" + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING" + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED" + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED" + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED" + } + ], + "properties": [], + "source": "managed/organization", + "syncAfter": [ + "managedOrganization_managedRole" + ], + "target": "managed/seantestmanagedobject" + }, + { + "_id": "sync/managedAssignment_managedUser", + "consentRequired": false, + "displayName": "managedAssignment_managedUser", + "icon": null, + "name": "managedAssignment_managedUser", + "policies": [ + { + "action": { + "globals": {}, + "source": "//asdfasdf", + "type": "groovy" + }, + "situation": "AMBIGUOUS" + }, + { + "action": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "text/javascript" + }, + "condition": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "groovy" + }, + "postAction": { + "globals": {}, + "source": "//asdfasdf", + "type": "text/javascript" + }, + "situation": "SOURCE_MISSING" + }, + { + "action": "ASYNC", + "situation": "MISSING" + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED" + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED" + }, + { + "action": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "text/javascript" + }, + "situation": "UNASSIGNED" + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY" + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED" + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED" + }, + { + "action": "ASYNC", + "situation": "ALL_GONE" + }, + { + "action": "ASYNC", + "situation": "CONFIRMED" + }, + { + "action": "ASYNC", + "situation": "FOUND" + }, + { + "action": "ASYNC", + "situation": "ABSENT" + } + ], + "properties": [], + "source": "managed/assignment", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject" + ], + "target": "managed/user" + }, + { + "_id": "sync/seantestmapping", + "consentRequired": false, + "displayName": "seantestmapping", + "icon": null, + "name": "seantestmapping", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT" + }, + { + "action": "ASYNC", + "situation": "ALL_GONE" + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS" + }, + { + "action": "ASYNC", + "situation": "CONFIRMED" + }, + { + "action": "ASYNC", + "situation": "FOUND" + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED" + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY" + }, + { + "action": "ASYNC", + "situation": "MISSING" + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED" + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING" + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED" + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED" + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED" + } + ], + "properties": [], + "source": "managed/assignment", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser" + ], + "target": "managed/organization" + }, + { + "_id": "sync/managedSeantestmanagedobject_managedUser", + "consentRequired": false, + "displayName": "managedSeantestmanagedobject_managedUser", + "icon": null, + "name": "managedSeantestmanagedobject_managedUser", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT" + }, + { + "action": "ASYNC", + "situation": "ALL_GONE" + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS" + }, + { + "action": "ASYNC", + "situation": "CONFIRMED" + }, + { + "action": "ASYNC", + "situation": "FOUND" + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED" + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY" + }, + { + "action": "ASYNC", + "situation": "MISSING" + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED" + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING" + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED" + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED" + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED" + } + ], + "properties": [], + "source": "managed/seantestmanagedobject", + "syncAfter": [ + "seantestmapping", + "managedOrganization_managedRole" + ], + "target": "managed/user" + } + ] + }, + "ui.context/admin": { + "_id": "ui.context/admin", + "cacheEnabled": true, + "defaultDir": "&{idm.install.dir}/ui/admin/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/admin/extension", + "responseHeaders": { + "X-Frame-Options": "SAMEORIGIN" + }, + "urlContextRoot": "/admin" + }, + "ui.context/api": { + "_id": "ui.context/api", + "authEnabled": true, + "cacheEnabled": false, + "defaultDir": "&{idm.install.dir}/ui/api/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/api/extension", + "urlContextRoot": "/api" + }, + "ui.context/enduser": { + "_id": "ui.context/enduser", + "cacheEnabled": true, + "defaultDir": "&{idm.install.dir}/ui/enduser", + "enabled": true, + "responseHeaders": { + "X-Frame-Options": "DENY" + }, + "urlContextRoot": "/" + }, + "ui.context/oauth": { + "_id": "ui.context/oauth", + "cacheEnabled": true, + "defaultDir": "&{idm.install.dir}/ui/oauth/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/oauth/extension", + "urlContextRoot": "/oauthReturn" + }, + "ui/configuration": { + "_id": "ui/configuration", + "configuration": { + "defaultNotificationType": "info", + "forgotUsername": false, + "lang": "en", + "notificationTypes": { + "error": { + "iconPath": "images/notifications/error.png", + "name": "common.notification.types.error" + }, + "info": { + "iconPath": "images/notifications/info.png", + "name": "common.notification.types.info" + }, + "warning": { + "iconPath": "images/notifications/warning.png", + "name": "common.notification.types.warning" + } + }, + "passwordReset": false, + "passwordResetLink": "", + "roles": { + "internal/role/openidm-admin": "ui-admin", + "internal/role/openidm-authorized": "ui-user" + }, + "selfRegistration": false + } + }, + "ui/dashboard": { + "_id": "ui/dashboard", + "adminDashboards": [ + { + "isDefault": true, + "name": "Quick Start", + "widgets": [ + { + "cards": [ + { + "href": "#connectors/add/", + "icon": "fa-database", + "name": "Add Connector" + }, + { + "href": "#mapping/add/", + "icon": "fa-map-marker", + "name": "Create Mapping" + }, + { + "href": "#resource/managed/role/list/", + "icon": "fa-check-square-o", + "name": "Manage Roles" + }, + { + "href": "#managed/add/", + "icon": "fa-tablet", + "name": "Add Device" + }, + { + "href": "#selfservice/userregistration/", + "icon": "fa-gear", + "name": "Configure Registration" + }, + { + "href": "#selfservice/passwordreset/", + "icon": "fa-gear", + "name": "Configure Password Reset" + }, + { + "href": "#resource/managed/user/list/", + "icon": "fa-user", + "name": "Manage Users" + }, + { + "href": "#settings/", + "icon": "fa-user", + "name": "Configure System Preferences" + } + ], + "size": "large", + "type": "quickStart" + } + ] + }, + { + "isDefault": false, + "name": "System Monitoring", + "widgets": [ + { + "legendRange": { + "month": [ + 500, + 2500, + 5000 + ], + "week": [ + 10, + 30, + 90, + 270, + 810 + ], + "year": [ + 10000, + 40000, + 100000, + 250000 + ] + }, + "maxRange": "#24423c", + "minRange": "#b0d4cd", + "size": "large", + "type": "audit" + }, + { + "size": "large", + "type": "clusterStatus" + }, + { + "size": "large", + "type": "systemHealthFull" + }, + { + "barchart": "false", + "size": "large", + "type": "lastRecon" + } + ] + }, + { + "isDefault": false, + "name": "Resource Report", + "widgets": [ + { + "selected": "activeUsers", + "size": "x-small", + "type": "counter" + }, + { + "selected": "rolesEnabled", + "size": "x-small", + "type": "counter" + }, + { + "selected": "activeConnectors", + "size": "x-small", + "type": "counter" + }, + { + "size": "large", + "type": "resourceList" + } + ] + }, + { + "isDefault": false, + "name": "Business Report", + "widgets": [ + { + "graphType": "fa-pie-chart", + "providers": [ + "Username/Password" + ], + "size": "x-small", + "type": "signIns", + "widgetTitle": "Sign-Ins" + }, + { + "graphType": "fa-bar-chart", + "size": "x-small", + "type": "passwordResets", + "widgetTitle": "Password Resets" + }, + { + "graphType": "fa-line-chart", + "providers": [ + "Username/Password" + ], + "size": "x-small", + "type": "newRegistrations", + "widgetTitle": "New Registrations" + }, + { + "size": "x-small", + "timezone": { + "hours": "07", + "minutes": "00", + "negative": true + }, + "type": "socialLogin" + }, + { + "selected": "socialEnabled", + "size": "x-small", + "type": "counter" + }, + { + "selected": "manualRegistrations", + "size": "x-small", + "type": "counter" + } + ] + }, + { + "isDefault": false, + "name": "seantestdashboard", + "widgets": [ + { + "size": "large", + "type": "resourceList" + } + ] + } + ], + "dashboard": { + "widgets": [ + { + "size": "large", + "type": "Welcome" + } + ] + } + }, + "ui/profile": { + "_id": "ui/profile", + "tabs": [ + { + "name": "personalInfoTab", + "view": "org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab" + }, + { + "name": "signInAndSecurity", + "view": "org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab" + }, + { + "name": "preference", + "view": "org/forgerock/openidm/ui/user/profile/PreferencesTab" + }, + { + "name": "trustedDevice", + "view": "org/forgerock/openidm/ui/user/profile/TrustedDevicesTab" + }, + { + "name": "oauthApplication", + "view": "org/forgerock/openidm/ui/user/profile/OauthApplicationsTab" + }, + { + "name": "privacyAndConsent", + "view": "org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab" + }, + { + "name": "sharing", + "view": "org/forgerock/openidm/ui/user/profile/uma/SharingTab" + }, + { + "name": "auditHistory", + "view": "org/forgerock/openidm/ui/user/profile/uma/ActivityTab" + }, + { + "name": "accountControls", + "view": "org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab" + } + ] + }, + "ui/themeconfig": { + "_id": "ui/themeconfig", + "icon": "favicon.ico", + "path": "", + "settings": { + "footer": { + "mailto": "info@pingidentity.com" + }, + "loginLogo": { + "alt": "Ping Identity", + "height": "120px", + "src": "images/login-logo-dark.png", + "title": "Ping Identity", + "width": "120px" + }, + "logo": { + "alt": "Ping Identity", + "src": "images/logo-horizontal-white.png", + "title": "Ping Identity" + } + }, + "stylesheets": [ + "css/bootstrap-3.4.1-custom.css", + "css/structure.css", + "css/theme.css" + ] + }, + "webserver": { + "_id": "webserver", + "gzip": { + "enabled": true, + "includedMethods": [ + "GET" + ] + }, + "maxThreads": { + "$int": "&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}" + } + }, + "webserver.listener/http": { + "_id": "webserver.listener/http", + "enabled": { + "$bool": "&{openidm.http.enabled|true}" + }, + "port": { + "$int": "&{openidm.port.http|8080}" + } + }, + "webserver.listener/https": { + "_id": "webserver.listener/https", + "enabled": { + "$bool": "&{openidm.https.enabled|true}" + }, + "port": { + "$int": "&{openidm.port.https|8443}" + }, + "secure": true, + "sslCertAlias": "&{openidm.https.keystore.cert.alias|openidm-localhost}" + }, + "webserver.listener/mutualAuth": { + "_id": "webserver.listener/mutualAuth", + "enabled": { + "$bool": "&{openidm.mutualauth.enabled|true}" + }, + "mutualAuth": true, + "port": { + "$int": "&{openidm.port.mutualauth|8444}" + }, + "secure": true, + "sslCertAlias": "&{openidm.https.keystore.cert.alias|openidm-localhost}" + } + } +} diff --git a/test/e2e/exports/all/idm/allEmailTemplates.template.email.json b/test/e2e/exports/all/idm/allEmailTemplates.template.email.json new file mode 100644 index 000000000..cb6004c06 --- /dev/null +++ b/test/e2e/exports/all/idm/allEmailTemplates.template.email.json @@ -0,0 +1,77 @@ +{ + "emailTemplate": { + "forgottenUsername": { + "_id": "emailTemplate/forgottenUsername", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

", + "fr": "{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

" + }, + "mimeType": "text/html", + "subject": { + "en": "Account Information - username", + "fr": "Informations sur le compte - nom d'utilisateur" + } + }, + "registration": { + "_id": "emailTemplate/registration", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

This is your registration email.

Email verification link

", + "fr": "

Ceci est votre mail d'inscription.

Lien de vérification email

" + }, + "mimeType": "text/html", + "subject": { + "en": "Register new account", + "fr": "Créer un nouveau compte" + } + }, + "resetPassword": { + "_id": "emailTemplate/resetPassword", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Click to reset your password

Password reset link

", + "fr": "

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

" + }, + "mimeType": "text/html", + "subject": { + "en": "Reset your password", + "fr": "Réinitialisez votre mot de passe" + } + }, + "updatePassword": { + "_id": "emailTemplate/updatePassword", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Verify email to update password

Update password link

" + }, + "mimeType": "text/html", + "subject": { + "en": "Update your password" + } + }, + "welcome": { + "_id": "emailTemplate/welcome", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Welcome to OpenIDM. Your username is '{{object.userName}}'.

", + "fr": "

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

" + }, + "mimeType": "text/html", + "subject": { + "en": "Your account has been created", + "fr": "Votre compte vient d’être créé !" + } + } + } +} diff --git a/test/e2e/exports/all/idm/allInternalRoles.internalRole.json b/test/e2e/exports/all/idm/allInternalRoles.internalRole.json new file mode 100644 index 000000000..8433174e3 --- /dev/null +++ b/test/e2e/exports/all/idm/allInternalRoles.internalRole.json @@ -0,0 +1,52 @@ +{ + "internalRole": { + "openidm-admin": { + "_id": "openidm-admin", + "condition": null, + "description": "Administrative access", + "name": "openidm-admin", + "privileges": [], + "temporalConstraints": [] + }, + "openidm-authorized": { + "_id": "openidm-authorized", + "condition": null, + "description": "Basic minimum user", + "name": "openidm-authorized", + "privileges": [], + "temporalConstraints": [] + }, + "openidm-cert": { + "_id": "openidm-cert", + "condition": null, + "description": "Authenticated via certificate", + "name": "openidm-cert", + "privileges": [], + "temporalConstraints": [] + }, + "openidm-reg": { + "_id": "openidm-reg", + "condition": null, + "description": "Anonymous access", + "name": "openidm-reg", + "privileges": [], + "temporalConstraints": [] + }, + "openidm-tasks-manager": { + "_id": "openidm-tasks-manager", + "condition": null, + "description": "Allowed to reassign workflow tasks", + "name": "openidm-tasks-manager", + "privileges": [], + "temporalConstraints": [] + }, + "platform-provisioning": { + "_id": "platform-provisioning", + "condition": null, + "description": "Platform provisioning access", + "name": "platform-provisioning", + "privileges": [], + "temporalConstraints": [] + } + } +} diff --git a/test/e2e/exports/all/idm/allMappings.mapping.json b/test/e2e/exports/all/idm/allMappings.mapping.json new file mode 100644 index 000000000..fe8d63a7f --- /dev/null +++ b/test/e2e/exports/all/idm/allMappings.mapping.json @@ -0,0 +1,391 @@ +{ + "mapping": {}, + "sync": { + "_id": "sync", + "mappings": [ + { + "_id": "sync/managedOrganization_managedRole", + "consentRequired": false, + "displayName": "managedOrganization_managedRole", + "icon": null, + "name": "managedOrganization_managedRole", + "policies": [ + { + "action": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript" + }, + "situation": "AMBIGUOUS" + }, + { + "action": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript" + }, + "condition": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript" + }, + "situation": "SOURCE_MISSING" + }, + { + "action": { + "globals": {}, + "source": "//seantest", + "type": "groovy" + }, + "postAction": { + "globals": {}, + "source": "//seantest", + "type": "groovy" + }, + "situation": "MISSING" + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED" + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED" + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED" + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY" + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED" + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED" + }, + { + "action": "ASYNC", + "situation": "ALL_GONE" + }, + { + "action": "ASYNC", + "situation": "CONFIRMED" + }, + { + "action": "ASYNC", + "situation": "FOUND" + }, + { + "action": "ASYNC", + "situation": "ABSENT" + } + ], + "properties": [], + "source": "managed/organization", + "syncAfter": [], + "target": "managed/role" + }, + { + "_id": "sync/managedOrganization_managedSeantestmanagedobject", + "consentRequired": false, + "displayName": "managedOrganization_managedSeantestmanagedobject", + "icon": null, + "name": "managedOrganization_managedSeantestmanagedobject", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT" + }, + { + "action": "ASYNC", + "situation": "ALL_GONE" + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS" + }, + { + "action": "ASYNC", + "situation": "CONFIRMED" + }, + { + "action": "ASYNC", + "situation": "FOUND" + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED" + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY" + }, + { + "action": "ASYNC", + "situation": "MISSING" + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED" + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING" + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED" + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED" + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED" + } + ], + "properties": [], + "source": "managed/organization", + "syncAfter": [ + "managedOrganization_managedRole" + ], + "target": "managed/seantestmanagedobject" + }, + { + "_id": "sync/managedAssignment_managedUser", + "consentRequired": false, + "displayName": "managedAssignment_managedUser", + "icon": null, + "name": "managedAssignment_managedUser", + "policies": [ + { + "action": { + "globals": {}, + "source": "//asdfasdf", + "type": "groovy" + }, + "situation": "AMBIGUOUS" + }, + { + "action": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "text/javascript" + }, + "condition": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "groovy" + }, + "postAction": { + "globals": {}, + "source": "//asdfasdf", + "type": "text/javascript" + }, + "situation": "SOURCE_MISSING" + }, + { + "action": "ASYNC", + "situation": "MISSING" + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED" + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED" + }, + { + "action": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "text/javascript" + }, + "situation": "UNASSIGNED" + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY" + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED" + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED" + }, + { + "action": "ASYNC", + "situation": "ALL_GONE" + }, + { + "action": "ASYNC", + "situation": "CONFIRMED" + }, + { + "action": "ASYNC", + "situation": "FOUND" + }, + { + "action": "ASYNC", + "situation": "ABSENT" + } + ], + "properties": [], + "source": "managed/assignment", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject" + ], + "target": "managed/user" + }, + { + "_id": "sync/seantestmapping", + "consentRequired": false, + "displayName": "seantestmapping", + "icon": null, + "name": "seantestmapping", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT" + }, + { + "action": "ASYNC", + "situation": "ALL_GONE" + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS" + }, + { + "action": "ASYNC", + "situation": "CONFIRMED" + }, + { + "action": "ASYNC", + "situation": "FOUND" + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED" + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY" + }, + { + "action": "ASYNC", + "situation": "MISSING" + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED" + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING" + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED" + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED" + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED" + } + ], + "properties": [], + "source": "managed/assignment", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser" + ], + "target": "managed/organization" + }, + { + "_id": "sync/managedSeantestmanagedobject_managedUser", + "consentRequired": false, + "displayName": "managedSeantestmanagedobject_managedUser", + "icon": null, + "name": "managedSeantestmanagedobject_managedUser", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT" + }, + { + "action": "ASYNC", + "situation": "ALL_GONE" + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS" + }, + { + "action": "ASYNC", + "situation": "CONFIRMED" + }, + { + "action": "ASYNC", + "situation": "FOUND" + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED" + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY" + }, + { + "action": "ASYNC", + "situation": "MISSING" + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED" + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING" + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED" + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED" + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED" + } + ], + "properties": [], + "source": "managed/seantestmanagedobject", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser", + "seantestmapping" + ], + "target": "managed/user" + } + ] + } +} diff --git a/test/e2e/idm-export.e2e.test.js b/test/e2e/idm-export.e2e.test.js index 8d993cbcb..fb93c2bcd 100644 --- a/test/e2e/idm-export.e2e.test.js +++ b/test/e2e/idm-export.e2e.test.js @@ -47,6 +47,7 @@ */ /* +// Cloud FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo idm export --entity-id script FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo idm export -i script -e test/e2e/env/testEnvFile.env -f my-script.idm.json FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo idm export -i script -D testDir4 @@ -56,13 +57,17 @@ FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgebloc FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo idm export --all --file allIdmTestFile.json -E test/e2e/env/testEntitiesFile.json -e test/e2e/env/testEnvFile.env --no-metadata FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo idm export -AD testDir1 FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo idm export --all-separate --no-metadata --separate-mappings --directory testDir3 --entities-file test/e2e/env/testEntitiesFile.json --env-file test/e2e/env/testEnvFile.env + +// IDM +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo idm export -AD testDir4 -m idm +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo idm export -aD testDir5 -m idm */ import { getEnv, testExport } from './utils/TestUtils'; -import { connection as c } from './utils/TestConfig'; +import { connection as c , idm_connection as ic} from './utils/TestConfig'; process.env['FRODO_MOCK'] = '1'; const env = getEnv(c); - +const idmenv = getEnv(ic); const type = 'idm'; const entitiesFile = 'test/e2e/env/testEntitiesFile.json'; const envFile = 'test/e2e/env/testEnvFile.env'; @@ -126,4 +131,16 @@ describe('frodo idm export', () => { const CMD = `frodo idm export --all-separate --no-metadata --separate-objects --directory ${dirName}`; await testExport(CMD, env, undefined, undefined, dirName, false); }); + test(`"frodo idm export -AD testDir6 -m idm": should export all idm config entities for on prem idm`, async () => { + const dirName = 'testDir6'; + const CMD = `frodo idm export -AD testDir6 -m idm`; + await testExport(CMD, idmenv, undefined, undefined, dirName, false); + }); + test(`"frodo idm export -aD testDir7 -m idm": should export all idm config entities for on prem idm`, async () => { + const dirName = 'testDir7'; + const CMD = `frodo idm export -aD testDir7 -m idm`; + await testExport(CMD, idmenv, undefined, undefined, dirName, false); + }); + + }); diff --git a/test/e2e/idm-import.e2e.test.js b/test/e2e/idm-import.e2e.test.js index 0a944e532..a760f52fe 100644 --- a/test/e2e/idm-import.e2e.test.js +++ b/test/e2e/idm-import.e2e.test.js @@ -47,6 +47,7 @@ */ /* +// Cloud FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo idm import -i script -D test/e2e/exports/all-separate/cloud/global/idm FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo idm import -f test/e2e/exports/all-separate/cloud/global/idm/script.idm.json FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo idm import --entity-id script --file test/e2e/exports/all-separate/cloud/global/idm/script.idm.json @@ -55,16 +56,21 @@ FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgebloc FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo idm import --all --file all.idm.json -D test/e2e/exports/all FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo idm import -AD test/e2e/exports/all-separate/cloud/global/idm FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo idm import --all-separate --directory test/e2e/exports/all-separate/cloud/global/idm --env-file test/e2e/env/testEnvFile.env --entities-file test/e2e/env/testEntitiesFile.json + +// IDM +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo idm import -af test/e2e/exports/all/idm/all.idm.json -m idm +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo idm import -AD test/e2e/exports/all-separate/idm/global/idm -m idm */ import cp from 'child_process'; import { promisify } from 'util'; import { getEnv, removeAnsiEscapeCodes } from './utils/TestUtils'; -import { connection as c } from './utils/TestConfig'; +import { connection as c , idm_connection as ic } from './utils/TestConfig'; const exec = promisify(cp.exec); process.env['FRODO_MOCK'] = '1'; const env = getEnv(c); +const idmenv = getEnv(ic) ; const idmExportDirectory = "test/e2e/exports/all-separate/cloud/global/idm"; const idmScriptConfigFileName = "script.idm.json"; @@ -131,4 +137,14 @@ describe('frodo idm import', () => { const { stdout } = await exec(CMD, env); expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); }); + test(`"frodo idm import -af test/e2e/exports/all/idm/all.idm.json -m idm": Should import on prem idm config' according to the idmenv and entity files"`, async () => { + const CMD = `frodo idm import -af test/e2e/exports/all/idm/all.idm.json -m idm`; + const { stdout } = await exec(CMD, idmenv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + }); + test(`"frodo idm import -AD test/e2e/exports/all-separate/idm/global/idm -m idm": Should import on prem idm config according to the idmenv and entity files"`, async () => { + const CMD = `frodo idm import -AD test/e2e/exports/all-separate/idm/global/idm -m idm`; + const { stdout } = await exec(CMD, idmenv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + }); }); diff --git a/test/e2e/mapping-export.e2e.test.js b/test/e2e/mapping-export.e2e.test.js index f252c03b6..2ef26af77 100644 --- a/test/e2e/mapping-export.e2e.test.js +++ b/test/e2e/mapping-export.e2e.test.js @@ -47,6 +47,7 @@ */ /* +// Cloud FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo mapping export --mapping-id sync/managedAlpha_user_managedBravo_user FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo mapping export -i mapping/managedBravo_group_managedBravo_group -f my-frodo-test-mapping.mapping.json FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo mapping export -Ni mapping/managedBravo_group_managedBravo_group --no-deps --use-string-arrays -D mappingExportTestDir1 @@ -55,12 +56,17 @@ FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgebloc FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo mapping export --no-deps --use-string-arrays -c GoogleApps -t alpha_user -NaD mappingExportTestDir2 FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo mapping export -AD mappingExportTestDir4 FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo mapping export --no-deps --use-string-arrays --connector-id GoogleApps --managed-object-type alpha_user --all-separate --no-metadata --directory mappingExportTestDir3 + +// IDM +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo mapping export -AD mappingExportTestDir4 -m idm +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo mapping export -aD mappingExportTestDir5 -m idm */ import { getEnv, testExport } from './utils/TestUtils'; -import { connection as c } from './utils/TestConfig'; +import { connection as c , idm_connection as ic} from './utils/TestConfig'; process.env['FRODO_MOCK'] = '1'; const env = getEnv(c); +const idmEnv = getEnv(ic) const syncType = 'sync'; const mappingType = 'mapping'; @@ -113,4 +119,15 @@ describe('frodo mapping export', () => { const CMD = `frodo mapping export --no-deps --use-string-arrays --connector-id GoogleApps --managed-object-type alpha_user --all-separate --no-metadata --directory ${exportDirectory}`; await testExport(CMD, env, undefined, undefined, exportDirectory, false); }); + + test('"frodo mapping export -aD mappingExportTestDir4 -m idm": should export all IDM mappings to one file in the directory mappingExportTestDir4', async () => { + const exportDirectory = "mappingExportTestDir4"; + const CMD = `frodo mapping export -aD mappingExportTestDir4 -m idm`; + await testExport(CMD, idmEnv, undefined, undefined, exportDirectory, false); + }); + test('"frodo mapping export -AD mappingExportTestDir5 -m idm": should export all IDM mappings to separate files in the directory mappingExportTestDir5', async () => { + const exportDirectory = "mappingExportTestDir5"; + const CMD = `frodo mapping export -AD mappingExportTestDir5 -m idm`; + await testExport(CMD, idmEnv, undefined, undefined, exportDirectory, false); + }); }); diff --git a/test/e2e/mapping-import.e2e.test.js b/test/e2e/mapping-import.e2e.test.js index 29ef52935..8e8307c07 100644 --- a/test/e2e/mapping-import.e2e.test.js +++ b/test/e2e/mapping-import.e2e.test.js @@ -46,7 +46,8 @@ * the recordings must be committed to the frodo-lib project. */ -/* +/* +// Cloud FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo mapping import -i sync/managedAlpha_application_managedBravo_application -f test/e2e/exports/all/allMappings.mapping.json FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo mapping import --no-deps --mapping-id mapping/managedBravo_group_managedBravo_group --file allMappings.mapping.json -D test/e2e/exports/all FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo mapping import -f test/e2e/exports/all/allMappings.mapping.json @@ -55,16 +56,21 @@ FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgebloc FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo mapping import --all --no-deps --file allMappings.mapping.json --directory test/e2e/exports/all FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo mapping import -AD test/e2e/exports/all-separate/cloud/global/idm FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo mapping import --all-separate --no-deps --directory test/e2e/exports/all-separate/cloud/global/idm + +// IDM +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo mapping import -af test/e2e/exports/all/idm/allMappings.mapping.json -m idm +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo mapping import -AD test/e2e/exports/all-separate/idm/global/sync -m idm */ import cp from 'child_process'; import { promisify } from 'util'; import { getEnv, removeAnsiEscapeCodes } from './utils/TestUtils'; -import { connection as c } from './utils/TestConfig'; +import { connection as c , idm_connection as ic} from './utils/TestConfig'; const exec = promisify(cp.exec); process.env['FRODO_MOCK'] = '1'; const env = getEnv(c); +const idmEnv = getEnv(ic); const allDirectory = "test/e2e/exports/all"; const allMappingsFileName = "allMappings.mapping.json"; @@ -119,5 +125,15 @@ describe('frodo mapping import', () => { const { stdout } = await exec(CMD, env); expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); }); + test(`"frodo mapping import -af test/e2e/exports/all/idm/allMappings.mapping.json -m idm": should import all IDM mappings from file."`, async () => { + const CMD = `frodo mapping import -af test/e2e/exports/all/idm/allMappings.mapping.json -m idm`; + const { stdout } = await exec(CMD, idmEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + }); + test(`"frodo mapping import -AD test/e2e/exports/all-separate/idm/global/sync -m idm": should import all IDM mappings from the directory"`, async () => { + const CMD = `frodo mapping import -AD test/e2e/exports/all-separate/idm/global/sync -m idm`; + const { stdout } = await exec(CMD, idmEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + }); }); diff --git a/test/e2e/mocks/config_603940551/export_4211608755/0_AD_m_4209801721/openidm_3290118515/recording.har b/test/e2e/mocks/config_603940551/export_4211608755/0_AD_m_4209801721/openidm_3290118515/recording.har new file mode 100644 index 000000000..279498f2b --- /dev/null +++ b/test/e2e/mocks/config_603940551/export_4211608755/0_AD_m_4209801721/openidm_3290118515/recording.har @@ -0,0 +1,9175 @@ +{ + "log": { + "_recordingName": "config/export/0_AD_m/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "de3566e649dc89e93a6365b0fdaecd4e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 393, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/serverinfo/*" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:02:54.744Z", + "time": 12, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 12 + } + }, + { + "_id": "3f3b03432a833cfcbe27438276bb566b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "accept-api-version", + "value": "resource=2.0, protocol=1.0" + }, + { + "name": "x-openam-username", + "value": "openidm-admin" + }, + { + "name": "x-openam-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 507, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/realms/root/authenticate" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:02:54.764Z", + "time": 4, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 4 + } + }, + { + "_id": "4c1fef66c916c8940b0315dddc564b06", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 423, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 811, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 811, + "text": "[\"H4sIAAAAAAAA/w==\",\"7VfRjqIwFP2XPpP47ltHkZDFkgV5MBtDOlBJJ9iytE7GMf77tqOzq2sZihLmxQcThXNPr3jPucc9SGkOxkDsWAYcsMFVRVkhwPjX/uzOaIMZLkge1gVm9B1Lyll6uhbxkqjKjDNBmIzI7y2tiSpc41IQB+RUVCXeIbwhiqydhyoiMGbbsnQAsy2qeEkzSo5t40wjwHgPipI/qy7U24MDBN/WmaYbjQTBTBIhVaXcVfqaJG9y9IJfschqWkmg8VRu8ZEJwPmT7yVhEqsbvR2gvmhOe281DpNo4qZzP4595N3cb1Fz/rrT5BUXEt7FcN6eqS8A4yWagEvgLEzQNIVB5MLpMg189MOdtlcl6GcCA3/m24GhasZDNljdQBqiYNkOXcDIcxepIg4jG+rTL2aNh0GQeiFy25GTEM38aG5D+vG4Lc5+il20AIeVmouaV6SWR9WtzobhJM0RP9OrplE+AteS1Ee4xHVB5Bm81lLWDdjZTnwauNNH/vxCMtmHDzURdzOmJhajU335qPsbB7OLDTQ5t+m5g+ysnaWr3r5w1F7038WGLvztThG27lWTSoVxrs2yhULQgm2UGj9pE6FO7qjRRpZmQTaWdMwJWORr/Wpbal3jwSfvJfetEcHM1nWBW/Vzjyy+afP38Cs8MsNgmQH/VW5Xs3K6b2OTv221UfxnZ/887+PPkbWBXdcZLOsa9IgIj4gwZEQYVHNOy442afIiw5ijhvGwe1KHDWFzALGpfsj8IfMhZW5O7t+veOdqBTbv5dXhD+46tPKwFAAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.774Z", + "time": 6, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 6 + } + }, + { + "_id": "4c963e6ac6a0c10bf75de375d8e3da12", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 456, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "_id sw 'mapping'" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=_id%20sw%20%27mapping%27" + }, + "response": { + "bodySize": 1820, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1820, + "text": "{\"result\":[{\"_id\":\"mapping/mappingtest\",\"consentRequired\":false,\"displayName\":\"mappingtest\",\"icon\":null,\"name\":\"mappingtest\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"target\":\"managed/organization\"},{\"_id\":\"mapping/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"target\":\"managed/organization\"}],\"resultCount\":2,\"pagedResultsCookie\":null,\"totalPagedResultsPolicy\":\"EXACT\",\"totalPagedResults\":2,\"remainingPagedResults\":-1}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1820" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.788Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "778b519855abd745b38438bc349de829", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 461, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "_id sw 'emailTemplat'" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=_id%20sw%20%27emailTemplat%27" + }, + "response": { + "bodySize": 1099, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1099, + "text": "[\"H4sIAAAAAAAA/w==\",\"rVZtbhMxEL2KMT/yJ02ECn+isFIJ/RGpQBXaAqIIObuzianXXvyxJV2txDU4ASrXyE04CWPvJk1pA2kUKVJT2zNv5r1nT0qqwThhae9jST/zhPYoZIyLE8hywSx0U6UnylqQpwa0ZBnQNk0gZRhzpGImwEdIXATJxgIwgdUO2jTVKsMt3MjAGDbBc6U/2KP9qc1E1B+rZBaV5WOeEjX+ArHtOER4jQhV1c+jD8pp4hpMwg1pleWdc61Ov5tjEhAG/xumZKYc0RADLyAhdophoRvCJQGtlW6TXAAzQBJuNEyYTjpl2eUpQk6fRn1GphrS5+d0ieXZyeB0NKyqcxoNBI8vyBQ0EKuIUBMu+10W9bs+uBs6wu++PeoZ2LjZM2UxpVQZSVrOcsENUo/9g7Eb9P2Wk0I5Q1gBV9j9/KcjMVgCe6H1nGnfO6ZrkwIcFwJPScB1JEcSVJZrEqsst/BQLr46TMVjTnIvVqghVlLiWdDreKnQEDyDk1nunWPhmw0byJdxAWbpk4M4Vk5aMpTowYxZriTZW1piQfDKriEGyxDQdIOH7zBKq6p9v8/RDdxYHRLtwOL70Yl3H35mnpvV7LUlUUE8tBHTh0HHAjRPeVynEFxeLBm+8dp+NACUw9umCJYKkUmLSxNrnvvQB+AecfRHAqSYX69Ah+pvsDfXcxQ4AI3muySsFndR+kDPr3HHSZTMFcBco+G/9DJgj5kxl0onOxGsvtx4r0PqWre8AdictEVJTZb1QjXXJ1wd7J5LbjlDn4JeaKesZ9+XAJvjv1qJQvRawdX8QcXt9LtDy6Kh0Wr9V/fUv15Hlyf4Z6dCnvmbMmteftSzhthCy9PbgX+JuTlzTZ7b1K1l5BIEmn+3cxZnzLs6rSfkTQ5y+PJVhzxgyP5/vCHGC/RbAdJBeImXMNuNt60HR+iqeWDIFMfcGPAaxBoQdWnZuqZmUhRYN5r19/cf819hGS/M/Jo8QpE+tZtfSIPwXvWetWmOLCejsGgGSl1wLEg6IdrUKsvE8cr2scJHZYZwh+8PBif0nhMho/YOkFxObu/sPan+ALjZrOmgCQAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.803Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "4f7c200a37e236805c35afa89036bda0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 436, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=true" + }, + "response": { + "bodySize": 21810, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 21810, + "text": "[\"H4sIAAAAAAAA/w==\",\"7b2LduM2sij6K9xK1tid0cP9SHbiSWcftezuOPErlp1MdndvL5qEJMYUyebDbrVba53fOF9w1pzfyJ/cL7lVeBEgQYqSZXfPjGft3bEIoFAoVBWqCgXgphWTJPPT1vbrm9a557a2W7bjkCRptVtOGIy8cUKLbCf1wgD+bkHBlKST0MUfMbFd+BDZaUriAD5MiO2nE/gUhz7BGl+15m21+Vf17b1gFPa+qmnvh2MvaMO/YZaWQLVZPQ2inaUTEqSeY/OiKshXtu+5dko0qAaAWer5PVH5l4zEs5eeD2WrD5oRupd5PUB1StjPtYHr1JETy5wsScNpH+j0AVtPiHO5N+oHs5fETrOY7Ab2hU/czdcbMRl7SRpTQm60rY3ITpLrMHZPSELSjbePGqGVEH+UkPjKc0jv8sIerG2wrp1MLkI7dhVgXoDVbL+HH3phRALPnXaQJcLY+0Dc2r7e4dyWuXPEyJLUMSmQ6Tj2rjyfjGnFWoaKRM3VqSBB1MpOkl1MvfSEvMu8GBgjSJNGEqTOGHyaJv3AhWlzPQb3TvsDDjmLuFRWdVNiYS85mB3H4QgosllmynZ5XiNWuZZ4S0jKBmC9sUAaCoNcF8+W+wEsp7Y2slt1wL4baAiCmMAUL9uPmaSRh1xDktQwf1qvDcblTr3AMCTy3vEzlxwzUAx4FLbxn54+5K/W0KMG0IFhpKRNmTGj3N12iU/gP9CNMzEQN5klKZk2mcWK0eadJ07sRen6oKcwS238h2nyNhscU8sZWyvavndFhrPAaSuL8cJ19tZj1lnL9RLb98PrQTid2oHbp1UL7KXPNLLCJ+18xbE7rJMSEjETqa7tMtVt+8d2bAMCJE66vNGeaz1//tzaYPzYmdpR5AXjju8Fl8nGohmjOGPVJdA2SwWVACYNWg+Aoj0mbg1hIt9OR2E87YBOv/ISQBHwL/RUsQrogFbpokrm1KFxBZqJVa1+Fbptz1VrbBT6njNbAx2XW2yWH8DK681qA2i4Kt8aOLWjbkUmGLx7SqZYdaEqJe85dJgdz79Vt2vV4PfIz7e1o3I/4xZ9ANQlyFfpuS7Z64UXgJ0R4H9Ka0J4HezYqX0U+DOTqcylj60Gy5pBVfgItV6DifWXv1gh/LULKxXa1AdM7x9d/EEc8Kygizj1SLK5kYFAgSv6+i1twui7N4IaYIKkxO2naexdZCkZTOxgXPQGuO3FjC7DBNwdN4HsRiGA7I1JCryPAReSgCTgcO7OfVV7Te3kMrnyyPXq3YHJEHG+KPtfpwC/QG4Dha/D+HIEdlEP0fGCJLUDp24BbESCgkthB8yDNGCkWOD3jZaX9NEgJO5pOEztGJkauaCAIDMczLhxvhHo3UoruTWWaLFDl4y8gBqQy1OkaJAmIJ4g0CiAp+FLj/husvlaxpWKIaVqexDlpgE2DqiNhTMDiuiE+FTnJhMv4tpmtrlxDpjYoGxGtp+QBX6p7B8xw3br5Z5qHIMw9UZ8yUgA2TTODLiaNLpESgVxp2gPQt8nzBV6veG5EeAriFwciCG4aLAJl2SHSswZdQ5VDF6G8akdg+Jczq1KaRvqU22CCZGCJdZNiJPFXjrriv5pD+iBRWEAC771V2ujtwH/LmjguQv1q0rEpcjxFgnC9wMi71cYCoNwbcfURtu+gdWERrvwzy8vwtCHqn+54bC6eaMub9Ll9T9S8ZkDxQENGoIZ0ohE0hiQ3kyB54djFoo/IUmYxQ4GdyYA9zWYUjA3gH7JpAJICYvdy6h77lg4yRUNFAliwSzDb89FCClGGK/g7xjNeAwM0/+wqsqflMTqb77ElxQETiVj3/yvHihCbxxMGTriYxiP7YAzgfKZd6TKAPwscACzk/EPJejMHU9kEAzciP9i76FDf9FASNk5Mnk06AO6mQ8C+Ed4of0GXT8eU6SYn4h/zAKH/6fHYw0UBnUc4A9qpcAKHkCzt3OFJ+V8wn+HDAO+kwBcZF+Bl4PM1sfi3Ssg34924Po4V8AMQL8u2FqASuhcdimI7oSXd2HOu4PkqtQSOqtt98c06f40TZZvlwBn/wT/rNYySd0wSymAIf1zMRgpWRScBzZc9wQmOPHSMJ6t1hz6JfHSA4BZBontDul/yq3fggDaCdlDaQTkvCvCDAScwh7bpOxN0jTqcQXcm8CiwMSxUJxEKNKyHACPqJo4RmHwCNU8I4RN1RqLC++NoJ+3Ukexn8CBLY4+rAe490dbt3AqUAGRAquBweODEOHKtzIPOJKtL7LRCHpk2ndqvx+Cqm5tP97C/4FmhhUCiAXDurJRhcJ3a+r5vpdQzGqVtYoOw0YoazQfhG7d8UAtIJPQxtgQDGe763rxvCcEMoCFTxAExDeMPIcpYLGpjIvUFWjPXPjLOpmNmMl7cwI2EoWcmktQhEMuL2B8tKz8Lse7tMyuNE7U89Wj5KvAbcf4lovJKYdzI+DAX+Ba2JnPxgIfkPmErGIx37qAv8Z+eAH4wZ+AH1vrAcNeLyF2kLJlOp1F+G0ch+HVrDXPx8G7myt4L+5a2oavc59MOo6qMU0dFG6JvVU7lSQS3k2uzcQX1EzXCILkhQijQM27IRRamr0/YOnkjVWK6f3PVfa6Y7rxjubCNKnqUfKowxCkfLigMq2DwwSVTyLsGZT6lNrOtyZdbqgUBAHNJVwr08mAWfeUSvDzIEQria0aUmY1fIen/dO9wfnZcPeEGW08CsYgjNFKHHJPQYF9i2G0BfnOAOsT5ju8rnAeYjJG9pWsjOrGiWdRGuKfvIf3nQR1F+mQgJYxksB6lRGs5XjRBGnf6u8Oe4MXg97xz4Ph18foWAVomeNyA6WjD7uPf3p6/N3+fx9Ns0FGnMFOYP/y/Dla1Vfo9Ez2vj37cTY9PBlMXu3NjgZ//Xpoj2n5JZmxVfPpE7SUgUVafx+9/M9fd3vh18PJ1Tf9d789/jt5esqgRVkMOhYRR13JWLGroZ7YmDrVuto6/NG+HI3iP178dLj/9MMfk92jlPWY0PjlHvKCIFUym3Y4YYFVgMrUkT0KhNdSDB+gyCT4kwljEAazaZgljM2WZ5Xmc6o4hO2qKnQjT5t4dXnB0q4omreWHGpht7B6uAf9w/6r3Z1lRUPicGXHFq/2Oype67kVs6yVzQ0kQk/x+DcegT+eliPMyaZw0x/9TW8Mq3ieDATNmVOXfzoNcS42Y06TtiUAta18JPA1o9HvA+YmYZkAgKlYeQfqr770H/G7OsRHf1uT4CtM8laSfsaxpPSXcRGElq96dFaPRkcxinZ4DS4e+/G2uOBR4ZFswThkEBPqhlNTV/IeK+MIUygf2A8hZBSUI9t2RAipzJaaG02tlgSDrWHA9DQOjDPfT7+dng93h8O9o8MS7zF23ZlBVc/heFHDCuQp+RG8E9zuEMwMJv1peEmCfW9EDrwAeQrM+ydbsmu1coo198BsO/Wmee2nW/O5svrk0Y2C3Iig8YDm2wS52/A19SUKxUcj8PJBYpSSPV3Qg9AlXY9KuKhxAksxrHQzxA+tY8BNg61/z3GmW5RiY7OHJnAIK3Jwls8/58390LFxImBs5QGO4nDa4mk3SQIzyWYDPn0/Saf+D99fhO7sh5ubL7yRFVK56uJMH0IP8/n30Q+/Ax9YgucsL7E2bm5K9Ta63/ciAELQUp7vjaxZmIHicAj4qq6VTqAZHY3lBRaJ4zAGofUJ+LSW6yWwYNqx27256Xkj6HLy7IfvbWsSk9HzNy3ZFybnTsnZyd58/qb1wwDc1UsLlkhipaFFM2G/79k/fN/Dxj06Ivgbh9dCCjQe7K9hCiCDcGq5G5jd6iVAehg/WAcNxj30rCtYjiz7inyA0f/5fzPLIamFySMw9AhUK4wdwLWtK5KBQwq1AgLfgTiBBTPrxRaGPlOyLC1AaD9Y4MBbEU4WxQHW6ADVclxFF1AEU2C8U0XxYQEu1Ey9Sj7pO06YBam1F4yoVQjyZ3UsRQ1RAiulCWjo2PIJHw1ULlFUtQx1PldTa9fA4k9/OEXug/+bIW1U6IwlYQahUiNK79J5BFGWcUQLc3wkhXNee/rDgMB0INtcUZaiLd0NEHm6sGAQt3m/+x7wh0usqz//oXRNsc/7bj6fJ5QGJAbmu7ZsNrkC9UH85z+gJAtgyrIrYmd8DuvmC42AfN25/YQx4Qa5pqDZvImFrTnRBEocSvVEcfGhogOjpzt6NvApicXchSlSH1Egzfs/UFpB72wGVfh0FlebvxJZxIBOVPw/GPCvnkfmi651In9FSZlxzQ/zybpYYS7P9IaFyWxOOQ5HJ10lRa6JD8y/3nUW1pjfGFgkyBEYDXs7B11riUV28fIGfbwAfgNHPyNUE8tuVlveVl446Ki4grEmsMxdEBADFv2QLMtw4ivFlYe7fu7/97//z5//j34GgfnzH9Z/aJOk5G7I/Q3EGRwT5lC0aNyFqDv2lXW7fyR15r+pU0OaiqG7Yq0VOlIzUww9yOJlQfP9pR2giefz803ME6ypwxHQvy/bc4ieCFDm/czcq1bOe6TfjvHbsr3FZAqGN4aHcfvzJQiouueuDIoppkX1l+8+sr34AChFwzU5CTEJYso/D9me3rKwGcZ73A9Fl6AfuOInule7QUq3ZIpjbNpwWYTMx8DyKa45KyY9zTSeWTeWOd5P/dLuMMVdH6V50gWzOiGbIvWAdhik3fN3eZ1HXQx0R+km2js6dMSKgwY/nVX/1aObCZuP2laQ+f6jv1lzy8GwrLVJHgF+6SQOr+G/Gw64ehvWtvUMnDlrg2t9/EC6/Ae0nNdGFyQZ+c56l++sT8IkxaWArqAejQTmLqZWuVusOlfAKrvwTLezoKoIEbNt8mKMKJ18OCDTC7pvd9PyUjKlf4igTJ6qwrb1xPEn2+/jJrnHI/NsUQR9SzAucaZswUvHPQIhK8YXeABC7kPS+IhYkKB0DA5lwP9OaLhNmWjKQhnaOG+5889HWtz610bMElPYEMG2T4jIITpkjfX8G4xTKikheaKCSmDfTtIhj7uT0QjJdaVGoEQPOPOG4lZbQlBqSqD5noAhs4EOKcpbFbHHxIck3WH7DWrkT0bq8vKO50YdB/z0IIs2HnWZehxwx9LdcyNMU90MfZ6N2rYEjyDl2haXSSUIqIBW0aruQ008athZbTCPp1tgSF782cKt8e1eD3dOO+xjF/RDz43tUdrZetqTKRoe3XZpjeyOyFyh4bg42Ma2rNo2NN2W+mWbi+w2Z5NtO/K2uSyAq9zhECMSRlQUwRxFLn5Nmaut8r1i6BdEACHRTHaXSN+SbiBRs2uY2mlGNTmQPZqEATnMULZbjA9AaF035oec+aYc/TwA3Ub1N8CgcUH4mBKa6KNmWEI/GtuyccZ835OHHFnaTEwrSHYXRQv4H3cqLuw9llQUgZNAYgIIcKMFs5OIe5CnyyjB07YeVp1SlWb4tbcjN27JDtuN8wLl59uivqCCf6ORmyk4a28HGyfHoERQH8oAZySzK0A3RJgSxxItwvjCc10SDCY2y8fp0Q0/lpnEArRgHIRpB1c12wM5gYo2BnVAkGkc1o7h0wWu77wrzvoJXScpC8F87GiocsYSCeWyKVqSyod5kYfyDZMW38UlBa7bbkl2a06FmIzJ+wja/s8mA/pRkP/Rly2dGqzqAd0XLlOAR4O9lJo7OeOvgyI0+UPjkhIH9GmZxVmIxcLgM5o7qUeFdSFN8pFSQ6kj21ZNNh+r3vVaB5yLkGoLsHV8SPxRPhJdRkBSld1OjgsAxIJjrapRuPCjWH6pKuRLiFvB6Lh3yL+wdZh+qTBZhFFypGcP1honhUxDg5FCl2SzPYImbpz+TGYsjQFn02xqUHIzhUmLVfdDMjgbZqwWtfMrG8TMKZxFu0thnXox2xECzKlYw1QqdRJrz+ojbh7fROFI2HFsz5ozk6Lhy+Kjqf/VV9ZtfUEyyJzk4vV0ss3gtTWh4DxklAl93CdySbNsS51UCwNK8I33zbcrSvJtlKmCUs4iuvxawue0rr104gXgyRCrwEcFlMexHaQs0lOE+gqLLFqW2/naxzKippVTx54Pky2lBhnnzHmsnJKzqClh7eE0WAVaLKEVzI7MS5YMmZcqg+2rKckFfaGlKy+nLWr0w5T7ZfUKQqwKOY8y4rQaK48qdWEAbVIGt1hvcquxrCHUlH9L2I+3EWLVRL0rRSH7kHrin18rrE2MDVP6CeRYRL8oArkoF88trE2KtRBLM1GuotMaRdooXWsUbUeml6rNB8zpbO4ugBGyT4IxztBj3TtA82SaTTs+K8YYjdLMfi+aPfn660JD+73W8G1OFY7eKiY1m8EyGUpea5kmooqleLYm/ZT86sVpZtJYMpDAw/W5u2z2adXCKnzqXJsV/Ridywv9lInegLzTPNtKH8SBJEQ1AnmdFfqeq05KDeELo81nuazkVrLbjdyzghwXBymCAiIkZGATESv6bKVZYrhGgdaIUKTJjhaT+9zoUi0JOt5rpJYx3Fci266oZfUXenO5EuQJfUIHirEYgRWXz1zk6Fqen6CTIUced86zNr9q0RVeFKvrt6z02hgnfdt+rf9+axJ1fUaqSNJIsstSXIjD1sxAnYG8BO2NRksDqhvJyqm6FNmWMmnKBMuj7iVavfTiJLV4RF4lE48CfJ4irmG9RgnXguclWu3x0k8SJy12vs5IqdilKI345xd9i+9flHmjbLDZQXLNts5pov0vuKklY44JTwIv2W+8VdlnFtBK7mEBfHk1p+XWu7z/EggFoVJzAbjKA1RMJWWBFrSq1hNrNGTUTVod+X0osbDIQq5KUnsamdlSzlrFLlbevDRjt1wIb7nILbWqzNWBlFA8VUi0hJguYonECWkFPMDBpLVGsM0Tpo+6uaqn+6nlqaBZjPl26SJFXxw9zS3s2Kx9h+u9O9LtRVzXqN7FDq/BwRJbvyb9/RDzyp1MSqdbRLgKSTV3mUZTFcLKN/Rrolc1Apszizl8tcxKrEW6TByr7PxXbWLW7df8M+5hCrH7FJuYzTYpPskuZhpa1xPPmVh71gvih2rMZbmtzEL+CLLVQl8IqG+xG3MwTa+slste0MjHI9iBymsMdrVTyjgNlhToBzFb7KJq8lHjUdVJczGbZjmainVXSd55SDa4ezml5P4sxXTPOroOVhVN9dy9vlwrZ1uUo+vIANrpdgFAPd8+r4h/yMPPzZ39b5dw9oNsOrCjpBQhsNMOnp5MO3/vOHYEFPGTcsvDbFrbMsiYntYbivu5lYs36gyH2nS1EMwqkaq2jDmvTNQ6LFehX/SEx7KvzAqsx59fFEdu0ikortGmV1I+y0JDyyyeD/q5RbAlx2hYrpM0SsppmTZaPmpdfICdumAZsvEleMHBuBwSyIvKjgsJXHBarCQijgcDDfH+K/CT4Cu/dU5ZdvFuI2JTpSX6rQQYkGsGJsewCKXsmtdIrkaRZg54o3kQDkd5h4VexWWdSIfkjhI5OAIPWRxlj1afglsncHwG7m2ext4gOcM0/ErHdum8jBJ/rzElIzbv/ZST61q3yrOK7zbFKtayqx6yMP/NsjD1pK3CFbCfJvOyii7LaIW8nM4mHkoPYzTSAry+wgvSZBcv3HBy12ORJjGK9Rq1SWLYRaKB+X+2nVEV6TWakvoJqrJ+wOKecsLqc7W1S4iukUbFU2rl3SZRwZLn2Ax8JW/9/p83b/76X5uvtzrfvXnTsd682Xzz5tHbR199Wdqr+kS0NAxnjdSUFlGJjModUsvuY8l7f3QC3O4wW/tzkn+FOGubjEJ2YLWtyrcf3+roGJypUgfFc91hMGD3jG5XX31pJ+6I/r+b0P/m/Sx3eFY5rx+P1aO0X7TUc7P0UcNO8i6zY7KyTXkibneX52fzXKpz9rJP4RytvC1NTWrLV3T9xJBqY6TlVbfheVBEkplPNd5yxRpjOIhZlyPAXwSqyhBYncj/Nqec1ry365ZzMNbgDt//aSPhtzWweCsH3tzkZYylX9Aid6f4Rla9gWsWhIKFa0rI5/JejghbijtisaucLZAbdqGheM4iGeSVGmyWDVT9slDya7OLT5GzUdEon9t4jZRLsXS9JPLtmcW3N5Jua/WU34odUIMcUs2Xn25Zhx7iff0Lxd4+V49enbw78uU/+dUwa1B3ZTJ9Wte+IHOLVF5g9AmkNgnohSq1aqTKRcgCvExxgX290OyRzmDZ+jJkuFp0nFY4skQDVNuiBR2CnSvrMrWrc3Fd/mpz2eaTJeX9iExeXVqb4qgBz91BPgBlyNVJnCusmPpEmLqrYx+2KBXGIWwLlRdNWuKmZYsLwnfV3fd5/riCasWs6mwUV3DK0Rrk3B25JLOVvRDNHFN8kasoOGdwGzkh8uiXJA69/cYLLn/JQHOITCGhm3KnRXVTrok3nqQNPRMU85wea/RR8gGY+5TlFuKIV0BaYWBdzJg1laPUbRnz4mX5EW3NRp4F5u+c2Ow9hRJdTG3KiiWnUahALi2+ZmVqJNu8CuFyfEapVt+9fDJCB/Ar/dw8814ZbX6P/9Kqp8imizq4S/Ncl/lPa6Qrk/kJTPWCNikf9VCoiHWtd7Iyv4WZvk1aJCuUaaIqw+cIIu+vyEQ561Y0aMAUlad8kdj0Cl20BiZ47TatWEIdPvtoFadhjTHDG3fIey9JF903VX12uLnrpMjI2hyoHOaDG3VvblR5Iv/dnCk9prrUbTWrO1ZNL61Zi6ukaJMGDtPtvaGKZA0R9JJ5GmtTF3pexT+/slh7lHc9GQ+FPIZa0V37TTTLSqlh6OsT0CIrr5T+zX0ho8iyMmEb6B5Hc4u2xmz8jXUuUH/dCsSuLt4kjY3rtwVrfUSjMW32tMWrYfo5giYbgo3ewguDE3zlfSkw4vXJtXn2gaUOz0KznwTQa9u6noDWldcDgy6i768w3gJ3U20GFi+7c7GrBQYuMs/nL+0prr0bTm0vUD1743zJcxXyNsfca2cHc9B9n0APMX1HglZj52ZoU/Ynq9nPy9iHo2INfsin4OCKZo0OJtHalufe4ZGkt4uPIXFqrXYCidKJPqChj2PJE0gch6rTR/+0pwQLZqH5dOD67MLl7jsVdzLf/hhShQ6Xslazh7iIt9ijUaHJZmx4/ZlAoux+Y4mlnYBS7bh/CQa8g9Nvutq9JSNKvfwZnIUz88NqCq0QmVr9wqcmNwMYHo341zi7eb9e9ZIHrdenPlfg1UpHuplSFN710t5xI4aU1lQjK4jW/uRWEDceV7OCqHF4eyuI4/BgBd2THGuPVnyuVhDlrVXlnC+v5ZNG9LtltA6qB6B54/8SnHkXt3isbB+ZWcPMusqcrHYRjJkDqi6FWeX6l4Ij3WgtECoUQ0WsvSWd+TtYG+yily+xbbBicNlabcVoMNAlF488KtGI0rxTdjfK53Mnyq2IWjWmlSh5tJQRY5hPGY66A8qW4lUS20/AuMWBLkXuBUlNZv1kCLmKwCdX1nKjIw96aisghoXVwCPuaFzYiX6+gVXiqOCPwgt0NDwsHuzkUVd+6fRJcbHie1PynLPaRu0tMFXQNsptR3iViw6X1MaSEw8YWsR0D17svTo7OhvSkz2ig1Z/+PvhoKVXHR6dnQx2zw/2hsO9w1da/QanXTSklMi00oEJshGTl0dnhzvn/f2T3f7O7+f7e4c/7+4sbnV2+MtZf3/v5V6zyn1A5tVhk7qIwPnR4f7vi6ue9k9e7Z6eA+CjkyagOc0b1+/v75+/OjrcXVxzcHT4cu/koAlQSu4Gfb8Y7h6e0pwN1ayj11cIhjCenhCvQZrNrbLY5QJfuO99geiV2xnEr1zJKIK1FFjfLC0hnuuf0NXEbAlpaCzwy4pBjapai1guox00tXN3skEwYYy+7ijeSOdGjaihvv7ZExdusdfZW4WcP/58cY7pQehiopjLXJkuV99tResrlU/DAZ45ZPYGv1Xq7dyg+yWmN60v8eqblvrirvaGalfH9yMbGn0WnaSTkAcLxFgifK1QOqriDVroRb4Sz55Jl2/by3fSGQhXbk7ztizdqeXhldJzY/ii95UyV/nDvcVaNzdQEqGy6sGkzOfqG+v6/MQhTsIdT8/CI7H3/cKpevXTrVlGJeG6OIbB/PwY5iWooJCStDmFFJqkk5jY7jGtTk9145+n9CMQ6glyw/tfMpKRofcBcHyyBf/D2YPymVb1sYD1MyFR38f3Sre/2VKQZrmeyEquyK0DrhW6UHA2rcSeQ5c5BSwlz/adzEeS63Gk8pPKCfFHQ3ZP1zFfwDcedYHcJ2TMdhah8xzI5qNak1mZHwTMLwDrxQosqozXgl9C0tsjBkDYYX11uZE+E/fP7+SRXMU1U55QvvUtjW9ZqEwOV74VxsWperA8NleVcyydUAoh/44DJNMonS2+duGrFeljOm616DII0aajnLjSoarnVOph0XBEh6XxF2Yu9q5AGMekjJAkBHIlC6ZRt79AAo4tcq5Ov3uZJIkbj73UIKczLLDaZ8MqbcOUyYnpUFw17GF5hvXqpW+P69hoZVI2muZiiYJTRwRvdJzFdnszfFdAS5tgEk+9JFmqy7smkYqThiwXzMUCKDdpWc7jct0XlYCxOR1YhwU/q1Uxpm7WquLPTeHp41BzfmuHwRh5MeoEjOq0w1ZrA90cGgju8W7VNzrKK700oIT861cuGD+rGGOk9lhT6vkPEVbuYIi2w2zajgu2PfwH/E2ZJtlxaDKr/s3Qhu1ndOzA7eR5mBoEueNB/zDBUO6KoVV4Q+2kbSHE3dL2dVUdgxBqBl+JBB+ohoH2bW2IK2l5aqQ5qkT6RtP29Lc445evpmiJHwX+TAkGqLV0525BZeXuclGPbffp1ZT31GvBqbf71VZU8sRq62n7og0gsj2UBoNpUrGUOlxfXdnEaQL3qLL627ZcQIUDxfaae6ILi7yz3rRubqj7+KaFSds9HWqhRqut6Yw=\",\"GrGo3yRXVzWQsV/3dn+Dr2fHO/3TXfhjZ3d/F/54y+JnD5z8wMlVnMz3GqO4yJm6Ql6KGwcnu/0m3KdEyBZOhXR1F9RUQ20LqiYNeIAH6tYpIMUw34Lq5SjgIloVgoSL5IHFEBsB5SHGRRBlBHLRBBQClAuq5/fZLJiy/K7r+omQT9k36Ft5H6q2YuEd0ub1+4Wja7Wt5FN/C2uKZxwXz7B20/3CKS4++t1QkedZgfVTo5+jWLzglOua1GThlaMl1KTeki3q5+egBmFdP4982yGT0HdJfH7eaI032vDmxE3zSs8XeLnkP+jaB137oGsfdO2/mK7tbYFlSp9z6eVo5h//Y7OXYwQfH1UYsdLZaKRim5qvn5XzVD0FD77TXflOAvXqKEDfXCNn00XBsX+/KMADI38WQQBTVPYhCPBgmD4Ypg+G6ac1TCt15OcZA2iwlfXg+D/o1wf9+qBfH/Rr2e8HFz/HE138RY6/MS9gWc9fSxIIUbn2mI6FNqAiL0d+eN1nH2hqisxj4dnfmOabOhPMJWh1MRmZ1wAi6KeuE3pLXjHJh2cUd1B4wtj7gOkriNGd9YM0a2mn8FAWu/SwpxNOgWpuws76saWLXySLl+uys+X6WeweFmCaNlskv7zhDZjrm1//vC2WM3qzCwXNsrY7npt0RmHciYnDcsWLPdCCPVd0wH9Wd4Dp7cALrqscYPJdOxqEQcAOsLMsb55SfIHvLm3TW0p5MWZiswTtr7fayvchcbLYoxQHVRunp/tDQGFC4M8XwIN7SPAr2x8igkjEb7aU0lNvSsIsPfB835M1HrME8Cj2pnY82wckMZWZ3mABvDaBRULEuGD63D86ozh0Q7AqrrqOj8dbnC5MGfICKNPW9pOn337HbvpF8CWA9LRqGNI8eWQ3UDhKhn7iTSPkG0aQHSRo5rnPGb+06Uf5tjnmxNNr8EPleoL3HQaio7w9r9zx7XjRhM5nf3fYG7wY9I5/Hgy/Psb0dZpxh8dHURP/1Hvxzel35LvBzs8/Dg6/PX1/ufNs/Pw51PCuoHwXluH4w/Xu2dnlj6++/vaJs79z/fU1Lb8kMzZrT2mivYN9pbPvRn8/S/1nEXn/yv/xyPnr4AWDxm84RUFxp12WQdbVUE9sPM7berF3OvzZD47J6deXvpPt/vdFMP7AekzowVyapybkK5lNYX7YUeA5/g/wDmDgXvoyhqnaZuyGn6f2+5wj+ylm52Gq2dcoyCyz7UC9KpqCVL8E+ASCbzOlnT0fE1CSntN2neccF/Gnyjf4jbMO/RNQQnF5H2H2nQre8bME2Jm4VNyYqHpcMxR6rqi6PCZtng84wM8sowxY8EicQx7FHaQw7aUjOz2l/e251a+beUl+npFfOQxy0VcNZ6o/xSFzJgig/WM8eO35TOLZMkNXN3pcgCohBF8EpqFpADwX51X2GDlr2+c1JRi8WrJFGctNeOKjXJR/lTfqq3PkBM+F6Fq/sjsnwjhpw2fW3kR4UMrOaNwRjkLnSrRDUWVlstcOFXJT3dWnxAmWnBH6Pt8wu2ApvEbKcrz5S355VcMMKad/KqCIGobGmG9KSVnTHOt0KP+bINClXmmFFDsA+ffoBFcSjcOmrfPpMXbgBZJW4txIJa5oZUlyiXMkJrYmSXrCrlLR1orFs807QgAdfhmL21Gc1EJXGvPLRP8hOwJ2H6wv++wkYMF8Wsa3fbBQzwKmS/H04iA/+bAM8SmcTqYAUs9QGKa7SPhlWFQj4OcogF4wUIZXB2iqHjbB4RgAagzrenTJt9nVR/fBrnmPn1pJ2wkZkiDx0EPnA+T2Z2M+RRhAZg5EjEO73ETl0XWuCjkdX3o+WQprZQro4czPkuX/VZYEhs8LYBT3vkSMddnBC3DcTyxkn5qP7PeCwIvZyH6fE6uai/DUSWOQwJkLQWrcImofyyNINSwjKi3HMPK0tlhrNfdbFN8jj3B/UgxrCCxqj8kQb3qqNjebKzsGPR9/wuCzG/HNBmnONf0xacoyeKWAAZgoL1jQDbHPoddZ0KLWjx4ObjbAIH0N2hLohNXv0Ki+CXCuM5a0qYzqqY7xYxIhTxQMxvvQlqJnxcL8d7NMPr2WxrOjxMkQ11yrNh4syqGTQ2imauGj59sYQ73XxTnv9mGB1lbTHW/EN6mWm3t1jXVzGPWTzx7YvX9lw/p9UDWfkN/ODFO/FLeV5nARryUk3iEjLyAuv3dUswWKbMfrKM97NuI67AWNHeymc8VgaFYDr1cuus/4kGgsHhtsHhGSAd5Uf3ZQTi1q051gWUMFW3Vcs78OJAdbOH1BJvaVx2ygKhHgVTsXom496zcedo0wiB3s5cYrr58owRvHYRYxAla0pTUqiKWJZuPh1QsrCFBUZ36zcrPZmq3BdbgqPP6rCLe2oW3aiKIJLW34Q9RcyxYU348RMDu09/uUX0yrOVAeKDHRVyQDiMeJ9FQctp14bMyLkPeV8yvQxVo+L1yWV7FN5RheG87jZfoTLqUpNz7cIluLFzYqeg5ssyep3u7QUE45RNmyuNnWNt63siR04/Urhl097T4uE5vj9/WzuWGnVbI8xeQ+t1dlnK96+suhwJyEmJNiohxNYrkratFO75NIIy9O0to9aESpI6oZREV7XXsRHPmydhUkYV/UAakyJFjKyuLByHrGFcIPnUtjigItuLOJB+D3OvFB6JJ6UgFGHaxlSj+Yi/QFvCA3dEzkogWoYWi9VegGytkLxkO80pGM+T5XVZID7Y39qeLr+B4J0h1MPuaX/lctzTmUW0xDA4xUOzDwkgmmdC3K4GCgWP3UM69YXtIHLTtLvIX5IAyal9iivjGyI5N4FoOalp5+z0WSGg0nhtdfmgBmrYTp4eStK9NhVu2JtW7SEw4quzjJL0K9Af8gZduwixg2q2dN5TIylrjDcCM8cVu0y5ErimFPYtI4B4q2Y83Wq33mbXkTd4MJoBh07MrZtacX3jgLs4RlarGhNMh9UoELEGyuGYX0N1dyj++9Qyotzgr4eZs7l86mS24RRWxXuwKvS+zlTc2NURMtqoHtkBTPfSwN0mXtTEb+BF8aaQ6Q1TcAapjIp4CqWRaU6+obg8vbVOpgITLLQNUbflL1nrCTOUsgL69FN68UK9Cj0PDTLkKiGnfWTQuGsk6dhFlKBZuePiAj7z20kQtLbrepi4lMkufLCr2LNJkFTu8d3j5usvloAdp8WO2uTGWEzTC4T3sZs5LJe+PubBGvjqhbigAwkDv8DfrFcGh1fi3+Cso6h1SjqwNyzSncBBDUlm86FQa30KNQoFS4FYIBTshVIzh5bRMo311iYFC7amCmxwsbQGym2ESthpQT1SvWjrQpa7GaJhBQpd98kPhXldlGzVN+pKB8KqD3lUmD8MJVdAdOlym4yCB26GyyWr/g2aBdagmlswNMdAbUTjJ64gk3xfbGQRiTn0RNWmPAwEhl1ERTia6hLr0H2pFvzZWGTUtWOncx8syBbPy+EkBvyk4ClUGyklsANc/5bcCKOGfxrZBiH2r5bcOeFYymdnFbbmvIYNqoS6th/qJJIbJ/rj09snp0vxRpnpLUroo2Y9kdUf5+iM01GZPm5rSmNLkViXFcPPnNRFyleCUZEqgYZZMX3gqwnb+hZY4T8tL2bfqrZA4OsZP3c0/8Uu64zDZNdscUxGs3yqZLbu8VzravuL/HLgBYZ590b3SBSBjvFDIwl1p+t+yl9nTPDKYRocRi/M6spjOkH/JfddNX3JfVsFflHi5jj2HF89jlnpcUguIFCCuOd8Eus5FHqrae+VVoDQdQuGlhRfzz9+mXGYGcNX70/Gcyk671khNpFO66FI27FWbs4bZCfMBgnTBttow8m5NDVN25ZNaANixdBzefOmUZM03c0qIX3y6zRGWUuiSHu2UUmry3HkY5YwNehlEqUiqEFV6YBeUWi0Uj4jbrYuYoW/9m3ih4HCvyL8Wt6LssgaTmLpkRVda/FZHUVKS4+WKNGrK9Dk2g2JRMbNerCpTUsdtMNQVD9UQhc66ArBPUTHrRnFQ1Fr+V6nayIq+2ak7AonIradH1ceAK09uABRWzYx1IUnDrxlEkd+2+jzx2v09VrkV0Xay0aG9AXFK14yWOHbu/QSFJ1E737SQdTOwAcK3pVa2xcpfiGrSmJq9yFdud+HxNhEYs/s0nvFKMZQ4EjHOM1+vJIHjJbizVWimsob4YZkwU0yqs0ehQ4d7W6DhRYDW0OtTuaTgbD2K60I3R9pKFK9FYtjZHpW4HPPPMUDNvNXD0mk4jJ/CiFcDyLd70CV6/dRRJs2l65Tgqa4DJld+xx57XPmYHgemFgCmIDTOy0ywODjPffxnGB3iFXTBWH0VmkguieQDwlZ/H/MK7K0KfNZ8pRcPsIo0J2aH3sMkrAzEJk99vxt5Gp2f0TuMsSZmdG7NbD1p/ucErs7wAr7D0u64Xz3uiaS/F6hjSRIk3AhFHvBoAo3AidlLBCIulnLZ++hkvYkuVgtY221yZF6658wIPxQK6I2yfpHCo4PWNnrTeond387epr4glrwb01Eu/hKmoXNam3LXXLsKEYXiOxd9ltrjO1gHmtwGWoSo3BZZA94MwmE3DLKnANCbjMkT8aACVn1EnrnXl2ZaDLEeNcFKEi0VlwPSrATLeNAMw09AC5qcGqSWuWrRSO7ksoU0/KuZaoR+9uNzhMYj1KIyn+O78lYd3QIIMFSgU8TodtU7elbkYb9sr5OsDBxl5I09pV96Rp4VdUTSnqNPWtphHvWX+WdZkBxdUnEQJv7gwxEtp8A7ADktbxGQQRSrCjJ1NYoeU2MWD4A1OQpcuJiyPoSVUJbqsYYApGqDghJ5oiZfm2Z2N7L15vtobnlqP7BQpBoX/s8lNhI+CiI82v/y42ev+9dEjOg4FkTvpX3849kvapxbXl1mdmzwxpOuAmoI+4E+KsPX8+XMLFesj6y9/sTax13BkicryRAmttpEF/LDghvXxo8UW6e4lmSWbpQbdKTcG8udWH3XZGWsKa6v+OXukURLh8WxtFPyK0M0N/elUpNrGoy5jAdFws76HprOoXDQqln5Q8HaAF7u06L46KHsMRu6+p0fJke7chZOH9+RvbpDj68woeFfhJRnkyT0cOfhr7IcX0Ab+lJlu0H+PdmxN7MRymPVupRMvsVi7rrVP0g34RYjljSwvtbAo9XyfKieYiq71TvvfkI/n8ZughlRzgel+ON4Hi9ynHi69Qph9xxs6PYogb4JHZpMRzJM0B/BHP3CP8YJauibA6p/AqpRb7mggg4wjwSS92C0L/GaKLfFbXFNKP4kpETRl95oqRC7GuEtzSXWvYwfnmEpyxXTFMpNamsUgY1706QQtI3YjJnZA42P61bCbmz3aK03LsnxC74dF7LtBeP2bl06ORqOEpPM3rUdW/3DH2vyPzZ4XKE3wkmF8wkX7OK6D80ha3GW3i88BtZ9Sdt0rVHq8NWX5hcnlULg3YCdGaHshJXuCcH12kTmlaCevwSelpq4on/NumsjClR1bEaoY67n1+gYGLG/SfdOytuE3MAvec/+m1YYfI3xdmRf0tAvXWTk9tcnLGSXhx/zt394EbwI/HMOq3HXJRTbefNMCsxTXUVyA+3wwFh+NdQrIW2Fg3cytzZv5I4TtBVGWdvHa+LbF6L6384jCFWsoHcWmKGtblG/Z2B79jarmv9VL57XtpWBaDxjFc16dlwVUMHsgrpQuCqEuYN9+82yL3fDbXIwIRjPuWYg09vfTJmJkEKKmongHIsSI1kSADDU/L/ERc9FEgGjk60F8fApOC2kQKjLoA9MugNy8lHriX16Eoa8Z4rJxl7fsRrKpLEzmjEeoTB1TEDf8F19kH2/NVeT4ar47OOgPJUPl5OuG4KBMeSQUjDtqG3zXVmugPEwjsP+63F3MqfMNkgbQeRWH4RUVmC/G9E9wohOqHrqMd7t2knbBgQ0S5BuxjYO3p4sGJI7DOOmm4AJDNZyqx1t5KcggMhHlP6lxCoUgsxf0Nu1CMR/GBT2t0frCDmYWDZdYaD8HbmLxej6YY92hIFihNa2bMFeuy4qUSix9q3sxS4FWLnbzuPttudwFSUFnaCZjDnjjOAs4ODx4VmrkBa6Mm4iiazsO2F2SLd+7JP7MYuSzvgjBYQZxpNKcWK/BVyNtVqUdheDmwpy0IxsoHHr22xa9/QEB0t75owWGaIjvXeR1JT8IrIrfK/hEVmQaDC86D+nF69uts9OXnW/ZwXllK1IqO/4YALvRHP8s0VHD9sILerx20su9BV5nMQCOiMj9rqgMPFqs3clV9oJGEi1VVgk4unRXncacmBvMLskAVz4ed0F0QAmHzmVXqgzWRFwd/zOZ4S16oO3w85BHwPK04ZEId4n26Pdhra4fsm3Nj3WhMFn7D4dcgiKSZwj4M0C+Z/Pwb94Dx4zd1N+lVT4a7qmfo1PNRrPHIwpdMeFM9VK4u4eDk9+PT1v4MBH7iz1ItOaeTTfx3zcOIuKyBiwmaRol+VxjRKyAC06/j089mDD54xqWH0KfLelOQ1yE1k4Z6EL0MJnaDqBaQDCvgOUdqNAQUwzs5SdXKBLDvVeH8PvX3ZO9l7+XUEyIP0q4tVDuQSldOxFU2MnEjolbpoNSp4oIGphlR78W1s3397vy+qYlqMUyUq48l78kZlRYosbHYRb8NNidC615bApx5q146UcWe/FS2Y5bd4Y2WPIRuvh5OM9z9fARsUCoWxayu1NFnW9pNFPVef2Cmq4jrtJJTt6zw3raqo2aU1dpxehbpi7dY+H0VQN4CntfXmDCEPx7rO9R5w9kcUukHyTXYEufhuw+ttb2k3LRrySmO1SP2y0a2RVbZo/ZGX0A+9vExuDcDGwSa2RfhbiFbjmhH8b/1UJ/+PzVC14Lw3ayWibrZbTiCD3eXzLig4cK/VhXYRpjOagraBHFf/5j9Oc/4F/yX0iRJ0r3oXVtC8B4o4qFu4XhjABY3ZDISSR274EFWrp59VqJyaov7ImjCMpHBC3rjuyp58+KlZNAr0X4K3uyAv1diG23eszn62nv21nsZVgJqvj4nQSpF1TBtln5Pi5xIBpF6IViFT59Rm8B2BMyhu8VQFmhRibtebx6cuDLfGZa8Df7CoSgX6tA8gf8ivDyd/3yUfNPlcjhw4UlvPCjCqX4xKHGHBhoCQoMJB+OrBJ28CWmOP0sNAGFW90t3BPyBlJtwkKThsEpjT+18ME06smBKxr5ttANv5GNK2KxnRzXQlESgPPXmH4PM2sK2oduz0WpBT6VbEFrW15ggaIjMe4fRiwi3qU30KHHzp53u9GO67aebD3+rvN4q/Pk29OtZ9tPtrYfP+4+fbL130gDBHmKzrGfJzhSkd8H7Te1vCjJppaLisZKPMBqStK2xS6+TXFn3rJdL/ISB+MxBLi4bSWAqRtaxMsSMIQsdu8XYO14rudinCZLLd++APAWSRloYk3tcWBbIAbvMrtrnYF6AQ0JsNk2sQXawLOnbetdBtotAJaLMxd8aBKDnFC8rcz37akTMshYyUs87ImC9CKobBHbwhfeQkCODgC6SrvWDoK0wUywvDgDTNhYgcgxiWIyAS8dX6/CD1ehn0UoRIAOjBQUaAK60/N9QSEYUGaNsrEHWhjjSLYF7i78yOKutUvv2EAtm3hAg9BxbAKLqeVkEV5dii1gFDCfsPQFSEWkFHTqZH5k47itcDTyHM+2XAJsiaXT0Ec0bCSQ51J9TkefTVV+4Nyqs3Z85ZOU7XeBeMaJ3AAdKKYEcXyYfnC5SJrOuoQ83urylkl3EINHfxR7Yy94Ka53xOSCY/DvpyzpG3e5B2BJ4iY6jSAyj91mu98/Etul+60txujt9x1h4om1XPkEU85sa+WbkOQ23TwMUnq5VjukOEG1mG2SErdz7dGLmXnHB2JPtfVq97R9fDSEf85O2+z1vPZx/3TwY16ZjRArU0dmu9eT7sp2blFgEhvzdNDqAAvEC45jMvK98STNo4FZ7B+zTUNqfva+alVOSWTP/NB2jbNSNvDY/OyjNjtmDYcMWsXMTO33fAcZ34vbCw7I2MbwEYbJy3gqQUIGlRnk8zr8s+gTob/VBH+GnXkY7BFULbaQl4iN8iMlg/N8qh2W4C+Z5pc48ICgvhAshuPRxyDZHmTQtFEkX3DAkIg8CV+3G8y3oav3uZU7XVr9gxd7r86OzoYt9hTzWjrQ8g3Whurw6OxksHt+sDcc7h2+WhlfHm3FMBuIfP9WEFT0THi1+sPfDwctveLLo7PDnfP+/sluf+f38/29w593dxa3Ojv85ay/v/dyr1nl/hA98yZ1EYHzo8P93xdXPe2fgII9B8BHJ01A8xlrXL+/v3/+6uhwd3HNwdHhy72TgyZAKbkb9P1iuHt42poXDrCghyuZoSLdm15SMaJbj1hd8VGUZGFdIdWpnSFnOP5T3gNyaz1UBXg5xVQFxaipakm9PnYwa7F74pzV5HkJsWusWZaVtxqNuhb5X0YNafrtlkK4cF01SWli5Guz2PZlSFKA5efllpLRSijVAlnZZEk7wU7cEf7/okVtWfNAwNVhr2oimKEtu4A3wuc2YvGJVv41zMKDzXBvNoN2SnEpZdVefjU26TeajlRQZ7nOExeyNVNg5XYGlVWu9GAiPJgI92ki3KvMtRes0SaZ1GwYs6lh7Ow2VkcTgNUGSJPWD2L+IOb3KeZmy/3TS3y7tARWr8tKwDLzuvzsTE+ctHJsZ0J2RYY0C7rzjIkdD/d/DZv3mcea9/LEJ6JDkEmIi2Hk+Yr0ICg9TSPD/Tetv3dexqAmOvJoaGvYP9g9Otl7tXfYYvFbnsl9EoY4+F5+kLA86MhrsUsbCiPWqSB0XAMyRN5tiQAQVBIYxgNIG0dDApcngq84iTmAAuaN5mFn9/B38wyY0Q2R7qsjS5vfktgMRj25aZ0TeoxYG0ePJb1ksQgL6L/zvM9D5fIVfuSWn2DC3YwwPRN7yvLyDZumlhJ6KLbQmO2wYsosPX8LfYprP6Yg4ol200vSoxW7kXoUk+5hBl21Hk1kSVgeM0s3BewaQMd6TYFTmDTfneb/NgHPqzbtQUCeK5dRnJCEpJKu2td9+soR5nHnlzqop5l7+hFUnHF5GrWiYn60mNbmXhBNBcB8CnYMGlmD7elpzOTayeQitOmLTLSbHfGB2TZesiOyiBl/c3r8knnOpTXEQxjQ8tpzx5iIS/fwZdtJTEZQ9Qt5pDXBHJCeNL5aI7uDm8gX7JZ/DrnvutZAtKCcL+DwJaYMBArg/+NL9ZTxgKYSWOIaZBWOuPBC2J+MnD4QSgcL6sG57CTvMjsmnTAHzU6rW+y6HR1BbpQXEUxRRaT6GHcIzZhU2yvJG3TNjJXZ0wGOia2OlWsAwEmd7yrQgh9j5MdmcOULr4yza6mJmBuoyTW8TkPUQUkB0RQvzk/qGud4DWdJSqbWsbyeJKH2VALSAPV8NETy6NA75FnGsswYUZibiyrvgIM9CAMPmJB59iqP48newD3BnD26twuaG9TJ66+3ttpP8B/4/y1A45oQkPXXj7faT7fa30HZf261v32MJTOkM5Zglj89L9N+zE7NYHtoTC9Les97aH3x5NmzJ0/pHq8XyI8XW+4zh56UMg7XzlyPTZW5nF+WzY401dRLKDFgCfbTyUvwl2jVCzvGZ11TOj0+lV9za99OwGvDiVxAc/FyArAYvQ5bpzjwL6bu0OP0NJ2JcY7s9X0nmeJRBeXVngy1JRtX3pgq3V35VuiSrVnXUjs17t9IGSE4+yAqi4jzIku8ADP9jMQZx3Y04Us8CEvksTd32U2RLC2VJhWIFb8n81LfVg8A7f09euEb6+rUS2mK7RC+d7AAES70DFwhe66Cq62GZfC6pjH24gMp1jDAgFyr6rKMyiG5tvQaymQq4Lwp+YDJfKAJJjCjaJNu/SeT1YwmeLS2MO8uIGObJeLhSjrPCR06nu3vh2PuLSj8xopWZlfQyJntFwe5EEg9KwqHT7UcNEltxOwwLzkAINxiCL8RH4wwol+EARYMMABN/ka/84IBELd/AFeEYC5hZvOpjeexrjxy3aIZPT2Z0SPsKLTL6dLFAfbU5r3jAixEQRCECko/ABea38SzZEclAL1h8Uuhyyi/jmvJvpSVsgCTJpgTl5slS4I9VRsXIVNPph9Ffn4T5FLAjwrti/Dx+g3bmQG5BixKuDxRCgCKMwy6hhkBS4HNpnZvyJoWANKl+UcvocfdVoBKz+CX2YIfUh7k11AtBbnQvNfXf9POtCBOL52QKXHEg+vSXLvCv7rwT4veODJh/o6w7OhxDXBy2ZlfzHJPQ+6b/i+01WkqKQyuy6/78lEzgnoMWX4mmhzHmLe7x+sB6AlhSYutx0+2ovfYV+zk7h0F0IF/Q3A34kvu2KViwSnAAk1EMWagWP81XRd7CjvUGQOa2X7neuLhoeSa/ujzhukMjJIJYfqv5SRJ7wLogzo76jztPus+7jggXuG069B0fqyAucROmuHhNPmNzgb9rczSNblgFwlBpfEHL2KZ0lrIwgvAFHSVHNPXmGTa4jaovIzgpvWlh8elldxECbwLFbvsUHXyEcrjcTeMkmd/dCP4DrW6eTUO7+OTra35XL3qKwfm0yPcwJmYndrS3oMvHwLHOl1e4yNdWdm+ObsprISyzHr9+O3Wt1tNEEiaYJCsgkLy8dtnz57OW+IWNyJmJEn8AYnTPuZ6GrpqeDCxdmTTLAXboM9CYbXDYzVRB5fHqEARl1/WjjqHhUN/dndDf0uDh2C+8DP+32yhKsJIOP2aDMLw0iPyvpwQpPVYKZZ3+Oz+vT/Aw3alGgxkjKd2MPyjF3Uez/9/NrLyhd59AQA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.819Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "b184093074ffea48d93b8e1ac0d9ef4a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 425, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/access" + }, + "response": { + "bodySize": 1551, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1551, + "text": "[\"H4sIAAAAAAAA/w==\",\"xVhLb9s4EP4rhg+VNytH9wI5GGkD5NA2m3pPQVDQ4siemiJVkrLrFv3vOxTl1JIl2bKd7sUPipzvm+E89XP4Bfnw7ZDFMRgzDIexkgnOzfDt009atKgk/R7SgxTsQnH3RwPjtJAxa0FLWlgAE3ZBS1oJcDuuhr/C3eNX3edRJiq66jgv1BxlSJ8qt3uiQr+vIpHldgHSYszKR22SV0wgZxYqUhsE5hZFtN38Tw56c4eCnp2utDd0lGNEVFPwfy8mbtxlTvcszo1V6YTs9MOdXkC8vE8mcnMHzOYa3ks2E8BHT4GGORqrC0MG4SDImDFrpfkjGLDB819H0TIgEgN6hTFEyxm7vZiynJnFTDHNd4ShdNuYiNxCpDKQyNOxcwml8QfwTqxv7m73vTPxZjFdTkpmetC4QgHzYmOnQ2Xbnadb4UVEZ+yYfJaifYRvOWpyDGnNURG0e2O0lJqJ5HRtHL3cV8UjD/k3K6OyDWbPhdF82DxolZBFRvtOGe7fa+Y3dxqvR6QExDo4EA01JS/ls/s4xDJlFc3OAvDrDTakQDR0xX1xmk2aofMaMLbh/iqoR+jFU5QNKsH3WOQcHrwoLzxTofuIqipfXQCxIjAmNSyEhTPmhXeHHATQF8HEiwbjmo2xkB5ziy3a/gY3scbMXk66pVsK3YfP5KFXzqfl3NeKUOAKPm9kHO4U44N19mydq67F0TAh1PpWpSmTfFJsrblX9aadK/yv4CfqHnuQPRLah9Q14z51M/HANCMCoM11eeieD25ubgaB98dxyrIM5XwsUC5NcOjGCs5uaw/azVFRRICPhgoCUWRz4B2GyQSzidLpmHL6Cg1RJP41pJYqUBV0CkRbzO2qVibQfFvVuqvQuchtNTZTAuPNBezYr9j0V+DkenOaAkdW5bOFF33UWWYi5fkUUrf1YCqF76V0uh0UZ8FeNIP/QX8+t4/6PWecgUFSe5ivdXLtiTpDSX2GdF97NUGt5Ttm2ScpNk2tchl9vhr0bYPa+GzTegeTwZs3A0W/3lOlcj31B5/3P82+QkyTFUFoi2BGQU4BRaPo03NxxNv3PqEd1IJY4BNrNc5yC7cLJuf1aaDsvXzT1XABr+dNFLuZIpHRHCz5vnvhAoYiwanzeuPrLqplZmlWCOvT4ahlyEq/2J+/piS/Zu4GC6+VXibUF0WODkpjmYy7CuBRJqiNFEz6CbKB0U4H/qdpoZm4hhD4VH22TDundl5QI+gbh2Zupd9s6Z2VlXhHJ1oH5JCgLBrI/hapN6SGwpMC2gXgVN0hCG5GTy/vleqvlNr7QRc3R7CJKW0cvBlKRI8gipxrFpiV2WYzCr4QE0bJJmHCwIG59AXfMXPnLus97RylspiUJcMQWavzBq5NGf2F1K6IV6V9q4QAPwo9Bcgz4rs1cl2RhpeLDT1hT3doZe6t83GXwZ3SU6YpcfYbq2xxppipRtRCWOrErg3EuUa7ud7iFwhuAsuUpII/+HsQRAF9HjiA/GB+3TViL3M8//oPgcmj2Q8YAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.865Z", + "time": 71, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 71 + } + }, + { + "_id": "81d93bfd62ed9b30d11aef04d6706d33", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 429, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/apiVersion" + }, + "response": { + "bodySize": 659, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 659, + "text": "{\"_id\":\"apiVersion\",\"warning\":{\"enabled\":{\"$bool\":\"&{openidm.apiVersion.warning.enabled|false}\"},\"includeScripts\":{\"$bool\":\"&{openidm.apiVersion.warning.includeScripts|false}\"},\"logFilterResourcePaths\":[\"audit\",\"authentication\",\"cluster\",\"config\",\"consent\",\"csv\",\"external/rest\",\"identityProviders\",\"info\",\"internal\",\"internal/role\",\"internal/user\",\"internal/usermeta\",\"managed\",\"managed/assignment\",\"managed/organization\",\"managed/role\",\"managed/user\",\"notification\",\"policy\",\"privilege\",\"profile\",\"recon\",\"recon/assoc\",\"repo\",\"selfservice/kba\",\"selfservice/terms\",\"scheduler/job\",\"scheduler/trigger\",\"schema\",\"sync\",\"sync/mappings\",\"system\",\"taskscanner\"]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "659" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.867Z", + "time": 71, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 71 + } + }, + { + "_id": "37717db1403fe0fca4c76faa7b01295c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 424, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/audit" + }, + "response": { + "bodySize": 859, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 859, + "text": "[\"H4sIAAAAAAAA/w==\",\"tVVLc9MwEP4rjIbhlLHhmhtT6NCegHBjOowirZMtsmW0spMQ/N/ZlZVH26ElgeZgr7XP79tdZau+oVVTpTuLUU3G9wxCjwYufFPhQk23SvcanZ47eCvq9z008YNurINAavpV+bAoKn5A8OZ7kUIUy6wvDPXFBfUPPDnZo363NRXXNZ3uR74prvlxnidF67uYAsyS+HQY30KDts7hsG5d8RlaTxh92JznznkhnAyANuT8opil10Pvm4kymuCqIWi4OOzhEsHZ1MJSGwNE5TLGtgzwowOK5RK0lRZP7qup9Rxkr+fAFTqu+KN3aBBIZqaS2CLA2rjOwlXFedgSm6PPYZioXP6lD586CMlbSSsU6+DeqG2VcZrE4vwZMPuxnndVxRmb9FHr9Qx/gpq+eS2/iVoFjEwWw+q144x8/qJG55BSZY3sQwL4cu69GLza3m1lLmesJtv/iqGDQQJwi95hACNDkpzF0eqoC4thKHcL2egadoRMVPQtmtSwsSGysYY7iXHDIm0ak3Y4LhkxGh0xeWXEwvYpBP7VKhzYPIGRHHnHSaUdjaRktKP+OfGevLNn4Qwc8s8oRfsfMN7kNfmS42x3cViyUOnOjVj4QIZvt6uiJhOwjSItnJ9zfSxyfeS7YKTCsiTQvAGUerFp5WwRvO83ajjgyOmGo7qfTi2mfIkIbBNAR+AMXWtHwYKDJLQ6mmUmhGHfHCfdU9Ryg1c+2MNttjuRm2klIeCglBj32HweoiKsY3nLf53Z+Zixu/mH4/F6Zt5yIj7gu+cR7PsZNWOBaQ6fME42ApOvfGglM1/qtY659H+h7jcGIE0gqAgAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.868Z", + "time": 71, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 71 + } + }, + { + "_id": "653fe2843bcc7fd80db785216049a251", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 433, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/authentication" + }, + "response": { + "bodySize": 1661, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1661, + "text": "{\"_id\":\"authentication\",\"serverAuthContext\":{\"authModules\":[{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"augmentSecurityContext\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-reg\"],\"password\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"fzE1J3P9LZOmuCuecCDnaQ==\",\"iv\":\"nhI8UHymNRChGIyOC+5Sag==\",\"keySize\":32,\"mac\":\"XfF7VE/o5Shv6AqW1Xe3TQ==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"v0NHakffrjBJNL3zjhEOtg==\",\"stableId\":\"openidm-sym-default\"}}},\"queryOnResource\":\"internal/user\",\"username\":\"anonymous\"}},{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"defaultUserRoles\":[\"internal/role/openidm-authorized\",\"internal/role/openidm-admin\"],\"password\":\"&{openidm.admin.password}\",\"queryOnResource\":\"internal/user\",\"username\":\"openidm-admin\"}},{\"enabled\":true,\"name\":\"MANAGED_USER\",\"properties\":{\"augmentSecurityContext\":{\"source\":\"var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield);\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-authorized\"],\"propertyMapping\":{\"additionalUserFields\":[\"adminOfOrg\",\"ownerOfOrg\"],\"authenticationId\":\"username\",\"userCredential\":\"password\",\"userRoles\":\"authzRoles\"},\"queryId\":\"credential-query\",\"queryOnResource\":\"managed/user\"}}],\"sessionModule\":{\"name\":\"JWT_SESSION\",\"properties\":{\"enableDynamicRoles\":false,\"isHttpOnly\":true,\"maxTokenLifeMinutes\":120,\"sessionOnly\":true,\"tokenIdleTimeMinutes\":30}}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1661" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.869Z", + "time": 73, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 73 + } + }, + { + "_id": "aec85c9f6664d9880169fcf8d9d733db", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/cluster" + }, + "response": { + "bodySize": 179, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 179, + "text": "{\"_id\":\"cluster\",\"enabled\":true,\"instanceCheckInInterval\":5000,\"instanceCheckInOffset\":0,\"instanceId\":\"&{openidm.node.id}\",\"instanceRecoveryTimeout\":30000,\"instanceTimeout\":30000}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "179" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.871Z", + "time": 70, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 70 + } + }, + { + "_id": "8b83418cf28acd1b939879c72c951589", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 450, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/forgottenUsername" + }, + "response": { + "bodySize": 743, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 743, + "text": "{\"_id\":\"emailTemplate/forgottenUsername\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

\",\"fr\":\"{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Account Information - username\",\"fr\":\"Informations sur le compte - nom d'utilisateur\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "743" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.872Z", + "time": 64, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 64 + } + }, + { + "_id": "ba8f08c2397259b7af7094fa4d11c519", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/registration" + }, + "response": { + "bodySize": 431, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 431, + "text": "{\"_id\":\"emailTemplate/registration\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

This is your registration email.

Email verification link

\",\"fr\":\"

Ceci est votre mail d'inscription.

Lien de vérification email

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Register new account\",\"fr\":\"Créer un nouveau compte\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "431" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.873Z", + "time": 66, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 66 + } + }, + { + "_id": "71086d44381b7d81178ecc45f4989855", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/resetPassword" + }, + "response": { + "bodySize": 455, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 455, + "text": "{\"_id\":\"emailTemplate/resetPassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Click to reset your password

Password reset link

\",\"fr\":\"

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Reset your password\",\"fr\":\"Réinitialisez votre mot de passe\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "455" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.875Z", + "time": 67, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 67 + } + }, + { + "_id": "82e1f6e62e8145e19f78445f80160a4f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/updatePassword" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 273, + "text": "{\"_id\":\"emailTemplate/updatePassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Verify email to update password

Update password link

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Update your password\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "273" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.877Z", + "time": 63, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 63 + } + }, + { + "_id": "76be78f43255ef6c7f0ec368787fd6fa", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 440, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/welcome" + }, + "response": { + "bodySize": 420, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 420, + "text": "{\"_id\":\"emailTemplate/welcome\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Welcome to OpenIDM. Your username is '{{object.userName}}'.

\",\"fr\":\"

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Your account has been created\",\"fr\":\"Votre compte vient d’être créé !\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "420" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.879Z", + "time": 68, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 68 + } + }, + { + "_id": "8996c88e14b7ecbba49105dae49641fe", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getavailableuserstoassign" + }, + "response": { + "bodySize": 116, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 116, + "text": "{\"_id\":\"endpoint/getavailableuserstoassign\",\"file\":\"workflow/getavailableuserstoassign.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "116" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.880Z", + "time": 61, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 61 + } + }, + { + "_id": "e504a45bf842a314f67c6419cf0b82f3", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getprocessesforuser" + }, + "response": { + "bodySize": 104, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 104, + "text": "{\"_id\":\"endpoint/getprocessesforuser\",\"file\":\"workflow/getprocessesforuser.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "104" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.881Z", + "time": 59, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 59 + } + }, + { + "_id": "340e7202bcebc2ae1e41e59ead8e6dbc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 440, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/gettasksview" + }, + "response": { + "bodySize": 90, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 90, + "text": "{\"_id\":\"endpoint/gettasksview\",\"file\":\"workflow/gettasksview.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "90" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.882Z", + "time": 73, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 73 + } + }, + { + "_id": "050b4885370dd0fec91299f44157fa98", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/mappingDetails" + }, + "response": { + "bodySize": 121, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 121, + "text": "{\"_id\":\"endpoint/mappingDetails\",\"context\":\"endpoint/mappingDetails\",\"file\":\"mappingDetails.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "121" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.883Z", + "time": 52, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 52 + } + }, + { + "_id": "20416931a8bfbbe57c7d8022c7cdc8d8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 438, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/oauthproxy" + }, + "response": { + "bodySize": 109, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 109, + "text": "{\"_id\":\"endpoint/oauthproxy\",\"context\":\"endpoint/oauthproxy\",\"file\":\"oauthProxy.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "109" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.885Z", + "time": 53, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 53 + } + }, + { + "_id": "950d0219de4cf4b9516ef30be6bb5836", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/removeRepoPathFromRelationships" + }, + "response": { + "bodySize": 126, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 126, + "text": "{\"_id\":\"endpoint/removeRepoPathFromRelationships\",\"file\":\"update/removeRepoPathFromRelationships.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "126" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.886Z", + "time": 61, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 61 + } + }, + { + "_id": "4e2d4c5a497442e856fc60f741d3d798", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/repairMetadata" + }, + "response": { + "bodySize": 91, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 91, + "text": "{\"_id\":\"endpoint/repairMetadata\",\"file\":\"meta/metadataScanner.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "91" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.887Z", + "time": 50, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 50 + } + }, + { + "_id": "0a16240221eeea51a0aa371b1b13ad9b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/validateQueryFilter" + }, + "response": { + "bodySize": 326, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 326, + "text": "{\"_id\":\"endpoint/validateQueryFilter\",\"context\":\"util/validateQueryFilter\",\"source\":\"try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } };\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "326" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.888Z", + "time": 53, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 53 + } + }, + { + "_id": "acd8e0a1115f4a5814282f28fd6a895e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/updateInternalUserAndInternalRoleEntries" + }, + "response": { + "bodySize": 144, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 144, + "text": "{\"_id\":\"endpoint/updateInternalUserAndInternalRoleEntries\",\"file\":\"update/updateInternalUserAndInternalRoleEntries.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "144" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.888Z", + "time": 67, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 67 + } + }, + { + "_id": "663ad29a28f7c57cd35b8178c4fdb1a5", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 432, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/external.rest" + }, + "response": { + "bodySize": 86, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 86, + "text": "{\"_id\":\"external.rest\",\"hostnameVerifier\":\"&{openidm.external.rest.hostnameVerifier}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "86" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.889Z", + "time": 59, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 59 + } + }, + { + "_id": "b90c49fb8e97c6a49c1b99e8b28c3228", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 427, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/internal" + }, + "response": { + "bodySize": 353, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 353, + "text": "{\"_id\":\"internal\",\"objects\":[{\"name\":\"role\",\"properties\":{\"authzMembers\":{\"items\":{\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}]}}}},{\"name\":\"notification\",\"properties\":{\"target\":{\"reversePropertyName\":\"_notifications\"}}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "353" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.890Z", + "time": 61, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 61 + } + }, + { + "_id": "a691ccd864d3d6bd4cec893c7df77b9c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/managed" + }, + "response": { + "bodySize": 5007, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 5007, + "text": "[\"H4sIAAAAAAAA/w==\",\"7R1rc9y28a9wWM/ETu+kpJ3MtNcPHUWyO5rEluO4aWcsxQMdcTrEPJAGQckX9f57Fy8SIEAeeUdZsuMPjXV47i72jQV7G78lSTyLV4iiK5zEkzi7/A3PeRHP3tzGKSr4z2s6j2e3MV4soJ1c46OiIFd0hSkvXrIsx4yvYYFQN6xmVrBGVotuJjFFKwxNZYEZDKYZJwsyR5xktBB75vWst24nzM2zgp/gFHMshhZZyeZiLYbfl4Thx1/V/VOS5NN5ihEt86+eHDC8yq7xcUYpQIyT0yQ/QRw9ztLkTOI+iRhWy70A8MSv9yUu+JN/hJa2wWrf44U1qudmQA++zgVGHH/gh7+ha1TMGcm5wL2YL/EKCbwfmT/jJef57PDwtwIAUY0HGbs6TBha8Ok3fz3UAycxmWcUxi/QVNNdckDJ6EzMVcNmMHW2gP9gls3fzeAYKElWM80mM5ST2b/V5BXiU71ijrM8xYKHWAJ9szeSuSbyeAV28GeOiuIGuuHPK2AWqpsLKlciKfyTYIUnkAp+ofk8Kyn/mSNeCobiQPZ8mVH8olxdSgDEYaD0KEmAkGLEnADDmObjLBHryzWYaIZGjoEbrwmdix6WpVjMQg7bKjzF6qjky99f6UEM5xmTAyp2N11b+B/+fHeJTukiE6AxvMAMAwASXqA5jMbJc5TnhF6JtuyGYna2OGNXAoRkRaj5scIC7cCv0xOJhoQBWEzgRqj182JixIlgKVxS8G8dcs9icajR6YmYXLzEDPgBpfFsgdICC5KmZC5ng27IEUMruRCwySVJEkyPl4iJzvgwvtjo4etTwVxzREFQpoAqRwTkBAYCaLB+vAG4CowYNF0C75itNOsXnAFFJAvBeZw4oGrGepoQ7ky9JvjGatg0eUjivEBlymERRaAG183iit36U4HhK/whh7m/PlaL/s+Q/8mj2KWGGvoccRA1nwKclYIAhIsfNSSjUESsvXG4xOOAI9kXaRaCswUBh+YEfnMihXUrTWpMr1FKkmk1t+2wNa7u1qMiXIsQIEw4Vmcmlff6Z5wuakxcGQFJFf+6sMCCouOlMzQoXKLxhbJxShVqE5K0MPpmU7UoOyxbjIU4ztJUKBmBu7TOlxiOIAasECW/I60xFVKGj3LEl7V9P8zcsWBrQCsKGSY4TaTsSpN8obuekZQLTR6LxYT2BPX3A16LgRcbcZoMXwMvYGPeNa6S3Ephyu5XOFV2e0nyisEVmszumiiGkXypT87iLLkdBzv1/frECLCmYgdT2dQpotPoSMBGCi61uwYCMYbW/ZnJ0vC++Djqf3fLOnMNUkDmKi4eZ5OZWm/iCIXmoaBMuHi/qkxahCL7UKMFy1bQpveONF97nB+SqYZSLnNpfqMV5giYBEU3hC8JjfgSRw0+aoB8xRDlr+WGzVX/Jboi2TepRMpp9AENWU4Xeo2mMqUBGdfMKR2RAhaAjki6EtGpOIaoQYsBWgFsLHAwEawCvJjNiSTLMyHfwhCbXgvZmmVjT18gu2+YtujQD8pt2aYgjFWoeVQRJ+6tPNrURWDpkDLYw97UXqOvIaAvY1ojRcZ/3EeIbRf1rhRFtUelJz59rTCaGAeO9B7k+BSCCAbDJQC1KBPdfMhU82hSLHni+SBRbqPTiCIdlK4RRVuGlx7bHKugs3+4AE7Ij5heiRP61o0OhHuyKlfTVHVvJs409MFM+8t33zUmog/OxIuaKhq8XVxqdYI+Gbyo1aeJGRJZkW1IPxW/EMbLkMaqEgkrtUIdLodjWruzDZ6u0GbHOMbl8sY+PtF7kNfg6yHxvCJEOwD1mB323thBSgfhG9jWp+wruZ389iD37CDHTSRNUsCkhAJsYnJFD1aaKwhHFGiHCE2anDg5uYdGl3ZJcOEekVrBdJ9HtqdmVHS0NZqrlaDastKBBpfgYk3zWYuctOUgRAtypdJT2hPTeednlfH/OpYW3nTb9rsa9CaYJ72YvHF/X4RE3T2RNpL0kmxfiht52I4T6HKQB9A+6LT0oHqQrJqqg8g2yKXxCVZn3T1aPSOs4JHOyNtk0lmAhyniDtQjSriTPPdodap77yVP2tx8zEypuaXwMP7h+6NI31/4vOE7bIgWNzLFNi8Lnq1+EpdaVc5R/gmIe/6bnuXHzGY1LzxsLO9bc9kfva/395awAPKmm4XbIkDLVbIMtKFVu54Y0ZGxL2ld4H+Enkh0RYKrCo5WeZgtq1NrucWqp3sntqch3NPIDbIqGxsRD8TXFokGiOk2lijmmRyQM3KtpLVDsMMH5mLdX9XL+1T/KERzVF+XblP0TeyxmD9Fav5U67070u1NWEdU7+aGNxBgmavfkP7+kvOqg0xJpz0yXCZvpQsJGplnXZsQyFZZ5QSNGoLBKaz6Qr8je9UhsDWzhNNXQyyxk+kKcax18992idl1X/Mp3mEasbuPS8x+lxT3covJs+hmSebL6DT6HqeZnXMZdpXZqB8RbLU1FgLqRyQBA0uA3sxXy34UtADicExtXlNrtwelitPApMA+ArLtIaojHx0RVZc0N6tphtHU2F2reOdLscHdy6kk94MU09Po7IbuKppVpZxnrl/WNXQgDmxd5ezykuVZIbYiyerALHBgDdq05D+ApFwWKvYP9v82INin5eoY5YWXIUAcxoPPO/3vdI5yoEha+DNflKvOmbRUetqdmJACpWl2g5NnfRyHznK1DNwqU6o2xJ23DmoMz9XoF7fg0Y+VVUf07cPL4lSXdBaII/r0VsmnLzSyL9L1oA8tg11xjAPlmKSxSk592jj1qF35gTIX+lJVyLJ3EAUDXF5KoO7yAxdMEwhaoiLHcwKIZhC3M4iToBWwuCZzO4K4zDJRTy2Ultm3dUGKb9QyNYTNVfzQvENyHYr0C8B7nYMJOPwbFoALgq5XVUByR4UcGoAvVRx+ROsewd4FHA8gvK3L2HsUZ4TQbw1sB9dlePw9YkkGC9/9+MV18V51VuxuS6yYU131pQrzD1aF6RZtGTUxds3WoMrLNroM0Qp1vzzN13gF3COcNAoHAc41L55SEI55HXps0yRBsR5RmxSBWySZmP/UbkZtoEd0Jd0XVL5+EN2H1gurh+pre4COSKPmKzX/tskMiKp3bAG+EmkzJob/en7+538+fvPN9O/n59Po/Pzx+fmTiydfP/Luqu6JlgF0RqRm5RF5ZBSGk/YTy+Y9VmmmugTY7zHb5CHJv0Wc0Q6jUR3Y7qvq68cLF5xAMOVtcGteBWvbl9FjhnURxlWaXYok0exWKCLz5PfwEBXJQv4vKeS/9T7DHs9Wbpp8Oms9pf1TbL+bhab5u2nxvkQM7+xTaoNvvZ+ta6neEirfYrvvaPVhug9ka4vuvhiyfQzuW92e70EFkMp96oiWW2xM4CFmV43Ac+2atlQI7E7kP8wrp5HvdhO/BmOEcPjjvzYycVsPj7cV8f4ur2IsexPrdkpfZHU7uGFBaHi4oYJ8Le9+RjiywpFoIekWgdwAS5Ei0mqWFMf1oB6XZce2ftkq+Z3Vxa8FZwtFYzVPIrAtiYQyIUWeonWkrzeKg3j3kt+WG9CAHErNV79uGUMP6b0+o9zbQ43o7cO7o1je8F0jzdd5Ifpxalr6qzufTPcb2jdkbpvKo8GYoNImVH5QpVONtIUIJSXvy23vfLa6PVUw6HtfgQrXSOIZZYvITBBq28yQKKBaWfvUbq/FTUqmWNbz+aoe/z7C9GwpcXQWr8NBjYCFcnsR5w4W0z2I0HZd7KOMUgMP41vYvBjSErcxROWMXJYcP7Vv3yt+jB0vZtdgo2nBJUc7K9fhyDu83jkKcdwxKxa5zulbtW6vIKR6+lURR379htB3P5WgOUylkNFNddBihyk3mFwtec/IRIh5TY8RY5QagfCeVX8kYETihVpGo8u18qZqkA7iYF181X8mZyvMSxpu18QG5VsGXjuG5viKpaZRZq3sGd+wMg2SbdMGsJ+fsYZ1b69Q9Bb4RTb3r7y3sD2qD2qo6mmy6bYN7tI9d2X+fp106zDvwVVvaBP/qYdFRTE2el8NFhWT4N3B0uA7NsgKfY6oVulzsUS9X5OJatZtmdCDKVpf+QpiC4GU3gD8rQd6oENzKrxinnU4M3ryFH8gBd/2van2t8P9QydLRkYLoOo1v4RRHy2M8g/yjxZMuTnVQV+r2T2w6vvRmlFCJUub9AiY9o+GWoo1TNKrqtMYTV24dRWfvrIYPcs7TsVDo46hU3RH/xLNUCkNoD6egDZZeafybx0LBUVW9RnfwI04+nu0HW7jf9TmBvQ3MTW3urRM5aVe97VgZ4wYdKbDkbYOqBvvCPpcCAJyFBxza93ARWBGX2GUDFvmimXZ9Xqfa0Qv72OjFwm3H1PYdRLdLEHrVp8HBl3EcKV5INy0p4HHq765eOAkBi5LkiZKD1uhfZKtEKF2ZB88r+pdRfU1xzpqVw9zRPi+hB3gbzNMvZuRU9WfauRR3acazpoj9COfRoBrpvV6mCRHRyS5wydJF9ufIWlq7fYCSdJJWGDm4jHwBZKGoe310Sf7SrDhFoZfB47nFw773qn5JvP+z5BadHglax13iNt4i4j8KM9CPmPPz58ZIPzwW/REzgso24/7LBjwDl6/uWp3T0as9PIDeAsX5ofdFFojM7X7B5/6fBmgTmt8Zm83P25UPfCh9XjqcwdebQ2k+ylFE10Pjo57MWTlTfXyguToe/eCtPO4mxckncP9vSANwxcv6CPJsfN/WvFQvSDJW7vKuTav/ksj2R4FvYN2BJxo/LPgzLv4isfO/lGYNcKsa53Jbh+CCXNA20dhdvn8SyOQ7mULjAoVqSI1P6qC+TuwDagZ5VfQ9rAYWrZ2sxg9EB1oPOqsRC9K603Vt1EezjdR9iJqG047UfJskBMTOM8qHXUHlPXyVRW098C4TUQHkXtLUVNYPwVSribxqZV1ddFRJz0dCyjSwnbiUdxoXKLCfd+gBmlQxA9Q1Jv/A+C8+9WBbgAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.891Z", + "time": 62, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 62 + } + }, + { + "_id": "74a7cfaea67f19b6a547ebb768e76ebe", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 438, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/mapping/mappingtest" + }, + "response": { + "bodySize": 886, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 886, + "text": "{\"_id\":\"mapping/mappingtest\",\"consentRequired\":false,\"displayName\":\"mappingtest\",\"icon\":null,\"name\":\"mappingtest\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"target\":\"managed/organization\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "886" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.891Z", + "time": 63, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 63 + } + }, + { + "_id": "b1499bec9ed3b8c0b1488ce7644d09ac", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/mapping/seantestmapping" + }, + "response": { + "bodySize": 795, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 795, + "text": "{\"_id\":\"mapping/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"target\":\"managed/organization\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "795" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.892Z", + "time": 62, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 62 + } + }, + { + "_id": "06e43b06c5889436306de832c9ef5b8e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/metrics" + }, + "response": { + "bodySize": 33, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 33, + "text": "{\"_id\":\"metrics\",\"enabled\":false}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "33" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.893Z", + "time": 57, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 57 + } + }, + { + "_id": "b383c6f86886873c85a44fc34ee9c862", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/passwordUpdate" + }, + "response": { + "bodySize": 415, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 415, + "text": "{\"_id\":\"notification/passwordUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"password\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.passwordUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your password has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "415" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.894Z", + "time": 58, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 58 + } + }, + { + "_id": "01b649998d9398654a57902d252545ba", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/profileUpdate" + }, + "response": { + "bodySize": 560, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 560, + "text": "{\"_id\":\"notification/profileUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"userName\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"preferences\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.profileUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your profile has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "560" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.895Z", + "time": 55, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 55 + } + }, + { + "_id": "fe870654434ff77b9195e8510c2343c5", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 438, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notificationFactory" + }, + "response": { + "bodySize": 180, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 180, + "text": "{\"_id\":\"notificationFactory\",\"enabled\":{\"$bool\":\"&{openidm.notifications|false}\"},\"threadPool\":{\"maxPoolThreads\":2,\"maxQueueSize\":20000,\"steadyPoolThreads\":1,\"threadKeepAlive\":60}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "180" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.896Z", + "time": 61, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 61 + } + }, + { + "_id": "00725d753c390a655105f030d582ccaa", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 425, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/policy" + }, + "response": { + "bodySize": 735, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 735, + "text": "[\"H4sIAAAAAAAA/w==\",\"zZVNb9swDIb/iy79gF1fh1wLFBiwQ7Edh2BgZcZlIEsuJbszgvz3UbabxF7mtOk29GTDpF4+/BC9UT8oVwtVOUO6VYmCPKdAzoK5I4NeLb4vE7WS153TzdqLH6N3NevOY6M0GF0bCJjfs6uQA0XDRvU+cpTxqSbGywuPZvUNuSGN91FOHC+ubgoMX7EgHxhi8L3I5ZXECm0VNQL+DNkaGvCaqQpqu6cQaxT2vXDGB1ri9pf4PIb3g4lIR1QdcEgBLZTRNzYj6ev8YqmAoexgV44fKM/R3j4CR6PK1HI7uLefYxs1WOtCqp0NQDbV4gg6oHhvlzHqEKYC758dz8QqyX5BW4RHtfg0DiEWKusyNb1ZdJejdMlKPBmfrJaks+uZZLvHlGAfaGhJ3ivsv8cEsaxC2xvmynN9Zn2C6DsGc+tsHCNJyc+ANmAoT1/ORPHdoZGqGPq7dVLrqUZuU7l1gjbpHFMjl7HA34F2hYhT2eUPzNBOSzDQxskd1++/NGnHJiUiW8zBjQdWRu3DjEpypGW7xqQd64getOxJf2egmBujs0v5qjZPLQdMqXtYow5T5jipr+c9A2vUYOSSvH9TyH9dokOmEexwMU9fwGHIE2VrY94afroEjh7vEktJlo+fWcXsDM6u4o+28MZ5lGChwPx0Gv0gn0bHBm1I+7/1kboJ94qKbAirovVPf/pfNQjUdkAJAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.897Z", + "time": 46, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 46 + } + }, + { + "_id": "3b7ebd7cf01869d6ce8cf4a5c9da9642", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 439, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privilegeAssignments" + }, + "response": { + "bodySize": 493, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 493, + "text": "{\"_id\":\"privilegeAssignments\",\"privilegeAssignments\":[{\"name\":\"ownerPrivileges\",\"privileges\":[\"owner-view-update-delete-orgs\",\"owner-create-orgs\",\"owner-view-update-delete-admins-and-members\",\"owner-create-admins\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"ownerOfOrg\"},{\"name\":\"adminPrivileges\",\"privileges\":[\"admin-view-update-delete-orgs\",\"admin-create-orgs\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"adminOfOrg\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "493" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.898Z", + "time": 51, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 51 + } + }, + { + "_id": "47768b99c96433fcc0faa9554a4e372e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 429, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privileges" + }, + "response": { + "bodySize": 919, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 919, + "text": "[\"H4sIAAAAAAAA/w==\",\"7VhNj9owEP0raU6tBErP3KKFSkjtstrtx6G7ikw8CVYdO7UdEIv4750EliwsaWarVkKVTxDr+WViP7+Z8SZMBA9HYWnEUkjIwYaD5w+j75uQpSlY+0GyfP/snBHzygHOU6wAnGGA8ZmS63CUMWlhOzhGcbCpEaUTWvWD9UqBsUc4Z6oXMMYLoWw/XQHF/JTvLLBkBpTrx6ULITlCqYzTMfFjKMAdZUyFN2tJ5511wh8GKIN6/2oJ4EMmpAODE6OnVwTwM7gPNxvU03Z7HwbaBNEx6wkCX9KoZx/lcClgNaxKzhwMOUjAH23yRo/MLeqdZIrlwCMcZUo8sr2cSjCFsHYfW/h1OvmGo19uxvHnCf4ZTz5O8M9D88VeyV7JnUrezQxKc6rMFCn+UI1Xt5OYor7KgrkmKbBk1q604f3IXCxB0UgtQQMFE/IvHxBcEV0pd+eYqwi6dugK5UIruK7qk0BYK20dkzFHkVsCfyrcmkp6pTlhXZvPMwRSpHRwY/RSqJTAa7QEimM0GiUsFKvc4vGWRmqg1MYRgJBlgCdtCUTiAz7G85OrAg8jYZZk1t2tVdqP/DFnU5Vpwg4byAC9IKVEneJJx0iBf2JlKVRONvJZNjM5YWtqhyRiG7t6iT1nk89ieKVNHs/cJfUkQRvEvJ6UkqWw0JKDSRJSjt9lvyFTfNgmuBOPrd2xM9PvE/wh5Xuv9V7rvdZ77X/mtdF7rEwDtMkgasNsB9+8jdqIcPBdRxF7aDZIFkstXy+qeereAt87/ave6Sn07luA+DyilWlD4W8BvJAv7RJgJ0x/CeALU1+Y+sL0kgrTTo+8zDuAzgzvG3/vr95fvb96f/1d348tfhtn3eL3Nf5HhesrPfZQsz5sfwGv8MZVJCAAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.899Z", + "time": 54, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 54 + } + }, + { + "_id": "f72fc2cc21d104762b3c16db0f0db1bc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 433, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/process/access" + }, + "response": { + "bodySize": 246, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 246, + "text": "{\"_id\":\"process/access\",\"workflowAccess\":[{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-authorized\"}},{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-admin\"}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "246" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.900Z", + "time": 58, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 58 + } + }, + { + "_id": "bc1b98e58c7b710a4bc8518787bef019", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.ds" + }, + "response": { + "bodySize": 4251, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 4251, + "text": "[\"H4sIAAAAAAAA/w==\",\"7Vxtc9s2Ev4rGU7nPtyJcS5tOklm/CGWnCZNnLiW3bu5NJOBSEhCTIEMCNpWPP7v3cULCUkgRUqyfHPXfIlMLJ5d7BsWL+Rt8IXFwctA0Cx9HOdBL4jS2Yxw+PnyNohpQiUNZyTLGJ+ECeOX6vmXbwUV89cskVRA5wNsOJ9n9BH99uiP4Idb0+HujwAA04wKIlnKgXJw/P74/Di461loScSEypDFeThORShohHSrHFTD29gyMH/WMwAOdDaicUxhdGOS5LQXJDHJ+innNELi1ySSqWBUDWjEeIz/R2XzaZomQ/adBi+fPek5z4c0KgSTc+CVg/Dy/P0QRJhS+HlEiXzLQeArkgxRQFTiz0+c1nM2o2khT1iSsJLin0/gXy/IBJsRMX8PQg4Bggpo+nQbTNNccjIDOXCcPP4ajkUap2FMrx5HCclzFj0Gk4EMWSpk8PLpj89f3H3uBbmCXwH8DIoRaSpxsKSQU8oli4zyboOczbKEWoUMUKEFiw9JPGMcOODDU2B5nQqlrR8iMc9kij8lWB+ob0INEVKu2hC3F4A+CoUasWyq7PnqeHjQP+ofnL7rD5+dkjgGbwHCmEgCrcmvB0c/n7+gL/qDd2/6H56f31wOfpocHgIFu4L241hQ8f36+OLi8s0vz54/jd4Prp9dq/ZLOtdW+/FpL5iRCHnJ+Yvxvy9k8lNGb35J3nyM/tE/0mhZIbI0R8FZPAM18jGbPF4QPScJ6Co4ens+fJfwU3r+7DKJiuP/jPjku+YIXjBK6NvYGAiAwnw+A/uMSQF97/AfyM1h4Ey+FmCql9rd8PGM3FQe+UpKOsskmOkZGInmaSEieqJDSUejgnSf8HPokRCp3KM4nFAOXKJeHB0aWexP12/wmXEd9RNEwnC5yRIWMRc+Sooc3JnGKtx0qDKTGZY415B2lwTCefQV9NHHxxicn9AFP6pn0DgWIWpYcQlLpueK31sQ7TMGEiYEaSJbpbfbgOVn9FvBBKYDKQqTDUDjgo0KNQjgAvjGj00g9IJrMBoZsURHfCQgiOlHnsxRYyYJIfwy2IKYHmDoLUuZ1/WvKEuYrzl4p3KsONdue0Bs999ttC3YKOKHNnQfAQWDUEtF3oPHur9P8ZCUo/EkzEy/8Mr2w1DVbSXXUAW5j3Zzk0S8o0WiKY0uh8UoBww+8WrWyK0ow7wi9ViIcoxsr30NiqXwdP5KrohSZUN3pAmV//sQZkRGU6cXauwE4p8pA9cqzWCr3pV5vAwYL3X1nvKJnDbICsSVusJEk/vcmubyjOJsQxfmivXWNowQABxfI5T+tMpqwfmjKREwn1MxpHJfrl/yDHOoYB7W8UmSpNcXXOfSMaNx3wqXd1K+wgkLB6gaptdJlxXfxUUXFPjfGICM953hNQFhdCwMxwO44LAxU1M+1Gf7cteK40MnaZLTIeU5k+yKmgGa+rO1nyIGqNmA2HHoks3jo7ucFSo9wuqEdpLaMcGYJd6c/PAu/78yJWh5jsBR4n2FmGYZjogr5sME2UP7EbmxCl7vRuSmUla9F4G3tYcEz1wLueAtlvo0xUUQXV3juC5jibo5TIa95k7pvLD8ts179BGznrTDGoKLkgkdQhKc1Zeb7ZOdRq/Gn2v8MNcMmr3m1YS2dRnA9IHZ9qUKuqX0FXpTBW2p3jAc3LyfFlw2iF2CTjV9GKkOHuAqZ3SsqbzpqcnxBc3QJ5YKxn1kS8vZqTD/3yqTh8/S/ZTnNCpQ1iqrth4sxmFUIbRLtfCQJQT3UPc6OVds/5qgF2bTARuPqaA86pYhF+bYuMJoNn7B2beC7j/ZaL5/pZoH9LcLj+k7eduKDdf5Wk7FgI4Zp/HvTMiCJAu1wLLbGZpHJVE7r0MuWOwgm/BKYyxUDYZutWmf+0O287nq1GVHqNzgVfw8psVsOuBdCxXsFcb+9TqoHGpheUSn5IrpGqguBAxpOLK0za7fetgNwTA2h5Ldxmt6efAmIi0yrcCavoqiRlkLodl6eM3BCgGUNZXfut1fthY7WDpoGG9wMzxf5SQ5EGmyGsVpcYjP8x78sJQ7OYIy5zEWM1Tc9xm/sFb8foIn2jZvevRrhJl/0MfFqs8ZqiOojhNPCZZ4UPlxWDbFKkVWopgtljNq53IdjDGzU1PNMVVF49svo3kkWFYH4TZ7euuj71rOqtm3MBPsiiV0Quu1VYNY9lw+bMN9rFkGS9gEa2YpCDhDZ3QLoapmi+E51SvdXBnI4+b4fPdu7jlpLV1eSbLP49Vyn6/e/KtbgZUK8U6KT3PqEst9aUsx3aeSxkzksvEMGkUKLZknVLD9NyhM8LTHO9W6ON9KwhokW180gdQVEvrKyvrBlHTeGSJJo0vvFQXVcG+GB/C9Gp6nMW1WFUgUIpXv+sGdvb5wAINKI5+6VANmGEW3id4gOTM+GUKak3RizrnqLjkobvqnK2+UMMrlgH9QUDjuuqm5QtnCDC0kcutAzvIpXulad4NDQ2l6yfwzFstfQZad52ztfRCNxnJi6b07O+UlnvVQltgXkqpoODPFQz9NEn1VqR2w7mVLj6jqXXsdZlNOuncbTjioYmT5KGWDh+lj2HUOWzS7pmWvKim8uKNl0/BVv0q45TA8KCVpfQdK9dPddpt9sOhsbwAlQUhqrUtmIzYp0iLXN7X0UFrcfXLBLYS2tdYQi/03d24iWltx1uBXfe49OttOucsiYr/GGXhXYT+jeU78JzA1otke9WADKglLukPGup+vyJ+SvIuMmt4D1PIinwPVMC3kTBako+9VfWpzsA2ZLqiLHR80vUPUyqJLuJsOtTPFBvpY6viwk5AlM4t134ThzFNnaSFVYH+6hSRPx+wG+pQTS1W3uZNJeUneTCt3ePc7n/Po4FtBPTdEodRTDVjzIdl9lcqIrSXYZ72Mt5Lpjfd0dlmu0NKu7ABoyAGRTWnHwVHkMam5frk2WVdIDbma02uj4TZAQJ1aeywNbu2KwkGpWVZYBzijV61wKmofVBJ3GBhQ1w1MdInnCrFdYrNULTVnyWvmDtnWtTSlDwJIXrUfJP6qK9tUeWpeKVh9K+Dg774MYho3yR1oLt/mokYMlTU11W/4btCxqoTk/AQvOoNoZ0WiymuY499OeCror5ZSUfQ1TJmM2mQqyxpog8/mYIJ5X7zQLRu9dzFm/o1sfL4RIJvpN4FWIXXLFqB+m28Da/c5eSqhqq3eRFrm4bZvu+1Z42gui229raWDLYx6ZTbU9QT+WtrZ/+L222J3f2WneUbx/Sv/bjO23ZPm96Nsk8l0NLfXtdLJVirGcZnLbz7lOs0bxZAVxRubpnErYHw+4TPKvUmlau1tw6/WOQxiWPHZk7+sMl51mzanY47gjQdls47HeyXsVud76rx0pzzV2eiakLC0qZgQzr7Xpn23/X7dy+W0ZwdbUMKKi6mXb9tbCKk/jj+KyVaHvlOWxPBXW64ZEVRdZK3huDDCRs4dg0CTbz3eNafMXh+pO3pOr3mHASjqreU3+u84gtJq5tXzd3ReLq07GtIb3E1XNO43mJHDtkF8orHOdDbrEs/+yyFu7ux4a2BhWIs5uL3pnGnMZ7jOoSe2u1niOkrTJYf7dRR1eW83jnKhB9zFUWquVNgqfMkKzlcs1o3I1KzrnWO1+vf7xtKKY0P/VbItr106CLmwXPIL6sx/Gwq5kCLtly92mCF7u8gETk2pw3a3qcC5OraNqRWMyhNLN+eWhFXX4eqMvlxOuhlLMfNdxewSKwakiwKXk9tKFt2dB25g3hYu6JQduxBSwe1aRnu56/gmY/r7PnV3LbLrZaJ1ZwOCkhhPBgYsj4iI/wWN4OsO0/ckl/0p4SBrA1eXYmOW+Okl0ZAKlkve0l/vac3XJmjs5N/e4LVhXN6BgHFOoHNeboKv1I0rVBttawia6MlnyjLvRbEFgh0WHS7utkXHmYPVsupw2avtbHwRMwY23tqrbNxIx2Vv/67UduAF86MWbDO4DE/ovJ5gmjaANUe88il+futjVpZNs6socl0DSi698sPkcKHYneoXgV+qI0sIG11ky0LwD0WSvE7FCQNWfHLqVI06ciE0TwDf+fMUqjqkvqInaczGc6dpWIykoHSgvsNmZkx9CdN83+xWHU2od/TORZFLXecK/dWD4G+3+MksxiEOk+RxzMTdge16IJEctzQx4r0g9hWvFmAKJ9NvKnix9JXT4Nd3+CE26TRg5DF1kPUnYFalveZOAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.901Z", + "time": 51, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 51 + } + }, + { + "_id": "bd5d9cbc1b0e2e075e3f77bb51e59736", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.init" + }, + "response": { + "bodySize": 789, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 789, + "text": "{\"_id\":\"repo.init\",\"insert\":{\"internal/role\":[{\"description\":\"Administrative access\",\"id\":\"openidm-admin\",\"name\":\"openidm-admin\"},{\"description\":\"Basic minimum user\",\"id\":\"openidm-authorized\",\"name\":\"openidm-authorized\"},{\"description\":\"Anonymous access\",\"id\":\"openidm-reg\",\"name\":\"openidm-reg\"},{\"description\":\"Authenticated via certificate\",\"id\":\"openidm-cert\",\"name\":\"openidm-cert\"},{\"description\":\"Allowed to reassign workflow tasks\",\"id\":\"openidm-tasks-manager\",\"name\":\"openidm-tasks-manager\"},{\"description\":\"Platform provisioning access\",\"id\":\"platform-provisioning\",\"name\":\"platform-provisioning\"}],\"internal/user\":[{\"id\":\"openidm-admin\",\"password\":\"&{openidm.admin.password}\"},{\"id\":\"anonymous\",\"password\":\"anonymous\"},{\"id\":\"idm-provisioning\"},{\"id\":\"connector-server-client\"}]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "789" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.902Z", + "time": 44, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 44 + } + }, + { + "_id": "9f231197089ead48083fbb1440010a11", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 425, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/router" + }, + "response": { + "bodySize": 619, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 619, + "text": "{\"_id\":\"router\",\"filters\":[{\"methods\":[\"create\",\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"},{\"methods\":[\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^config/managed$\"},{\"condition\":{\"source\":\"(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0)\",\"type\":\"text/javascript\"},\"onResponse\":{\"source\":\"require('relationshipFilter').filterResponse()\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "619" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.902Z", + "time": 46, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 46 + } + }, + { + "_id": "ccd397735c0fb9e3c00c0ecdebadad2e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 436, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/seantest" + }, + "response": { + "bodySize": 459, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 459, + "text": "{\"_id\":\"schedule/seantest\",\"concurrentExecution\":false,\"enabled\":false,\"endTime\":null,\"invokeContext\":{\"script\":{\"globals\":{},\"source\":\"//sean has changed this script. Let's see if it is still working. qqqqqqqqqqqqqqSchedule1\\n\",\"type\":\"text/javascript\"}},\"invokeLogLevel\":\"info\",\"invokeService\":\"script\",\"misfirePolicy\":\"fireAndProceed\",\"persisted\":true,\"recoverable\":false,\"repeatCount\":0,\"repeatInterval\":0,\"schedule\":null,\"startTime\":null,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "459" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.903Z", + "time": 52, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 52 + } + }, + { + "_id": "ab8521e6a907278952a8693cbcfb761e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_activate" + }, + "response": { + "bodySize": 838, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 838, + "text": "{\"_id\":\"schedule/taskscan_activate\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/activeDate le \\\"${Time.nowWithOffset}\\\") AND (!(/inactiveDate pr) or /inactiveDate ge \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/activateAccount/task-completed\",\"started\":\"/activateAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"active\\\" }];\\n\\nlogger.debug(\\\"Performing Activate Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "838" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.904Z", + "time": 50, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 50 + } + }, + { + "_id": "42626b5d9ae06814ca0230b793cb2d1f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 443, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_expire" + }, + "response": { + "bodySize": 830, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 830, + "text": "{\"_id\":\"schedule/taskscan_expire\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/inactiveDate lt \\\"${Time.nowWithOffset}\\\") AND (!(/activeDate pr) or /activeDate le \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/expireAccount/task-completed\",\"started\":\"/expireAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"inactive\\\" }];\\n\\nlogger.debug(\\\"Performing Expire Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "830" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.905Z", + "time": 42, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 42 + } + }, + { + "_id": "5fb111d428ad18346dc15d5fa8e1e840", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/scheduler" + }, + "response": { + "bodySize": 156, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 156, + "text": "{\"_id\":\"scheduler\",\"scheduler\":{\"executePersistentSchedules\":{\"$bool\":\"&{openidm.scheduler.execute.persistent.schedules}\"}},\"threadPool\":{\"threadCount\":10}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "156" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.907Z", + "time": 47, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 47 + } + }, + { + "_id": "0b8355f1ac5870bd599a7d814921a98f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 425, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/script" + }, + "response": { + "bodySize": 939, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 939, + "text": "{\"_id\":\"script\",\"ECMAScript\":{\"javascript.optimization.level\":9,\"javascript.recompile.minimumInterval\":60000},\"Groovy\":{\"#groovy.disabled.global.ast.transformations\":\"\",\"#groovy.errors.tolerance\":10,\"#groovy.output.debug\":false,\"#groovy.output.verbose\":false,\"#groovy.script.base\":\"#any class extends groovy.lang.Script\",\"#groovy.script.extension\":\".groovy\",\"#groovy.target.bytecode\":\"1.8\",\"#groovy.target.directory\":\"&{idm.data.dir}/classes\",\"#groovy.target.indy\":true,\"#groovy.warnings\":\"likely errors #othere values [none,likely,possible,paranoia]\",\"groovy.classpath\":\"&{idm.install.dir}/lib\",\"groovy.recompile\":true,\"groovy.recompile.minimumInterval\":60000,\"groovy.source.encoding\":\"UTF-8\"},\"properties\":{},\"sources\":{\"default\":{\"directory\":\"&{idm.install.dir}/bin/defaults/script\"},\"install\":{\"directory\":\"&{idm.install.dir}\"},\"project\":{\"directory\":\"&{idm.instance.dir}\"},\"project-script\":{\"directory\":\"&{idm.instance.dir}/script\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "939" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.908Z", + "time": 48, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 48 + } + }, + { + "_id": "372152e7418e4bbb7f1bb2fd5327ca2f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/secrets" + }, + "response": { + "bodySize": 1829, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1829, + "text": "{\"_id\":\"secrets\",\"stores\":[{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}\",\"mappings\":[{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.default\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.config.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.password.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"],\"secretId\":\"idm.jwt.session.module.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}\"],\"secretId\":\"idm.jwt.session.module.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"selfservice\"],\"secretId\":\"idm.selfservice.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}\"],\"secretId\":\"idm.selfservice.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.assignment.attribute.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]}],\"providerName\":\"&{openidm.keystore.provider|SunJCE}\",\"storePassword\":\"&{openidm.keystore.password|changeit}\",\"storetype\":\"&{openidm.keystore.type|JCEKS}\"},\"name\":\"mainKeyStore\"},{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.truststore.location|&{idm.install.dir}/security/truststore}\",\"mappings\":[],\"providerName\":\"&{openidm.truststore.provider|SUN}\",\"storePassword\":\"&{openidm.truststore.password|changeit}\",\"storetype\":\"&{openidm.truststore.type|JKS}\"},\"name\":\"mainTrustStore\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1829" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.909Z", + "time": 42, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 42 + } + }, + { + "_id": "31ff64d3e984c38b0c14569db37889ad", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 434, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.kba" + }, + "response": { + "bodySize": 290, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 290, + "text": "{\"_id\":\"selfservice.kba\",\"kbaPropertyName\":\"kbaInfo\",\"minimumAnswersToDefine\":2,\"minimumAnswersToVerify\":1,\"questions\":{\"1\":{\"en\":\"What's your favorite color?\",\"en_GB\":\"What is your favourite colour?\",\"fr\":\"Quelle est votre couleur préférée?\"},\"2\":{\"en\":\"Who was your first employer?\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "290" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.910Z", + "time": 37, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 37 + } + }, + { + "_id": "b45a1aa28d4bff434764448f028e4059", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.propertymap" + }, + "response": { + "bodySize": 713, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 713, + "text": "{\"_id\":\"selfservice.propertymap\",\"properties\":[{\"source\":\"givenName\",\"target\":\"givenName\"},{\"source\":\"familyName\",\"target\":\"sn\"},{\"source\":\"email\",\"target\":\"mail\"},{\"condition\":\"/object/postalAddress pr\",\"source\":\"postalAddress\",\"target\":\"postalAddress\"},{\"condition\":\"/object/addressLocality pr\",\"source\":\"addressLocality\",\"target\":\"city\"},{\"condition\":\"/object/addressRegion pr\",\"source\":\"addressRegion\",\"target\":\"stateProvince\"},{\"condition\":\"/object/postalCode pr\",\"source\":\"postalCode\",\"target\":\"postalCode\"},{\"condition\":\"/object/country pr\",\"source\":\"country\",\"target\":\"country\"},{\"condition\":\"/object/phone pr\",\"source\":\"phone\",\"target\":\"telephoneNumber\"},{\"source\":\"username\",\"target\":\"userName\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "713" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.911Z", + "time": 31, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 31 + } + }, + { + "_id": "84ee2e3e3f7cef3023dd7241ced2b77a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 436, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.terms" + }, + "response": { + "bodySize": 730, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 730, + "text": "{\"_id\":\"selfservice.terms\",\"active\":\"0.0\",\"uiConfig\":{\"buttonText\":\"Accept\",\"displayName\":\"We've updated our terms\",\"purpose\":\"You must accept the updated terms in order to proceed.\"},\"versions\":[{\"createDate\":\"2019-10-28T04:20:11.320Z\",\"termsTranslations\":{\"en\":\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"},\"version\":\"0.0\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "730" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.912Z", + "time": 32, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 32 + } + }, + { + "_id": "6cbf25336f75bed9003dbd20bd94c130", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 437, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/cors" + }, + "response": { + "bodySize": 402, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 402, + "text": "{\"_id\":\"servletfilter/cors\",\"filterClass\":\"org.eclipse.jetty.ee10.servlets.CrossOriginFilter\",\"initParams\":{\"allowCredentials\":true,\"allowedHeaders\":\"accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with\",\"allowedMethods\":\"GET,POST,PUT,DELETE,PATCH\",\"allowedOrigins\":\"https://localhost:&{openidm.port.https}\",\"chainPreflight\":false},\"urlPatterns\":[\"/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "402" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.913Z", + "time": 36, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 36 + } + }, + { + "_id": "4734d7816408991b39320106367532a9", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 440, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/payload" + }, + "response": { + "bodySize": 191, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 191, + "text": "{\"_id\":\"servletfilter/payload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":5},\"urlPatterns\":[\"&{openidm.servlet.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "191" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.914Z", + "time": 36, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 36 + } + }, + { + "_id": "479d6a831987c6fbbdfccaa366e89114", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 439, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/upload" + }, + "response": { + "bodySize": 198, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 198, + "text": "{\"_id\":\"servletfilter/upload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":50},\"urlPatterns\":[\"&{openidm.servlet.upload.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "198" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.914Z", + "time": 39, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 39 + } + }, + { + "_id": "c6aed7f604cb532801a9b95de9922a3c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/admin" + }, + "response": { + "bodySize": 244, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 244, + "text": "{\"_id\":\"ui.context/admin\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/admin/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/admin/extension\",\"responseHeaders\":{\"X-Frame-Options\":\"SAMEORIGIN\"},\"urlContextRoot\":\"/admin\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "244" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.916Z", + "time": 30, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 30 + } + }, + { + "_id": "05bacc81732e6f86cfe0b782cdde4f67", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 433, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/api" + }, + "response": { + "bodySize": 205, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 205, + "text": "{\"_id\":\"ui.context/api\",\"authEnabled\":true,\"cacheEnabled\":false,\"defaultDir\":\"&{idm.install.dir}/ui/api/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/api/extension\",\"urlContextRoot\":\"/api\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "205" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.917Z", + "time": 32, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 32 + } + }, + { + "_id": "17421c1d759655006a294261cc77fd75", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 437, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/enduser" + }, + "response": { + "bodySize": 174, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 174, + "text": "{\"_id\":\"ui.context/enduser\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/enduser\",\"enabled\":true,\"responseHeaders\":{\"X-Frame-Options\":\"DENY\"},\"urlContextRoot\":\"/\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "174" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.918Z", + "time": 34, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 34 + } + }, + { + "_id": "61e2740b542f064697798e2a02431f03", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/oauth" + }, + "response": { + "bodySize": 199, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 199, + "text": "{\"_id\":\"ui.context/oauth\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/oauth/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/oauth/extension\",\"urlContextRoot\":\"/oauthReturn\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "199" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.919Z", + "time": 32, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 32 + } + }, + { + "_id": "eadbb4ad948866a207831ff04c796efb", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/configuration" + }, + "response": { + "bodySize": 588, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 588, + "text": "{\"_id\":\"ui/configuration\",\"configuration\":{\"defaultNotificationType\":\"info\",\"forgotUsername\":false,\"lang\":\"en\",\"notificationTypes\":{\"error\":{\"iconPath\":\"images/notifications/error.png\",\"name\":\"common.notification.types.error\"},\"info\":{\"iconPath\":\"images/notifications/info.png\",\"name\":\"common.notification.types.info\"},\"warning\":{\"iconPath\":\"images/notifications/warning.png\",\"name\":\"common.notification.types.warning\"}},\"passwordReset\":false,\"passwordResetLink\":\"\",\"roles\":{\"internal/role/openidm-admin\":\"ui-admin\",\"internal/role/openidm-authorized\":\"ui-user\"},\"selfRegistration\":false}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "588" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.920Z", + "time": 22, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 22 + } + }, + { + "_id": "dccde179c43e59ffe92f719da481c2cf", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 431, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/dashboard" + }, + "response": { + "bodySize": 1031, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1031, + "text": "[\"H4sIAAAAAAAA/w==\",\"rVbbbtpAEP0VtHk1spNQpeWtTVq1UlKlSao+RFE17A72ivWus5eQi/j3ztqAMRBIqyKBzM6eM7czAy/stxRsyIJMBbhiZMAKljAQpdRniwPHhrcvTLozHENQng29DZgwDSUS9EeQfNK79mA9IadS5OgbBF9iC4tjunrAjdbIvbEuBSFSui/piCxj6AvwMAKHbMn8UYje6QLBZknLU0JVSZ1vkpCB3naCtqU5tQgeexcNpsNj0ZlgOaYlaMhRpNYoTJV0vkvLC+STvrsPYLFvWuqLGta7IpRbC7Dh2wiQclTouzme4YPk2ME7VGOHNp6ngR4s5hSUBS+N7hLmCKu5Gj2WebAU0wriVeoKnJsaK6gO6N/GezmHkAPC7K5mjHxLNePxRg1/0qFbC9R7apjbBW7jun5yHsveJYHRouaxIXcJc/I53lNg86gs/1TFr/dRs41kZ3fR54q4x6Bcq+457YXRkkQY9dPVuMIctbgCTfTDF1Ya7QsyvMuy5Ch+0DujMKaIEzo+zJLjLPlAtpMseX8YLU+xztFCr2RQf9bPDZ7As4SV8Dj3wA6OBoOjY05R0IQuD0eZGPA4uNvThSBk06rtdq4CZWmpID64HfdcXYyvCMoXX4JS9dURWF7ESsb2qHp+t6MVOH+FsZF7an411xFJrDIbW4X0SwsB49YC7uUDNspZen3suxIotjY7EzRl1+TVguOou886zqP4e3Tjermd3ux/a2UWg3NOo7KvOJ+Ckxqd216c3EJV3DSsNCyVxH7TnIRV1jxIEUs1vGWxZpEwXYwzu3s9ASdz/U27pasb6VU9G3Tej4YY8JpnUsXS82u8i+1Tb5JN+u6m2epFUSn+Q4Iap6vrcjOU7zjtdW+sNHOFTpb4bHS9CQrqKEXCspNmVoPH+msWlxfmEOXT/JLO2kIbLkGdm1zqdb01pn+WK23kAGo9yb0ku6XoEOia86v/HDqT+iaxU19aAircfoZfqLihCAg8+wMKiFQxwQgAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.921Z", + "time": 19, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 19 + } + }, + { + "_id": "2cf6006aa7d3908fe4bd8d43fcbca10d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 433, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/themeconfig" + }, + "response": { + "bodySize": 421, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 421, + "text": "{\"_id\":\"ui/themeconfig\",\"icon\":\"favicon.ico\",\"path\":\"\",\"settings\":{\"footer\":{\"mailto\":\"info@pingidentity.com\"},\"loginLogo\":{\"alt\":\"Ping Identity\",\"height\":\"120px\",\"src\":\"images/login-logo-dark.png\",\"title\":\"Ping Identity\",\"width\":\"120px\"},\"logo\":{\"alt\":\"Ping Identity\",\"src\":\"images/logo-horizontal-white.png\",\"title\":\"Ping Identity\"}},\"stylesheets\":[\"css/bootstrap-3.4.1-custom.css\",\"css/structure.css\",\"css/theme.css\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "421" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.922Z", + "time": 21, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 21 + } + }, + { + "_id": "fb55717b678608c3e9704a46f637ba00", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 429, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/profile" + }, + "response": { + "bodySize": 891, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 891, + "text": "{\"_id\":\"ui/profile\",\"tabs\":[{\"name\":\"personalInfoTab\",\"view\":\"org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab\"},{\"name\":\"signInAndSecurity\",\"view\":\"org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab\"},{\"name\":\"preference\",\"view\":\"org/forgerock/openidm/ui/user/profile/PreferencesTab\"},{\"name\":\"trustedDevice\",\"view\":\"org/forgerock/openidm/ui/user/profile/TrustedDevicesTab\"},{\"name\":\"oauthApplication\",\"view\":\"org/forgerock/openidm/ui/user/profile/OauthApplicationsTab\"},{\"name\":\"privacyAndConsent\",\"view\":\"org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab\"},{\"name\":\"sharing\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/SharingTab\"},{\"name\":\"auditHistory\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/ActivityTab\"},{\"name\":\"accountControls\",\"view\":\"org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "891" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.922Z", + "time": 27, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 27 + } + }, + { + "_id": "3467e6eff41c0252746cc812803f797c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver" + }, + "response": { + "bodySize": 169, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 169, + "text": "{\"_id\":\"webserver\",\"gzip\":{\"enabled\":true,\"includedMethods\":[\"GET\"]},\"maxThreads\":{\"$int\":\"&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "169" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.923Z", + "time": 25, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 25 + } + }, + { + "_id": "7415ea0af3a4981f3e3feddab0df5329", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/http" + }, + "response": { + "bodySize": 128, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 128, + "text": "{\"_id\":\"webserver.listener/http\",\"enabled\":{\"$bool\":\"&{openidm.http.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.http|8080}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "128" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.924Z", + "time": 31, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 31 + } + }, + { + "_id": "8c44f974db12734398c806d9a1cbcd18", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 443, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/https" + }, + "response": { + "bodySize": 217, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 217, + "text": "{\"_id\":\"webserver.listener/https\",\"enabled\":{\"$bool\":\"&{openidm.https.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.https|8443}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "217" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.925Z", + "time": 21, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 21 + } + }, + { + "_id": "b400d9fa8acbf142278ba15f3b31ee91", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/mutualAuth" + }, + "response": { + "bodySize": 250, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 250, + "text": "{\"_id\":\"webserver.listener/mutualAuth\",\"enabled\":{\"$bool\":\"&{openidm.mutualauth.enabled|true}\"},\"mutualAuth\":true,\"port\":{\"$int\":\"&{openidm.port.mutualauth|8444}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "250" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.926Z", + "time": 30, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 30 + } + }, + { + "_id": "1c44d5ed6a798188a1711859e5a9fceb", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-633b7232-c0e0-464b-9e92-58bef47e73ed" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 532, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "1000" + }, + { + "name": "_fields", + "value": "condition,description,name,privileges,temporalConstraints" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role?_queryFilter=true&_pageSize=1000&_fields=condition%2Cdescription%2Cname%2Cprivileges%2CtemporalConstraints" + }, + "response": { + "bodySize": 1357, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1357, + "text": "{\"result\":[{\"_id\":\"openidm-admin\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8780\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-admin\",\"description\":\"Administrative access\",\"temporalConstraints\":[]},{\"_id\":\"openidm-authorized\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8781\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-authorized\",\"description\":\"Basic minimum user\",\"temporalConstraints\":[]},{\"_id\":\"openidm-reg\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8783\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-reg\",\"description\":\"Anonymous access\",\"temporalConstraints\":[]},{\"_id\":\"openidm-cert\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8782\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-cert\",\"description\":\"Authenticated via certificate\",\"temporalConstraints\":[]},{\"_id\":\"openidm-tasks-manager\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8784\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-tasks-manager\",\"description\":\"Allowed to reassign workflow tasks\",\"temporalConstraints\":[]},{\"_id\":\"platform-provisioning\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8785\",\"privileges\":[],\"condition\":null,\"name\":\"platform-provisioning\",\"description\":\"Platform provisioning access\",\"temporalConstraints\":[]}],\"resultCount\":6,\"pagedResultsCookie\":null,\"totalPagedResultsPolicy\":\"NONE\",\"totalPagedResults\":-1,\"remainingPagedResults\":-1}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1357" + } + ], + "headersSize": 2221, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:54.984Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/config_603940551/export_4211608755/0_aD_f_m_1997968728/openidm_3290118515/recording.har b/test/e2e/mocks/config_603940551/export_4211608755/0_aD_f_m_1997968728/openidm_3290118515/recording.har new file mode 100644 index 000000000..845320b6a --- /dev/null +++ b/test/e2e/mocks/config_603940551/export_4211608755/0_aD_f_m_1997968728/openidm_3290118515/recording.har @@ -0,0 +1,9175 @@ +{ + "log": { + "_recordingName": "config/export/0_aD_f_m/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "de3566e649dc89e93a6365b0fdaecd4e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 393, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/serverinfo/*" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:02:38.490Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "3f3b03432a833cfcbe27438276bb566b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "accept-api-version", + "value": "resource=2.0, protocol=1.0" + }, + { + "name": "x-openam-username", + "value": "openidm-admin" + }, + { + "name": "x-openam-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 507, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/realms/root/authenticate" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:02:38.505Z", + "time": 3, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 3 + } + }, + { + "_id": "4c1fef66c916c8940b0315dddc564b06", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 423, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 811, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 811, + "text": "[\"H4sIAAAAAAAA/w==\",\"7VfRjqIwFP2XPpP47ltHkZDFkgV5MBtDOlBJJ9iytE7GMf77tqOzq2sZihLmxQcThXNPr3jPucc9SGkOxkDsWAYcsMFVRVkhwPjX/uzOaIMZLkge1gVm9B1Lyll6uhbxkqjKjDNBmIzI7y2tiSpc41IQB+RUVCXeIbwhiqydhyoiMGbbsnQAsy2qeEkzSo5t40wjwHgPipI/qy7U24MDBN/WmaYbjQTBTBIhVaXcVfqaJG9y9IJfschqWkmg8VRu8ZEJwPmT7yVhEqsbvR2gvmhOe281DpNo4qZzP4595N3cb1Fz/rrT5BUXEt7FcN6eqS8A4yWagEvgLEzQNIVB5MLpMg189MOdtlcl6GcCA3/m24GhasZDNljdQBqiYNkOXcDIcxepIg4jG+rTL2aNh0GQeiFy25GTEM38aG5D+vG4Lc5+il20AIeVmouaV6SWR9WtzobhJM0RP9OrplE+AteS1Ee4xHVB5Bm81lLWDdjZTnwauNNH/vxCMtmHDzURdzOmJhajU335qPsbB7OLDTQ5t+m5g+ysnaWr3r5w1F7038WGLvztThG27lWTSoVxrs2yhULQgm2UGj9pE6FO7qjRRpZmQTaWdMwJWORr/Wpbal3jwSfvJfetEcHM1nWBW/Vzjyy+afP38Cs8MsNgmQH/VW5Xs3K6b2OTv221UfxnZ/887+PPkbWBXdcZLOsa9IgIj4gwZEQYVHNOy442afIiw5ijhvGwe1KHDWFzALGpfsj8IfMhZW5O7t+veOdqBTbv5dXhD+46tPKwFAAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.514Z", + "time": 3, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 3 + } + }, + { + "_id": "4c963e6ac6a0c10bf75de375d8e3da12", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 456, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "_id sw 'mapping'" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=_id%20sw%20%27mapping%27" + }, + "response": { + "bodySize": 1820, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1820, + "text": "{\"result\":[{\"_id\":\"mapping/mappingtest\",\"consentRequired\":false,\"displayName\":\"mappingtest\",\"icon\":null,\"name\":\"mappingtest\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"target\":\"managed/organization\"},{\"_id\":\"mapping/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"target\":\"managed/organization\"}],\"resultCount\":2,\"pagedResultsCookie\":null,\"totalPagedResultsPolicy\":\"EXACT\",\"totalPagedResults\":2,\"remainingPagedResults\":-1}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1820" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.524Z", + "time": 6, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 6 + } + }, + { + "_id": "778b519855abd745b38438bc349de829", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 461, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "_id sw 'emailTemplat'" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=_id%20sw%20%27emailTemplat%27" + }, + "response": { + "bodySize": 1099, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1099, + "text": "[\"H4sIAAAAAAAA/w==\",\"rVZtbhMxEL2KMT/yJ02ECn+isFIJ/RGpQBXaAqIIObuzianXXvyxJV2txDU4ASrXyE04CWPvJk1pA2kUKVJT2zNv5r1nT0qqwThhae9jST/zhPYoZIyLE8hywSx0U6UnylqQpwa0ZBnQNk0gZRhzpGImwEdIXATJxgIwgdUO2jTVKsMt3MjAGDbBc6U/2KP9qc1E1B+rZBaV5WOeEjX+ArHtOER4jQhV1c+jD8pp4hpMwg1pleWdc61Ov5tjEhAG/xumZKYc0RADLyAhdophoRvCJQGtlW6TXAAzQBJuNEyYTjpl2eUpQk6fRn1GphrS5+d0ieXZyeB0NKyqcxoNBI8vyBQ0EKuIUBMu+10W9bs+uBs6wu++PeoZ2LjZM2UxpVQZSVrOcsENUo/9g7Eb9P2Wk0I5Q1gBV9j9/KcjMVgCe6H1nGnfO6ZrkwIcFwJPScB1JEcSVJZrEqsst/BQLr46TMVjTnIvVqghVlLiWdDreKnQEDyDk1nunWPhmw0byJdxAWbpk4M4Vk5aMpTowYxZriTZW1piQfDKriEGyxDQdIOH7zBKq6p9v8/RDdxYHRLtwOL70Yl3H35mnpvV7LUlUUE8tBHTh0HHAjRPeVynEFxeLBm+8dp+NACUw9umCJYKkUmLSxNrnvvQB+AecfRHAqSYX69Ah+pvsDfXcxQ4AI3muySsFndR+kDPr3HHSZTMFcBco+G/9DJgj5kxl0onOxGsvtx4r0PqWre8AdictEVJTZb1QjXXJ1wd7J5LbjlDn4JeaKesZ9+XAJvjv1qJQvRawdX8QcXt9LtDy6Kh0Wr9V/fUv15Hlyf4Z6dCnvmbMmteftSzhthCy9PbgX+JuTlzTZ7b1K1l5BIEmn+3cxZnzLs6rSfkTQ5y+PJVhzxgyP5/vCHGC/RbAdJBeImXMNuNt60HR+iqeWDIFMfcGPAaxBoQdWnZuqZmUhRYN5r19/cf819hGS/M/Jo8QpE+tZtfSIPwXvWetWmOLCejsGgGSl1wLEg6IdrUKsvE8cr2scJHZYZwh+8PBif0nhMho/YOkFxObu/sPan+ALjZrOmgCQAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.536Z", + "time": 6, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 6 + } + }, + { + "_id": "4f7c200a37e236805c35afa89036bda0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 436, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=true" + }, + "response": { + "bodySize": 21810, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 21810, + "text": "[\"H4sIAAAAAAAA/w==\",\"7b2LduM2sij6K9xK1tid0cP9SHbiSWcftezuOPErlp1MdndvL5qEJMYUyebDbrVba53fOF9w1pzfyJ/cL7lVeBEgQYqSZXfPjGft3bEIoFAoVBWqCgXgphWTJPPT1vbrm9a557a2W7bjkCRptVtOGIy8cUKLbCf1wgD+bkHBlKST0MUfMbFd+BDZaUriAD5MiO2nE/gUhz7BGl+15m21+Vf17b1gFPa+qmnvh2MvaMO/YZaWQLVZPQ2inaUTEqSeY/OiKshXtu+5dko0qAaAWer5PVH5l4zEs5eeD2WrD5oRupd5PUB1StjPtYHr1JETy5wsScNpH+j0AVtPiHO5N+oHs5fETrOY7Ab2hU/czdcbMRl7SRpTQm60rY3ITpLrMHZPSELSjbePGqGVEH+UkPjKc0jv8sIerG2wrp1MLkI7dhVgXoDVbL+HH3phRALPnXaQJcLY+0Dc2r7e4dyWuXPEyJLUMSmQ6Tj2rjyfjGnFWoaKRM3VqSBB1MpOkl1MvfSEvMu8GBgjSJNGEqTOGHyaJv3AhWlzPQb3TvsDDjmLuFRWdVNiYS85mB3H4QgosllmynZ5XiNWuZZ4S0jKBmC9sUAaCoNcF8+W+wEsp7Y2slt1wL4baAiCmMAUL9uPmaSRh1xDktQwf1qvDcblTr3AMCTy3vEzlxwzUAx4FLbxn54+5K/W0KMG0IFhpKRNmTGj3N12iU/gP9CNMzEQN5klKZk2mcWK0eadJ07sRen6oKcwS238h2nyNhscU8sZWyvavndFhrPAaSuL8cJ19tZj1lnL9RLb98PrQTid2oHbp1UL7KXPNLLCJ+18xbE7rJMSEjETqa7tMtVt+8d2bAMCJE66vNGeaz1//tzaYPzYmdpR5AXjju8Fl8nGohmjOGPVJdA2SwWVACYNWg+Aoj0mbg1hIt9OR2E87YBOv/ISQBHwL/RUsQrogFbpokrm1KFxBZqJVa1+Fbptz1VrbBT6njNbAx2XW2yWH8DK681qA2i4Kt8aOLWjbkUmGLx7SqZYdaEqJe85dJgdz79Vt2vV4PfIz7e1o3I/4xZ9ANQlyFfpuS7Z64UXgJ0R4H9Ka0J4HezYqX0U+DOTqcylj60Gy5pBVfgItV6DifWXv1gh/LULKxXa1AdM7x9d/EEc8Kygizj1SLK5kYFAgSv6+i1twui7N4IaYIKkxO2naexdZCkZTOxgXPQGuO3FjC7DBNwdN4HsRiGA7I1JCryPAReSgCTgcO7OfVV7Te3kMrnyyPXq3YHJEHG+KPtfpwC/QG4Dha/D+HIEdlEP0fGCJLUDp24BbESCgkthB8yDNGCkWOD3jZaX9NEgJO5pOEztGJkauaCAIDMczLhxvhHo3UoruTWWaLFDl4y8gBqQy1OkaJAmIJ4g0CiAp+FLj/husvlaxpWKIaVqexDlpgE2DqiNhTMDiuiE+FTnJhMv4tpmtrlxDpjYoGxGtp+QBX6p7B8xw3br5Z5qHIMw9UZ8yUgA2TTODLiaNLpESgVxp2gPQt8nzBV6veG5EeAriFwciCG4aLAJl2SHSswZdQ5VDF6G8akdg+Jczq1KaRvqU22CCZGCJdZNiJPFXjrriv5pD+iBRWEAC771V2ujtwH/LmjguQv1q0rEpcjxFgnC9wMi71cYCoNwbcfURtu+gdWERrvwzy8vwtCHqn+54bC6eaMub9Ll9T9S8ZkDxQENGoIZ0ohE0hiQ3kyB54djFoo/IUmYxQ4GdyYA9zWYUjA3gH7JpAJICYvdy6h77lg4yRUNFAliwSzDb89FCClGGK/g7xjNeAwM0/+wqsqflMTqb77ElxQETiVj3/yvHihCbxxMGTriYxiP7YAzgfKZd6TKAPwscACzk/EPJejMHU9kEAzciP9i76FDf9FASNk5Mnk06AO6mQ8C+Ed4of0GXT8eU6SYn4h/zAKH/6fHYw0UBnUc4A9qpcAKHkCzt3OFJ+V8wn+HDAO+kwBcZF+Bl4PM1sfi3Ssg34924Po4V8AMQL8u2FqASuhcdimI7oSXd2HOu4PkqtQSOqtt98c06f40TZZvlwBn/wT/rNYySd0wSymAIf1zMRgpWRScBzZc9wQmOPHSMJ6t1hz6JfHSA4BZBontDul/yq3fggDaCdlDaQTkvCvCDAScwh7bpOxN0jTqcQXcm8CiwMSxUJxEKNKyHACPqJo4RmHwCNU8I4RN1RqLC++NoJ+3Ukexn8CBLY4+rAe490dbt3AqUAGRAquBweODEOHKtzIPOJKtL7LRCHpk2ndqvx+Cqm5tP97C/4FmhhUCiAXDurJRhcJ3a+r5vpdQzGqVtYoOw0YoazQfhG7d8UAtIJPQxtgQDGe763rxvCcEMoCFTxAExDeMPIcpYLGpjIvUFWjPXPjLOpmNmMl7cwI2EoWcmktQhEMuL2B8tKz8Lse7tMyuNE7U89Wj5KvAbcf4lovJKYdzI+DAX+Ba2JnPxgIfkPmErGIx37qAv8Z+eAH4wZ+AH1vrAcNeLyF2kLJlOp1F+G0ch+HVrDXPx8G7myt4L+5a2oavc59MOo6qMU0dFG6JvVU7lSQS3k2uzcQX1EzXCILkhQijQM27IRRamr0/YOnkjVWK6f3PVfa6Y7rxjubCNKnqUfKowxCkfLigMq2DwwSVTyLsGZT6lNrOtyZdbqgUBAHNJVwr08mAWfeUSvDzIEQria0aUmY1fIen/dO9wfnZcPeEGW08CsYgjNFKHHJPQYF9i2G0BfnOAOsT5ju8rnAeYjJG9pWsjOrGiWdRGuKfvIf3nQR1F+mQgJYxksB6lRGs5XjRBGnf6u8Oe4MXg97xz4Ph18foWAVomeNyA6WjD7uPf3p6/N3+fx9Ns0FGnMFOYP/y/Dla1Vfo9Ez2vj37cTY9PBlMXu3NjgZ//Xpoj2n5JZmxVfPpE7SUgUVafx+9/M9fd3vh18PJ1Tf9d789/jt5esqgRVkMOhYRR13JWLGroZ7YmDrVuto6/NG+HI3iP178dLj/9MMfk92jlPWY0PjlHvKCIFUym3Y4YYFVgMrUkT0KhNdSDB+gyCT4kwljEAazaZgljM2WZ5Xmc6o4hO2qKnQjT5t4dXnB0q4omreWHGpht7B6uAf9w/6r3Z1lRUPicGXHFq/2Oype67kVs6yVzQ0kQk/x+DcegT+eliPMyaZw0x/9TW8Mq3ieDATNmVOXfzoNcS42Y06TtiUAta18JPA1o9HvA+YmYZkAgKlYeQfqr770H/G7OsRHf1uT4CtM8laSfsaxpPSXcRGElq96dFaPRkcxinZ4DS4e+/G2uOBR4ZFswThkEBPqhlNTV/IeK+MIUygf2A8hZBSUI9t2RAipzJaaG02tlgSDrWHA9DQOjDPfT7+dng93h8O9o8MS7zF23ZlBVc/heFHDCuQp+RG8E9zuEMwMJv1peEmCfW9EDrwAeQrM+ydbsmu1coo198BsO/Wmee2nW/O5svrk0Y2C3Iig8YDm2wS52/A19SUKxUcj8PJBYpSSPV3Qg9AlXY9KuKhxAksxrHQzxA+tY8BNg61/z3GmW5RiY7OHJnAIK3Jwls8/58390LFxImBs5QGO4nDa4mk3SQIzyWYDPn0/Saf+D99fhO7sh5ubL7yRFVK56uJMH0IP8/n30Q+/Ax9YgucsL7E2bm5K9Ta63/ciAELQUp7vjaxZmIHicAj4qq6VTqAZHY3lBRaJ4zAGofUJ+LSW6yWwYNqx27256Xkj6HLy7IfvbWsSk9HzNy3ZFybnTsnZyd58/qb1wwDc1UsLlkhipaFFM2G/79k/fN/Dxj06Ivgbh9dCCjQe7K9hCiCDcGq5G5jd6iVAehg/WAcNxj30rCtYjiz7inyA0f/5fzPLIamFySMw9AhUK4wdwLWtK5KBQwq1AgLfgTiBBTPrxRaGPlOyLC1AaD9Y4MBbEU4WxQHW6ADVclxFF1AEU2C8U0XxYQEu1Ey9Sj7pO06YBam1F4yoVQjyZ3UsRQ1RAiulCWjo2PIJHw1ULlFUtQx1PldTa9fA4k9/OEXug/+bIW1U6IwlYQahUiNK79J5BFGWcUQLc3wkhXNee/rDgMB0INtcUZaiLd0NEHm6sGAQt3m/+x7wh0usqz//oXRNsc/7bj6fJ5QGJAbmu7ZsNrkC9UH85z+gJAtgyrIrYmd8DuvmC42AfN25/YQx4Qa5pqDZvImFrTnRBEocSvVEcfGhogOjpzt6NvApicXchSlSH1Egzfs/UFpB72wGVfh0FlebvxJZxIBOVPw/GPCvnkfmi651In9FSZlxzQ/zybpYYS7P9IaFyWxOOQ5HJ10lRa6JD8y/3nUW1pjfGFgkyBEYDXs7B11riUV28fIGfbwAfgNHPyNUE8tuVlveVl446Ki4grEmsMxdEBADFv2QLMtw4ivFlYe7fu7/97//z5//j34GgfnzH9Z/aJOk5G7I/Q3EGRwT5lC0aNyFqDv2lXW7fyR15r+pU0OaiqG7Yq0VOlIzUww9yOJlQfP9pR2giefz803ME6ypwxHQvy/bc4ieCFDm/czcq1bOe6TfjvHbsr3FZAqGN4aHcfvzJQiouueuDIoppkX1l+8+sr34AChFwzU5CTEJYso/D9me3rKwGcZ73A9Fl6AfuOInule7QUq3ZIpjbNpwWYTMx8DyKa45KyY9zTSeWTeWOd5P/dLuMMVdH6V50gWzOiGbIvWAdhik3fN3eZ1HXQx0R+km2js6dMSKgwY/nVX/1aObCZuP2laQ+f6jv1lzy8GwrLVJHgF+6SQOr+G/Gw64ehvWtvUMnDlrg2t9/EC6/Ae0nNdGFyQZ+c56l++sT8IkxaWArqAejQTmLqZWuVusOlfAKrvwTLezoKoIEbNt8mKMKJ18OCDTC7pvd9PyUjKlf4igTJ6qwrb1xPEn2+/jJrnHI/NsUQR9SzAucaZswUvHPQIhK8YXeABC7kPS+IhYkKB0DA5lwP9OaLhNmWjKQhnaOG+5889HWtz610bMElPYEMG2T4jIITpkjfX8G4xTKikheaKCSmDfTtIhj7uT0QjJdaVGoEQPOPOG4lZbQlBqSqD5noAhs4EOKcpbFbHHxIck3WH7DWrkT0bq8vKO50YdB/z0IIs2HnWZehxwx9LdcyNMU90MfZ6N2rYEjyDl2haXSSUIqIBW0aruQ008athZbTCPp1tgSF782cKt8e1eD3dOO+xjF/RDz43tUdrZetqTKRoe3XZpjeyOyFyh4bg42Ma2rNo2NN2W+mWbi+w2Z5NtO/K2uSyAq9zhECMSRlQUwRxFLn5Nmaut8r1i6BdEACHRTHaXSN+SbiBRs2uY2mlGNTmQPZqEATnMULZbjA9AaF035oec+aYc/TwA3Ub1N8CgcUH4mBKa6KNmWEI/GtuyccZ835OHHFnaTEwrSHYXRQv4H3cqLuw9llQUgZNAYgIIcKMFs5OIe5CnyyjB07YeVp1SlWb4tbcjN27JDtuN8wLl59uivqCCf6ORmyk4a28HGyfHoERQH8oAZySzK0A3RJgSxxItwvjCc10SDCY2y8fp0Q0/lpnEArRgHIRpB1c12wM5gYo2BnVAkGkc1o7h0wWu77wrzvoJXScpC8F87GiocsYSCeWyKVqSyod5kYfyDZMW38UlBa7bbkl2a06FmIzJ+wja/s8mA/pRkP/Rly2dGqzqAd0XLlOAR4O9lJo7OeOvgyI0+UPjkhIH9GmZxVmIxcLgM5o7qUeFdSFN8pFSQ6kj21ZNNh+r3vVaB5yLkGoLsHV8SPxRPhJdRkBSld1OjgsAxIJjrapRuPCjWH6pKuRLiFvB6Lh3yL+wdZh+qTBZhFFypGcP1honhUxDg5FCl2SzPYImbpz+TGYsjQFn02xqUHIzhUmLVfdDMjgbZqwWtfMrG8TMKZxFu0thnXox2xECzKlYw1QqdRJrz+ojbh7fROFI2HFsz5ozk6Lhy+Kjqf/VV9ZtfUEyyJzk4vV0ss3gtTWh4DxklAl93CdySbNsS51UCwNK8I33zbcrSvJtlKmCUs4iuvxawue0rr104gXgyRCrwEcFlMexHaQs0lOE+gqLLFqW2/naxzKippVTx54Pky2lBhnnzHmsnJKzqClh7eE0WAVaLKEVzI7MS5YMmZcqg+2rKckFfaGlKy+nLWr0w5T7ZfUKQqwKOY8y4rQaK48qdWEAbVIGt1hvcquxrCHUlH9L2I+3EWLVRL0rRSH7kHrin18rrE2MDVP6CeRYRL8oArkoF88trE2KtRBLM1GuotMaRdooXWsUbUeml6rNB8zpbO4ugBGyT4IxztBj3TtA82SaTTs+K8YYjdLMfi+aPfn660JD+73W8G1OFY7eKiY1m8EyGUpea5kmooqleLYm/ZT86sVpZtJYMpDAw/W5u2z2adXCKnzqXJsV/Ridywv9lInegLzTPNtKH8SBJEQ1AnmdFfqeq05KDeELo81nuazkVrLbjdyzghwXBymCAiIkZGATESv6bKVZYrhGgdaIUKTJjhaT+9zoUi0JOt5rpJYx3Fci266oZfUXenO5EuQJfUIHirEYgRWXz1zk6Fqen6CTIUced86zNr9q0RVeFKvrt6z02hgnfdt+rf9+axJ1fUaqSNJIsstSXIjD1sxAnYG8BO2NRksDqhvJyqm6FNmWMmnKBMuj7iVavfTiJLV4RF4lE48CfJ4irmG9RgnXguclWu3x0k8SJy12vs5IqdilKI345xd9i+9flHmjbLDZQXLNts5pov0vuKklY44JTwIv2W+8VdlnFtBK7mEBfHk1p+XWu7z/EggFoVJzAbjKA1RMJWWBFrSq1hNrNGTUTVod+X0osbDIQq5KUnsamdlSzlrFLlbevDRjt1wIb7nILbWqzNWBlFA8VUi0hJguYonECWkFPMDBpLVGsM0Tpo+6uaqn+6nlqaBZjPl26SJFXxw9zS3s2Kx9h+u9O9LtRVzXqN7FDq/BwRJbvyb9/RDzyp1MSqdbRLgKSTV3mUZTFcLKN/Rrolc1Apszizl8tcxKrEW6TByr7PxXbWLW7df8M+5hCrH7FJuYzTYpPskuZhpa1xPPmVh71gvih2rMZbmtzEL+CLLVQl8IqG+xG3MwTa+slste0MjHI9iBymsMdrVTyjgNlhToBzFb7KJq8lHjUdVJczGbZjmainVXSd55SDa4ezml5P4sxXTPOroOVhVN9dy9vlwrZ1uUo+vIANrpdgFAPd8+r4h/yMPPzZ39b5dw9oNsOrCjpBQhsNMOnp5MO3/vOHYEFPGTcsvDbFrbMsiYntYbivu5lYs36gyH2nS1EMwqkaq2jDmvTNQ6LFehX/SEx7KvzAqsx59fFEdu0ikortGmV1I+y0JDyyyeD/q5RbAlx2hYrpM0SsppmTZaPmpdfICdumAZsvEleMHBuBwSyIvKjgsJXHBarCQijgcDDfH+K/CT4Cu/dU5ZdvFuI2JTpSX6rQQYkGsGJsewCKXsmtdIrkaRZg54o3kQDkd5h4VexWWdSIfkjhI5OAIPWRxlj1afglsncHwG7m2ext4gOcM0/ErHdum8jBJ/rzElIzbv/ZST61q3yrOK7zbFKtayqx6yMP/NsjD1pK3CFbCfJvOyii7LaIW8nM4mHkoPYzTSAry+wgvSZBcv3HBy12ORJjGK9Rq1SWLYRaKB+X+2nVEV6TWakvoJqrJ+wOKecsLqc7W1S4iukUbFU2rl3SZRwZLn2Ax8JW/9/p83b/76X5uvtzrfvXnTsd682Xzz5tHbR199Wdqr+kS0NAxnjdSUFlGJjModUsvuY8l7f3QC3O4wW/tzkn+FOGubjEJ2YLWtyrcf3+roGJypUgfFc91hMGD3jG5XX31pJ+6I/r+b0P/m/Sx3eFY5rx+P1aO0X7TUc7P0UcNO8i6zY7KyTXkibneX52fzXKpz9rJP4RytvC1NTWrLV3T9xJBqY6TlVbfheVBEkplPNd5yxRpjOIhZlyPAXwSqyhBYncj/Nqec1ry365ZzMNbgDt//aSPhtzWweCsH3tzkZYylX9Aid6f4Rla9gWsWhIKFa0rI5/JejghbijtisaucLZAbdqGheM4iGeSVGmyWDVT9slDya7OLT5GzUdEon9t4jZRLsXS9JPLtmcW3N5Jua/WU34odUIMcUs2Xn25Zhx7iff0Lxd4+V49enbw78uU/+dUwa1B3ZTJ9Wte+IHOLVF5g9AmkNgnohSq1aqTKRcgCvExxgX290OyRzmDZ+jJkuFp0nFY4skQDVNuiBR2CnSvrMrWrc3Fd/mpz2eaTJeX9iExeXVqb4qgBz91BPgBlyNVJnCusmPpEmLqrYx+2KBXGIWwLlRdNWuKmZYsLwnfV3fd5/riCasWs6mwUV3DK0Rrk3B25JLOVvRDNHFN8kasoOGdwGzkh8uiXJA69/cYLLn/JQHOITCGhm3KnRXVTrok3nqQNPRMU85wea/RR8gGY+5TlFuKIV0BaYWBdzJg1laPUbRnz4mX5EW3NRp4F5u+c2Ow9hRJdTG3KiiWnUahALi2+ZmVqJNu8CuFyfEapVt+9fDJCB/Ar/dw8814ZbX6P/9Kqp8imizq4S/Ncl/lPa6Qrk/kJTPWCNikf9VCoiHWtd7Iyv4WZvk1aJCuUaaIqw+cIIu+vyEQ561Y0aMAUlad8kdj0Cl20BiZ47TatWEIdPvtoFadhjTHDG3fIey9JF903VX12uLnrpMjI2hyoHOaDG3VvblR5Iv/dnCk9prrUbTWrO1ZNL61Zi6ukaJMGDtPtvaGKZA0R9JJ5GmtTF3pexT+/slh7lHc9GQ+FPIZa0V37TTTLSqlh6OsT0CIrr5T+zX0ho8iyMmEb6B5Hc4u2xmz8jXUuUH/dCsSuLt4kjY3rtwVrfUSjMW32tMWrYfo5giYbgo3ewguDE3zlfSkw4vXJtXn2gaUOz0KznwTQa9u6noDWldcDgy6i768w3gJ3U20GFi+7c7GrBQYuMs/nL+0prr0bTm0vUD1743zJcxXyNsfca2cHc9B9n0APMX1HglZj52ZoU/Ynq9nPy9iHo2INfsin4OCKZo0OJtHalufe4ZGkt4uPIXFqrXYCidKJPqChj2PJE0gch6rTR/+0pwQLZqH5dOD67MLl7jsVdzLf/hhShQ6Xslazh7iIt9ijUaHJZmx4/ZlAoux+Y4mlnYBS7bh/CQa8g9Nvutq9JSNKvfwZnIUz88NqCq0QmVr9wqcmNwMYHo341zi7eb9e9ZIHrdenPlfg1UpHuplSFN710t5xI4aU1lQjK4jW/uRWEDceV7OCqHF4eyuI4/BgBd2THGuPVnyuVhDlrVXlnC+v5ZNG9LtltA6qB6B54/8SnHkXt3isbB+ZWcPMusqcrHYRjJkDqi6FWeX6l4Ij3WgtECoUQ0WsvSWd+TtYG+yily+xbbBicNlabcVoMNAlF488KtGI0rxTdjfK53Mnyq2IWjWmlSh5tJQRY5hPGY66A8qW4lUS20/AuMWBLkXuBUlNZv1kCLmKwCdX1nKjIw96aisghoXVwCPuaFzYiX6+gVXiqOCPwgt0NDwsHuzkUVd+6fRJcbHie1PynLPaRu0tMFXQNsptR3iViw6X1MaSEw8YWsR0D17svTo7OhvSkz2ig1Z/+PvhoKVXHR6dnQx2zw/2hsO9w1da/QanXTSklMi00oEJshGTl0dnhzvn/f2T3f7O7+f7e4c/7+4sbnV2+MtZf3/v5V6zyn1A5tVhk7qIwPnR4f7vi6ue9k9e7Z6eA+CjkyagOc0b1+/v75+/OjrcXVxzcHT4cu/koAlQSu4Gfb8Y7h6e0pwN1ayj11cIhjCenhCvQZrNrbLY5QJfuO99geiV2xnEr1zJKIK1FFjfLC0hnuuf0NXEbAlpaCzwy4pBjapai1guox00tXN3skEwYYy+7ijeSOdGjaihvv7ZExdusdfZW4WcP/58cY7pQehiopjLXJkuV99tResrlU/DAZ45ZPYGv1Xq7dyg+yWmN60v8eqblvrirvaGalfH9yMbGn0WnaSTkAcLxFgifK1QOqriDVroRb4Sz55Jl2/by3fSGQhXbk7ztizdqeXhldJzY/ii95UyV/nDvcVaNzdQEqGy6sGkzOfqG+v6/MQhTsIdT8/CI7H3/cKpevXTrVlGJeG6OIbB/PwY5iWooJCStDmFFJqkk5jY7jGtTk9145+n9CMQ6glyw/tfMpKRofcBcHyyBf/D2YPymVb1sYD1MyFR38f3Sre/2VKQZrmeyEquyK0DrhW6UHA2rcSeQ5c5BSwlz/adzEeS63Gk8pPKCfFHQ3ZP1zFfwDcedYHcJ2TMdhah8xzI5qNak1mZHwTMLwDrxQosqozXgl9C0tsjBkDYYX11uZE+E/fP7+SRXMU1U55QvvUtjW9ZqEwOV74VxsWperA8NleVcyydUAoh/44DJNMonS2+duGrFeljOm616DII0aajnLjSoarnVOph0XBEh6XxF2Yu9q5AGMekjJAkBHIlC6ZRt79AAo4tcq5Ov3uZJIkbj73UIKczLLDaZ8MqbcOUyYnpUFw17GF5hvXqpW+P69hoZVI2muZiiYJTRwRvdJzFdnszfFdAS5tgEk+9JFmqy7smkYqThiwXzMUCKDdpWc7jct0XlYCxOR1YhwU/q1Uxpm7WquLPTeHp41BzfmuHwRh5MeoEjOq0w1ZrA90cGgju8W7VNzrKK700oIT861cuGD+rGGOk9lhT6vkPEVbuYIi2w2zajgu2PfwH/E2ZJtlxaDKr/s3Qhu1ndOzA7eR5mBoEueNB/zDBUO6KoVV4Q+2kbSHE3dL2dVUdgxBqBl+JBB+ohoH2bW2IK2l5aqQ5qkT6RtP29Lc445evpmiJHwX+TAkGqLV0525BZeXuclGPbffp1ZT31GvBqbf71VZU8sRq62n7og0gsj2UBoNpUrGUOlxfXdnEaQL3qLL627ZcQIUDxfaae6ILi7yz3rRubqj7+KaFSds9HWqhRqut6Yw=\",\"GrGo3yRXVzWQsV/3dn+Dr2fHO/3TXfhjZ3d/F/54y+JnD5z8wMlVnMz3GqO4yJm6Ql6KGwcnu/0m3KdEyBZOhXR1F9RUQ20LqiYNeIAH6tYpIMUw34Lq5SjgIloVgoSL5IHFEBsB5SHGRRBlBHLRBBQClAuq5/fZLJiy/K7r+omQT9k36Ft5H6q2YuEd0ub1+4Wja7Wt5FN/C2uKZxwXz7B20/3CKS4++t1QkedZgfVTo5+jWLzglOua1GThlaMl1KTeki3q5+egBmFdP4982yGT0HdJfH7eaI032vDmxE3zSs8XeLnkP+jaB137oGsfdO2/mK7tbYFlSp9z6eVo5h//Y7OXYwQfH1UYsdLZaKRim5qvn5XzVD0FD77TXflOAvXqKEDfXCNn00XBsX+/KMADI38WQQBTVPYhCPBgmD4Ypg+G6ac1TCt15OcZA2iwlfXg+D/o1wf9+qBfH/Rr2e8HFz/HE138RY6/MS9gWc9fSxIIUbn2mI6FNqAiL0d+eN1nH2hqisxj4dnfmOabOhPMJWh1MRmZ1wAi6KeuE3pLXjHJh2cUd1B4wtj7gOkriNGd9YM0a2mn8FAWu/SwpxNOgWpuws76saWLXySLl+uys+X6WeweFmCaNlskv7zhDZjrm1//vC2WM3qzCwXNsrY7npt0RmHciYnDcsWLPdCCPVd0wH9Wd4Dp7cALrqscYPJdOxqEQcAOsLMsb55SfIHvLm3TW0p5MWZiswTtr7fayvchcbLYoxQHVRunp/tDQGFC4M8XwIN7SPAr2x8igkjEb7aU0lNvSsIsPfB835M1HrME8Cj2pnY82wckMZWZ3mABvDaBRULEuGD63D86ozh0Q7AqrrqOj8dbnC5MGfICKNPW9pOn337HbvpF8CWA9LRqGNI8eWQ3UDhKhn7iTSPkG0aQHSRo5rnPGb+06Uf5tjnmxNNr8EPleoL3HQaio7w9r9zx7XjRhM5nf3fYG7wY9I5/Hgy/Psb0dZpxh8dHURP/1Hvxzel35LvBzs8/Dg6/PX1/ufNs/Pw51PCuoHwXluH4w/Xu2dnlj6++/vaJs79z/fU1Lb8kMzZrT2mivYN9pbPvRn8/S/1nEXn/yv/xyPnr4AWDxm84RUFxp12WQdbVUE9sPM7berF3OvzZD47J6deXvpPt/vdFMP7AekzowVyapybkK5lNYX7YUeA5/g/wDmDgXvoyhqnaZuyGn6f2+5wj+ylm52Gq2dcoyCyz7UC9KpqCVL8E+ASCbzOlnT0fE1CSntN2neccF/Gnyjf4jbMO/RNQQnF5H2H2nQre8bME2Jm4VNyYqHpcMxR6rqi6PCZtng84wM8sowxY8EicQx7FHaQw7aUjOz2l/e251a+beUl+npFfOQxy0VcNZ6o/xSFzJgig/WM8eO35TOLZMkNXN3pcgCohBF8EpqFpADwX51X2GDlr2+c1JRi8WrJFGctNeOKjXJR/lTfqq3PkBM+F6Fq/sjsnwjhpw2fW3kR4UMrOaNwRjkLnSrRDUWVlstcOFXJT3dWnxAmWnBH6Pt8wu2ApvEbKcrz5S355VcMMKad/KqCIGobGmG9KSVnTHOt0KP+bINClXmmFFDsA+ffoBFcSjcOmrfPpMXbgBZJW4txIJa5oZUlyiXMkJrYmSXrCrlLR1orFs807QgAdfhmL21Gc1EJXGvPLRP8hOwJ2H6wv++wkYMF8Wsa3fbBQzwKmS/H04iA/+bAM8SmcTqYAUs9QGKa7SPhlWFQj4OcogF4wUIZXB2iqHjbB4RgAagzrenTJt9nVR/fBrnmPn1pJ2wkZkiDx0EPnA+T2Z2M+RRhAZg5EjEO73ETl0XWuCjkdX3o+WQprZQro4czPkuX/VZYEhs8LYBT3vkSMddnBC3DcTyxkn5qP7PeCwIvZyH6fE6uai/DUSWOQwJkLQWrcImofyyNINSwjKi3HMPK0tlhrNfdbFN8jj3B/UgxrCCxqj8kQb3qqNjebKzsGPR9/wuCzG/HNBmnONf0xacoyeKWAAZgoL1jQDbHPoddZ0KLWjx4ObjbAIH0N2hLohNXv0Ki+CXCuM5a0qYzqqY7xYxIhTxQMxvvQlqJnxcL8d7NMPr2WxrOjxMkQ11yrNh4syqGTQ2imauGj59sYQ73XxTnv9mGB1lbTHW/EN6mWm3t1jXVzGPWTzx7YvX9lw/p9UDWfkN/ODFO/FLeV5nARryUk3iEjLyAuv3dUswWKbMfrKM97NuI67AWNHeymc8VgaFYDr1cuus/4kGgsHhtsHhGSAd5Uf3ZQTi1q051gWUMFW3Vcs78OJAdbOH1BJvaVx2ygKhHgVTsXom496zcedo0wiB3s5cYrr58owRvHYRYxAla0pTUqiKWJZuPh1QsrCFBUZ36zcrPZmq3BdbgqPP6rCLe2oW3aiKIJLW34Q9RcyxYU348RMDu09/uUX0yrOVAeKDHRVyQDiMeJ9FQctp14bMyLkPeV8yvQxVo+L1yWV7FN5RheG87jZfoTLqUpNz7cIluLFzYqeg5ssyep3u7QUE45RNmyuNnWNt63siR04/Urhl097T4uE5vj9/WzuWGnVbI8xeQ+t1dlnK96+suhwJyEmJNiohxNYrkratFO75NIIy9O0to9aESpI6oZREV7XXsRHPmydhUkYV/UAakyJFjKyuLByHrGFcIPnUtjigItuLOJB+D3OvFB6JJ6UgFGHaxlSj+Yi/QFvCA3dEzkogWoYWi9VegGytkLxkO80pGM+T5XVZID7Y39qeLr+B4J0h1MPuaX/lctzTmUW0xDA4xUOzDwkgmmdC3K4GCgWP3UM69YXtIHLTtLvIX5IAyal9iivjGyI5N4FoOalp5+z0WSGg0nhtdfmgBmrYTp4eStK9NhVu2JtW7SEw4quzjJL0K9Af8gZduwixg2q2dN5TIylrjDcCM8cVu0y5ErimFPYtI4B4q2Y83Wq33mbXkTd4MJoBh07MrZtacX3jgLs4RlarGhNMh9UoELEGyuGYX0N1dyj++9Qyotzgr4eZs7l86mS24RRWxXuwKvS+zlTc2NURMtqoHtkBTPfSwN0mXtTEb+BF8aaQ6Q1TcAapjIp4CqWRaU6+obg8vbVOpgITLLQNUbflL1nrCTOUsgL69FN68UK9Cj0PDTLkKiGnfWTQuGsk6dhFlKBZuePiAj7z20kQtLbrepi4lMkufLCr2LNJkFTu8d3j5usvloAdp8WO2uTGWEzTC4T3sZs5LJe+PubBGvjqhbigAwkDv8DfrFcGh1fi3+Cso6h1SjqwNyzSncBBDUlm86FQa30KNQoFS4FYIBTshVIzh5bRMo311iYFC7amCmxwsbQGym2ESthpQT1SvWjrQpa7GaJhBQpd98kPhXldlGzVN+pKB8KqD3lUmD8MJVdAdOlym4yCB26GyyWr/g2aBdagmlswNMdAbUTjJ64gk3xfbGQRiTn0RNWmPAwEhl1ERTia6hLr0H2pFvzZWGTUtWOncx8syBbPy+EkBvyk4ClUGyklsANc/5bcCKOGfxrZBiH2r5bcOeFYymdnFbbmvIYNqoS6th/qJJIbJ/rj09snp0vxRpnpLUroo2Y9kdUf5+iM01GZPm5rSmNLkViXFcPPnNRFyleCUZEqgYZZMX3gqwnb+hZY4T8tL2bfqrZA4OsZP3c0/8Uu64zDZNdscUxGs3yqZLbu8VzravuL/HLgBYZ590b3SBSBjvFDIwl1p+t+yl9nTPDKYRocRi/M6spjOkH/JfddNX3JfVsFflHi5jj2HF89jlnpcUguIFCCuOd8Eus5FHqrae+VVoDQdQuGlhRfzz9+mXGYGcNX70/Gcyk671khNpFO66FI27FWbs4bZCfMBgnTBttow8m5NDVN25ZNaANixdBzefOmUZM03c0qIX3y6zRGWUuiSHu2UUmry3HkY5YwNehlEqUiqEFV6YBeUWi0Uj4jbrYuYoW/9m3ih4HCvyL8Wt6LssgaTmLpkRVda/FZHUVKS4+WKNGrK9Dk2g2JRMbNerCpTUsdtMNQVD9UQhc66ArBPUTHrRnFQ1Fr+V6nayIq+2ak7AonIradH1ceAK09uABRWzYx1IUnDrxlEkd+2+jzx2v09VrkV0Xay0aG9AXFK14yWOHbu/QSFJ1E737SQdTOwAcK3pVa2xcpfiGrSmJq9yFdud+HxNhEYs/s0nvFKMZQ4EjHOM1+vJIHjJbizVWimsob4YZkwU0yqs0ehQ4d7W6DhRYDW0OtTuaTgbD2K60I3R9pKFK9FYtjZHpW4HPPPMUDNvNXD0mk4jJ/CiFcDyLd70CV6/dRRJs2l65Tgqa4DJld+xx57XPmYHgemFgCmIDTOy0ywODjPffxnGB3iFXTBWH0VmkguieQDwlZ/H/MK7K0KfNZ8pRcPsIo0J2aH3sMkrAzEJk99vxt5Gp2f0TuMsSZmdG7NbD1p/ucErs7wAr7D0u64Xz3uiaS/F6hjSRIk3AhFHvBoAo3AidlLBCIulnLZ++hkvYkuVgtY221yZF6658wIPxQK6I2yfpHCo4PWNnrTeond387epr4glrwb01Eu/hKmoXNam3LXXLsKEYXiOxd9ltrjO1gHmtwGWoSo3BZZA94MwmE3DLKnANCbjMkT8aACVn1EnrnXl2ZaDLEeNcFKEi0VlwPSrATLeNAMw09AC5qcGqSWuWrRSO7ksoU0/KuZaoR+9uNzhMYj1KIyn+O78lYd3QIIMFSgU8TodtU7elbkYb9sr5OsDBxl5I09pV96Rp4VdUTSnqNPWtphHvWX+WdZkBxdUnEQJv7gwxEtp8A7ADktbxGQQRSrCjJ1NYoeU2MWD4A1OQpcuJiyPoSVUJbqsYYApGqDghJ5oiZfm2Z2N7L15vtobnlqP7BQpBoX/s8lNhI+CiI82v/y42ev+9dEjOg4FkTvpX3849kvapxbXl1mdmzwxpOuAmoI+4E+KsPX8+XMLFesj6y9/sTax13BkicryRAmttpEF/LDghvXxo8UW6e4lmSWbpQbdKTcG8udWH3XZGWsKa6v+OXukURLh8WxtFPyK0M0N/elUpNrGoy5jAdFws76HprOoXDQqln5Q8HaAF7u06L46KHsMRu6+p0fJke7chZOH9+RvbpDj68woeFfhJRnkyT0cOfhr7IcX0Ab+lJlu0H+PdmxN7MRymPVupRMvsVi7rrVP0g34RYjljSwvtbAo9XyfKieYiq71TvvfkI/n8ZughlRzgel+ON4Hi9ynHi69Qph9xxs6PYogb4JHZpMRzJM0B/BHP3CP8YJauibA6p/AqpRb7mggg4wjwSS92C0L/GaKLfFbXFNKP4kpETRl95oqRC7GuEtzSXWvYwfnmEpyxXTFMpNamsUgY1706QQtI3YjJnZA42P61bCbmz3aK03LsnxC74dF7LtBeP2bl06ORqOEpPM3rUdW/3DH2vyPzZ4XKE3wkmF8wkX7OK6D80ha3GW3i88BtZ9Sdt0rVHq8NWX5hcnlULg3YCdGaHshJXuCcH12kTmlaCevwSelpq4on/NumsjClR1bEaoY67n1+gYGLG/SfdOytuE3MAvec/+m1YYfI3xdmRf0tAvXWTk9tcnLGSXhx/zt394EbwI/HMOq3HXJRTbefNMCsxTXUVyA+3wwFh+NdQrIW2Fg3cytzZv5I4TtBVGWdvHa+LbF6L6384jCFWsoHcWmKGtblG/Z2B79jarmv9VL57XtpWBaDxjFc16dlwVUMHsgrpQuCqEuYN9+82yL3fDbXIwIRjPuWYg09vfTJmJkEKKmongHIsSI1kSADDU/L/ERc9FEgGjk60F8fApOC2kQKjLoA9MugNy8lHriX16Eoa8Z4rJxl7fsRrKpLEzmjEeoTB1TEDf8F19kH2/NVeT4ar47OOgPJUPl5OuG4KBMeSQUjDtqG3zXVmugPEwjsP+63F3MqfMNkgbQeRWH4RUVmC/G9E9wohOqHrqMd7t2knbBgQ0S5BuxjYO3p4sGJI7DOOmm4AJDNZyqx1t5KcggMhHlP6lxCoUgsxf0Nu1CMR/GBT2t0frCDmYWDZdYaD8HbmLxej6YY92hIFihNa2bMFeuy4qUSix9q3sxS4FWLnbzuPttudwFSUFnaCZjDnjjOAs4ODx4VmrkBa6Mm4iiazsO2F2SLd+7JP7MYuSzvgjBYQZxpNKcWK/BVyNtVqUdheDmwpy0IxsoHHr22xa9/QEB0t75owWGaIjvXeR1JT8IrIrfK/hEVmQaDC86D+nF69uts9OXnW/ZwXllK1IqO/4YALvRHP8s0VHD9sILerx20su9BV5nMQCOiMj9rqgMPFqs3clV9oJGEi1VVgk4unRXncacmBvMLskAVz4ed0F0QAmHzmVXqgzWRFwd/zOZ4S16oO3w85BHwPK04ZEId4n26Pdhra4fsm3Nj3WhMFn7D4dcgiKSZwj4M0C+Z/Pwb94Dx4zd1N+lVT4a7qmfo1PNRrPHIwpdMeFM9VK4u4eDk9+PT1v4MBH7iz1ItOaeTTfx3zcOIuKyBiwmaRol+VxjRKyAC06/j089mDD54xqWH0KfLelOQ1yE1k4Z6EL0MJnaDqBaQDCvgOUdqNAQUwzs5SdXKBLDvVeH8PvX3ZO9l7+XUEyIP0q4tVDuQSldOxFU2MnEjolbpoNSp4oIGphlR78W1s3397vy+qYlqMUyUq48l78kZlRYosbHYRb8NNidC615bApx5q146UcWe/FS2Y5bd4Y2WPIRuvh5OM9z9fARsUCoWxayu1NFnW9pNFPVef2Cmq4jrtJJTt6zw3raqo2aU1dpxehbpi7dY+H0VQN4CntfXmDCEPx7rO9R5w9kcUukHyTXYEufhuw+ttb2k3LRrySmO1SP2y0a2RVbZo/ZGX0A+9vExuDcDGwSa2RfhbiFbjmhH8b/1UJ/+PzVC14Lw3ayWibrZbTiCD3eXzLig4cK/VhXYRpjOagraBHFf/5j9Oc/4F/yX0iRJ0r3oXVtC8B4o4qFu4XhjABY3ZDISSR274EFWrp59VqJyaov7ImjCMpHBC3rjuyp58+KlZNAr0X4K3uyAv1diG23eszn62nv21nsZVgJqvj4nQSpF1TBtln5Pi5xIBpF6IViFT59Rm8B2BMyhu8VQFmhRibtebx6cuDLfGZa8Df7CoSgX6tA8gf8ivDyd/3yUfNPlcjhw4UlvPCjCqX4xKHGHBhoCQoMJB+OrBJ28CWmOP0sNAGFW90t3BPyBlJtwkKThsEpjT+18ME06smBKxr5ttANv5GNK2KxnRzXQlESgPPXmH4PM2sK2oduz0WpBT6VbEFrW15ggaIjMe4fRiwi3qU30KHHzp53u9GO67aebD3+rvN4q/Pk29OtZ9tPtrYfP+4+fbL130gDBHmKzrGfJzhSkd8H7Te1vCjJppaLisZKPMBqStK2xS6+TXFn3rJdL/ISB+MxBLi4bSWAqRtaxMsSMIQsdu8XYO14rudinCZLLd++APAWSRloYk3tcWBbIAbvMrtrnYF6AQ0JsNk2sQXawLOnbetdBtotAJaLMxd8aBKDnFC8rcz37akTMshYyUs87ImC9CKobBHbwhfeQkCODgC6SrvWDoK0wUywvDgDTNhYgcgxiWIyAS8dX6/CD1ehn0UoRIAOjBQUaAK60/N9QSEYUGaNsrEHWhjjSLYF7i78yOKutUvv2EAtm3hAg9BxbAKLqeVkEV5dii1gFDCfsPQFSEWkFHTqZH5k47itcDTyHM+2XAJsiaXT0Ec0bCSQ51J9TkefTVV+4Nyqs3Z85ZOU7XeBeMaJ3AAdKKYEcXyYfnC5SJrOuoQ83urylkl3EINHfxR7Yy94Ka53xOSCY/DvpyzpG3e5B2BJ4iY6jSAyj91mu98/Etul+60txujt9x1h4om1XPkEU85sa+WbkOQ23TwMUnq5VjukOEG1mG2SErdz7dGLmXnHB2JPtfVq97R9fDSEf85O2+z1vPZx/3TwY16ZjRArU0dmu9eT7sp2blFgEhvzdNDqAAvEC45jMvK98STNo4FZ7B+zTUNqfva+alVOSWTP/NB2jbNSNvDY/OyjNjtmDYcMWsXMTO33fAcZ34vbCw7I2MbwEYbJy3gqQUIGlRnk8zr8s+gTob/VBH+GnXkY7BFULbaQl4iN8iMlg/N8qh2W4C+Z5pc48ICgvhAshuPRxyDZHmTQtFEkX3DAkIg8CV+3G8y3oav3uZU7XVr9gxd7r86OzoYt9hTzWjrQ8g3Whurw6OxksHt+sDcc7h2+WhlfHm3FMBuIfP9WEFT0THi1+sPfDwctveLLo7PDnfP+/sluf+f38/29w593dxa3Ojv85ay/v/dyr1nl/hA98yZ1EYHzo8P93xdXPe2fgII9B8BHJ01A8xlrXL+/v3/+6uhwd3HNwdHhy72TgyZAKbkb9P1iuHt42poXDrCghyuZoSLdm15SMaJbj1hd8VGUZGFdIdWpnSFnOP5T3gNyaz1UBXg5xVQFxaipakm9PnYwa7F74pzV5HkJsWusWZaVtxqNuhb5X0YNafrtlkK4cF01SWli5Guz2PZlSFKA5efllpLRSijVAlnZZEk7wU7cEf7/okVtWfNAwNVhr2oimKEtu4A3wuc2YvGJVv41zMKDzXBvNoN2SnEpZdVefjU26TeajlRQZ7nOExeyNVNg5XYGlVWu9GAiPJgI92ki3KvMtRes0SaZ1GwYs6lh7Ow2VkcTgNUGSJPWD2L+IOb3KeZmy/3TS3y7tARWr8tKwDLzuvzsTE+ctHJsZ0J2RYY0C7rzjIkdD/d/DZv3mcea9/LEJ6JDkEmIi2Hk+Yr0ICg9TSPD/Tetv3dexqAmOvJoaGvYP9g9Otl7tXfYYvFbnsl9EoY4+F5+kLA86MhrsUsbCiPWqSB0XAMyRN5tiQAQVBIYxgNIG0dDApcngq84iTmAAuaN5mFn9/B38wyY0Q2R7qsjS5vfktgMRj25aZ0TeoxYG0ePJb1ksQgL6L/zvM9D5fIVfuSWn2DC3YwwPRN7yvLyDZumlhJ6KLbQmO2wYsosPX8LfYprP6Yg4ol200vSoxW7kXoUk+5hBl21Hk1kSVgeM0s3BewaQMd6TYFTmDTfneb/NgHPqzbtQUCeK5dRnJCEpJKu2td9+soR5nHnlzqop5l7+hFUnHF5GrWiYn60mNbmXhBNBcB8CnYMGlmD7elpzOTayeQitOmLTLSbHfGB2TZesiOyiBl/c3r8knnOpTXEQxjQ8tpzx5iIS/fwZdtJTEZQ9Qt5pDXBHJCeNL5aI7uDm8gX7JZ/DrnvutZAtKCcL+DwJaYMBArg/+NL9ZTxgKYSWOIaZBWOuPBC2J+MnD4QSgcL6sG57CTvMjsmnTAHzU6rW+y6HR1BbpQXEUxRRaT6GHcIzZhU2yvJG3TNjJXZ0wGOia2OlWsAwEmd7yrQgh9j5MdmcOULr4yza6mJmBuoyTW8TkPUQUkB0RQvzk/qGud4DWdJSqbWsbyeJKH2VALSAPV8NETy6NA75FnGsswYUZibiyrvgIM9CAMPmJB59iqP48newD3BnD26twuaG9TJ66+3ttpP8B/4/y1A45oQkPXXj7faT7fa30HZf261v32MJTOkM5Zglj89L9N+zE7NYHtoTC9Les97aH3x5NmzJ0/pHq8XyI8XW+4zh56UMg7XzlyPTZW5nF+WzY401dRLKDFgCfbTyUvwl2jVCzvGZ11TOj0+lV9za99OwGvDiVxAc/FyArAYvQ5bpzjwL6bu0OP0NJ2JcY7s9X0nmeJRBeXVngy1JRtX3pgq3V35VuiSrVnXUjs17t9IGSE4+yAqi4jzIku8ADP9jMQZx3Y04Us8CEvksTd32U2RLC2VJhWIFb8n81LfVg8A7f09euEb6+rUS2mK7RC+d7AAES70DFwhe66Cq62GZfC6pjH24gMp1jDAgFyr6rKMyiG5tvQaymQq4Lwp+YDJfKAJJjCjaJNu/SeT1YwmeLS2MO8uIGObJeLhSjrPCR06nu3vh2PuLSj8xopWZlfQyJntFwe5EEg9KwqHT7UcNEltxOwwLzkAINxiCL8RH4wwol+EARYMMABN/ka/84IBELd/AFeEYC5hZvOpjeexrjxy3aIZPT2Z0SPsKLTL6dLFAfbU5r3jAixEQRCECko/ABea38SzZEclAL1h8Uuhyyi/jmvJvpSVsgCTJpgTl5slS4I9VRsXIVNPph9Ffn4T5FLAjwrti/Dx+g3bmQG5BixKuDxRCgCKMwy6hhkBS4HNpnZvyJoWANKl+UcvocfdVoBKz+CX2YIfUh7k11AtBbnQvNfXf9POtCBOL52QKXHEg+vSXLvCv7rwT4veODJh/o6w7OhxDXBy2ZlfzHJPQ+6b/i+01WkqKQyuy6/78lEzgnoMWX4mmhzHmLe7x+sB6AlhSYutx0+2ovfYV+zk7h0F0IF/Q3A34kvu2KViwSnAAk1EMWagWP81XRd7CjvUGQOa2X7neuLhoeSa/ujzhukMjJIJYfqv5SRJ7wLogzo76jztPus+7jggXuG069B0fqyAucROmuHhNPmNzgb9rczSNblgFwlBpfEHL2KZ0lrIwgvAFHSVHNPXmGTa4jaovIzgpvWlh8elldxECbwLFbvsUHXyEcrjcTeMkmd/dCP4DrW6eTUO7+OTra35XL3qKwfm0yPcwJmYndrS3oMvHwLHOl1e4yNdWdm+ObsprISyzHr9+O3Wt1tNEEiaYJCsgkLy8dtnz57OW+IWNyJmJEn8AYnTPuZ6GrpqeDCxdmTTLAXboM9CYbXDYzVRB5fHqEARl1/WjjqHhUN/dndDf0uDh2C+8DP+32yhKsJIOP2aDMLw0iPyvpwQpPVYKZZ3+Oz+vT/Aw3alGgxkjKd2MPyjF3Uez/9/NrLyhd59AQA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.549Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "b184093074ffea48d93b8e1ac0d9ef4a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 425, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/access" + }, + "response": { + "bodySize": 1551, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1551, + "text": "[\"H4sIAAAAAAAA/w==\",\"xVhLb9s4EP4rhg+VNytH9wI5GGkD5NA2m3pPQVDQ4siemiJVkrLrFv3vOxTl1JIl2bKd7sUPipzvm+E89XP4Bfnw7ZDFMRgzDIexkgnOzfDt009atKgk/R7SgxTsQnH3RwPjtJAxa0FLWlgAE3ZBS1oJcDuuhr/C3eNX3edRJiq66jgv1BxlSJ8qt3uiQr+vIpHldgHSYszKR22SV0wgZxYqUhsE5hZFtN38Tw56c4eCnp2utDd0lGNEVFPwfy8mbtxlTvcszo1V6YTs9MOdXkC8vE8mcnMHzOYa3ks2E8BHT4GGORqrC0MG4SDImDFrpfkjGLDB819H0TIgEgN6hTFEyxm7vZiynJnFTDHNd4ShdNuYiNxCpDKQyNOxcwml8QfwTqxv7m73vTPxZjFdTkpmetC4QgHzYmOnQ2Xbnadb4UVEZ+yYfJaifYRvOWpyDGnNURG0e2O0lJqJ5HRtHL3cV8UjD/k3K6OyDWbPhdF82DxolZBFRvtOGe7fa+Y3dxqvR6QExDo4EA01JS/ls/s4xDJlFc3OAvDrDTakQDR0xX1xmk2aofMaMLbh/iqoR+jFU5QNKsH3WOQcHrwoLzxTofuIqipfXQCxIjAmNSyEhTPmhXeHHATQF8HEiwbjmo2xkB5ziy3a/gY3scbMXk66pVsK3YfP5KFXzqfl3NeKUOAKPm9kHO4U44N19mydq67F0TAh1PpWpSmTfFJsrblX9aadK/yv4CfqHnuQPRLah9Q14z51M/HANCMCoM11eeieD25ubgaB98dxyrIM5XwsUC5NcOjGCs5uaw/azVFRRICPhgoCUWRz4B2GyQSzidLpmHL6Cg1RJP41pJYqUBV0CkRbzO2qVibQfFvVuqvQuchtNTZTAuPNBezYr9j0V+DkenOaAkdW5bOFF33UWWYi5fkUUrf1YCqF76V0uh0UZ8FeNIP/QX8+t4/6PWecgUFSe5ivdXLtiTpDSX2GdF97NUGt5Ttm2ScpNk2tchl9vhr0bYPa+GzTegeTwZs3A0W/3lOlcj31B5/3P82+QkyTFUFoi2BGQU4BRaPo03NxxNv3PqEd1IJY4BNrNc5yC7cLJuf1aaDsvXzT1XABr+dNFLuZIpHRHCz5vnvhAoYiwanzeuPrLqplZmlWCOvT4ahlyEq/2J+/piS/Zu4GC6+VXibUF0WODkpjmYy7CuBRJqiNFEz6CbKB0U4H/qdpoZm4hhD4VH22TDundl5QI+gbh2Zupd9s6Z2VlXhHJ1oH5JCgLBrI/hapN6SGwpMC2gXgVN0hCG5GTy/vleqvlNr7QRc3R7CJKW0cvBlKRI8gipxrFpiV2WYzCr4QE0bJJmHCwIG59AXfMXPnLus97RylspiUJcMQWavzBq5NGf2F1K6IV6V9q4QAPwo9Bcgz4rs1cl2RhpeLDT1hT3doZe6t83GXwZ3SU6YpcfYbq2xxppipRtRCWOrErg3EuUa7ud7iFwhuAsuUpII/+HsQRAF9HjiA/GB+3TViL3M8//oPgcmj2Q8YAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.593Z", + "time": 65, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 65 + } + }, + { + "_id": "81d93bfd62ed9b30d11aef04d6706d33", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 429, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/apiVersion" + }, + "response": { + "bodySize": 659, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 659, + "text": "{\"_id\":\"apiVersion\",\"warning\":{\"enabled\":{\"$bool\":\"&{openidm.apiVersion.warning.enabled|false}\"},\"includeScripts\":{\"$bool\":\"&{openidm.apiVersion.warning.includeScripts|false}\"},\"logFilterResourcePaths\":[\"audit\",\"authentication\",\"cluster\",\"config\",\"consent\",\"csv\",\"external/rest\",\"identityProviders\",\"info\",\"internal\",\"internal/role\",\"internal/user\",\"internal/usermeta\",\"managed\",\"managed/assignment\",\"managed/organization\",\"managed/role\",\"managed/user\",\"notification\",\"policy\",\"privilege\",\"profile\",\"recon\",\"recon/assoc\",\"repo\",\"selfservice/kba\",\"selfservice/terms\",\"scheduler/job\",\"scheduler/trigger\",\"schema\",\"sync\",\"sync/mappings\",\"system\",\"taskscanner\"]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "659" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.595Z", + "time": 62, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 62 + } + }, + { + "_id": "37717db1403fe0fca4c76faa7b01295c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 424, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/audit" + }, + "response": { + "bodySize": 859, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 859, + "text": "[\"H4sIAAAAAAAA/w==\",\"tVVLc9MwEP4rjIbhlLHhmhtT6NCegHBjOowirZMtsmW0spMQ/N/ZlZVH26ElgeZgr7XP79tdZau+oVVTpTuLUU3G9wxCjwYufFPhQk23SvcanZ47eCvq9z008YNurINAavpV+bAoKn5A8OZ7kUIUy6wvDPXFBfUPPDnZo363NRXXNZ3uR74prvlxnidF67uYAsyS+HQY30KDts7hsG5d8RlaTxh92JznznkhnAyANuT8opil10Pvm4kymuCqIWi4OOzhEsHZ1MJSGwNE5TLGtgzwowOK5RK0lRZP7qup9Rxkr+fAFTqu+KN3aBBIZqaS2CLA2rjOwlXFedgSm6PPYZioXP6lD586CMlbSSsU6+DeqG2VcZrE4vwZMPuxnndVxRmb9FHr9Qx/gpq+eS2/iVoFjEwWw+q144x8/qJG55BSZY3sQwL4cu69GLza3m1lLmesJtv/iqGDQQJwi95hACNDkpzF0eqoC4thKHcL2egadoRMVPQtmtSwsSGysYY7iXHDIm0ak3Y4LhkxGh0xeWXEwvYpBP7VKhzYPIGRHHnHSaUdjaRktKP+OfGevLNn4Qwc8s8oRfsfMN7kNfmS42x3cViyUOnOjVj4QIZvt6uiJhOwjSItnJ9zfSxyfeS7YKTCsiTQvAGUerFp5WwRvO83ajjgyOmGo7qfTi2mfIkIbBNAR+AMXWtHwYKDJLQ6mmUmhGHfHCfdU9Ryg1c+2MNttjuRm2klIeCglBj32HweoiKsY3nLf53Z+Zixu/mH4/F6Zt5yIj7gu+cR7PsZNWOBaQ6fME42ApOvfGglM1/qtY659H+h7jcGIE0gqAgAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.596Z", + "time": 62, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 62 + } + }, + { + "_id": "653fe2843bcc7fd80db785216049a251", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 433, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/authentication" + }, + "response": { + "bodySize": 1661, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1661, + "text": "{\"_id\":\"authentication\",\"serverAuthContext\":{\"authModules\":[{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"augmentSecurityContext\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-reg\"],\"password\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"fzE1J3P9LZOmuCuecCDnaQ==\",\"iv\":\"nhI8UHymNRChGIyOC+5Sag==\",\"keySize\":32,\"mac\":\"XfF7VE/o5Shv6AqW1Xe3TQ==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"v0NHakffrjBJNL3zjhEOtg==\",\"stableId\":\"openidm-sym-default\"}}},\"queryOnResource\":\"internal/user\",\"username\":\"anonymous\"}},{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"defaultUserRoles\":[\"internal/role/openidm-authorized\",\"internal/role/openidm-admin\"],\"password\":\"&{openidm.admin.password}\",\"queryOnResource\":\"internal/user\",\"username\":\"openidm-admin\"}},{\"enabled\":true,\"name\":\"MANAGED_USER\",\"properties\":{\"augmentSecurityContext\":{\"source\":\"var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield);\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-authorized\"],\"propertyMapping\":{\"additionalUserFields\":[\"adminOfOrg\",\"ownerOfOrg\"],\"authenticationId\":\"username\",\"userCredential\":\"password\",\"userRoles\":\"authzRoles\"},\"queryId\":\"credential-query\",\"queryOnResource\":\"managed/user\"}}],\"sessionModule\":{\"name\":\"JWT_SESSION\",\"properties\":{\"enableDynamicRoles\":false,\"isHttpOnly\":true,\"maxTokenLifeMinutes\":120,\"sessionOnly\":true,\"tokenIdleTimeMinutes\":30}}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1661" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.597Z", + "time": 65, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 65 + } + }, + { + "_id": "aec85c9f6664d9880169fcf8d9d733db", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/cluster" + }, + "response": { + "bodySize": 179, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 179, + "text": "{\"_id\":\"cluster\",\"enabled\":true,\"instanceCheckInInterval\":5000,\"instanceCheckInOffset\":0,\"instanceId\":\"&{openidm.node.id}\",\"instanceRecoveryTimeout\":30000,\"instanceTimeout\":30000}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "179" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.598Z", + "time": 67, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 67 + } + }, + { + "_id": "8b83418cf28acd1b939879c72c951589", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 450, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/forgottenUsername" + }, + "response": { + "bodySize": 743, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 743, + "text": "{\"_id\":\"emailTemplate/forgottenUsername\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

\",\"fr\":\"{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Account Information - username\",\"fr\":\"Informations sur le compte - nom d'utilisateur\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "743" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.599Z", + "time": 65, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 65 + } + }, + { + "_id": "ba8f08c2397259b7af7094fa4d11c519", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/registration" + }, + "response": { + "bodySize": 431, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 431, + "text": "{\"_id\":\"emailTemplate/registration\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

This is your registration email.

Email verification link

\",\"fr\":\"

Ceci est votre mail d'inscription.

Lien de vérification email

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Register new account\",\"fr\":\"Créer un nouveau compte\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "431" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.600Z", + "time": 61, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 61 + } + }, + { + "_id": "71086d44381b7d81178ecc45f4989855", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/resetPassword" + }, + "response": { + "bodySize": 455, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 455, + "text": "{\"_id\":\"emailTemplate/resetPassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Click to reset your password

Password reset link

\",\"fr\":\"

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Reset your password\",\"fr\":\"Réinitialisez votre mot de passe\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "455" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.601Z", + "time": 76, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 76 + } + }, + { + "_id": "82e1f6e62e8145e19f78445f80160a4f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/updatePassword" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 273, + "text": "{\"_id\":\"emailTemplate/updatePassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Verify email to update password

Update password link

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Update your password\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "273" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.602Z", + "time": 64, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 64 + } + }, + { + "_id": "8996c88e14b7ecbba49105dae49641fe", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getavailableuserstoassign" + }, + "response": { + "bodySize": 116, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 116, + "text": "{\"_id\":\"endpoint/getavailableuserstoassign\",\"file\":\"workflow/getavailableuserstoassign.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "116" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.603Z", + "time": 61, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 61 + } + }, + { + "_id": "76be78f43255ef6c7f0ec368787fd6fa", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 440, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/welcome" + }, + "response": { + "bodySize": 420, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 420, + "text": "{\"_id\":\"emailTemplate/welcome\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Welcome to OpenIDM. Your username is '{{object.userName}}'.

\",\"fr\":\"

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Your account has been created\",\"fr\":\"Votre compte vient d’être créé !\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "420" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.603Z", + "time": 65, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 65 + } + }, + { + "_id": "e504a45bf842a314f67c6419cf0b82f3", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getprocessesforuser" + }, + "response": { + "bodySize": 104, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 104, + "text": "{\"_id\":\"endpoint/getprocessesforuser\",\"file\":\"workflow/getprocessesforuser.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "104" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.604Z", + "time": 59, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 59 + } + }, + { + "_id": "340e7202bcebc2ae1e41e59ead8e6dbc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 440, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/gettasksview" + }, + "response": { + "bodySize": 90, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 90, + "text": "{\"_id\":\"endpoint/gettasksview\",\"file\":\"workflow/gettasksview.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "90" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.605Z", + "time": 57, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 57 + } + }, + { + "_id": "050b4885370dd0fec91299f44157fa98", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/mappingDetails" + }, + "response": { + "bodySize": 121, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 121, + "text": "{\"_id\":\"endpoint/mappingDetails\",\"context\":\"endpoint/mappingDetails\",\"file\":\"mappingDetails.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "121" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.606Z", + "time": 56, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 56 + } + }, + { + "_id": "950d0219de4cf4b9516ef30be6bb5836", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/removeRepoPathFromRelationships" + }, + "response": { + "bodySize": 126, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 126, + "text": "{\"_id\":\"endpoint/removeRepoPathFromRelationships\",\"file\":\"update/removeRepoPathFromRelationships.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "126" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.607Z", + "time": 52, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 52 + } + }, + { + "_id": "20416931a8bfbbe57c7d8022c7cdc8d8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 438, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/oauthproxy" + }, + "response": { + "bodySize": 109, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 109, + "text": "{\"_id\":\"endpoint/oauthproxy\",\"context\":\"endpoint/oauthproxy\",\"file\":\"oauthProxy.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "109" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.607Z", + "time": 66, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 66 + } + }, + { + "_id": "4e2d4c5a497442e856fc60f741d3d798", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/repairMetadata" + }, + "response": { + "bodySize": 91, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 91, + "text": "{\"_id\":\"endpoint/repairMetadata\",\"file\":\"meta/metadataScanner.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "91" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.608Z", + "time": 57, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 57 + } + }, + { + "_id": "acd8e0a1115f4a5814282f28fd6a895e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/updateInternalUserAndInternalRoleEntries" + }, + "response": { + "bodySize": 144, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 144, + "text": "{\"_id\":\"endpoint/updateInternalUserAndInternalRoleEntries\",\"file\":\"update/updateInternalUserAndInternalRoleEntries.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "144" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.609Z", + "time": 52, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 52 + } + }, + { + "_id": "0a16240221eeea51a0aa371b1b13ad9b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/validateQueryFilter" + }, + "response": { + "bodySize": 326, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 326, + "text": "{\"_id\":\"endpoint/validateQueryFilter\",\"context\":\"util/validateQueryFilter\",\"source\":\"try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } };\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "326" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.610Z", + "time": 55, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 55 + } + }, + { + "_id": "663ad29a28f7c57cd35b8178c4fdb1a5", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 432, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/external.rest" + }, + "response": { + "bodySize": 86, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 86, + "text": "{\"_id\":\"external.rest\",\"hostnameVerifier\":\"&{openidm.external.rest.hostnameVerifier}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "86" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.611Z", + "time": 57, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 57 + } + }, + { + "_id": "b90c49fb8e97c6a49c1b99e8b28c3228", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 427, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/internal" + }, + "response": { + "bodySize": 353, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 353, + "text": "{\"_id\":\"internal\",\"objects\":[{\"name\":\"role\",\"properties\":{\"authzMembers\":{\"items\":{\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}]}}}},{\"name\":\"notification\",\"properties\":{\"target\":{\"reversePropertyName\":\"_notifications\"}}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "353" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.613Z", + "time": 53, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 53 + } + }, + { + "_id": "a691ccd864d3d6bd4cec893c7df77b9c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/managed" + }, + "response": { + "bodySize": 5007, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 5007, + "text": "[\"H4sIAAAAAAAA/w==\",\"7R1rc9y28a9wWM/ETu+kpJ3MtNcPHUWyO5rEluO4aWcsxQMdcTrEPJAGQckX9f57Fy8SIEAeeUdZsuMPjXV47i72jQV7G78lSTyLV4iiK5zEkzi7/A3PeRHP3tzGKSr4z2s6j2e3MV4soJ1c46OiIFd0hSkvXrIsx4yvYYFQN6xmVrBGVotuJjFFKwxNZYEZDKYZJwsyR5xktBB75vWst24nzM2zgp/gFHMshhZZyeZiLYbfl4Thx1/V/VOS5NN5ihEt86+eHDC8yq7xcUYpQIyT0yQ/QRw9ztLkTOI+iRhWy70A8MSv9yUu+JN/hJa2wWrf44U1qudmQA++zgVGHH/gh7+ha1TMGcm5wL2YL/EKCbwfmT/jJef57PDwtwIAUY0HGbs6TBha8Ok3fz3UAycxmWcUxi/QVNNdckDJ6EzMVcNmMHW2gP9gls3fzeAYKElWM80mM5ST2b/V5BXiU71ijrM8xYKHWAJ9szeSuSbyeAV28GeOiuIGuuHPK2AWqpsLKlciKfyTYIUnkAp+ofk8Kyn/mSNeCobiQPZ8mVH8olxdSgDEYaD0KEmAkGLEnADDmObjLBHryzWYaIZGjoEbrwmdix6WpVjMQg7bKjzF6qjky99f6UEM5xmTAyp2N11b+B/+fHeJTukiE6AxvMAMAwASXqA5jMbJc5TnhF6JtuyGYna2OGNXAoRkRaj5scIC7cCv0xOJhoQBWEzgRqj182JixIlgKVxS8G8dcs9icajR6YmYXLzEDPgBpfFsgdICC5KmZC5ng27IEUMruRCwySVJEkyPl4iJzvgwvtjo4etTwVxzREFQpoAqRwTkBAYCaLB+vAG4CowYNF0C75itNOsXnAFFJAvBeZw4oGrGepoQ7ky9JvjGatg0eUjivEBlymERRaAG183iit36U4HhK/whh7m/PlaL/s+Q/8mj2KWGGvoccRA1nwKclYIAhIsfNSSjUESsvXG4xOOAI9kXaRaCswUBh+YEfnMihXUrTWpMr1FKkmk1t+2wNa7u1qMiXIsQIEw4Vmcmlff6Z5wuakxcGQFJFf+6sMCCouOlMzQoXKLxhbJxShVqE5K0MPpmU7UoOyxbjIU4ztJUKBmBu7TOlxiOIAasECW/I60xFVKGj3LEl7V9P8zcsWBrQCsKGSY4TaTsSpN8obuekZQLTR6LxYT2BPX3A16LgRcbcZoMXwMvYGPeNa6S3Ephyu5XOFV2e0nyisEVmszumiiGkXypT87iLLkdBzv1/frECLCmYgdT2dQpotPoSMBGCi61uwYCMYbW/ZnJ0vC++Djqf3fLOnMNUkDmKi4eZ5OZWm/iCIXmoaBMuHi/qkxahCL7UKMFy1bQpveONF97nB+SqYZSLnNpfqMV5giYBEU3hC8JjfgSRw0+aoB8xRDlr+WGzVX/Jboi2TepRMpp9AENWU4Xeo2mMqUBGdfMKR2RAhaAjki6EtGpOIaoQYsBWgFsLHAwEawCvJjNiSTLMyHfwhCbXgvZmmVjT18gu2+YtujQD8pt2aYgjFWoeVQRJ+6tPNrURWDpkDLYw97UXqOvIaAvY1ojRcZ/3EeIbRf1rhRFtUelJz59rTCaGAeO9B7k+BSCCAbDJQC1KBPdfMhU82hSLHni+SBRbqPTiCIdlK4RRVuGlx7bHKugs3+4AE7Ij5heiRP61o0OhHuyKlfTVHVvJs409MFM+8t33zUmog/OxIuaKhq8XVxqdYI+Gbyo1aeJGRJZkW1IPxW/EMbLkMaqEgkrtUIdLodjWruzDZ6u0GbHOMbl8sY+PtF7kNfg6yHxvCJEOwD1mB323thBSgfhG9jWp+wruZ389iD37CDHTSRNUsCkhAJsYnJFD1aaKwhHFGiHCE2anDg5uYdGl3ZJcOEekVrBdJ9HtqdmVHS0NZqrlaDastKBBpfgYk3zWYuctOUgRAtypdJT2hPTeednlfH/OpYW3nTb9rsa9CaYJ72YvHF/X4RE3T2RNpL0kmxfiht52I4T6HKQB9A+6LT0oHqQrJqqg8g2yKXxCVZn3T1aPSOs4JHOyNtk0lmAhyniDtQjSriTPPdodap77yVP2tx8zEypuaXwMP7h+6NI31/4vOE7bIgWNzLFNi8Lnq1+EpdaVc5R/gmIe/6bnuXHzGY1LzxsLO9bc9kfva/395awAPKmm4XbIkDLVbIMtKFVu54Y0ZGxL2ld4H+Enkh0RYKrCo5WeZgtq1NrucWqp3sntqch3NPIDbIqGxsRD8TXFokGiOk2lijmmRyQM3KtpLVDsMMH5mLdX9XL+1T/KERzVF+XblP0TeyxmD9Fav5U67070u1NWEdU7+aGNxBgmavfkP7+kvOqg0xJpz0yXCZvpQsJGplnXZsQyFZZ5QSNGoLBKaz6Qr8je9UhsDWzhNNXQyyxk+kKcax18992idl1X/Mp3mEasbuPS8x+lxT3covJs+hmSebL6DT6HqeZnXMZdpXZqB8RbLU1FgLqRyQBA0uA3sxXy34UtADicExtXlNrtwelitPApMA+ArLtIaojHx0RVZc0N6tphtHU2F2reOdLscHdy6kk94MU09Po7IbuKppVpZxnrl/WNXQgDmxd5ezykuVZIbYiyerALHBgDdq05D+ApFwWKvYP9v82INin5eoY5YWXIUAcxoPPO/3vdI5yoEha+DNflKvOmbRUetqdmJACpWl2g5NnfRyHznK1DNwqU6o2xJ23DmoMz9XoF7fg0Y+VVUf07cPL4lSXdBaII/r0VsmnLzSyL9L1oA8tg11xjAPlmKSxSk592jj1qF35gTIX+lJVyLJ3EAUDXF5KoO7yAxdMEwhaoiLHcwKIZhC3M4iToBWwuCZzO4K4zDJRTy2Ultm3dUGKb9QyNYTNVfzQvENyHYr0C8B7nYMJOPwbFoALgq5XVUByR4UcGoAvVRx+ROsewd4FHA8gvK3L2HsUZ4TQbw1sB9dlePw9YkkGC9/9+MV18V51VuxuS6yYU131pQrzD1aF6RZtGTUxds3WoMrLNroM0Qp1vzzN13gF3COcNAoHAc41L55SEI55HXps0yRBsR5RmxSBWySZmP/UbkZtoEd0Jd0XVL5+EN2H1gurh+pre4COSKPmKzX/tskMiKp3bAG+EmkzJob/en7+538+fvPN9O/n59Po/Pzx+fmTiydfP/Luqu6JlgF0RqRm5RF5ZBSGk/YTy+Y9VmmmugTY7zHb5CHJv0Wc0Q6jUR3Y7qvq68cLF5xAMOVtcGteBWvbl9FjhnURxlWaXYok0exWKCLz5PfwEBXJQv4vKeS/9T7DHs9Wbpp8Oms9pf1TbL+bhab5u2nxvkQM7+xTaoNvvZ+ta6neEirfYrvvaPVhug9ka4vuvhiyfQzuW92e70EFkMp96oiWW2xM4CFmV43Ac+2atlQI7E7kP8wrp5HvdhO/BmOEcPjjvzYycVsPj7cV8f4ur2IsexPrdkpfZHU7uGFBaHi4oYJ8Le9+RjiywpFoIekWgdwAS5Ei0mqWFMf1oB6XZce2ftkq+Z3Vxa8FZwtFYzVPIrAtiYQyIUWeonWkrzeKg3j3kt+WG9CAHErNV79uGUMP6b0+o9zbQ43o7cO7o1je8F0jzdd5Ifpxalr6qzufTPcb2jdkbpvKo8GYoNImVH5QpVONtIUIJSXvy23vfLa6PVUw6HtfgQrXSOIZZYvITBBq28yQKKBaWfvUbq/FTUqmWNbz+aoe/z7C9GwpcXQWr8NBjYCFcnsR5w4W0z2I0HZd7KOMUgMP41vYvBjSErcxROWMXJYcP7Vv3yt+jB0vZtdgo2nBJUc7K9fhyDu83jkKcdwxKxa5zulbtW6vIKR6+lURR379htB3P5WgOUylkNFNddBihyk3mFwtec/IRIh5TY8RY5QagfCeVX8kYETihVpGo8u18qZqkA7iYF181X8mZyvMSxpu18QG5VsGXjuG5viKpaZRZq3sGd+wMg2SbdMGsJ+fsYZ1b69Q9Bb4RTb3r7y3sD2qD2qo6mmy6bYN7tI9d2X+fp106zDvwVVvaBP/qYdFRTE2el8NFhWT4N3B0uA7NsgKfY6oVulzsUS9X5OJatZtmdCDKVpf+QpiC4GU3gD8rQd6oENzKrxinnU4M3ryFH8gBd/2van2t8P9QydLRkYLoOo1v4RRHy2M8g/yjxZMuTnVQV+r2T2w6vvRmlFCJUub9AiY9o+GWoo1TNKrqtMYTV24dRWfvrIYPcs7TsVDo46hU3RH/xLNUCkNoD6egDZZeafybx0LBUVW9RnfwI04+nu0HW7jf9TmBvQ3MTW3urRM5aVe97VgZ4wYdKbDkbYOqBvvCPpcCAJyFBxza93ARWBGX2GUDFvmimXZ9Xqfa0Qv72OjFwm3H1PYdRLdLEHrVp8HBl3EcKV5INy0p4HHq765eOAkBi5LkiZKD1uhfZKtEKF2ZB88r+pdRfU1xzpqVw9zRPi+hB3gbzNMvZuRU9WfauRR3acazpoj9COfRoBrpvV6mCRHRyS5wydJF9ufIWlq7fYCSdJJWGDm4jHwBZKGoe310Sf7SrDhFoZfB47nFw773qn5JvP+z5BadHglax13iNt4i4j8KM9CPmPPz58ZIPzwW/REzgso24/7LBjwDl6/uWp3T0as9PIDeAsX5ofdFFojM7X7B5/6fBmgTmt8Zm83P25UPfCh9XjqcwdebQ2k+ylFE10Pjo57MWTlTfXyguToe/eCtPO4mxckncP9vSANwxcv6CPJsfN/WvFQvSDJW7vKuTav/ksj2R4FvYN2BJxo/LPgzLv4isfO/lGYNcKsa53Jbh+CCXNA20dhdvn8SyOQ7mULjAoVqSI1P6qC+TuwDagZ5VfQ9rAYWrZ2sxg9EB1oPOqsRC9K603Vt1EezjdR9iJqG047UfJskBMTOM8qHXUHlPXyVRW098C4TUQHkXtLUVNYPwVSribxqZV1ddFRJz0dCyjSwnbiUdxoXKLCfd+gBmlQxA9Q1Jv/A+C8+9WBbgAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.614Z", + "time": 59, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 59 + } + }, + { + "_id": "74a7cfaea67f19b6a547ebb768e76ebe", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 438, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/mapping/mappingtest" + }, + "response": { + "bodySize": 886, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 886, + "text": "{\"_id\":\"mapping/mappingtest\",\"consentRequired\":false,\"displayName\":\"mappingtest\",\"icon\":null,\"name\":\"mappingtest\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"target\":\"managed/organization\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "886" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.615Z", + "time": 48, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 48 + } + }, + { + "_id": "b1499bec9ed3b8c0b1488ce7644d09ac", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/mapping/seantestmapping" + }, + "response": { + "bodySize": 795, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 795, + "text": "{\"_id\":\"mapping/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"target\":\"managed/organization\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "795" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.616Z", + "time": 43, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 43 + } + }, + { + "_id": "06e43b06c5889436306de832c9ef5b8e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/metrics" + }, + "response": { + "bodySize": 33, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 33, + "text": "{\"_id\":\"metrics\",\"enabled\":false}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "33" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.617Z", + "time": 52, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 52 + } + }, + { + "_id": "b383c6f86886873c85a44fc34ee9c862", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/passwordUpdate" + }, + "response": { + "bodySize": 415, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 415, + "text": "{\"_id\":\"notification/passwordUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"password\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.passwordUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your password has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "415" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.618Z", + "time": 46, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 46 + } + }, + { + "_id": "01b649998d9398654a57902d252545ba", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/profileUpdate" + }, + "response": { + "bodySize": 560, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 560, + "text": "{\"_id\":\"notification/profileUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"userName\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"preferences\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.profileUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your profile has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "560" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.618Z", + "time": 49, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 49 + } + }, + { + "_id": "fe870654434ff77b9195e8510c2343c5", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 438, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notificationFactory" + }, + "response": { + "bodySize": 180, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 180, + "text": "{\"_id\":\"notificationFactory\",\"enabled\":{\"$bool\":\"&{openidm.notifications|false}\"},\"threadPool\":{\"maxPoolThreads\":2,\"maxQueueSize\":20000,\"steadyPoolThreads\":1,\"threadKeepAlive\":60}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "180" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.619Z", + "time": 51, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 51 + } + }, + { + "_id": "00725d753c390a655105f030d582ccaa", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 425, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/policy" + }, + "response": { + "bodySize": 735, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 735, + "text": "[\"H4sIAAAAAAAA/w==\",\"zZVNb9swDIb/iy79gF1fh1wLFBiwQ7Edh2BgZcZlIEsuJbszgvz3UbabxF7mtOk29GTDpF4+/BC9UT8oVwtVOUO6VYmCPKdAzoK5I4NeLb4vE7WS153TzdqLH6N3NevOY6M0GF0bCJjfs6uQA0XDRvU+cpTxqSbGywuPZvUNuSGN91FOHC+ubgoMX7EgHxhi8L3I5ZXECm0VNQL+DNkaGvCaqQpqu6cQaxT2vXDGB1ri9pf4PIb3g4lIR1QdcEgBLZTRNzYj6ev8YqmAoexgV44fKM/R3j4CR6PK1HI7uLefYxs1WOtCqp0NQDbV4gg6oHhvlzHqEKYC758dz8QqyX5BW4RHtfg0DiEWKusyNb1ZdJejdMlKPBmfrJaks+uZZLvHlGAfaGhJ3ivsv8cEsaxC2xvmynN9Zn2C6DsGc+tsHCNJyc+ANmAoT1/ORPHdoZGqGPq7dVLrqUZuU7l1gjbpHFMjl7HA34F2hYhT2eUPzNBOSzDQxskd1++/NGnHJiUiW8zBjQdWRu3DjEpypGW7xqQd64getOxJf2egmBujs0v5qjZPLQdMqXtYow5T5jipr+c9A2vUYOSSvH9TyH9dokOmEexwMU9fwGHIE2VrY94afroEjh7vEktJlo+fWcXsDM6u4o+28MZ5lGChwPx0Gv0gn0bHBm1I+7/1kboJ94qKbAirovVPf/pfNQjUdkAJAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.620Z", + "time": 55, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 55 + } + }, + { + "_id": "3b7ebd7cf01869d6ce8cf4a5c9da9642", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 439, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privilegeAssignments" + }, + "response": { + "bodySize": 493, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 493, + "text": "{\"_id\":\"privilegeAssignments\",\"privilegeAssignments\":[{\"name\":\"ownerPrivileges\",\"privileges\":[\"owner-view-update-delete-orgs\",\"owner-create-orgs\",\"owner-view-update-delete-admins-and-members\",\"owner-create-admins\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"ownerOfOrg\"},{\"name\":\"adminPrivileges\",\"privileges\":[\"admin-view-update-delete-orgs\",\"admin-create-orgs\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"adminOfOrg\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "493" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.621Z", + "time": 56, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 56 + } + }, + { + "_id": "47768b99c96433fcc0faa9554a4e372e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 429, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privileges" + }, + "response": { + "bodySize": 919, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 919, + "text": "[\"H4sIAAAAAAAA/w==\",\"7VhNj9owEP0raU6tBErP3KKFSkjtstrtx6G7ikw8CVYdO7UdEIv4750EliwsaWarVkKVTxDr+WViP7+Z8SZMBA9HYWnEUkjIwYaD5w+j75uQpSlY+0GyfP/snBHzygHOU6wAnGGA8ZmS63CUMWlhOzhGcbCpEaUTWvWD9UqBsUc4Z6oXMMYLoWw/XQHF/JTvLLBkBpTrx6ULITlCqYzTMfFjKMAdZUyFN2tJ5511wh8GKIN6/2oJ4EMmpAODE6OnVwTwM7gPNxvU03Z7HwbaBNEx6wkCX9KoZx/lcClgNaxKzhwMOUjAH23yRo/MLeqdZIrlwCMcZUo8sr2cSjCFsHYfW/h1OvmGo19uxvHnCf4ZTz5O8M9D88VeyV7JnUrezQxKc6rMFCn+UI1Xt5OYor7KgrkmKbBk1q604f3IXCxB0UgtQQMFE/IvHxBcEV0pd+eYqwi6dugK5UIruK7qk0BYK20dkzFHkVsCfyrcmkp6pTlhXZvPMwRSpHRwY/RSqJTAa7QEimM0GiUsFKvc4vGWRmqg1MYRgJBlgCdtCUTiAz7G85OrAg8jYZZk1t2tVdqP/DFnU5Vpwg4byAC9IKVEneJJx0iBf2JlKVRONvJZNjM5YWtqhyRiG7t6iT1nk89ieKVNHs/cJfUkQRvEvJ6UkqWw0JKDSRJSjt9lvyFTfNgmuBOPrd2xM9PvE/wh5Xuv9V7rvdZ77X/mtdF7rEwDtMkgasNsB9+8jdqIcPBdRxF7aDZIFkstXy+qeereAt87/ave6Sn07luA+DyilWlD4W8BvJAv7RJgJ0x/CeALU1+Y+sL0kgrTTo+8zDuAzgzvG3/vr95fvb96f/1d348tfhtn3eL3Nf5HhesrPfZQsz5sfwGv8MZVJCAAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.622Z", + "time": 45, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 45 + } + }, + { + "_id": "f72fc2cc21d104762b3c16db0f0db1bc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 433, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/process/access" + }, + "response": { + "bodySize": 246, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 246, + "text": "{\"_id\":\"process/access\",\"workflowAccess\":[{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-authorized\"}},{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-admin\"}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "246" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.622Z", + "time": 48, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 48 + } + }, + { + "_id": "bc1b98e58c7b710a4bc8518787bef019", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.ds" + }, + "response": { + "bodySize": 4251, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 4251, + "text": "[\"H4sIAAAAAAAA/w==\",\"7Vxtc9s2Ev4rGU7nPtyJcS5tOklm/CGWnCZNnLiW3bu5NJOBSEhCTIEMCNpWPP7v3cULCUkgRUqyfHPXfIlMLJ5d7BsWL+Rt8IXFwctA0Cx9HOdBL4jS2Yxw+PnyNohpQiUNZyTLGJ+ECeOX6vmXbwUV89cskVRA5wNsOJ9n9BH99uiP4Idb0+HujwAA04wKIlnKgXJw/P74/Di461loScSEypDFeThORShohHSrHFTD29gyMH/WMwAOdDaicUxhdGOS5LQXJDHJ+innNELi1ySSqWBUDWjEeIz/R2XzaZomQ/adBi+fPek5z4c0KgSTc+CVg/Dy/P0QRJhS+HlEiXzLQeArkgxRQFTiz0+c1nM2o2khT1iSsJLin0/gXy/IBJsRMX8PQg4Bggpo+nQbTNNccjIDOXCcPP4ajkUap2FMrx5HCclzFj0Gk4EMWSpk8PLpj89f3H3uBbmCXwH8DIoRaSpxsKSQU8oli4zyboOczbKEWoUMUKEFiw9JPGMcOODDU2B5nQqlrR8iMc9kij8lWB+ob0INEVKu2hC3F4A+CoUasWyq7PnqeHjQP+ofnL7rD5+dkjgGbwHCmEgCrcmvB0c/n7+gL/qDd2/6H56f31wOfpocHgIFu4L241hQ8f36+OLi8s0vz54/jd4Prp9dq/ZLOtdW+/FpL5iRCHnJ+Yvxvy9k8lNGb35J3nyM/tE/0mhZIbI0R8FZPAM18jGbPF4QPScJ6Co4ens+fJfwU3r+7DKJiuP/jPjku+YIXjBK6NvYGAiAwnw+A/uMSQF97/AfyM1h4Ey+FmCql9rd8PGM3FQe+UpKOsskmOkZGInmaSEieqJDSUejgnSf8HPokRCp3KM4nFAOXKJeHB0aWexP12/wmXEd9RNEwnC5yRIWMRc+Sooc3JnGKtx0qDKTGZY415B2lwTCefQV9NHHxxicn9AFP6pn0DgWIWpYcQlLpueK31sQ7TMGEiYEaSJbpbfbgOVn9FvBBKYDKQqTDUDjgo0KNQjgAvjGj00g9IJrMBoZsURHfCQgiOlHnsxRYyYJIfwy2IKYHmDoLUuZ1/WvKEuYrzl4p3KsONdue0Bs999ttC3YKOKHNnQfAQWDUEtF3oPHur9P8ZCUo/EkzEy/8Mr2w1DVbSXXUAW5j3Zzk0S8o0WiKY0uh8UoBww+8WrWyK0ow7wi9ViIcoxsr30NiqXwdP5KrohSZUN3pAmV//sQZkRGU6cXauwE4p8pA9cqzWCr3pV5vAwYL3X1nvKJnDbICsSVusJEk/vcmubyjOJsQxfmivXWNowQABxfI5T+tMpqwfmjKREwn1MxpHJfrl/yDHOoYB7W8UmSpNcXXOfSMaNx3wqXd1K+wgkLB6gaptdJlxXfxUUXFPjfGICM953hNQFhdCwMxwO44LAxU1M+1Gf7cteK40MnaZLTIeU5k+yKmgGa+rO1nyIGqNmA2HHoks3jo7ucFSo9wuqEdpLaMcGYJd6c/PAu/78yJWh5jsBR4n2FmGYZjogr5sME2UP7EbmxCl7vRuSmUla9F4G3tYcEz1wLueAtlvo0xUUQXV3juC5jibo5TIa95k7pvLD8ts179BGznrTDGoKLkgkdQhKc1Zeb7ZOdRq/Gn2v8MNcMmr3m1YS2dRnA9IHZ9qUKuqX0FXpTBW2p3jAc3LyfFlw2iF2CTjV9GKkOHuAqZ3SsqbzpqcnxBc3QJ5YKxn1kS8vZqTD/3yqTh8/S/ZTnNCpQ1iqrth4sxmFUIbRLtfCQJQT3UPc6OVds/5qgF2bTARuPqaA86pYhF+bYuMJoNn7B2beC7j/ZaL5/pZoH9LcLj+k7eduKDdf5Wk7FgI4Zp/HvTMiCJAu1wLLbGZpHJVE7r0MuWOwgm/BKYyxUDYZutWmf+0O287nq1GVHqNzgVfw8psVsOuBdCxXsFcb+9TqoHGpheUSn5IrpGqguBAxpOLK0za7fetgNwTA2h5Ldxmt6efAmIi0yrcCavoqiRlkLodl6eM3BCgGUNZXfut1fthY7WDpoGG9wMzxf5SQ5EGmyGsVpcYjP8x78sJQ7OYIy5zEWM1Tc9xm/sFb8foIn2jZvevRrhJl/0MfFqs8ZqiOojhNPCZZ4UPlxWDbFKkVWopgtljNq53IdjDGzU1PNMVVF49svo3kkWFYH4TZ7euuj71rOqtm3MBPsiiV0Quu1VYNY9lw+bMN9rFkGS9gEa2YpCDhDZ3QLoapmi+E51SvdXBnI4+b4fPdu7jlpLV1eSbLP49Vyn6/e/KtbgZUK8U6KT3PqEst9aUsx3aeSxkzksvEMGkUKLZknVLD9NyhM8LTHO9W6ON9KwhokW180gdQVEvrKyvrBlHTeGSJJo0vvFQXVcG+GB/C9Gp6nMW1WFUgUIpXv+sGdvb5wAINKI5+6VANmGEW3id4gOTM+GUKak3RizrnqLjkobvqnK2+UMMrlgH9QUDjuuqm5QtnCDC0kcutAzvIpXulad4NDQ2l6yfwzFstfQZad52ztfRCNxnJi6b07O+UlnvVQltgXkqpoODPFQz9NEn1VqR2w7mVLj6jqXXsdZlNOuncbTjioYmT5KGWDh+lj2HUOWzS7pmWvKim8uKNl0/BVv0q45TA8KCVpfQdK9dPddpt9sOhsbwAlQUhqrUtmIzYp0iLXN7X0UFrcfXLBLYS2tdYQi/03d24iWltx1uBXfe49OttOucsiYr/GGXhXYT+jeU78JzA1otke9WADKglLukPGup+vyJ+SvIuMmt4D1PIinwPVMC3kTBako+9VfWpzsA2ZLqiLHR80vUPUyqJLuJsOtTPFBvpY6viwk5AlM4t134ThzFNnaSFVYH+6hSRPx+wG+pQTS1W3uZNJeUneTCt3ePc7n/Po4FtBPTdEodRTDVjzIdl9lcqIrSXYZ72Mt5Lpjfd0dlmu0NKu7ABoyAGRTWnHwVHkMam5frk2WVdIDbma02uj4TZAQJ1aeywNbu2KwkGpWVZYBzijV61wKmofVBJ3GBhQ1w1MdInnCrFdYrNULTVnyWvmDtnWtTSlDwJIXrUfJP6qK9tUeWpeKVh9K+Dg774MYho3yR1oLt/mokYMlTU11W/4btCxqoTk/AQvOoNoZ0WiymuY499OeCror5ZSUfQ1TJmM2mQqyxpog8/mYIJ5X7zQLRu9dzFm/o1sfL4RIJvpN4FWIXXLFqB+m28Da/c5eSqhqq3eRFrm4bZvu+1Z42gui229raWDLYx6ZTbU9QT+WtrZ/+L222J3f2WneUbx/Sv/bjO23ZPm96Nsk8l0NLfXtdLJVirGcZnLbz7lOs0bxZAVxRubpnErYHw+4TPKvUmlau1tw6/WOQxiWPHZk7+sMl51mzanY47gjQdls47HeyXsVud76rx0pzzV2eiakLC0qZgQzr7Xpn23/X7dy+W0ZwdbUMKKi6mXb9tbCKk/jj+KyVaHvlOWxPBXW64ZEVRdZK3huDDCRs4dg0CTbz3eNafMXh+pO3pOr3mHASjqreU3+u84gtJq5tXzd3ReLq07GtIb3E1XNO43mJHDtkF8orHOdDbrEs/+yyFu7ux4a2BhWIs5uL3pnGnMZ7jOoSe2u1niOkrTJYf7dRR1eW83jnKhB9zFUWquVNgqfMkKzlcs1o3I1KzrnWO1+vf7xtKKY0P/VbItr106CLmwXPIL6sx/Gwq5kCLtly92mCF7u8gETk2pw3a3qcC5OraNqRWMyhNLN+eWhFXX4eqMvlxOuhlLMfNdxewSKwakiwKXk9tKFt2dB25g3hYu6JQduxBSwe1aRnu56/gmY/r7PnV3LbLrZaJ1ZwOCkhhPBgYsj4iI/wWN4OsO0/ckl/0p4SBrA1eXYmOW+Okl0ZAKlkve0l/vac3XJmjs5N/e4LVhXN6BgHFOoHNeboKv1I0rVBttawia6MlnyjLvRbEFgh0WHS7utkXHmYPVsupw2avtbHwRMwY23tqrbNxIx2Vv/67UduAF86MWbDO4DE/ovJ5gmjaANUe88il+futjVpZNs6socl0DSi698sPkcKHYneoXgV+qI0sIG11ky0LwD0WSvE7FCQNWfHLqVI06ciE0TwDf+fMUqjqkvqInaczGc6dpWIykoHSgvsNmZkx9CdN83+xWHU2od/TORZFLXecK/dWD4G+3+MksxiEOk+RxzMTdge16IJEctzQx4r0g9hWvFmAKJ9NvKnix9JXT4Nd3+CE26TRg5DF1kPUnYFalveZOAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.623Z", + "time": 53, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 53 + } + }, + { + "_id": "bd5d9cbc1b0e2e075e3f77bb51e59736", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.init" + }, + "response": { + "bodySize": 789, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 789, + "text": "{\"_id\":\"repo.init\",\"insert\":{\"internal/role\":[{\"description\":\"Administrative access\",\"id\":\"openidm-admin\",\"name\":\"openidm-admin\"},{\"description\":\"Basic minimum user\",\"id\":\"openidm-authorized\",\"name\":\"openidm-authorized\"},{\"description\":\"Anonymous access\",\"id\":\"openidm-reg\",\"name\":\"openidm-reg\"},{\"description\":\"Authenticated via certificate\",\"id\":\"openidm-cert\",\"name\":\"openidm-cert\"},{\"description\":\"Allowed to reassign workflow tasks\",\"id\":\"openidm-tasks-manager\",\"name\":\"openidm-tasks-manager\"},{\"description\":\"Platform provisioning access\",\"id\":\"platform-provisioning\",\"name\":\"platform-provisioning\"}],\"internal/user\":[{\"id\":\"openidm-admin\",\"password\":\"&{openidm.admin.password}\"},{\"id\":\"anonymous\",\"password\":\"anonymous\"},{\"id\":\"idm-provisioning\"},{\"id\":\"connector-server-client\"}]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "789" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.624Z", + "time": 53, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 53 + } + }, + { + "_id": "9f231197089ead48083fbb1440010a11", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 425, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/router" + }, + "response": { + "bodySize": 619, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 619, + "text": "{\"_id\":\"router\",\"filters\":[{\"methods\":[\"create\",\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"},{\"methods\":[\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^config/managed$\"},{\"condition\":{\"source\":\"(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0)\",\"type\":\"text/javascript\"},\"onResponse\":{\"source\":\"require('relationshipFilter').filterResponse()\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "619" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.625Z", + "time": 58, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 58 + } + }, + { + "_id": "ab8521e6a907278952a8693cbcfb761e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_activate" + }, + "response": { + "bodySize": 838, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 838, + "text": "{\"_id\":\"schedule/taskscan_activate\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/activeDate le \\\"${Time.nowWithOffset}\\\") AND (!(/inactiveDate pr) or /inactiveDate ge \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/activateAccount/task-completed\",\"started\":\"/activateAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"active\\\" }];\\n\\nlogger.debug(\\\"Performing Activate Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "838" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.626Z", + "time": 37, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 37 + } + }, + { + "_id": "ccd397735c0fb9e3c00c0ecdebadad2e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 436, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/seantest" + }, + "response": { + "bodySize": 459, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 459, + "text": "{\"_id\":\"schedule/seantest\",\"concurrentExecution\":false,\"enabled\":false,\"endTime\":null,\"invokeContext\":{\"script\":{\"globals\":{},\"source\":\"//sean has changed this script. Let's see if it is still working. qqqqqqqqqqqqqqSchedule1\\n\",\"type\":\"text/javascript\"}},\"invokeLogLevel\":\"info\",\"invokeService\":\"script\",\"misfirePolicy\":\"fireAndProceed\",\"persisted\":true,\"recoverable\":false,\"repeatCount\":0,\"repeatInterval\":0,\"schedule\":null,\"startTime\":null,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "459" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.626Z", + "time": 42, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 42 + } + }, + { + "_id": "42626b5d9ae06814ca0230b793cb2d1f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 443, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_expire" + }, + "response": { + "bodySize": 830, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 830, + "text": "{\"_id\":\"schedule/taskscan_expire\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/inactiveDate lt \\\"${Time.nowWithOffset}\\\") AND (!(/activeDate pr) or /activeDate le \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/expireAccount/task-completed\",\"started\":\"/expireAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"inactive\\\" }];\\n\\nlogger.debug(\\\"Performing Expire Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "830" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.627Z", + "time": 51, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 51 + } + }, + { + "_id": "5fb111d428ad18346dc15d5fa8e1e840", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/scheduler" + }, + "response": { + "bodySize": 156, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 156, + "text": "{\"_id\":\"scheduler\",\"scheduler\":{\"executePersistentSchedules\":{\"$bool\":\"&{openidm.scheduler.execute.persistent.schedules}\"}},\"threadPool\":{\"threadCount\":10}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "156" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.628Z", + "time": 41, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 41 + } + }, + { + "_id": "0b8355f1ac5870bd599a7d814921a98f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 425, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/script" + }, + "response": { + "bodySize": 939, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 939, + "text": "{\"_id\":\"script\",\"ECMAScript\":{\"javascript.optimization.level\":9,\"javascript.recompile.minimumInterval\":60000},\"Groovy\":{\"#groovy.disabled.global.ast.transformations\":\"\",\"#groovy.errors.tolerance\":10,\"#groovy.output.debug\":false,\"#groovy.output.verbose\":false,\"#groovy.script.base\":\"#any class extends groovy.lang.Script\",\"#groovy.script.extension\":\".groovy\",\"#groovy.target.bytecode\":\"1.8\",\"#groovy.target.directory\":\"&{idm.data.dir}/classes\",\"#groovy.target.indy\":true,\"#groovy.warnings\":\"likely errors #othere values [none,likely,possible,paranoia]\",\"groovy.classpath\":\"&{idm.install.dir}/lib\",\"groovy.recompile\":true,\"groovy.recompile.minimumInterval\":60000,\"groovy.source.encoding\":\"UTF-8\"},\"properties\":{},\"sources\":{\"default\":{\"directory\":\"&{idm.install.dir}/bin/defaults/script\"},\"install\":{\"directory\":\"&{idm.install.dir}\"},\"project\":{\"directory\":\"&{idm.instance.dir}\"},\"project-script\":{\"directory\":\"&{idm.instance.dir}/script\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "939" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.629Z", + "time": 46, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 46 + } + }, + { + "_id": "372152e7418e4bbb7f1bb2fd5327ca2f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/secrets" + }, + "response": { + "bodySize": 1829, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1829, + "text": "{\"_id\":\"secrets\",\"stores\":[{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}\",\"mappings\":[{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.default\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.config.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.password.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"],\"secretId\":\"idm.jwt.session.module.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}\"],\"secretId\":\"idm.jwt.session.module.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"selfservice\"],\"secretId\":\"idm.selfservice.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}\"],\"secretId\":\"idm.selfservice.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.assignment.attribute.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]}],\"providerName\":\"&{openidm.keystore.provider|SunJCE}\",\"storePassword\":\"&{openidm.keystore.password|changeit}\",\"storetype\":\"&{openidm.keystore.type|JCEKS}\"},\"name\":\"mainKeyStore\"},{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.truststore.location|&{idm.install.dir}/security/truststore}\",\"mappings\":[],\"providerName\":\"&{openidm.truststore.provider|SUN}\",\"storePassword\":\"&{openidm.truststore.password|changeit}\",\"storetype\":\"&{openidm.truststore.type|JKS}\"},\"name\":\"mainTrustStore\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1829" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.630Z", + "time": 45, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 45 + } + }, + { + "_id": "31ff64d3e984c38b0c14569db37889ad", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 434, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.kba" + }, + "response": { + "bodySize": 290, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 290, + "text": "{\"_id\":\"selfservice.kba\",\"kbaPropertyName\":\"kbaInfo\",\"minimumAnswersToDefine\":2,\"minimumAnswersToVerify\":1,\"questions\":{\"1\":{\"en\":\"What's your favorite color?\",\"en_GB\":\"What is your favourite colour?\",\"fr\":\"Quelle est votre couleur préférée?\"},\"2\":{\"en\":\"Who was your first employer?\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "290" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.632Z", + "time": 38, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 38 + } + }, + { + "_id": "b45a1aa28d4bff434764448f028e4059", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.propertymap" + }, + "response": { + "bodySize": 713, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 713, + "text": "{\"_id\":\"selfservice.propertymap\",\"properties\":[{\"source\":\"givenName\",\"target\":\"givenName\"},{\"source\":\"familyName\",\"target\":\"sn\"},{\"source\":\"email\",\"target\":\"mail\"},{\"condition\":\"/object/postalAddress pr\",\"source\":\"postalAddress\",\"target\":\"postalAddress\"},{\"condition\":\"/object/addressLocality pr\",\"source\":\"addressLocality\",\"target\":\"city\"},{\"condition\":\"/object/addressRegion pr\",\"source\":\"addressRegion\",\"target\":\"stateProvince\"},{\"condition\":\"/object/postalCode pr\",\"source\":\"postalCode\",\"target\":\"postalCode\"},{\"condition\":\"/object/country pr\",\"source\":\"country\",\"target\":\"country\"},{\"condition\":\"/object/phone pr\",\"source\":\"phone\",\"target\":\"telephoneNumber\"},{\"source\":\"username\",\"target\":\"userName\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "713" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.634Z", + "time": 40, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 40 + } + }, + { + "_id": "84ee2e3e3f7cef3023dd7241ced2b77a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 436, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.terms" + }, + "response": { + "bodySize": 730, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 730, + "text": "{\"_id\":\"selfservice.terms\",\"active\":\"0.0\",\"uiConfig\":{\"buttonText\":\"Accept\",\"displayName\":\"We've updated our terms\",\"purpose\":\"You must accept the updated terms in order to proceed.\"},\"versions\":[{\"createDate\":\"2019-10-28T04:20:11.320Z\",\"termsTranslations\":{\"en\":\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"},\"version\":\"0.0\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "730" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.635Z", + "time": 43, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 43 + } + }, + { + "_id": "6cbf25336f75bed9003dbd20bd94c130", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 437, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/cors" + }, + "response": { + "bodySize": 402, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 402, + "text": "{\"_id\":\"servletfilter/cors\",\"filterClass\":\"org.eclipse.jetty.ee10.servlets.CrossOriginFilter\",\"initParams\":{\"allowCredentials\":true,\"allowedHeaders\":\"accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with\",\"allowedMethods\":\"GET,POST,PUT,DELETE,PATCH\",\"allowedOrigins\":\"https://localhost:&{openidm.port.https}\",\"chainPreflight\":false},\"urlPatterns\":[\"/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "402" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.636Z", + "time": 47, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 47 + } + }, + { + "_id": "4734d7816408991b39320106367532a9", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 440, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/payload" + }, + "response": { + "bodySize": 191, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 191, + "text": "{\"_id\":\"servletfilter/payload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":5},\"urlPatterns\":[\"&{openidm.servlet.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "191" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.637Z", + "time": 37, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 37 + } + }, + { + "_id": "479d6a831987c6fbbdfccaa366e89114", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 439, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/upload" + }, + "response": { + "bodySize": 198, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 198, + "text": "{\"_id\":\"servletfilter/upload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":50},\"urlPatterns\":[\"&{openidm.servlet.upload.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "198" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.638Z", + "time": 29, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 29 + } + }, + { + "_id": "c6aed7f604cb532801a9b95de9922a3c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/admin" + }, + "response": { + "bodySize": 244, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 244, + "text": "{\"_id\":\"ui.context/admin\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/admin/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/admin/extension\",\"responseHeaders\":{\"X-Frame-Options\":\"SAMEORIGIN\"},\"urlContextRoot\":\"/admin\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "244" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.639Z", + "time": 35, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 35 + } + }, + { + "_id": "05bacc81732e6f86cfe0b782cdde4f67", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 433, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/api" + }, + "response": { + "bodySize": 205, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 205, + "text": "{\"_id\":\"ui.context/api\",\"authEnabled\":true,\"cacheEnabled\":false,\"defaultDir\":\"&{idm.install.dir}/ui/api/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/api/extension\",\"urlContextRoot\":\"/api\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "205" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.640Z", + "time": 36, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 36 + } + }, + { + "_id": "17421c1d759655006a294261cc77fd75", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 437, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/enduser" + }, + "response": { + "bodySize": 174, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 174, + "text": "{\"_id\":\"ui.context/enduser\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/enduser\",\"enabled\":true,\"responseHeaders\":{\"X-Frame-Options\":\"DENY\"},\"urlContextRoot\":\"/\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "174" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.641Z", + "time": 34, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 34 + } + }, + { + "_id": "61e2740b542f064697798e2a02431f03", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/oauth" + }, + "response": { + "bodySize": 199, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 199, + "text": "{\"_id\":\"ui.context/oauth\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/oauth/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/oauth/extension\",\"urlContextRoot\":\"/oauthReturn\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "199" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.642Z", + "time": 27, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 27 + } + }, + { + "_id": "eadbb4ad948866a207831ff04c796efb", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/configuration" + }, + "response": { + "bodySize": 588, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 588, + "text": "{\"_id\":\"ui/configuration\",\"configuration\":{\"defaultNotificationType\":\"info\",\"forgotUsername\":false,\"lang\":\"en\",\"notificationTypes\":{\"error\":{\"iconPath\":\"images/notifications/error.png\",\"name\":\"common.notification.types.error\"},\"info\":{\"iconPath\":\"images/notifications/info.png\",\"name\":\"common.notification.types.info\"},\"warning\":{\"iconPath\":\"images/notifications/warning.png\",\"name\":\"common.notification.types.warning\"}},\"passwordReset\":false,\"passwordResetLink\":\"\",\"roles\":{\"internal/role/openidm-admin\":\"ui-admin\",\"internal/role/openidm-authorized\":\"ui-user\"},\"selfRegistration\":false}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "588" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.643Z", + "time": 25, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 25 + } + }, + { + "_id": "dccde179c43e59ffe92f719da481c2cf", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 431, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/dashboard" + }, + "response": { + "bodySize": 1031, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1031, + "text": "[\"H4sIAAAAAAAA/w==\",\"rVbbbtpAEP0VtHk1spNQpeWtTVq1UlKlSao+RFE17A72ivWus5eQi/j3ztqAMRBIqyKBzM6eM7czAy/stxRsyIJMBbhiZMAKljAQpdRniwPHhrcvTLozHENQng29DZgwDSUS9EeQfNK79mA9IadS5OgbBF9iC4tjunrAjdbIvbEuBSFSui/piCxj6AvwMAKHbMn8UYje6QLBZknLU0JVSZ1vkpCB3naCtqU5tQgeexcNpsNj0ZlgOaYlaMhRpNYoTJV0vkvLC+STvrsPYLFvWuqLGta7IpRbC7Dh2wiQclTouzme4YPk2ME7VGOHNp6ngR4s5hSUBS+N7hLmCKu5Gj2WebAU0wriVeoKnJsaK6gO6N/GezmHkAPC7K5mjHxLNePxRg1/0qFbC9R7apjbBW7jun5yHsveJYHRouaxIXcJc/I53lNg86gs/1TFr/dRs41kZ3fR54q4x6Bcq+457YXRkkQY9dPVuMIctbgCTfTDF1Ya7QsyvMuy5Ch+0DujMKaIEzo+zJLjLPlAtpMseX8YLU+xztFCr2RQf9bPDZ7As4SV8Dj3wA6OBoOjY05R0IQuD0eZGPA4uNvThSBk06rtdq4CZWmpID64HfdcXYyvCMoXX4JS9dURWF7ESsb2qHp+t6MVOH+FsZF7an411xFJrDIbW4X0SwsB49YC7uUDNspZen3suxIotjY7EzRl1+TVguOou886zqP4e3Tjermd3ux/a2UWg3NOo7KvOJ+Ckxqd216c3EJV3DSsNCyVxH7TnIRV1jxIEUs1vGWxZpEwXYwzu3s9ASdz/U27pasb6VU9G3Tej4YY8JpnUsXS82u8i+1Tb5JN+u6m2epFUSn+Q4Iap6vrcjOU7zjtdW+sNHOFTpb4bHS9CQrqKEXCspNmVoPH+msWlxfmEOXT/JLO2kIbLkGdm1zqdb01pn+WK23kAGo9yb0ku6XoEOia86v/HDqT+iaxU19aAircfoZfqLihCAg8+wMKiFQxwQgAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.643Z", + "time": 33, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 33 + } + }, + { + "_id": "fb55717b678608c3e9704a46f637ba00", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 429, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/profile" + }, + "response": { + "bodySize": 891, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 891, + "text": "{\"_id\":\"ui/profile\",\"tabs\":[{\"name\":\"personalInfoTab\",\"view\":\"org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab\"},{\"name\":\"signInAndSecurity\",\"view\":\"org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab\"},{\"name\":\"preference\",\"view\":\"org/forgerock/openidm/ui/user/profile/PreferencesTab\"},{\"name\":\"trustedDevice\",\"view\":\"org/forgerock/openidm/ui/user/profile/TrustedDevicesTab\"},{\"name\":\"oauthApplication\",\"view\":\"org/forgerock/openidm/ui/user/profile/OauthApplicationsTab\"},{\"name\":\"privacyAndConsent\",\"view\":\"org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab\"},{\"name\":\"sharing\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/SharingTab\"},{\"name\":\"auditHistory\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/ActivityTab\"},{\"name\":\"accountControls\",\"view\":\"org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "891" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.644Z", + "time": 32, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 32 + } + }, + { + "_id": "2cf6006aa7d3908fe4bd8d43fcbca10d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 433, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/themeconfig" + }, + "response": { + "bodySize": 421, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 421, + "text": "{\"_id\":\"ui/themeconfig\",\"icon\":\"favicon.ico\",\"path\":\"\",\"settings\":{\"footer\":{\"mailto\":\"info@pingidentity.com\"},\"loginLogo\":{\"alt\":\"Ping Identity\",\"height\":\"120px\",\"src\":\"images/login-logo-dark.png\",\"title\":\"Ping Identity\",\"width\":\"120px\"},\"logo\":{\"alt\":\"Ping Identity\",\"src\":\"images/logo-horizontal-white.png\",\"title\":\"Ping Identity\"}},\"stylesheets\":[\"css/bootstrap-3.4.1-custom.css\",\"css/structure.css\",\"css/theme.css\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "421" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.645Z", + "time": 34, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 34 + } + }, + { + "_id": "3467e6eff41c0252746cc812803f797c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver" + }, + "response": { + "bodySize": 169, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 169, + "text": "{\"_id\":\"webserver\",\"gzip\":{\"enabled\":true,\"includedMethods\":[\"GET\"]},\"maxThreads\":{\"$int\":\"&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "169" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.646Z", + "time": 28, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 28 + } + }, + { + "_id": "7415ea0af3a4981f3e3feddab0df5329", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/http" + }, + "response": { + "bodySize": 128, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 128, + "text": "{\"_id\":\"webserver.listener/http\",\"enabled\":{\"$bool\":\"&{openidm.http.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.http|8080}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "128" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.647Z", + "time": 17, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 17 + } + }, + { + "_id": "8c44f974db12734398c806d9a1cbcd18", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 443, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/https" + }, + "response": { + "bodySize": 217, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 217, + "text": "{\"_id\":\"webserver.listener/https\",\"enabled\":{\"$bool\":\"&{openidm.https.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.https|8443}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "217" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.648Z", + "time": 35, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 35 + } + }, + { + "_id": "b400d9fa8acbf142278ba15f3b31ee91", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/mutualAuth" + }, + "response": { + "bodySize": 250, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 250, + "text": "{\"_id\":\"webserver.listener/mutualAuth\",\"enabled\":{\"$bool\":\"&{openidm.mutualauth.enabled|true}\"},\"mutualAuth\":true,\"port\":{\"$int\":\"&{openidm.port.mutualauth|8444}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "250" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.649Z", + "time": 29, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 29 + } + }, + { + "_id": "1c44d5ed6a798188a1711859e5a9fceb", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-8a3564c8-2b31-4ac6-bab1-fc51a9c46f47" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 532, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "1000" + }, + { + "name": "_fields", + "value": "condition,description,name,privileges,temporalConstraints" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role?_queryFilter=true&_pageSize=1000&_fields=condition%2Cdescription%2Cname%2Cprivileges%2CtemporalConstraints" + }, + "response": { + "bodySize": 1357, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1357, + "text": "{\"result\":[{\"_id\":\"openidm-admin\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8780\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-admin\",\"description\":\"Administrative access\",\"temporalConstraints\":[]},{\"_id\":\"openidm-authorized\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8781\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-authorized\",\"description\":\"Basic minimum user\",\"temporalConstraints\":[]},{\"_id\":\"openidm-reg\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8783\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-reg\",\"description\":\"Anonymous access\",\"temporalConstraints\":[]},{\"_id\":\"openidm-cert\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8782\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-cert\",\"description\":\"Authenticated via certificate\",\"temporalConstraints\":[]},{\"_id\":\"openidm-tasks-manager\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8784\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-tasks-manager\",\"description\":\"Allowed to reassign workflow tasks\",\"temporalConstraints\":[]},{\"_id\":\"platform-provisioning\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8785\",\"privileges\":[],\"condition\":null,\"name\":\"platform-provisioning\",\"description\":\"Platform provisioning access\",\"temporalConstraints\":[]}],\"resultCount\":6,\"pagedResultsCookie\":null,\"totalPagedResultsPolicy\":\"NONE\",\"totalPagedResults\":-1,\"remainingPagedResults\":-1}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:38 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1357" + } + ], + "headersSize": 2221, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:38.690Z", + "time": 6, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 6 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/config_603940551/export_4211608755/0_af_m_950605143/openidm_3290118515/recording.har b/test/e2e/mocks/config_603940551/export_4211608755/0_af_m_950605143/openidm_3290118515/recording.har new file mode 100644 index 000000000..2447cc8e8 --- /dev/null +++ b/test/e2e/mocks/config_603940551/export_4211608755/0_af_m_950605143/openidm_3290118515/recording.har @@ -0,0 +1,9175 @@ +{ + "log": { + "_recordingName": "config/export/0_af_m/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "de3566e649dc89e93a6365b0fdaecd4e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 393, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/serverinfo/*" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:02:22.254Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "3f3b03432a833cfcbe27438276bb566b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "accept-api-version", + "value": "resource=2.0, protocol=1.0" + }, + { + "name": "x-openam-username", + "value": "openidm-admin" + }, + { + "name": "x-openam-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 507, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/realms/root/authenticate" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:02:22.272Z", + "time": 2, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 2 + } + }, + { + "_id": "4c1fef66c916c8940b0315dddc564b06", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 423, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 811, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 811, + "text": "[\"H4sIAAAAAAAA/w==\",\"7VfRjqIwFP2XPpP47ltHkZDFkgV5MBtDOlBJJ9iytE7GMf77tqOzq2sZihLmxQcThXNPr3jPucc9SGkOxkDsWAYcsMFVRVkhwPjX/uzOaIMZLkge1gVm9B1Lyll6uhbxkqjKjDNBmIzI7y2tiSpc41IQB+RUVCXeIbwhiqydhyoiMGbbsnQAsy2qeEkzSo5t40wjwHgPipI/qy7U24MDBN/WmaYbjQTBTBIhVaXcVfqaJG9y9IJfschqWkmg8VRu8ZEJwPmT7yVhEqsbvR2gvmhOe281DpNo4qZzP4595N3cb1Fz/rrT5BUXEt7FcN6eqS8A4yWagEvgLEzQNIVB5MLpMg189MOdtlcl6GcCA3/m24GhasZDNljdQBqiYNkOXcDIcxepIg4jG+rTL2aNh0GQeiFy25GTEM38aG5D+vG4Lc5+il20AIeVmouaV6SWR9WtzobhJM0RP9OrplE+AteS1Ee4xHVB5Bm81lLWDdjZTnwauNNH/vxCMtmHDzURdzOmJhajU335qPsbB7OLDTQ5t+m5g+ysnaWr3r5w1F7038WGLvztThG27lWTSoVxrs2yhULQgm2UGj9pE6FO7qjRRpZmQTaWdMwJWORr/Wpbal3jwSfvJfetEcHM1nWBW/Vzjyy+afP38Cs8MsNgmQH/VW5Xs3K6b2OTv221UfxnZ/887+PPkbWBXdcZLOsa9IgIj4gwZEQYVHNOy442afIiw5ijhvGwe1KHDWFzALGpfsj8IfMhZW5O7t+veOdqBTbv5dXhD+46tPKwFAAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.280Z", + "time": 4, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 4 + } + }, + { + "_id": "4c963e6ac6a0c10bf75de375d8e3da12", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 456, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "_id sw 'mapping'" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=_id%20sw%20%27mapping%27" + }, + "response": { + "bodySize": 1820, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1820, + "text": "{\"result\":[{\"_id\":\"mapping/mappingtest\",\"consentRequired\":false,\"displayName\":\"mappingtest\",\"icon\":null,\"name\":\"mappingtest\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"target\":\"managed/organization\"},{\"_id\":\"mapping/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"target\":\"managed/organization\"}],\"resultCount\":2,\"pagedResultsCookie\":null,\"totalPagedResultsPolicy\":\"EXACT\",\"totalPagedResults\":2,\"remainingPagedResults\":-1}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1820" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.298Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "778b519855abd745b38438bc349de829", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 461, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "_id sw 'emailTemplat'" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=_id%20sw%20%27emailTemplat%27" + }, + "response": { + "bodySize": 1099, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1099, + "text": "[\"H4sIAAAAAAAA/w==\",\"rVZtbhMxEL2KMT/yJ02ECn+isFIJ/RGpQBXaAqIIObuzianXXvyxJV2txDU4ASrXyE04CWPvJk1pA2kUKVJT2zNv5r1nT0qqwThhae9jST/zhPYoZIyLE8hywSx0U6UnylqQpwa0ZBnQNk0gZRhzpGImwEdIXATJxgIwgdUO2jTVKsMt3MjAGDbBc6U/2KP9qc1E1B+rZBaV5WOeEjX+ArHtOER4jQhV1c+jD8pp4hpMwg1pleWdc61Ov5tjEhAG/xumZKYc0RADLyAhdophoRvCJQGtlW6TXAAzQBJuNEyYTjpl2eUpQk6fRn1GphrS5+d0ieXZyeB0NKyqcxoNBI8vyBQ0EKuIUBMu+10W9bs+uBs6wu++PeoZ2LjZM2UxpVQZSVrOcsENUo/9g7Eb9P2Wk0I5Q1gBV9j9/KcjMVgCe6H1nGnfO6ZrkwIcFwJPScB1JEcSVJZrEqsst/BQLr46TMVjTnIvVqghVlLiWdDreKnQEDyDk1nunWPhmw0byJdxAWbpk4M4Vk5aMpTowYxZriTZW1piQfDKriEGyxDQdIOH7zBKq6p9v8/RDdxYHRLtwOL70Yl3H35mnpvV7LUlUUE8tBHTh0HHAjRPeVynEFxeLBm+8dp+NACUw9umCJYKkUmLSxNrnvvQB+AecfRHAqSYX69Ah+pvsDfXcxQ4AI3muySsFndR+kDPr3HHSZTMFcBco+G/9DJgj5kxl0onOxGsvtx4r0PqWre8AdictEVJTZb1QjXXJ1wd7J5LbjlDn4JeaKesZ9+XAJvjv1qJQvRawdX8QcXt9LtDy6Kh0Wr9V/fUv15Hlyf4Z6dCnvmbMmteftSzhthCy9PbgX+JuTlzTZ7b1K1l5BIEmn+3cxZnzLs6rSfkTQ5y+PJVhzxgyP5/vCHGC/RbAdJBeImXMNuNt60HR+iqeWDIFMfcGPAaxBoQdWnZuqZmUhRYN5r19/cf819hGS/M/Jo8QpE+tZtfSIPwXvWetWmOLCejsGgGSl1wLEg6IdrUKsvE8cr2scJHZYZwh+8PBif0nhMho/YOkFxObu/sPan+ALjZrOmgCQAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.311Z", + "time": 5, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 5 + } + }, + { + "_id": "4f7c200a37e236805c35afa89036bda0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 436, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=true" + }, + "response": { + "bodySize": 21810, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 21810, + "text": "[\"H4sIAAAAAAAA/w==\",\"7b2LduM2sij6K9xK1tid0cP9SHbiSWcftezuOPErlp1MdndvL5qEJMYUyebDbrVba53fOF9w1pzfyJ/cL7lVeBEgQYqSZXfPjGft3bEIoFAoVBWqCgXgphWTJPPT1vbrm9a557a2W7bjkCRptVtOGIy8cUKLbCf1wgD+bkHBlKST0MUfMbFd+BDZaUriAD5MiO2nE/gUhz7BGl+15m21+Vf17b1gFPa+qmnvh2MvaMO/YZaWQLVZPQ2inaUTEqSeY/OiKshXtu+5dko0qAaAWer5PVH5l4zEs5eeD2WrD5oRupd5PUB1StjPtYHr1JETy5wsScNpH+j0AVtPiHO5N+oHs5fETrOY7Ab2hU/czdcbMRl7SRpTQm60rY3ITpLrMHZPSELSjbePGqGVEH+UkPjKc0jv8sIerG2wrp1MLkI7dhVgXoDVbL+HH3phRALPnXaQJcLY+0Dc2r7e4dyWuXPEyJLUMSmQ6Tj2rjyfjGnFWoaKRM3VqSBB1MpOkl1MvfSEvMu8GBgjSJNGEqTOGHyaJv3AhWlzPQb3TvsDDjmLuFRWdVNiYS85mB3H4QgosllmynZ5XiNWuZZ4S0jKBmC9sUAaCoNcF8+W+wEsp7Y2slt1wL4baAiCmMAUL9uPmaSRh1xDktQwf1qvDcblTr3AMCTy3vEzlxwzUAx4FLbxn54+5K/W0KMG0IFhpKRNmTGj3N12iU/gP9CNMzEQN5klKZk2mcWK0eadJ07sRen6oKcwS238h2nyNhscU8sZWyvavndFhrPAaSuL8cJ19tZj1lnL9RLb98PrQTid2oHbp1UL7KXPNLLCJ+18xbE7rJMSEjETqa7tMtVt+8d2bAMCJE66vNGeaz1//tzaYPzYmdpR5AXjju8Fl8nGohmjOGPVJdA2SwWVACYNWg+Aoj0mbg1hIt9OR2E87YBOv/ISQBHwL/RUsQrogFbpokrm1KFxBZqJVa1+Fbptz1VrbBT6njNbAx2XW2yWH8DK681qA2i4Kt8aOLWjbkUmGLx7SqZYdaEqJe85dJgdz79Vt2vV4PfIz7e1o3I/4xZ9ANQlyFfpuS7Z64UXgJ0R4H9Ka0J4HezYqX0U+DOTqcylj60Gy5pBVfgItV6DifWXv1gh/LULKxXa1AdM7x9d/EEc8Kygizj1SLK5kYFAgSv6+i1twui7N4IaYIKkxO2naexdZCkZTOxgXPQGuO3FjC7DBNwdN4HsRiGA7I1JCryPAReSgCTgcO7OfVV7Te3kMrnyyPXq3YHJEHG+KPtfpwC/QG4Dha/D+HIEdlEP0fGCJLUDp24BbESCgkthB8yDNGCkWOD3jZaX9NEgJO5pOEztGJkauaCAIDMczLhxvhHo3UoruTWWaLFDl4y8gBqQy1OkaJAmIJ4g0CiAp+FLj/husvlaxpWKIaVqexDlpgE2DqiNhTMDiuiE+FTnJhMv4tpmtrlxDpjYoGxGtp+QBX6p7B8xw3br5Z5qHIMw9UZ8yUgA2TTODLiaNLpESgVxp2gPQt8nzBV6veG5EeAriFwciCG4aLAJl2SHSswZdQ5VDF6G8akdg+Jczq1KaRvqU22CCZGCJdZNiJPFXjrriv5pD+iBRWEAC771V2ujtwH/LmjguQv1q0rEpcjxFgnC9wMi71cYCoNwbcfURtu+gdWERrvwzy8vwtCHqn+54bC6eaMub9Ll9T9S8ZkDxQENGoIZ0ohE0hiQ3kyB54djFoo/IUmYxQ4GdyYA9zWYUjA3gH7JpAJICYvdy6h77lg4yRUNFAliwSzDb89FCClGGK/g7xjNeAwM0/+wqsqflMTqb77ElxQETiVj3/yvHihCbxxMGTriYxiP7YAzgfKZd6TKAPwscACzk/EPJejMHU9kEAzciP9i76FDf9FASNk5Mnk06AO6mQ8C+Ed4of0GXT8eU6SYn4h/zAKH/6fHYw0UBnUc4A9qpcAKHkCzt3OFJ+V8wn+HDAO+kwBcZF+Bl4PM1sfi3Ssg34924Po4V8AMQL8u2FqASuhcdimI7oSXd2HOu4PkqtQSOqtt98c06f40TZZvlwBn/wT/rNYySd0wSymAIf1zMRgpWRScBzZc9wQmOPHSMJ6t1hz6JfHSA4BZBontDul/yq3fggDaCdlDaQTkvCvCDAScwh7bpOxN0jTqcQXcm8CiwMSxUJxEKNKyHACPqJo4RmHwCNU8I4RN1RqLC++NoJ+3Ukexn8CBLY4+rAe490dbt3AqUAGRAquBweODEOHKtzIPOJKtL7LRCHpk2ndqvx+Cqm5tP97C/4FmhhUCiAXDurJRhcJ3a+r5vpdQzGqVtYoOw0YoazQfhG7d8UAtIJPQxtgQDGe763rxvCcEMoCFTxAExDeMPIcpYLGpjIvUFWjPXPjLOpmNmMl7cwI2EoWcmktQhEMuL2B8tKz8Lse7tMyuNE7U89Wj5KvAbcf4lovJKYdzI+DAX+Ba2JnPxgIfkPmErGIx37qAv8Z+eAH4wZ+AH1vrAcNeLyF2kLJlOp1F+G0ch+HVrDXPx8G7myt4L+5a2oavc59MOo6qMU0dFG6JvVU7lSQS3k2uzcQX1EzXCILkhQijQM27IRRamr0/YOnkjVWK6f3PVfa6Y7rxjubCNKnqUfKowxCkfLigMq2DwwSVTyLsGZT6lNrOtyZdbqgUBAHNJVwr08mAWfeUSvDzIEQria0aUmY1fIen/dO9wfnZcPeEGW08CsYgjNFKHHJPQYF9i2G0BfnOAOsT5ju8rnAeYjJG9pWsjOrGiWdRGuKfvIf3nQR1F+mQgJYxksB6lRGs5XjRBGnf6u8Oe4MXg97xz4Ph18foWAVomeNyA6WjD7uPf3p6/N3+fx9Ns0FGnMFOYP/y/Dla1Vfo9Ez2vj37cTY9PBlMXu3NjgZ//Xpoj2n5JZmxVfPpE7SUgUVafx+9/M9fd3vh18PJ1Tf9d789/jt5esqgRVkMOhYRR13JWLGroZ7YmDrVuto6/NG+HI3iP178dLj/9MMfk92jlPWY0PjlHvKCIFUym3Y4YYFVgMrUkT0KhNdSDB+gyCT4kwljEAazaZgljM2WZ5Xmc6o4hO2qKnQjT5t4dXnB0q4omreWHGpht7B6uAf9w/6r3Z1lRUPicGXHFq/2Oype67kVs6yVzQ0kQk/x+DcegT+eliPMyaZw0x/9TW8Mq3ieDATNmVOXfzoNcS42Y06TtiUAta18JPA1o9HvA+YmYZkAgKlYeQfqr770H/G7OsRHf1uT4CtM8laSfsaxpPSXcRGElq96dFaPRkcxinZ4DS4e+/G2uOBR4ZFswThkEBPqhlNTV/IeK+MIUygf2A8hZBSUI9t2RAipzJaaG02tlgSDrWHA9DQOjDPfT7+dng93h8O9o8MS7zF23ZlBVc/heFHDCuQp+RG8E9zuEMwMJv1peEmCfW9EDrwAeQrM+ydbsmu1coo198BsO/Wmee2nW/O5svrk0Y2C3Iig8YDm2wS52/A19SUKxUcj8PJBYpSSPV3Qg9AlXY9KuKhxAksxrHQzxA+tY8BNg61/z3GmW5RiY7OHJnAIK3Jwls8/58390LFxImBs5QGO4nDa4mk3SQIzyWYDPn0/Saf+D99fhO7sh5ubL7yRFVK56uJMH0IP8/n30Q+/Ax9YgucsL7E2bm5K9Ta63/ciAELQUp7vjaxZmIHicAj4qq6VTqAZHY3lBRaJ4zAGofUJ+LSW6yWwYNqx27256Xkj6HLy7IfvbWsSk9HzNy3ZFybnTsnZyd58/qb1wwDc1UsLlkhipaFFM2G/79k/fN/Dxj06Ivgbh9dCCjQe7K9hCiCDcGq5G5jd6iVAehg/WAcNxj30rCtYjiz7inyA0f/5fzPLIamFySMw9AhUK4wdwLWtK5KBQwq1AgLfgTiBBTPrxRaGPlOyLC1AaD9Y4MBbEU4WxQHW6ADVclxFF1AEU2C8U0XxYQEu1Ey9Sj7pO06YBam1F4yoVQjyZ3UsRQ1RAiulCWjo2PIJHw1ULlFUtQx1PldTa9fA4k9/OEXug/+bIW1U6IwlYQahUiNK79J5BFGWcUQLc3wkhXNee/rDgMB0INtcUZaiLd0NEHm6sGAQt3m/+x7wh0usqz//oXRNsc/7bj6fJ5QGJAbmu7ZsNrkC9UH85z+gJAtgyrIrYmd8DuvmC42AfN25/YQx4Qa5pqDZvImFrTnRBEocSvVEcfGhogOjpzt6NvApicXchSlSH1Egzfs/UFpB72wGVfh0FlebvxJZxIBOVPw/GPCvnkfmi651In9FSZlxzQ/zybpYYS7P9IaFyWxOOQ5HJ10lRa6JD8y/3nUW1pjfGFgkyBEYDXs7B11riUV28fIGfbwAfgNHPyNUE8tuVlveVl446Ki4grEmsMxdEBADFv2QLMtw4ivFlYe7fu7/97//z5//j34GgfnzH9Z/aJOk5G7I/Q3EGRwT5lC0aNyFqDv2lXW7fyR15r+pU0OaiqG7Yq0VOlIzUww9yOJlQfP9pR2giefz803ME6ypwxHQvy/bc4ieCFDm/czcq1bOe6TfjvHbsr3FZAqGN4aHcfvzJQiouueuDIoppkX1l+8+sr34AChFwzU5CTEJYso/D9me3rKwGcZ73A9Fl6AfuOInule7QUq3ZIpjbNpwWYTMx8DyKa45KyY9zTSeWTeWOd5P/dLuMMVdH6V50gWzOiGbIvWAdhik3fN3eZ1HXQx0R+km2js6dMSKgwY/nVX/1aObCZuP2laQ+f6jv1lzy8GwrLVJHgF+6SQOr+G/Gw64ehvWtvUMnDlrg2t9/EC6/Ae0nNdGFyQZ+c56l++sT8IkxaWArqAejQTmLqZWuVusOlfAKrvwTLezoKoIEbNt8mKMKJ18OCDTC7pvd9PyUjKlf4igTJ6qwrb1xPEn2+/jJrnHI/NsUQR9SzAucaZswUvHPQIhK8YXeABC7kPS+IhYkKB0DA5lwP9OaLhNmWjKQhnaOG+5889HWtz610bMElPYEMG2T4jIITpkjfX8G4xTKikheaKCSmDfTtIhj7uT0QjJdaVGoEQPOPOG4lZbQlBqSqD5noAhs4EOKcpbFbHHxIck3WH7DWrkT0bq8vKO50YdB/z0IIs2HnWZehxwx9LdcyNMU90MfZ6N2rYEjyDl2haXSSUIqIBW0aruQ008athZbTCPp1tgSF782cKt8e1eD3dOO+xjF/RDz43tUdrZetqTKRoe3XZpjeyOyFyh4bg42Ma2rNo2NN2W+mWbi+w2Z5NtO/K2uSyAq9zhECMSRlQUwRxFLn5Nmaut8r1i6BdEACHRTHaXSN+SbiBRs2uY2mlGNTmQPZqEATnMULZbjA9AaF035oec+aYc/TwA3Ub1N8CgcUH4mBKa6KNmWEI/GtuyccZ835OHHFnaTEwrSHYXRQv4H3cqLuw9llQUgZNAYgIIcKMFs5OIe5CnyyjB07YeVp1SlWb4tbcjN27JDtuN8wLl59uivqCCf6ORmyk4a28HGyfHoERQH8oAZySzK0A3RJgSxxItwvjCc10SDCY2y8fp0Q0/lpnEArRgHIRpB1c12wM5gYo2BnVAkGkc1o7h0wWu77wrzvoJXScpC8F87GiocsYSCeWyKVqSyod5kYfyDZMW38UlBa7bbkl2a06FmIzJ+wja/s8mA/pRkP/Rly2dGqzqAd0XLlOAR4O9lJo7OeOvgyI0+UPjkhIH9GmZxVmIxcLgM5o7qUeFdSFN8pFSQ6kj21ZNNh+r3vVaB5yLkGoLsHV8SPxRPhJdRkBSld1OjgsAxIJjrapRuPCjWH6pKuRLiFvB6Lh3yL+wdZh+qTBZhFFypGcP1honhUxDg5FCl2SzPYImbpz+TGYsjQFn02xqUHIzhUmLVfdDMjgbZqwWtfMrG8TMKZxFu0thnXox2xECzKlYw1QqdRJrz+ojbh7fROFI2HFsz5ozk6Lhy+Kjqf/VV9ZtfUEyyJzk4vV0ss3gtTWh4DxklAl93CdySbNsS51UCwNK8I33zbcrSvJtlKmCUs4iuvxawue0rr104gXgyRCrwEcFlMexHaQs0lOE+gqLLFqW2/naxzKippVTx54Pky2lBhnnzHmsnJKzqClh7eE0WAVaLKEVzI7MS5YMmZcqg+2rKckFfaGlKy+nLWr0w5T7ZfUKQqwKOY8y4rQaK48qdWEAbVIGt1hvcquxrCHUlH9L2I+3EWLVRL0rRSH7kHrin18rrE2MDVP6CeRYRL8oArkoF88trE2KtRBLM1GuotMaRdooXWsUbUeml6rNB8zpbO4ugBGyT4IxztBj3TtA82SaTTs+K8YYjdLMfi+aPfn660JD+73W8G1OFY7eKiY1m8EyGUpea5kmooqleLYm/ZT86sVpZtJYMpDAw/W5u2z2adXCKnzqXJsV/Ridywv9lInegLzTPNtKH8SBJEQ1AnmdFfqeq05KDeELo81nuazkVrLbjdyzghwXBymCAiIkZGATESv6bKVZYrhGgdaIUKTJjhaT+9zoUi0JOt5rpJYx3Fci266oZfUXenO5EuQJfUIHirEYgRWXz1zk6Fqen6CTIUced86zNr9q0RVeFKvrt6z02hgnfdt+rf9+axJ1fUaqSNJIsstSXIjD1sxAnYG8BO2NRksDqhvJyqm6FNmWMmnKBMuj7iVavfTiJLV4RF4lE48CfJ4irmG9RgnXguclWu3x0k8SJy12vs5IqdilKI345xd9i+9flHmjbLDZQXLNts5pov0vuKklY44JTwIv2W+8VdlnFtBK7mEBfHk1p+XWu7z/EggFoVJzAbjKA1RMJWWBFrSq1hNrNGTUTVod+X0osbDIQq5KUnsamdlSzlrFLlbevDRjt1wIb7nILbWqzNWBlFA8VUi0hJguYonECWkFPMDBpLVGsM0Tpo+6uaqn+6nlqaBZjPl26SJFXxw9zS3s2Kx9h+u9O9LtRVzXqN7FDq/BwRJbvyb9/RDzyp1MSqdbRLgKSTV3mUZTFcLKN/Rrolc1Apszizl8tcxKrEW6TByr7PxXbWLW7df8M+5hCrH7FJuYzTYpPskuZhpa1xPPmVh71gvih2rMZbmtzEL+CLLVQl8IqG+xG3MwTa+slste0MjHI9iBymsMdrVTyjgNlhToBzFb7KJq8lHjUdVJczGbZjmainVXSd55SDa4ezml5P4sxXTPOroOVhVN9dy9vlwrZ1uUo+vIANrpdgFAPd8+r4h/yMPPzZ39b5dw9oNsOrCjpBQhsNMOnp5MO3/vOHYEFPGTcsvDbFrbMsiYntYbivu5lYs36gyH2nS1EMwqkaq2jDmvTNQ6LFehX/SEx7KvzAqsx59fFEdu0ikortGmV1I+y0JDyyyeD/q5RbAlx2hYrpM0SsppmTZaPmpdfICdumAZsvEleMHBuBwSyIvKjgsJXHBarCQijgcDDfH+K/CT4Cu/dU5ZdvFuI2JTpSX6rQQYkGsGJsewCKXsmtdIrkaRZg54o3kQDkd5h4VexWWdSIfkjhI5OAIPWRxlj1afglsncHwG7m2ext4gOcM0/ErHdum8jBJ/rzElIzbv/ZST61q3yrOK7zbFKtayqx6yMP/NsjD1pK3CFbCfJvOyii7LaIW8nM4mHkoPYzTSAry+wgvSZBcv3HBy12ORJjGK9Rq1SWLYRaKB+X+2nVEV6TWakvoJqrJ+wOKecsLqc7W1S4iukUbFU2rl3SZRwZLn2Ax8JW/9/p83b/76X5uvtzrfvXnTsd682Xzz5tHbR199Wdqr+kS0NAxnjdSUFlGJjModUsvuY8l7f3QC3O4wW/tzkn+FOGubjEJ2YLWtyrcf3+roGJypUgfFc91hMGD3jG5XX31pJ+6I/r+b0P/m/Sx3eFY5rx+P1aO0X7TUc7P0UcNO8i6zY7KyTXkibneX52fzXKpz9rJP4RytvC1NTWrLV3T9xJBqY6TlVbfheVBEkplPNd5yxRpjOIhZlyPAXwSqyhBYncj/Nqec1ry365ZzMNbgDt//aSPhtzWweCsH3tzkZYylX9Aid6f4Rla9gWsWhIKFa0rI5/JejghbijtisaucLZAbdqGheM4iGeSVGmyWDVT9slDya7OLT5GzUdEon9t4jZRLsXS9JPLtmcW3N5Jua/WU34odUIMcUs2Xn25Zhx7iff0Lxd4+V49enbw78uU/+dUwa1B3ZTJ9Wte+IHOLVF5g9AmkNgnohSq1aqTKRcgCvExxgX290OyRzmDZ+jJkuFp0nFY4skQDVNuiBR2CnSvrMrWrc3Fd/mpz2eaTJeX9iExeXVqb4qgBz91BPgBlyNVJnCusmPpEmLqrYx+2KBXGIWwLlRdNWuKmZYsLwnfV3fd5/riCasWs6mwUV3DK0Rrk3B25JLOVvRDNHFN8kasoOGdwGzkh8uiXJA69/cYLLn/JQHOITCGhm3KnRXVTrok3nqQNPRMU85wea/RR8gGY+5TlFuKIV0BaYWBdzJg1laPUbRnz4mX5EW3NRp4F5u+c2Ow9hRJdTG3KiiWnUahALi2+ZmVqJNu8CuFyfEapVt+9fDJCB/Ar/dw8814ZbX6P/9Kqp8imizq4S/Ncl/lPa6Qrk/kJTPWCNikf9VCoiHWtd7Iyv4WZvk1aJCuUaaIqw+cIIu+vyEQ561Y0aMAUlad8kdj0Cl20BiZ47TatWEIdPvtoFadhjTHDG3fIey9JF903VX12uLnrpMjI2hyoHOaDG3VvblR5Iv/dnCk9prrUbTWrO1ZNL61Zi6ukaJMGDtPtvaGKZA0R9JJ5GmtTF3pexT+/slh7lHc9GQ+FPIZa0V37TTTLSqlh6OsT0CIrr5T+zX0ho8iyMmEb6B5Hc4u2xmz8jXUuUH/dCsSuLt4kjY3rtwVrfUSjMW32tMWrYfo5giYbgo3ewguDE3zlfSkw4vXJtXn2gaUOz0KznwTQa9u6noDWldcDgy6i768w3gJ3U20GFi+7c7GrBQYuMs/nL+0prr0bTm0vUD1743zJcxXyNsfca2cHc9B9n0APMX1HglZj52ZoU/Ynq9nPy9iHo2INfsin4OCKZo0OJtHalufe4ZGkt4uPIXFqrXYCidKJPqChj2PJE0gch6rTR/+0pwQLZqH5dOD67MLl7jsVdzLf/hhShQ6Xslazh7iIt9ijUaHJZmx4/ZlAoux+Y4mlnYBS7bh/CQa8g9Nvutq9JSNKvfwZnIUz88NqCq0QmVr9wqcmNwMYHo341zi7eb9e9ZIHrdenPlfg1UpHuplSFN710t5xI4aU1lQjK4jW/uRWEDceV7OCqHF4eyuI4/BgBd2THGuPVnyuVhDlrVXlnC+v5ZNG9LtltA6qB6B54/8SnHkXt3isbB+ZWcPMusqcrHYRjJkDqi6FWeX6l4Ij3WgtECoUQ0WsvSWd+TtYG+yily+xbbBicNlabcVoMNAlF488KtGI0rxTdjfK53Mnyq2IWjWmlSh5tJQRY5hPGY66A8qW4lUS20/AuMWBLkXuBUlNZv1kCLmKwCdX1nKjIw96aisghoXVwCPuaFzYiX6+gVXiqOCPwgt0NDwsHuzkUVd+6fRJcbHie1PynLPaRu0tMFXQNsptR3iViw6X1MaSEw8YWsR0D17svTo7OhvSkz2ig1Z/+PvhoKVXHR6dnQx2zw/2hsO9w1da/QanXTSklMi00oEJshGTl0dnhzvn/f2T3f7O7+f7e4c/7+4sbnV2+MtZf3/v5V6zyn1A5tVhk7qIwPnR4f7vi6ue9k9e7Z6eA+CjkyagOc0b1+/v75+/OjrcXVxzcHT4cu/koAlQSu4Gfb8Y7h6e0pwN1ayj11cIhjCenhCvQZrNrbLY5QJfuO99geiV2xnEr1zJKIK1FFjfLC0hnuuf0NXEbAlpaCzwy4pBjapai1guox00tXN3skEwYYy+7ijeSOdGjaihvv7ZExdusdfZW4WcP/58cY7pQehiopjLXJkuV99tResrlU/DAZ45ZPYGv1Xq7dyg+yWmN60v8eqblvrirvaGalfH9yMbGn0WnaSTkAcLxFgifK1QOqriDVroRb4Sz55Jl2/by3fSGQhXbk7ztizdqeXhldJzY/ii95UyV/nDvcVaNzdQEqGy6sGkzOfqG+v6/MQhTsIdT8/CI7H3/cKpevXTrVlGJeG6OIbB/PwY5iWooJCStDmFFJqkk5jY7jGtTk9145+n9CMQ6glyw/tfMpKRofcBcHyyBf/D2YPymVb1sYD1MyFR38f3Sre/2VKQZrmeyEquyK0DrhW6UHA2rcSeQ5c5BSwlz/adzEeS63Gk8pPKCfFHQ3ZP1zFfwDcedYHcJ2TMdhah8xzI5qNak1mZHwTMLwDrxQosqozXgl9C0tsjBkDYYX11uZE+E/fP7+SRXMU1U55QvvUtjW9ZqEwOV74VxsWperA8NleVcyydUAoh/44DJNMonS2+duGrFeljOm616DII0aajnLjSoarnVOph0XBEh6XxF2Yu9q5AGMekjJAkBHIlC6ZRt79AAo4tcq5Ov3uZJIkbj73UIKczLLDaZ8MqbcOUyYnpUFw17GF5hvXqpW+P69hoZVI2muZiiYJTRwRvdJzFdnszfFdAS5tgEk+9JFmqy7smkYqThiwXzMUCKDdpWc7jct0XlYCxOR1YhwU/q1Uxpm7WquLPTeHp41BzfmuHwRh5MeoEjOq0w1ZrA90cGgju8W7VNzrKK700oIT861cuGD+rGGOk9lhT6vkPEVbuYIi2w2zajgu2PfwH/E2ZJtlxaDKr/s3Qhu1ndOzA7eR5mBoEueNB/zDBUO6KoVV4Q+2kbSHE3dL2dVUdgxBqBl+JBB+ohoH2bW2IK2l5aqQ5qkT6RtP29Lc445evpmiJHwX+TAkGqLV0525BZeXuclGPbffp1ZT31GvBqbf71VZU8sRq62n7og0gsj2UBoNpUrGUOlxfXdnEaQL3qLL627ZcQIUDxfaae6ILi7yz3rRubqj7+KaFSds9HWqhRqut6Yw=\",\"GrGo3yRXVzWQsV/3dn+Dr2fHO/3TXfhjZ3d/F/54y+JnD5z8wMlVnMz3GqO4yJm6Ql6KGwcnu/0m3KdEyBZOhXR1F9RUQ20LqiYNeIAH6tYpIMUw34Lq5SjgIloVgoSL5IHFEBsB5SHGRRBlBHLRBBQClAuq5/fZLJiy/K7r+omQT9k36Ft5H6q2YuEd0ub1+4Wja7Wt5FN/C2uKZxwXz7B20/3CKS4++t1QkedZgfVTo5+jWLzglOua1GThlaMl1KTeki3q5+egBmFdP4982yGT0HdJfH7eaI032vDmxE3zSs8XeLnkP+jaB137oGsfdO2/mK7tbYFlSp9z6eVo5h//Y7OXYwQfH1UYsdLZaKRim5qvn5XzVD0FD77TXflOAvXqKEDfXCNn00XBsX+/KMADI38WQQBTVPYhCPBgmD4Ypg+G6ac1TCt15OcZA2iwlfXg+D/o1wf9+qBfH/Rr2e8HFz/HE138RY6/MS9gWc9fSxIIUbn2mI6FNqAiL0d+eN1nH2hqisxj4dnfmOabOhPMJWh1MRmZ1wAi6KeuE3pLXjHJh2cUd1B4wtj7gOkriNGd9YM0a2mn8FAWu/SwpxNOgWpuws76saWLXySLl+uys+X6WeweFmCaNlskv7zhDZjrm1//vC2WM3qzCwXNsrY7npt0RmHciYnDcsWLPdCCPVd0wH9Wd4Dp7cALrqscYPJdOxqEQcAOsLMsb55SfIHvLm3TW0p5MWZiswTtr7fayvchcbLYoxQHVRunp/tDQGFC4M8XwIN7SPAr2x8igkjEb7aU0lNvSsIsPfB835M1HrME8Cj2pnY82wckMZWZ3mABvDaBRULEuGD63D86ozh0Q7AqrrqOj8dbnC5MGfICKNPW9pOn337HbvpF8CWA9LRqGNI8eWQ3UDhKhn7iTSPkG0aQHSRo5rnPGb+06Uf5tjnmxNNr8EPleoL3HQaio7w9r9zx7XjRhM5nf3fYG7wY9I5/Hgy/Psb0dZpxh8dHURP/1Hvxzel35LvBzs8/Dg6/PX1/ufNs/Pw51PCuoHwXluH4w/Xu2dnlj6++/vaJs79z/fU1Lb8kMzZrT2mivYN9pbPvRn8/S/1nEXn/yv/xyPnr4AWDxm84RUFxp12WQdbVUE9sPM7berF3OvzZD47J6deXvpPt/vdFMP7AekzowVyapybkK5lNYX7YUeA5/g/wDmDgXvoyhqnaZuyGn6f2+5wj+ylm52Gq2dcoyCyz7UC9KpqCVL8E+ASCbzOlnT0fE1CSntN2neccF/Gnyjf4jbMO/RNQQnF5H2H2nQre8bME2Jm4VNyYqHpcMxR6rqi6PCZtng84wM8sowxY8EicQx7FHaQw7aUjOz2l/e251a+beUl+npFfOQxy0VcNZ6o/xSFzJgig/WM8eO35TOLZMkNXN3pcgCohBF8EpqFpADwX51X2GDlr2+c1JRi8WrJFGctNeOKjXJR/lTfqq3PkBM+F6Fq/sjsnwjhpw2fW3kR4UMrOaNwRjkLnSrRDUWVlstcOFXJT3dWnxAmWnBH6Pt8wu2ApvEbKcrz5S355VcMMKad/KqCIGobGmG9KSVnTHOt0KP+bINClXmmFFDsA+ffoBFcSjcOmrfPpMXbgBZJW4txIJa5oZUlyiXMkJrYmSXrCrlLR1orFs807QgAdfhmL21Gc1EJXGvPLRP8hOwJ2H6wv++wkYMF8Wsa3fbBQzwKmS/H04iA/+bAM8SmcTqYAUs9QGKa7SPhlWFQj4OcogF4wUIZXB2iqHjbB4RgAagzrenTJt9nVR/fBrnmPn1pJ2wkZkiDx0EPnA+T2Z2M+RRhAZg5EjEO73ETl0XWuCjkdX3o+WQprZQro4czPkuX/VZYEhs8LYBT3vkSMddnBC3DcTyxkn5qP7PeCwIvZyH6fE6uai/DUSWOQwJkLQWrcImofyyNINSwjKi3HMPK0tlhrNfdbFN8jj3B/UgxrCCxqj8kQb3qqNjebKzsGPR9/wuCzG/HNBmnONf0xacoyeKWAAZgoL1jQDbHPoddZ0KLWjx4ObjbAIH0N2hLohNXv0Ki+CXCuM5a0qYzqqY7xYxIhTxQMxvvQlqJnxcL8d7NMPr2WxrOjxMkQ11yrNh4syqGTQ2imauGj59sYQ73XxTnv9mGB1lbTHW/EN6mWm3t1jXVzGPWTzx7YvX9lw/p9UDWfkN/ODFO/FLeV5nARryUk3iEjLyAuv3dUswWKbMfrKM97NuI67AWNHeymc8VgaFYDr1cuus/4kGgsHhtsHhGSAd5Uf3ZQTi1q051gWUMFW3Vcs78OJAdbOH1BJvaVx2ygKhHgVTsXom496zcedo0wiB3s5cYrr58owRvHYRYxAla0pTUqiKWJZuPh1QsrCFBUZ36zcrPZmq3BdbgqPP6rCLe2oW3aiKIJLW34Q9RcyxYU348RMDu09/uUX0yrOVAeKDHRVyQDiMeJ9FQctp14bMyLkPeV8yvQxVo+L1yWV7FN5RheG87jZfoTLqUpNz7cIluLFzYqeg5ssyep3u7QUE45RNmyuNnWNt63siR04/Urhl097T4uE5vj9/WzuWGnVbI8xeQ+t1dlnK96+suhwJyEmJNiohxNYrkratFO75NIIy9O0to9aESpI6oZREV7XXsRHPmydhUkYV/UAakyJFjKyuLByHrGFcIPnUtjigItuLOJB+D3OvFB6JJ6UgFGHaxlSj+Yi/QFvCA3dEzkogWoYWi9VegGytkLxkO80pGM+T5XVZID7Y39qeLr+B4J0h1MPuaX/lctzTmUW0xDA4xUOzDwkgmmdC3K4GCgWP3UM69YXtIHLTtLvIX5IAyal9iivjGyI5N4FoOalp5+z0WSGg0nhtdfmgBmrYTp4eStK9NhVu2JtW7SEw4quzjJL0K9Af8gZduwixg2q2dN5TIylrjDcCM8cVu0y5ErimFPYtI4B4q2Y83Wq33mbXkTd4MJoBh07MrZtacX3jgLs4RlarGhNMh9UoELEGyuGYX0N1dyj++9Qyotzgr4eZs7l86mS24RRWxXuwKvS+zlTc2NURMtqoHtkBTPfSwN0mXtTEb+BF8aaQ6Q1TcAapjIp4CqWRaU6+obg8vbVOpgITLLQNUbflL1nrCTOUsgL69FN68UK9Cj0PDTLkKiGnfWTQuGsk6dhFlKBZuePiAj7z20kQtLbrepi4lMkufLCr2LNJkFTu8d3j5usvloAdp8WO2uTGWEzTC4T3sZs5LJe+PubBGvjqhbigAwkDv8DfrFcGh1fi3+Cso6h1SjqwNyzSncBBDUlm86FQa30KNQoFS4FYIBTshVIzh5bRMo311iYFC7amCmxwsbQGym2ESthpQT1SvWjrQpa7GaJhBQpd98kPhXldlGzVN+pKB8KqD3lUmD8MJVdAdOlym4yCB26GyyWr/g2aBdagmlswNMdAbUTjJ64gk3xfbGQRiTn0RNWmPAwEhl1ERTia6hLr0H2pFvzZWGTUtWOncx8syBbPy+EkBvyk4ClUGyklsANc/5bcCKOGfxrZBiH2r5bcOeFYymdnFbbmvIYNqoS6th/qJJIbJ/rj09snp0vxRpnpLUroo2Y9kdUf5+iM01GZPm5rSmNLkViXFcPPnNRFyleCUZEqgYZZMX3gqwnb+hZY4T8tL2bfqrZA4OsZP3c0/8Uu64zDZNdscUxGs3yqZLbu8VzravuL/HLgBYZ590b3SBSBjvFDIwl1p+t+yl9nTPDKYRocRi/M6spjOkH/JfddNX3JfVsFflHi5jj2HF89jlnpcUguIFCCuOd8Eus5FHqrae+VVoDQdQuGlhRfzz9+mXGYGcNX70/Gcyk671khNpFO66FI27FWbs4bZCfMBgnTBttow8m5NDVN25ZNaANixdBzefOmUZM03c0qIX3y6zRGWUuiSHu2UUmry3HkY5YwNehlEqUiqEFV6YBeUWi0Uj4jbrYuYoW/9m3ih4HCvyL8Wt6LssgaTmLpkRVda/FZHUVKS4+WKNGrK9Dk2g2JRMbNerCpTUsdtMNQVD9UQhc66ArBPUTHrRnFQ1Fr+V6nayIq+2ak7AonIradH1ceAK09uABRWzYx1IUnDrxlEkd+2+jzx2v09VrkV0Xay0aG9AXFK14yWOHbu/QSFJ1E737SQdTOwAcK3pVa2xcpfiGrSmJq9yFdud+HxNhEYs/s0nvFKMZQ4EjHOM1+vJIHjJbizVWimsob4YZkwU0yqs0ehQ4d7W6DhRYDW0OtTuaTgbD2K60I3R9pKFK9FYtjZHpW4HPPPMUDNvNXD0mk4jJ/CiFcDyLd70CV6/dRRJs2l65Tgqa4DJld+xx57XPmYHgemFgCmIDTOy0ywODjPffxnGB3iFXTBWH0VmkguieQDwlZ/H/MK7K0KfNZ8pRcPsIo0J2aH3sMkrAzEJk99vxt5Gp2f0TuMsSZmdG7NbD1p/ucErs7wAr7D0u64Xz3uiaS/F6hjSRIk3AhFHvBoAo3AidlLBCIulnLZ++hkvYkuVgtY221yZF6658wIPxQK6I2yfpHCo4PWNnrTeond387epr4glrwb01Eu/hKmoXNam3LXXLsKEYXiOxd9ltrjO1gHmtwGWoSo3BZZA94MwmE3DLKnANCbjMkT8aACVn1EnrnXl2ZaDLEeNcFKEi0VlwPSrATLeNAMw09AC5qcGqSWuWrRSO7ksoU0/KuZaoR+9uNzhMYj1KIyn+O78lYd3QIIMFSgU8TodtU7elbkYb9sr5OsDBxl5I09pV96Rp4VdUTSnqNPWtphHvWX+WdZkBxdUnEQJv7gwxEtp8A7ADktbxGQQRSrCjJ1NYoeU2MWD4A1OQpcuJiyPoSVUJbqsYYApGqDghJ5oiZfm2Z2N7L15vtobnlqP7BQpBoX/s8lNhI+CiI82v/y42ev+9dEjOg4FkTvpX3849kvapxbXl1mdmzwxpOuAmoI+4E+KsPX8+XMLFesj6y9/sTax13BkicryRAmttpEF/LDghvXxo8UW6e4lmSWbpQbdKTcG8udWH3XZGWsKa6v+OXukURLh8WxtFPyK0M0N/elUpNrGoy5jAdFws76HprOoXDQqln5Q8HaAF7u06L46KHsMRu6+p0fJke7chZOH9+RvbpDj68woeFfhJRnkyT0cOfhr7IcX0Ab+lJlu0H+PdmxN7MRymPVupRMvsVi7rrVP0g34RYjljSwvtbAo9XyfKieYiq71TvvfkI/n8ZughlRzgel+ON4Hi9ynHi69Qph9xxs6PYogb4JHZpMRzJM0B/BHP3CP8YJauibA6p/AqpRb7mggg4wjwSS92C0L/GaKLfFbXFNKP4kpETRl95oqRC7GuEtzSXWvYwfnmEpyxXTFMpNamsUgY1706QQtI3YjJnZA42P61bCbmz3aK03LsnxC74dF7LtBeP2bl06ORqOEpPM3rUdW/3DH2vyPzZ4XKE3wkmF8wkX7OK6D80ha3GW3i88BtZ9Sdt0rVHq8NWX5hcnlULg3YCdGaHshJXuCcH12kTmlaCevwSelpq4on/NumsjClR1bEaoY67n1+gYGLG/SfdOytuE3MAvec/+m1YYfI3xdmRf0tAvXWTk9tcnLGSXhx/zt394EbwI/HMOq3HXJRTbefNMCsxTXUVyA+3wwFh+NdQrIW2Fg3cytzZv5I4TtBVGWdvHa+LbF6L6384jCFWsoHcWmKGtblG/Z2B79jarmv9VL57XtpWBaDxjFc16dlwVUMHsgrpQuCqEuYN9+82yL3fDbXIwIRjPuWYg09vfTJmJkEKKmongHIsSI1kSADDU/L/ERc9FEgGjk60F8fApOC2kQKjLoA9MugNy8lHriX16Eoa8Z4rJxl7fsRrKpLEzmjEeoTB1TEDf8F19kH2/NVeT4ar47OOgPJUPl5OuG4KBMeSQUjDtqG3zXVmugPEwjsP+63F3MqfMNkgbQeRWH4RUVmC/G9E9wohOqHrqMd7t2knbBgQ0S5BuxjYO3p4sGJI7DOOmm4AJDNZyqx1t5KcggMhHlP6lxCoUgsxf0Nu1CMR/GBT2t0frCDmYWDZdYaD8HbmLxej6YY92hIFihNa2bMFeuy4qUSix9q3sxS4FWLnbzuPttudwFSUFnaCZjDnjjOAs4ODx4VmrkBa6Mm4iiazsO2F2SLd+7JP7MYuSzvgjBYQZxpNKcWK/BVyNtVqUdheDmwpy0IxsoHHr22xa9/QEB0t75owWGaIjvXeR1JT8IrIrfK/hEVmQaDC86D+nF69uts9OXnW/ZwXllK1IqO/4YALvRHP8s0VHD9sILerx20su9BV5nMQCOiMj9rqgMPFqs3clV9oJGEi1VVgk4unRXncacmBvMLskAVz4ed0F0QAmHzmVXqgzWRFwd/zOZ4S16oO3w85BHwPK04ZEId4n26Pdhra4fsm3Nj3WhMFn7D4dcgiKSZwj4M0C+Z/Pwb94Dx4zd1N+lVT4a7qmfo1PNRrPHIwpdMeFM9VK4u4eDk9+PT1v4MBH7iz1ItOaeTTfx3zcOIuKyBiwmaRol+VxjRKyAC06/j089mDD54xqWH0KfLelOQ1yE1k4Z6EL0MJnaDqBaQDCvgOUdqNAQUwzs5SdXKBLDvVeH8PvX3ZO9l7+XUEyIP0q4tVDuQSldOxFU2MnEjolbpoNSp4oIGphlR78W1s3397vy+qYlqMUyUq48l78kZlRYosbHYRb8NNidC615bApx5q146UcWe/FS2Y5bd4Y2WPIRuvh5OM9z9fARsUCoWxayu1NFnW9pNFPVef2Cmq4jrtJJTt6zw3raqo2aU1dpxehbpi7dY+H0VQN4CntfXmDCEPx7rO9R5w9kcUukHyTXYEufhuw+ttb2k3LRrySmO1SP2y0a2RVbZo/ZGX0A+9vExuDcDGwSa2RfhbiFbjmhH8b/1UJ/+PzVC14Lw3ayWibrZbTiCD3eXzLig4cK/VhXYRpjOagraBHFf/5j9Oc/4F/yX0iRJ0r3oXVtC8B4o4qFu4XhjABY3ZDISSR274EFWrp59VqJyaov7ImjCMpHBC3rjuyp58+KlZNAr0X4K3uyAv1diG23eszn62nv21nsZVgJqvj4nQSpF1TBtln5Pi5xIBpF6IViFT59Rm8B2BMyhu8VQFmhRibtebx6cuDLfGZa8Df7CoSgX6tA8gf8ivDyd/3yUfNPlcjhw4UlvPCjCqX4xKHGHBhoCQoMJB+OrBJ28CWmOP0sNAGFW90t3BPyBlJtwkKThsEpjT+18ME06smBKxr5ttANv5GNK2KxnRzXQlESgPPXmH4PM2sK2oduz0WpBT6VbEFrW15ggaIjMe4fRiwi3qU30KHHzp53u9GO67aebD3+rvN4q/Pk29OtZ9tPtrYfP+4+fbL130gDBHmKzrGfJzhSkd8H7Te1vCjJppaLisZKPMBqStK2xS6+TXFn3rJdL/ISB+MxBLi4bSWAqRtaxMsSMIQsdu8XYO14rudinCZLLd++APAWSRloYk3tcWBbIAbvMrtrnYF6AQ0JsNk2sQXawLOnbetdBtotAJaLMxd8aBKDnFC8rcz37akTMshYyUs87ImC9CKobBHbwhfeQkCODgC6SrvWDoK0wUywvDgDTNhYgcgxiWIyAS8dX6/CD1ehn0UoRIAOjBQUaAK60/N9QSEYUGaNsrEHWhjjSLYF7i78yOKutUvv2EAtm3hAg9BxbAKLqeVkEV5dii1gFDCfsPQFSEWkFHTqZH5k47itcDTyHM+2XAJsiaXT0Ec0bCSQ51J9TkefTVV+4Nyqs3Z85ZOU7XeBeMaJ3AAdKKYEcXyYfnC5SJrOuoQ83urylkl3EINHfxR7Yy94Ka53xOSCY/DvpyzpG3e5B2BJ4iY6jSAyj91mu98/Etul+60txujt9x1h4om1XPkEU85sa+WbkOQ23TwMUnq5VjukOEG1mG2SErdz7dGLmXnHB2JPtfVq97R9fDSEf85O2+z1vPZx/3TwY16ZjRArU0dmu9eT7sp2blFgEhvzdNDqAAvEC45jMvK98STNo4FZ7B+zTUNqfva+alVOSWTP/NB2jbNSNvDY/OyjNjtmDYcMWsXMTO33fAcZ34vbCw7I2MbwEYbJy3gqQUIGlRnk8zr8s+gTob/VBH+GnXkY7BFULbaQl4iN8iMlg/N8qh2W4C+Z5pc48ICgvhAshuPRxyDZHmTQtFEkX3DAkIg8CV+3G8y3oav3uZU7XVr9gxd7r86OzoYt9hTzWjrQ8g3Whurw6OxksHt+sDcc7h2+WhlfHm3FMBuIfP9WEFT0THi1+sPfDwctveLLo7PDnfP+/sluf+f38/29w593dxa3Ojv85ay/v/dyr1nl/hA98yZ1EYHzo8P93xdXPe2fgII9B8BHJ01A8xlrXL+/v3/+6uhwd3HNwdHhy72TgyZAKbkb9P1iuHt42poXDrCghyuZoSLdm15SMaJbj1hd8VGUZGFdIdWpnSFnOP5T3gNyaz1UBXg5xVQFxaipakm9PnYwa7F74pzV5HkJsWusWZaVtxqNuhb5X0YNafrtlkK4cF01SWli5Guz2PZlSFKA5efllpLRSijVAlnZZEk7wU7cEf7/okVtWfNAwNVhr2oimKEtu4A3wuc2YvGJVv41zMKDzXBvNoN2SnEpZdVefjU26TeajlRQZ7nOExeyNVNg5XYGlVWu9GAiPJgI92ki3KvMtRes0SaZ1GwYs6lh7Ow2VkcTgNUGSJPWD2L+IOb3KeZmy/3TS3y7tARWr8tKwDLzuvzsTE+ctHJsZ0J2RYY0C7rzjIkdD/d/DZv3mcea9/LEJ6JDkEmIi2Hk+Yr0ICg9TSPD/Tetv3dexqAmOvJoaGvYP9g9Otl7tXfYYvFbnsl9EoY4+F5+kLA86MhrsUsbCiPWqSB0XAMyRN5tiQAQVBIYxgNIG0dDApcngq84iTmAAuaN5mFn9/B38wyY0Q2R7qsjS5vfktgMRj25aZ0TeoxYG0ePJb1ksQgL6L/zvM9D5fIVfuSWn2DC3YwwPRN7yvLyDZumlhJ6KLbQmO2wYsosPX8LfYprP6Yg4ol200vSoxW7kXoUk+5hBl21Hk1kSVgeM0s3BewaQMd6TYFTmDTfneb/NgHPqzbtQUCeK5dRnJCEpJKu2td9+soR5nHnlzqop5l7+hFUnHF5GrWiYn60mNbmXhBNBcB8CnYMGlmD7elpzOTayeQitOmLTLSbHfGB2TZesiOyiBl/c3r8knnOpTXEQxjQ8tpzx5iIS/fwZdtJTEZQ9Qt5pDXBHJCeNL5aI7uDm8gX7JZ/DrnvutZAtKCcL+DwJaYMBArg/+NL9ZTxgKYSWOIaZBWOuPBC2J+MnD4QSgcL6sG57CTvMjsmnTAHzU6rW+y6HR1BbpQXEUxRRaT6GHcIzZhU2yvJG3TNjJXZ0wGOia2OlWsAwEmd7yrQgh9j5MdmcOULr4yza6mJmBuoyTW8TkPUQUkB0RQvzk/qGud4DWdJSqbWsbyeJKH2VALSAPV8NETy6NA75FnGsswYUZibiyrvgIM9CAMPmJB59iqP48newD3BnD26twuaG9TJ66+3ttpP8B/4/y1A45oQkPXXj7faT7fa30HZf261v32MJTOkM5Zglj89L9N+zE7NYHtoTC9Les97aH3x5NmzJ0/pHq8XyI8XW+4zh56UMg7XzlyPTZW5nF+WzY401dRLKDFgCfbTyUvwl2jVCzvGZ11TOj0+lV9za99OwGvDiVxAc/FyArAYvQ5bpzjwL6bu0OP0NJ2JcY7s9X0nmeJRBeXVngy1JRtX3pgq3V35VuiSrVnXUjs17t9IGSE4+yAqi4jzIku8ADP9jMQZx3Y04Us8CEvksTd32U2RLC2VJhWIFb8n81LfVg8A7f09euEb6+rUS2mK7RC+d7AAES70DFwhe66Cq62GZfC6pjH24gMp1jDAgFyr6rKMyiG5tvQaymQq4Lwp+YDJfKAJJjCjaJNu/SeT1YwmeLS2MO8uIGObJeLhSjrPCR06nu3vh2PuLSj8xopWZlfQyJntFwe5EEg9KwqHT7UcNEltxOwwLzkAINxiCL8RH4wwol+EARYMMABN/ka/84IBELd/AFeEYC5hZvOpjeexrjxy3aIZPT2Z0SPsKLTL6dLFAfbU5r3jAixEQRCECko/ABea38SzZEclAL1h8Uuhyyi/jmvJvpSVsgCTJpgTl5slS4I9VRsXIVNPph9Ffn4T5FLAjwrti/Dx+g3bmQG5BixKuDxRCgCKMwy6hhkBS4HNpnZvyJoWANKl+UcvocfdVoBKz+CX2YIfUh7k11AtBbnQvNfXf9POtCBOL52QKXHEg+vSXLvCv7rwT4veODJh/o6w7OhxDXBy2ZlfzHJPQ+6b/i+01WkqKQyuy6/78lEzgnoMWX4mmhzHmLe7x+sB6AlhSYutx0+2ovfYV+zk7h0F0IF/Q3A34kvu2KViwSnAAk1EMWagWP81XRd7CjvUGQOa2X7neuLhoeSa/ujzhukMjJIJYfqv5SRJ7wLogzo76jztPus+7jggXuG069B0fqyAucROmuHhNPmNzgb9rczSNblgFwlBpfEHL2KZ0lrIwgvAFHSVHNPXmGTa4jaovIzgpvWlh8elldxECbwLFbvsUHXyEcrjcTeMkmd/dCP4DrW6eTUO7+OTra35XL3qKwfm0yPcwJmYndrS3oMvHwLHOl1e4yNdWdm+ObsprISyzHr9+O3Wt1tNEEiaYJCsgkLy8dtnz57OW+IWNyJmJEn8AYnTPuZ6GrpqeDCxdmTTLAXboM9CYbXDYzVRB5fHqEARl1/WjjqHhUN/dndDf0uDh2C+8DP+32yhKsJIOP2aDMLw0iPyvpwQpPVYKZZ3+Oz+vT/Aw3alGgxkjKd2MPyjF3Uez/9/NrLyhd59AQA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.324Z", + "time": 13, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 13 + } + }, + { + "_id": "b184093074ffea48d93b8e1ac0d9ef4a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 425, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/access" + }, + "response": { + "bodySize": 1551, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1551, + "text": "[\"H4sIAAAAAAAA/w==\",\"xVhLb9s4EP4rhg+VNytH9wI5GGkD5NA2m3pPQVDQ4siemiJVkrLrFv3vOxTl1JIl2bKd7sUPipzvm+E89XP4Bfnw7ZDFMRgzDIexkgnOzfDt009atKgk/R7SgxTsQnH3RwPjtJAxa0FLWlgAE3ZBS1oJcDuuhr/C3eNX3edRJiq66jgv1BxlSJ8qt3uiQr+vIpHldgHSYszKR22SV0wgZxYqUhsE5hZFtN38Tw56c4eCnp2utDd0lGNEVFPwfy8mbtxlTvcszo1V6YTs9MOdXkC8vE8mcnMHzOYa3ks2E8BHT4GGORqrC0MG4SDImDFrpfkjGLDB819H0TIgEgN6hTFEyxm7vZiynJnFTDHNd4ShdNuYiNxCpDKQyNOxcwml8QfwTqxv7m73vTPxZjFdTkpmetC4QgHzYmOnQ2Xbnadb4UVEZ+yYfJaifYRvOWpyDGnNURG0e2O0lJqJ5HRtHL3cV8UjD/k3K6OyDWbPhdF82DxolZBFRvtOGe7fa+Y3dxqvR6QExDo4EA01JS/ls/s4xDJlFc3OAvDrDTakQDR0xX1xmk2aofMaMLbh/iqoR+jFU5QNKsH3WOQcHrwoLzxTofuIqipfXQCxIjAmNSyEhTPmhXeHHATQF8HEiwbjmo2xkB5ziy3a/gY3scbMXk66pVsK3YfP5KFXzqfl3NeKUOAKPm9kHO4U44N19mydq67F0TAh1PpWpSmTfFJsrblX9aadK/yv4CfqHnuQPRLah9Q14z51M/HANCMCoM11eeieD25ubgaB98dxyrIM5XwsUC5NcOjGCs5uaw/azVFRRICPhgoCUWRz4B2GyQSzidLpmHL6Cg1RJP41pJYqUBV0CkRbzO2qVibQfFvVuqvQuchtNTZTAuPNBezYr9j0V+DkenOaAkdW5bOFF33UWWYi5fkUUrf1YCqF76V0uh0UZ8FeNIP/QX8+t4/6PWecgUFSe5ivdXLtiTpDSX2GdF97NUGt5Ttm2ScpNk2tchl9vhr0bYPa+GzTegeTwZs3A0W/3lOlcj31B5/3P82+QkyTFUFoi2BGQU4BRaPo03NxxNv3PqEd1IJY4BNrNc5yC7cLJuf1aaDsvXzT1XABr+dNFLuZIpHRHCz5vnvhAoYiwanzeuPrLqplZmlWCOvT4ahlyEq/2J+/piS/Zu4GC6+VXibUF0WODkpjmYy7CuBRJqiNFEz6CbKB0U4H/qdpoZm4hhD4VH22TDundl5QI+gbh2Zupd9s6Z2VlXhHJ1oH5JCgLBrI/hapN6SGwpMC2gXgVN0hCG5GTy/vleqvlNr7QRc3R7CJKW0cvBlKRI8gipxrFpiV2WYzCr4QE0bJJmHCwIG59AXfMXPnLus97RylspiUJcMQWavzBq5NGf2F1K6IV6V9q4QAPwo9Bcgz4rs1cl2RhpeLDT1hT3doZe6t83GXwZ3SU6YpcfYbq2xxppipRtRCWOrErg3EuUa7ud7iFwhuAsuUpII/+HsQRAF9HjiA/GB+3TViL3M8//oPgcmj2Q8YAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.371Z", + "time": 64, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 64 + } + }, + { + "_id": "81d93bfd62ed9b30d11aef04d6706d33", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 429, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/apiVersion" + }, + "response": { + "bodySize": 659, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 659, + "text": "{\"_id\":\"apiVersion\",\"warning\":{\"enabled\":{\"$bool\":\"&{openidm.apiVersion.warning.enabled|false}\"},\"includeScripts\":{\"$bool\":\"&{openidm.apiVersion.warning.includeScripts|false}\"},\"logFilterResourcePaths\":[\"audit\",\"authentication\",\"cluster\",\"config\",\"consent\",\"csv\",\"external/rest\",\"identityProviders\",\"info\",\"internal\",\"internal/role\",\"internal/user\",\"internal/usermeta\",\"managed\",\"managed/assignment\",\"managed/organization\",\"managed/role\",\"managed/user\",\"notification\",\"policy\",\"privilege\",\"profile\",\"recon\",\"recon/assoc\",\"repo\",\"selfservice/kba\",\"selfservice/terms\",\"scheduler/job\",\"scheduler/trigger\",\"schema\",\"sync\",\"sync/mappings\",\"system\",\"taskscanner\"]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "659" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.373Z", + "time": 63, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 63 + } + }, + { + "_id": "37717db1403fe0fca4c76faa7b01295c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 424, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/audit" + }, + "response": { + "bodySize": 859, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 859, + "text": "[\"H4sIAAAAAAAA/w==\",\"tVVLc9MwEP4rjIbhlLHhmhtT6NCegHBjOowirZMtsmW0spMQ/N/ZlZVH26ElgeZgr7XP79tdZau+oVVTpTuLUU3G9wxCjwYufFPhQk23SvcanZ47eCvq9z008YNurINAavpV+bAoKn5A8OZ7kUIUy6wvDPXFBfUPPDnZo363NRXXNZ3uR74prvlxnidF67uYAsyS+HQY30KDts7hsG5d8RlaTxh92JznznkhnAyANuT8opil10Pvm4kymuCqIWi4OOzhEsHZ1MJSGwNE5TLGtgzwowOK5RK0lRZP7qup9Rxkr+fAFTqu+KN3aBBIZqaS2CLA2rjOwlXFedgSm6PPYZioXP6lD586CMlbSSsU6+DeqG2VcZrE4vwZMPuxnndVxRmb9FHr9Qx/gpq+eS2/iVoFjEwWw+q144x8/qJG55BSZY3sQwL4cu69GLza3m1lLmesJtv/iqGDQQJwi95hACNDkpzF0eqoC4thKHcL2egadoRMVPQtmtSwsSGysYY7iXHDIm0ak3Y4LhkxGh0xeWXEwvYpBP7VKhzYPIGRHHnHSaUdjaRktKP+OfGevLNn4Qwc8s8oRfsfMN7kNfmS42x3cViyUOnOjVj4QIZvt6uiJhOwjSItnJ9zfSxyfeS7YKTCsiTQvAGUerFp5WwRvO83ajjgyOmGo7qfTi2mfIkIbBNAR+AMXWtHwYKDJLQ6mmUmhGHfHCfdU9Ryg1c+2MNttjuRm2klIeCglBj32HweoiKsY3nLf53Z+Zixu/mH4/F6Zt5yIj7gu+cR7PsZNWOBaQ6fME42ApOvfGglM1/qtY659H+h7jcGIE0gqAgAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.374Z", + "time": 66, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 66 + } + }, + { + "_id": "653fe2843bcc7fd80db785216049a251", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 433, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/authentication" + }, + "response": { + "bodySize": 1661, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1661, + "text": "{\"_id\":\"authentication\",\"serverAuthContext\":{\"authModules\":[{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"augmentSecurityContext\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-reg\"],\"password\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"fzE1J3P9LZOmuCuecCDnaQ==\",\"iv\":\"nhI8UHymNRChGIyOC+5Sag==\",\"keySize\":32,\"mac\":\"XfF7VE/o5Shv6AqW1Xe3TQ==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"v0NHakffrjBJNL3zjhEOtg==\",\"stableId\":\"openidm-sym-default\"}}},\"queryOnResource\":\"internal/user\",\"username\":\"anonymous\"}},{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"defaultUserRoles\":[\"internal/role/openidm-authorized\",\"internal/role/openidm-admin\"],\"password\":\"&{openidm.admin.password}\",\"queryOnResource\":\"internal/user\",\"username\":\"openidm-admin\"}},{\"enabled\":true,\"name\":\"MANAGED_USER\",\"properties\":{\"augmentSecurityContext\":{\"source\":\"var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield);\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-authorized\"],\"propertyMapping\":{\"additionalUserFields\":[\"adminOfOrg\",\"ownerOfOrg\"],\"authenticationId\":\"username\",\"userCredential\":\"password\",\"userRoles\":\"authzRoles\"},\"queryId\":\"credential-query\",\"queryOnResource\":\"managed/user\"}}],\"sessionModule\":{\"name\":\"JWT_SESSION\",\"properties\":{\"enableDynamicRoles\":false,\"isHttpOnly\":true,\"maxTokenLifeMinutes\":120,\"sessionOnly\":true,\"tokenIdleTimeMinutes\":30}}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1661" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.375Z", + "time": 61, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 61 + } + }, + { + "_id": "aec85c9f6664d9880169fcf8d9d733db", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/cluster" + }, + "response": { + "bodySize": 179, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 179, + "text": "{\"_id\":\"cluster\",\"enabled\":true,\"instanceCheckInInterval\":5000,\"instanceCheckInOffset\":0,\"instanceId\":\"&{openidm.node.id}\",\"instanceRecoveryTimeout\":30000,\"instanceTimeout\":30000}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "179" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.376Z", + "time": 61, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 61 + } + }, + { + "_id": "8b83418cf28acd1b939879c72c951589", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 450, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/forgottenUsername" + }, + "response": { + "bodySize": 743, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 743, + "text": "{\"_id\":\"emailTemplate/forgottenUsername\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

\",\"fr\":\"{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Account Information - username\",\"fr\":\"Informations sur le compte - nom d'utilisateur\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "743" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.378Z", + "time": 59, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 59 + } + }, + { + "_id": "ba8f08c2397259b7af7094fa4d11c519", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/registration" + }, + "response": { + "bodySize": 431, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 431, + "text": "{\"_id\":\"emailTemplate/registration\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

This is your registration email.

Email verification link

\",\"fr\":\"

Ceci est votre mail d'inscription.

Lien de vérification email

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Register new account\",\"fr\":\"Créer un nouveau compte\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "431" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.378Z", + "time": 60, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 60 + } + }, + { + "_id": "71086d44381b7d81178ecc45f4989855", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/resetPassword" + }, + "response": { + "bodySize": 455, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 455, + "text": "{\"_id\":\"emailTemplate/resetPassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Click to reset your password

Password reset link

\",\"fr\":\"

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Reset your password\",\"fr\":\"Réinitialisez votre mot de passe\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "455" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.379Z", + "time": 63, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 63 + } + }, + { + "_id": "82e1f6e62e8145e19f78445f80160a4f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/updatePassword" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 273, + "text": "{\"_id\":\"emailTemplate/updatePassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Verify email to update password

Update password link

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Update your password\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "273" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.380Z", + "time": 58, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 58 + } + }, + { + "_id": "76be78f43255ef6c7f0ec368787fd6fa", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 440, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/welcome" + }, + "response": { + "bodySize": 420, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 420, + "text": "{\"_id\":\"emailTemplate/welcome\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Welcome to OpenIDM. Your username is '{{object.userName}}'.

\",\"fr\":\"

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Your account has been created\",\"fr\":\"Votre compte vient d’être créé !\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "420" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.381Z", + "time": 61, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 61 + } + }, + { + "_id": "8996c88e14b7ecbba49105dae49641fe", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getavailableuserstoassign" + }, + "response": { + "bodySize": 116, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 116, + "text": "{\"_id\":\"endpoint/getavailableuserstoassign\",\"file\":\"workflow/getavailableuserstoassign.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "116" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.382Z", + "time": 64, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 64 + } + }, + { + "_id": "e504a45bf842a314f67c6419cf0b82f3", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getprocessesforuser" + }, + "response": { + "bodySize": 104, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 104, + "text": "{\"_id\":\"endpoint/getprocessesforuser\",\"file\":\"workflow/getprocessesforuser.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "104" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.383Z", + "time": 56, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 56 + } + }, + { + "_id": "340e7202bcebc2ae1e41e59ead8e6dbc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 440, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/gettasksview" + }, + "response": { + "bodySize": 90, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 90, + "text": "{\"_id\":\"endpoint/gettasksview\",\"file\":\"workflow/gettasksview.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "90" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.384Z", + "time": 61, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 61 + } + }, + { + "_id": "050b4885370dd0fec91299f44157fa98", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/mappingDetails" + }, + "response": { + "bodySize": 121, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 121, + "text": "{\"_id\":\"endpoint/mappingDetails\",\"context\":\"endpoint/mappingDetails\",\"file\":\"mappingDetails.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "121" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.385Z", + "time": 62, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 62 + } + }, + { + "_id": "20416931a8bfbbe57c7d8022c7cdc8d8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 438, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/oauthproxy" + }, + "response": { + "bodySize": 109, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 109, + "text": "{\"_id\":\"endpoint/oauthproxy\",\"context\":\"endpoint/oauthproxy\",\"file\":\"oauthProxy.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "109" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.385Z", + "time": 74, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 74 + } + }, + { + "_id": "950d0219de4cf4b9516ef30be6bb5836", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/removeRepoPathFromRelationships" + }, + "response": { + "bodySize": 126, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 126, + "text": "{\"_id\":\"endpoint/removeRepoPathFromRelationships\",\"file\":\"update/removeRepoPathFromRelationships.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "126" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.386Z", + "time": 59, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 59 + } + }, + { + "_id": "4e2d4c5a497442e856fc60f741d3d798", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/repairMetadata" + }, + "response": { + "bodySize": 91, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 91, + "text": "{\"_id\":\"endpoint/repairMetadata\",\"file\":\"meta/metadataScanner.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "91" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.387Z", + "time": 63, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 63 + } + }, + { + "_id": "acd8e0a1115f4a5814282f28fd6a895e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/updateInternalUserAndInternalRoleEntries" + }, + "response": { + "bodySize": 144, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 144, + "text": "{\"_id\":\"endpoint/updateInternalUserAndInternalRoleEntries\",\"file\":\"update/updateInternalUserAndInternalRoleEntries.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "144" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.388Z", + "time": 59, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 59 + } + }, + { + "_id": "0a16240221eeea51a0aa371b1b13ad9b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/validateQueryFilter" + }, + "response": { + "bodySize": 326, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 326, + "text": "{\"_id\":\"endpoint/validateQueryFilter\",\"context\":\"util/validateQueryFilter\",\"source\":\"try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } };\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "326" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.389Z", + "time": 59, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 59 + } + }, + { + "_id": "663ad29a28f7c57cd35b8178c4fdb1a5", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 432, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/external.rest" + }, + "response": { + "bodySize": 86, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 86, + "text": "{\"_id\":\"external.rest\",\"hostnameVerifier\":\"&{openidm.external.rest.hostnameVerifier}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "86" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.390Z", + "time": 59, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 59 + } + }, + { + "_id": "b90c49fb8e97c6a49c1b99e8b28c3228", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 427, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/internal" + }, + "response": { + "bodySize": 353, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 353, + "text": "{\"_id\":\"internal\",\"objects\":[{\"name\":\"role\",\"properties\":{\"authzMembers\":{\"items\":{\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}]}}}},{\"name\":\"notification\",\"properties\":{\"target\":{\"reversePropertyName\":\"_notifications\"}}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "353" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.391Z", + "time": 53, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 53 + } + }, + { + "_id": "a691ccd864d3d6bd4cec893c7df77b9c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/managed" + }, + "response": { + "bodySize": 5007, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 5007, + "text": "[\"H4sIAAAAAAAA/w==\",\"7R1rc9y28a9wWM/ETu+kpJ3MtNcPHUWyO5rEluO4aWcsxQMdcTrEPJAGQckX9f57Fy8SIEAeeUdZsuMPjXV47i72jQV7G78lSTyLV4iiK5zEkzi7/A3PeRHP3tzGKSr4z2s6j2e3MV4soJ1c46OiIFd0hSkvXrIsx4yvYYFQN6xmVrBGVotuJjFFKwxNZYEZDKYZJwsyR5xktBB75vWst24nzM2zgp/gFHMshhZZyeZiLYbfl4Thx1/V/VOS5NN5ihEt86+eHDC8yq7xcUYpQIyT0yQ/QRw9ztLkTOI+iRhWy70A8MSv9yUu+JN/hJa2wWrf44U1qudmQA++zgVGHH/gh7+ha1TMGcm5wL2YL/EKCbwfmT/jJef57PDwtwIAUY0HGbs6TBha8Ok3fz3UAycxmWcUxi/QVNNdckDJ6EzMVcNmMHW2gP9gls3fzeAYKElWM80mM5ST2b/V5BXiU71ijrM8xYKHWAJ9szeSuSbyeAV28GeOiuIGuuHPK2AWqpsLKlciKfyTYIUnkAp+ofk8Kyn/mSNeCobiQPZ8mVH8olxdSgDEYaD0KEmAkGLEnADDmObjLBHryzWYaIZGjoEbrwmdix6WpVjMQg7bKjzF6qjky99f6UEM5xmTAyp2N11b+B/+fHeJTukiE6AxvMAMAwASXqA5jMbJc5TnhF6JtuyGYna2OGNXAoRkRaj5scIC7cCv0xOJhoQBWEzgRqj182JixIlgKVxS8G8dcs9icajR6YmYXLzEDPgBpfFsgdICC5KmZC5ng27IEUMruRCwySVJEkyPl4iJzvgwvtjo4etTwVxzREFQpoAqRwTkBAYCaLB+vAG4CowYNF0C75itNOsXnAFFJAvBeZw4oGrGepoQ7ky9JvjGatg0eUjivEBlymERRaAG183iit36U4HhK/whh7m/PlaL/s+Q/8mj2KWGGvoccRA1nwKclYIAhIsfNSSjUESsvXG4xOOAI9kXaRaCswUBh+YEfnMihXUrTWpMr1FKkmk1t+2wNa7u1qMiXIsQIEw4Vmcmlff6Z5wuakxcGQFJFf+6sMCCouOlMzQoXKLxhbJxShVqE5K0MPpmU7UoOyxbjIU4ztJUKBmBu7TOlxiOIAasECW/I60xFVKGj3LEl7V9P8zcsWBrQCsKGSY4TaTsSpN8obuekZQLTR6LxYT2BPX3A16LgRcbcZoMXwMvYGPeNa6S3Ephyu5XOFV2e0nyisEVmszumiiGkXypT87iLLkdBzv1/frECLCmYgdT2dQpotPoSMBGCi61uwYCMYbW/ZnJ0vC++Djqf3fLOnMNUkDmKi4eZ5OZWm/iCIXmoaBMuHi/qkxahCL7UKMFy1bQpveONF97nB+SqYZSLnNpfqMV5giYBEU3hC8JjfgSRw0+aoB8xRDlr+WGzVX/Jboi2TepRMpp9AENWU4Xeo2mMqUBGdfMKR2RAhaAjki6EtGpOIaoQYsBWgFsLHAwEawCvJjNiSTLMyHfwhCbXgvZmmVjT18gu2+YtujQD8pt2aYgjFWoeVQRJ+6tPNrURWDpkDLYw97UXqOvIaAvY1ojRcZ/3EeIbRf1rhRFtUelJz59rTCaGAeO9B7k+BSCCAbDJQC1KBPdfMhU82hSLHni+SBRbqPTiCIdlK4RRVuGlx7bHKugs3+4AE7Ij5heiRP61o0OhHuyKlfTVHVvJs409MFM+8t33zUmog/OxIuaKhq8XVxqdYI+Gbyo1aeJGRJZkW1IPxW/EMbLkMaqEgkrtUIdLodjWruzDZ6u0GbHOMbl8sY+PtF7kNfg6yHxvCJEOwD1mB323thBSgfhG9jWp+wruZ389iD37CDHTSRNUsCkhAJsYnJFD1aaKwhHFGiHCE2anDg5uYdGl3ZJcOEekVrBdJ9HtqdmVHS0NZqrlaDastKBBpfgYk3zWYuctOUgRAtypdJT2hPTeednlfH/OpYW3nTb9rsa9CaYJ72YvHF/X4RE3T2RNpL0kmxfiht52I4T6HKQB9A+6LT0oHqQrJqqg8g2yKXxCVZn3T1aPSOs4JHOyNtk0lmAhyniDtQjSriTPPdodap77yVP2tx8zEypuaXwMP7h+6NI31/4vOE7bIgWNzLFNi8Lnq1+EpdaVc5R/gmIe/6bnuXHzGY1LzxsLO9bc9kfva/395awAPKmm4XbIkDLVbIMtKFVu54Y0ZGxL2ld4H+Enkh0RYKrCo5WeZgtq1NrucWqp3sntqch3NPIDbIqGxsRD8TXFokGiOk2lijmmRyQM3KtpLVDsMMH5mLdX9XL+1T/KERzVF+XblP0TeyxmD9Fav5U67070u1NWEdU7+aGNxBgmavfkP7+kvOqg0xJpz0yXCZvpQsJGplnXZsQyFZZ5QSNGoLBKaz6Qr8je9UhsDWzhNNXQyyxk+kKcax18992idl1X/Mp3mEasbuPS8x+lxT3covJs+hmSebL6DT6HqeZnXMZdpXZqB8RbLU1FgLqRyQBA0uA3sxXy34UtADicExtXlNrtwelitPApMA+ArLtIaojHx0RVZc0N6tphtHU2F2reOdLscHdy6kk94MU09Po7IbuKppVpZxnrl/WNXQgDmxd5ezykuVZIbYiyerALHBgDdq05D+ApFwWKvYP9v82INin5eoY5YWXIUAcxoPPO/3vdI5yoEha+DNflKvOmbRUetqdmJACpWl2g5NnfRyHznK1DNwqU6o2xJ23DmoMz9XoF7fg0Y+VVUf07cPL4lSXdBaII/r0VsmnLzSyL9L1oA8tg11xjAPlmKSxSk592jj1qF35gTIX+lJVyLJ3EAUDXF5KoO7yAxdMEwhaoiLHcwKIZhC3M4iToBWwuCZzO4K4zDJRTy2Ultm3dUGKb9QyNYTNVfzQvENyHYr0C8B7nYMJOPwbFoALgq5XVUByR4UcGoAvVRx+ROsewd4FHA8gvK3L2HsUZ4TQbw1sB9dlePw9YkkGC9/9+MV18V51VuxuS6yYU131pQrzD1aF6RZtGTUxds3WoMrLNroM0Qp1vzzN13gF3COcNAoHAc41L55SEI55HXps0yRBsR5RmxSBWySZmP/UbkZtoEd0Jd0XVL5+EN2H1gurh+pre4COSKPmKzX/tskMiKp3bAG+EmkzJob/en7+538+fvPN9O/n59Po/Pzx+fmTiydfP/Luqu6JlgF0RqRm5RF5ZBSGk/YTy+Y9VmmmugTY7zHb5CHJv0Wc0Q6jUR3Y7qvq68cLF5xAMOVtcGteBWvbl9FjhnURxlWaXYok0exWKCLz5PfwEBXJQv4vKeS/9T7DHs9Wbpp8Oms9pf1TbL+bhab5u2nxvkQM7+xTaoNvvZ+ta6neEirfYrvvaPVhug9ka4vuvhiyfQzuW92e70EFkMp96oiWW2xM4CFmV43Ac+2atlQI7E7kP8wrp5HvdhO/BmOEcPjjvzYycVsPj7cV8f4ur2IsexPrdkpfZHU7uGFBaHi4oYJ8Le9+RjiywpFoIekWgdwAS5Ei0mqWFMf1oB6XZce2ftkq+Z3Vxa8FZwtFYzVPIrAtiYQyIUWeonWkrzeKg3j3kt+WG9CAHErNV79uGUMP6b0+o9zbQ43o7cO7o1je8F0jzdd5Ifpxalr6qzufTPcb2jdkbpvKo8GYoNImVH5QpVONtIUIJSXvy23vfLa6PVUw6HtfgQrXSOIZZYvITBBq28yQKKBaWfvUbq/FTUqmWNbz+aoe/z7C9GwpcXQWr8NBjYCFcnsR5w4W0z2I0HZd7KOMUgMP41vYvBjSErcxROWMXJYcP7Vv3yt+jB0vZtdgo2nBJUc7K9fhyDu83jkKcdwxKxa5zulbtW6vIKR6+lURR379htB3P5WgOUylkNFNddBihyk3mFwtec/IRIh5TY8RY5QagfCeVX8kYETihVpGo8u18qZqkA7iYF181X8mZyvMSxpu18QG5VsGXjuG5viKpaZRZq3sGd+wMg2SbdMGsJ+fsYZ1b69Q9Bb4RTb3r7y3sD2qD2qo6mmy6bYN7tI9d2X+fp106zDvwVVvaBP/qYdFRTE2el8NFhWT4N3B0uA7NsgKfY6oVulzsUS9X5OJatZtmdCDKVpf+QpiC4GU3gD8rQd6oENzKrxinnU4M3ryFH8gBd/2van2t8P9QydLRkYLoOo1v4RRHy2M8g/yjxZMuTnVQV+r2T2w6vvRmlFCJUub9AiY9o+GWoo1TNKrqtMYTV24dRWfvrIYPcs7TsVDo46hU3RH/xLNUCkNoD6egDZZeafybx0LBUVW9RnfwI04+nu0HW7jf9TmBvQ3MTW3urRM5aVe97VgZ4wYdKbDkbYOqBvvCPpcCAJyFBxza93ARWBGX2GUDFvmimXZ9Xqfa0Qv72OjFwm3H1PYdRLdLEHrVp8HBl3EcKV5INy0p4HHq765eOAkBi5LkiZKD1uhfZKtEKF2ZB88r+pdRfU1xzpqVw9zRPi+hB3gbzNMvZuRU9WfauRR3acazpoj9COfRoBrpvV6mCRHRyS5wydJF9ufIWlq7fYCSdJJWGDm4jHwBZKGoe310Sf7SrDhFoZfB47nFw773qn5JvP+z5BadHglax13iNt4i4j8KM9CPmPPz58ZIPzwW/REzgso24/7LBjwDl6/uWp3T0as9PIDeAsX5ofdFFojM7X7B5/6fBmgTmt8Zm83P25UPfCh9XjqcwdebQ2k+ylFE10Pjo57MWTlTfXyguToe/eCtPO4mxckncP9vSANwxcv6CPJsfN/WvFQvSDJW7vKuTav/ksj2R4FvYN2BJxo/LPgzLv4isfO/lGYNcKsa53Jbh+CCXNA20dhdvn8SyOQ7mULjAoVqSI1P6qC+TuwDagZ5VfQ9rAYWrZ2sxg9EB1oPOqsRC9K603Vt1EezjdR9iJqG047UfJskBMTOM8qHXUHlPXyVRW098C4TUQHkXtLUVNYPwVSribxqZV1ddFRJz0dCyjSwnbiUdxoXKLCfd+gBmlQxA9Q1Jv/A+C8+9WBbgAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.391Z", + "time": 62, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 62 + } + }, + { + "_id": "74a7cfaea67f19b6a547ebb768e76ebe", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 438, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/mapping/mappingtest" + }, + "response": { + "bodySize": 886, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 886, + "text": "{\"_id\":\"mapping/mappingtest\",\"consentRequired\":false,\"displayName\":\"mappingtest\",\"icon\":null,\"name\":\"mappingtest\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"target\":\"managed/organization\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "886" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.392Z", + "time": 60, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 60 + } + }, + { + "_id": "b1499bec9ed3b8c0b1488ce7644d09ac", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/mapping/seantestmapping" + }, + "response": { + "bodySize": 795, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 795, + "text": "{\"_id\":\"mapping/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"target\":\"managed/organization\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "795" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.393Z", + "time": 64, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 64 + } + }, + { + "_id": "06e43b06c5889436306de832c9ef5b8e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/metrics" + }, + "response": { + "bodySize": 33, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 33, + "text": "{\"_id\":\"metrics\",\"enabled\":false}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "33" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.394Z", + "time": 46, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 46 + } + }, + { + "_id": "b383c6f86886873c85a44fc34ee9c862", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/passwordUpdate" + }, + "response": { + "bodySize": 415, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 415, + "text": "{\"_id\":\"notification/passwordUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"password\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.passwordUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your password has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "415" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.395Z", + "time": 63, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 63 + } + }, + { + "_id": "01b649998d9398654a57902d252545ba", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/profileUpdate" + }, + "response": { + "bodySize": 560, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 560, + "text": "{\"_id\":\"notification/profileUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"userName\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"preferences\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.profileUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your profile has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "560" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.396Z", + "time": 60, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 60 + } + }, + { + "_id": "fe870654434ff77b9195e8510c2343c5", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 438, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notificationFactory" + }, + "response": { + "bodySize": 180, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 180, + "text": "{\"_id\":\"notificationFactory\",\"enabled\":{\"$bool\":\"&{openidm.notifications|false}\"},\"threadPool\":{\"maxPoolThreads\":2,\"maxQueueSize\":20000,\"steadyPoolThreads\":1,\"threadKeepAlive\":60}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "180" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.397Z", + "time": 59, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 59 + } + }, + { + "_id": "00725d753c390a655105f030d582ccaa", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 425, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/policy" + }, + "response": { + "bodySize": 735, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 735, + "text": "[\"H4sIAAAAAAAA/w==\",\"zZVNb9swDIb/iy79gF1fh1wLFBiwQ7Edh2BgZcZlIEsuJbszgvz3UbabxF7mtOk29GTDpF4+/BC9UT8oVwtVOUO6VYmCPKdAzoK5I4NeLb4vE7WS153TzdqLH6N3NevOY6M0GF0bCJjfs6uQA0XDRvU+cpTxqSbGywuPZvUNuSGN91FOHC+ubgoMX7EgHxhi8L3I5ZXECm0VNQL+DNkaGvCaqQpqu6cQaxT2vXDGB1ri9pf4PIb3g4lIR1QdcEgBLZTRNzYj6ev8YqmAoexgV44fKM/R3j4CR6PK1HI7uLefYxs1WOtCqp0NQDbV4gg6oHhvlzHqEKYC758dz8QqyX5BW4RHtfg0DiEWKusyNb1ZdJejdMlKPBmfrJaks+uZZLvHlGAfaGhJ3ivsv8cEsaxC2xvmynN9Zn2C6DsGc+tsHCNJyc+ANmAoT1/ORPHdoZGqGPq7dVLrqUZuU7l1gjbpHFMjl7HA34F2hYhT2eUPzNBOSzDQxskd1++/NGnHJiUiW8zBjQdWRu3DjEpypGW7xqQd64getOxJf2egmBujs0v5qjZPLQdMqXtYow5T5jipr+c9A2vUYOSSvH9TyH9dokOmEexwMU9fwGHIE2VrY94afroEjh7vEktJlo+fWcXsDM6u4o+28MZ5lGChwPx0Gv0gn0bHBm1I+7/1kboJ94qKbAirovVPf/pfNQjUdkAJAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.398Z", + "time": 59, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 59 + } + }, + { + "_id": "3b7ebd7cf01869d6ce8cf4a5c9da9642", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 439, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privilegeAssignments" + }, + "response": { + "bodySize": 493, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 493, + "text": "{\"_id\":\"privilegeAssignments\",\"privilegeAssignments\":[{\"name\":\"ownerPrivileges\",\"privileges\":[\"owner-view-update-delete-orgs\",\"owner-create-orgs\",\"owner-view-update-delete-admins-and-members\",\"owner-create-admins\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"ownerOfOrg\"},{\"name\":\"adminPrivileges\",\"privileges\":[\"admin-view-update-delete-orgs\",\"admin-create-orgs\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"adminOfOrg\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "493" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.399Z", + "time": 44, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 44 + } + }, + { + "_id": "47768b99c96433fcc0faa9554a4e372e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 429, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privileges" + }, + "response": { + "bodySize": 919, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 919, + "text": "[\"H4sIAAAAAAAA/w==\",\"7VhNj9owEP0raU6tBErP3KKFSkjtstrtx6G7ikw8CVYdO7UdEIv4750EliwsaWarVkKVTxDr+WViP7+Z8SZMBA9HYWnEUkjIwYaD5w+j75uQpSlY+0GyfP/snBHzygHOU6wAnGGA8ZmS63CUMWlhOzhGcbCpEaUTWvWD9UqBsUc4Z6oXMMYLoWw/XQHF/JTvLLBkBpTrx6ULITlCqYzTMfFjKMAdZUyFN2tJ5511wh8GKIN6/2oJ4EMmpAODE6OnVwTwM7gPNxvU03Z7HwbaBNEx6wkCX9KoZx/lcClgNaxKzhwMOUjAH23yRo/MLeqdZIrlwCMcZUo8sr2cSjCFsHYfW/h1OvmGo19uxvHnCf4ZTz5O8M9D88VeyV7JnUrezQxKc6rMFCn+UI1Xt5OYor7KgrkmKbBk1q604f3IXCxB0UgtQQMFE/IvHxBcEV0pd+eYqwi6dugK5UIruK7qk0BYK20dkzFHkVsCfyrcmkp6pTlhXZvPMwRSpHRwY/RSqJTAa7QEimM0GiUsFKvc4vGWRmqg1MYRgJBlgCdtCUTiAz7G85OrAg8jYZZk1t2tVdqP/DFnU5Vpwg4byAC9IKVEneJJx0iBf2JlKVRONvJZNjM5YWtqhyRiG7t6iT1nk89ieKVNHs/cJfUkQRvEvJ6UkqWw0JKDSRJSjt9lvyFTfNgmuBOPrd2xM9PvE/wh5Xuv9V7rvdZ77X/mtdF7rEwDtMkgasNsB9+8jdqIcPBdRxF7aDZIFkstXy+qeereAt87/ave6Sn07luA+DyilWlD4W8BvJAv7RJgJ0x/CeALU1+Y+sL0kgrTTo+8zDuAzgzvG3/vr95fvb96f/1d348tfhtn3eL3Nf5HhesrPfZQsz5sfwGv8MZVJCAAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.399Z", + "time": 49, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 49 + } + }, + { + "_id": "f72fc2cc21d104762b3c16db0f0db1bc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 433, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/process/access" + }, + "response": { + "bodySize": 246, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 246, + "text": "{\"_id\":\"process/access\",\"workflowAccess\":[{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-authorized\"}},{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-admin\"}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "246" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.400Z", + "time": 46, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 46 + } + }, + { + "_id": "bc1b98e58c7b710a4bc8518787bef019", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.ds" + }, + "response": { + "bodySize": 4251, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 4251, + "text": "[\"H4sIAAAAAAAA/w==\",\"7Vxtc9s2Ev4rGU7nPtyJcS5tOklm/CGWnCZNnLiW3bu5NJOBSEhCTIEMCNpWPP7v3cULCUkgRUqyfHPXfIlMLJ5d7BsWL+Rt8IXFwctA0Cx9HOdBL4jS2Yxw+PnyNohpQiUNZyTLGJ+ECeOX6vmXbwUV89cskVRA5wNsOJ9n9BH99uiP4Idb0+HujwAA04wKIlnKgXJw/P74/Di461loScSEypDFeThORShohHSrHFTD29gyMH/WMwAOdDaicUxhdGOS5LQXJDHJ+innNELi1ySSqWBUDWjEeIz/R2XzaZomQ/adBi+fPek5z4c0KgSTc+CVg/Dy/P0QRJhS+HlEiXzLQeArkgxRQFTiz0+c1nM2o2khT1iSsJLin0/gXy/IBJsRMX8PQg4Bggpo+nQbTNNccjIDOXCcPP4ajkUap2FMrx5HCclzFj0Gk4EMWSpk8PLpj89f3H3uBbmCXwH8DIoRaSpxsKSQU8oli4zyboOczbKEWoUMUKEFiw9JPGMcOODDU2B5nQqlrR8iMc9kij8lWB+ob0INEVKu2hC3F4A+CoUasWyq7PnqeHjQP+ofnL7rD5+dkjgGbwHCmEgCrcmvB0c/n7+gL/qDd2/6H56f31wOfpocHgIFu4L241hQ8f36+OLi8s0vz54/jd4Prp9dq/ZLOtdW+/FpL5iRCHnJ+Yvxvy9k8lNGb35J3nyM/tE/0mhZIbI0R8FZPAM18jGbPF4QPScJ6Co4ens+fJfwU3r+7DKJiuP/jPjku+YIXjBK6NvYGAiAwnw+A/uMSQF97/AfyM1h4Ey+FmCql9rd8PGM3FQe+UpKOsskmOkZGInmaSEieqJDSUejgnSf8HPokRCp3KM4nFAOXKJeHB0aWexP12/wmXEd9RNEwnC5yRIWMRc+Sooc3JnGKtx0qDKTGZY415B2lwTCefQV9NHHxxicn9AFP6pn0DgWIWpYcQlLpueK31sQ7TMGEiYEaSJbpbfbgOVn9FvBBKYDKQqTDUDjgo0KNQjgAvjGj00g9IJrMBoZsURHfCQgiOlHnsxRYyYJIfwy2IKYHmDoLUuZ1/WvKEuYrzl4p3KsONdue0Bs999ttC3YKOKHNnQfAQWDUEtF3oPHur9P8ZCUo/EkzEy/8Mr2w1DVbSXXUAW5j3Zzk0S8o0WiKY0uh8UoBww+8WrWyK0ow7wi9ViIcoxsr30NiqXwdP5KrohSZUN3pAmV//sQZkRGU6cXauwE4p8pA9cqzWCr3pV5vAwYL3X1nvKJnDbICsSVusJEk/vcmubyjOJsQxfmivXWNowQABxfI5T+tMpqwfmjKREwn1MxpHJfrl/yDHOoYB7W8UmSpNcXXOfSMaNx3wqXd1K+wgkLB6gaptdJlxXfxUUXFPjfGICM953hNQFhdCwMxwO44LAxU1M+1Gf7cteK40MnaZLTIeU5k+yKmgGa+rO1nyIGqNmA2HHoks3jo7ucFSo9wuqEdpLaMcGYJd6c/PAu/78yJWh5jsBR4n2FmGYZjogr5sME2UP7EbmxCl7vRuSmUla9F4G3tYcEz1wLueAtlvo0xUUQXV3juC5jibo5TIa95k7pvLD8ts179BGznrTDGoKLkgkdQhKc1Zeb7ZOdRq/Gn2v8MNcMmr3m1YS2dRnA9IHZ9qUKuqX0FXpTBW2p3jAc3LyfFlw2iF2CTjV9GKkOHuAqZ3SsqbzpqcnxBc3QJ5YKxn1kS8vZqTD/3yqTh8/S/ZTnNCpQ1iqrth4sxmFUIbRLtfCQJQT3UPc6OVds/5qgF2bTARuPqaA86pYhF+bYuMJoNn7B2beC7j/ZaL5/pZoH9LcLj+k7eduKDdf5Wk7FgI4Zp/HvTMiCJAu1wLLbGZpHJVE7r0MuWOwgm/BKYyxUDYZutWmf+0O287nq1GVHqNzgVfw8psVsOuBdCxXsFcb+9TqoHGpheUSn5IrpGqguBAxpOLK0za7fetgNwTA2h5Ldxmt6efAmIi0yrcCavoqiRlkLodl6eM3BCgGUNZXfut1fthY7WDpoGG9wMzxf5SQ5EGmyGsVpcYjP8x78sJQ7OYIy5zEWM1Tc9xm/sFb8foIn2jZvevRrhJl/0MfFqs8ZqiOojhNPCZZ4UPlxWDbFKkVWopgtljNq53IdjDGzU1PNMVVF49svo3kkWFYH4TZ7euuj71rOqtm3MBPsiiV0Quu1VYNY9lw+bMN9rFkGS9gEa2YpCDhDZ3QLoapmi+E51SvdXBnI4+b4fPdu7jlpLV1eSbLP49Vyn6/e/KtbgZUK8U6KT3PqEst9aUsx3aeSxkzksvEMGkUKLZknVLD9NyhM8LTHO9W6ON9KwhokW180gdQVEvrKyvrBlHTeGSJJo0vvFQXVcG+GB/C9Gp6nMW1WFUgUIpXv+sGdvb5wAINKI5+6VANmGEW3id4gOTM+GUKak3RizrnqLjkobvqnK2+UMMrlgH9QUDjuuqm5QtnCDC0kcutAzvIpXulad4NDQ2l6yfwzFstfQZad52ztfRCNxnJi6b07O+UlnvVQltgXkqpoODPFQz9NEn1VqR2w7mVLj6jqXXsdZlNOuncbTjioYmT5KGWDh+lj2HUOWzS7pmWvKim8uKNl0/BVv0q45TA8KCVpfQdK9dPddpt9sOhsbwAlQUhqrUtmIzYp0iLXN7X0UFrcfXLBLYS2tdYQi/03d24iWltx1uBXfe49OttOucsiYr/GGXhXYT+jeU78JzA1otke9WADKglLukPGup+vyJ+SvIuMmt4D1PIinwPVMC3kTBako+9VfWpzsA2ZLqiLHR80vUPUyqJLuJsOtTPFBvpY6viwk5AlM4t134ThzFNnaSFVYH+6hSRPx+wG+pQTS1W3uZNJeUneTCt3ePc7n/Po4FtBPTdEodRTDVjzIdl9lcqIrSXYZ72Mt5Lpjfd0dlmu0NKu7ABoyAGRTWnHwVHkMam5frk2WVdIDbma02uj4TZAQJ1aeywNbu2KwkGpWVZYBzijV61wKmofVBJ3GBhQ1w1MdInnCrFdYrNULTVnyWvmDtnWtTSlDwJIXrUfJP6qK9tUeWpeKVh9K+Dg774MYho3yR1oLt/mokYMlTU11W/4btCxqoTk/AQvOoNoZ0WiymuY499OeCror5ZSUfQ1TJmM2mQqyxpog8/mYIJ5X7zQLRu9dzFm/o1sfL4RIJvpN4FWIXXLFqB+m28Da/c5eSqhqq3eRFrm4bZvu+1Z42gui229raWDLYx6ZTbU9QT+WtrZ/+L222J3f2WneUbx/Sv/bjO23ZPm96Nsk8l0NLfXtdLJVirGcZnLbz7lOs0bxZAVxRubpnErYHw+4TPKvUmlau1tw6/WOQxiWPHZk7+sMl51mzanY47gjQdls47HeyXsVud76rx0pzzV2eiakLC0qZgQzr7Xpn23/X7dy+W0ZwdbUMKKi6mXb9tbCKk/jj+KyVaHvlOWxPBXW64ZEVRdZK3huDDCRs4dg0CTbz3eNafMXh+pO3pOr3mHASjqreU3+u84gtJq5tXzd3ReLq07GtIb3E1XNO43mJHDtkF8orHOdDbrEs/+yyFu7ux4a2BhWIs5uL3pnGnMZ7jOoSe2u1niOkrTJYf7dRR1eW83jnKhB9zFUWquVNgqfMkKzlcs1o3I1KzrnWO1+vf7xtKKY0P/VbItr106CLmwXPIL6sx/Gwq5kCLtly92mCF7u8gETk2pw3a3qcC5OraNqRWMyhNLN+eWhFXX4eqMvlxOuhlLMfNdxewSKwakiwKXk9tKFt2dB25g3hYu6JQduxBSwe1aRnu56/gmY/r7PnV3LbLrZaJ1ZwOCkhhPBgYsj4iI/wWN4OsO0/ckl/0p4SBrA1eXYmOW+Okl0ZAKlkve0l/vac3XJmjs5N/e4LVhXN6BgHFOoHNeboKv1I0rVBttawia6MlnyjLvRbEFgh0WHS7utkXHmYPVsupw2avtbHwRMwY23tqrbNxIx2Vv/67UduAF86MWbDO4DE/ovJ5gmjaANUe88il+futjVpZNs6socl0DSi698sPkcKHYneoXgV+qI0sIG11ky0LwD0WSvE7FCQNWfHLqVI06ciE0TwDf+fMUqjqkvqInaczGc6dpWIykoHSgvsNmZkx9CdN83+xWHU2od/TORZFLXecK/dWD4G+3+MksxiEOk+RxzMTdge16IJEctzQx4r0g9hWvFmAKJ9NvKnix9JXT4Nd3+CE26TRg5DF1kPUnYFalveZOAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.401Z", + "time": 47, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 47 + } + }, + { + "_id": "bd5d9cbc1b0e2e075e3f77bb51e59736", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.init" + }, + "response": { + "bodySize": 789, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 789, + "text": "{\"_id\":\"repo.init\",\"insert\":{\"internal/role\":[{\"description\":\"Administrative access\",\"id\":\"openidm-admin\",\"name\":\"openidm-admin\"},{\"description\":\"Basic minimum user\",\"id\":\"openidm-authorized\",\"name\":\"openidm-authorized\"},{\"description\":\"Anonymous access\",\"id\":\"openidm-reg\",\"name\":\"openidm-reg\"},{\"description\":\"Authenticated via certificate\",\"id\":\"openidm-cert\",\"name\":\"openidm-cert\"},{\"description\":\"Allowed to reassign workflow tasks\",\"id\":\"openidm-tasks-manager\",\"name\":\"openidm-tasks-manager\"},{\"description\":\"Platform provisioning access\",\"id\":\"platform-provisioning\",\"name\":\"platform-provisioning\"}],\"internal/user\":[{\"id\":\"openidm-admin\",\"password\":\"&{openidm.admin.password}\"},{\"id\":\"anonymous\",\"password\":\"anonymous\"},{\"id\":\"idm-provisioning\"},{\"id\":\"connector-server-client\"}]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "789" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.402Z", + "time": 51, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 51 + } + }, + { + "_id": "9f231197089ead48083fbb1440010a11", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 425, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/router" + }, + "response": { + "bodySize": 619, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 619, + "text": "{\"_id\":\"router\",\"filters\":[{\"methods\":[\"create\",\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"},{\"methods\":[\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^config/managed$\"},{\"condition\":{\"source\":\"(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0)\",\"type\":\"text/javascript\"},\"onResponse\":{\"source\":\"require('relationshipFilter').filterResponse()\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "619" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.403Z", + "time": 38, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 38 + } + }, + { + "_id": "ccd397735c0fb9e3c00c0ecdebadad2e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 436, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/seantest" + }, + "response": { + "bodySize": 459, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 459, + "text": "{\"_id\":\"schedule/seantest\",\"concurrentExecution\":false,\"enabled\":false,\"endTime\":null,\"invokeContext\":{\"script\":{\"globals\":{},\"source\":\"//sean has changed this script. Let's see if it is still working. qqqqqqqqqqqqqqSchedule1\\n\",\"type\":\"text/javascript\"}},\"invokeLogLevel\":\"info\",\"invokeService\":\"script\",\"misfirePolicy\":\"fireAndProceed\",\"persisted\":true,\"recoverable\":false,\"repeatCount\":0,\"repeatInterval\":0,\"schedule\":null,\"startTime\":null,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "459" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.404Z", + "time": 54, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 54 + } + }, + { + "_id": "ab8521e6a907278952a8693cbcfb761e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_activate" + }, + "response": { + "bodySize": 838, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 838, + "text": "{\"_id\":\"schedule/taskscan_activate\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/activeDate le \\\"${Time.nowWithOffset}\\\") AND (!(/inactiveDate pr) or /inactiveDate ge \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/activateAccount/task-completed\",\"started\":\"/activateAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"active\\\" }];\\n\\nlogger.debug(\\\"Performing Activate Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "838" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.405Z", + "time": 40, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 40 + } + }, + { + "_id": "42626b5d9ae06814ca0230b793cb2d1f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 443, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_expire" + }, + "response": { + "bodySize": 830, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 830, + "text": "{\"_id\":\"schedule/taskscan_expire\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/inactiveDate lt \\\"${Time.nowWithOffset}\\\") AND (!(/activeDate pr) or /activeDate le \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/expireAccount/task-completed\",\"started\":\"/expireAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"inactive\\\" }];\\n\\nlogger.debug(\\\"Performing Expire Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "830" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.406Z", + "time": 35, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 35 + } + }, + { + "_id": "5fb111d428ad18346dc15d5fa8e1e840", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/scheduler" + }, + "response": { + "bodySize": 156, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 156, + "text": "{\"_id\":\"scheduler\",\"scheduler\":{\"executePersistentSchedules\":{\"$bool\":\"&{openidm.scheduler.execute.persistent.schedules}\"}},\"threadPool\":{\"threadCount\":10}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "156" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.407Z", + "time": 44, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 44 + } + }, + { + "_id": "0b8355f1ac5870bd599a7d814921a98f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 425, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/script" + }, + "response": { + "bodySize": 939, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 939, + "text": "{\"_id\":\"script\",\"ECMAScript\":{\"javascript.optimization.level\":9,\"javascript.recompile.minimumInterval\":60000},\"Groovy\":{\"#groovy.disabled.global.ast.transformations\":\"\",\"#groovy.errors.tolerance\":10,\"#groovy.output.debug\":false,\"#groovy.output.verbose\":false,\"#groovy.script.base\":\"#any class extends groovy.lang.Script\",\"#groovy.script.extension\":\".groovy\",\"#groovy.target.bytecode\":\"1.8\",\"#groovy.target.directory\":\"&{idm.data.dir}/classes\",\"#groovy.target.indy\":true,\"#groovy.warnings\":\"likely errors #othere values [none,likely,possible,paranoia]\",\"groovy.classpath\":\"&{idm.install.dir}/lib\",\"groovy.recompile\":true,\"groovy.recompile.minimumInterval\":60000,\"groovy.source.encoding\":\"UTF-8\"},\"properties\":{},\"sources\":{\"default\":{\"directory\":\"&{idm.install.dir}/bin/defaults/script\"},\"install\":{\"directory\":\"&{idm.install.dir}\"},\"project\":{\"directory\":\"&{idm.instance.dir}\"},\"project-script\":{\"directory\":\"&{idm.instance.dir}/script\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "939" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.408Z", + "time": 35, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 35 + } + }, + { + "_id": "372152e7418e4bbb7f1bb2fd5327ca2f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/secrets" + }, + "response": { + "bodySize": 1829, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1829, + "text": "{\"_id\":\"secrets\",\"stores\":[{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}\",\"mappings\":[{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.default\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.config.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.password.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"],\"secretId\":\"idm.jwt.session.module.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}\"],\"secretId\":\"idm.jwt.session.module.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"selfservice\"],\"secretId\":\"idm.selfservice.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}\"],\"secretId\":\"idm.selfservice.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.assignment.attribute.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]}],\"providerName\":\"&{openidm.keystore.provider|SunJCE}\",\"storePassword\":\"&{openidm.keystore.password|changeit}\",\"storetype\":\"&{openidm.keystore.type|JCEKS}\"},\"name\":\"mainKeyStore\"},{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.truststore.location|&{idm.install.dir}/security/truststore}\",\"mappings\":[],\"providerName\":\"&{openidm.truststore.provider|SUN}\",\"storePassword\":\"&{openidm.truststore.password|changeit}\",\"storetype\":\"&{openidm.truststore.type|JKS}\"},\"name\":\"mainTrustStore\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1829" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.408Z", + "time": 51, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 51 + } + }, + { + "_id": "31ff64d3e984c38b0c14569db37889ad", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 434, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.kba" + }, + "response": { + "bodySize": 290, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 290, + "text": "{\"_id\":\"selfservice.kba\",\"kbaPropertyName\":\"kbaInfo\",\"minimumAnswersToDefine\":2,\"minimumAnswersToVerify\":1,\"questions\":{\"1\":{\"en\":\"What's your favorite color?\",\"en_GB\":\"What is your favourite colour?\",\"fr\":\"Quelle est votre couleur préférée?\"},\"2\":{\"en\":\"Who was your first employer?\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "290" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.409Z", + "time": 40, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 40 + } + }, + { + "_id": "b45a1aa28d4bff434764448f028e4059", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.propertymap" + }, + "response": { + "bodySize": 713, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 713, + "text": "{\"_id\":\"selfservice.propertymap\",\"properties\":[{\"source\":\"givenName\",\"target\":\"givenName\"},{\"source\":\"familyName\",\"target\":\"sn\"},{\"source\":\"email\",\"target\":\"mail\"},{\"condition\":\"/object/postalAddress pr\",\"source\":\"postalAddress\",\"target\":\"postalAddress\"},{\"condition\":\"/object/addressLocality pr\",\"source\":\"addressLocality\",\"target\":\"city\"},{\"condition\":\"/object/addressRegion pr\",\"source\":\"addressRegion\",\"target\":\"stateProvince\"},{\"condition\":\"/object/postalCode pr\",\"source\":\"postalCode\",\"target\":\"postalCode\"},{\"condition\":\"/object/country pr\",\"source\":\"country\",\"target\":\"country\"},{\"condition\":\"/object/phone pr\",\"source\":\"phone\",\"target\":\"telephoneNumber\"},{\"source\":\"username\",\"target\":\"userName\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "713" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.410Z", + "time": 33, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 33 + } + }, + { + "_id": "84ee2e3e3f7cef3023dd7241ced2b77a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 436, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.terms" + }, + "response": { + "bodySize": 730, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 730, + "text": "{\"_id\":\"selfservice.terms\",\"active\":\"0.0\",\"uiConfig\":{\"buttonText\":\"Accept\",\"displayName\":\"We've updated our terms\",\"purpose\":\"You must accept the updated terms in order to proceed.\"},\"versions\":[{\"createDate\":\"2019-10-28T04:20:11.320Z\",\"termsTranslations\":{\"en\":\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"},\"version\":\"0.0\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "730" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.411Z", + "time": 41, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 41 + } + }, + { + "_id": "6cbf25336f75bed9003dbd20bd94c130", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 437, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/cors" + }, + "response": { + "bodySize": 402, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 402, + "text": "{\"_id\":\"servletfilter/cors\",\"filterClass\":\"org.eclipse.jetty.ee10.servlets.CrossOriginFilter\",\"initParams\":{\"allowCredentials\":true,\"allowedHeaders\":\"accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with\",\"allowedMethods\":\"GET,POST,PUT,DELETE,PATCH\",\"allowedOrigins\":\"https://localhost:&{openidm.port.https}\",\"chainPreflight\":false},\"urlPatterns\":[\"/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "402" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.412Z", + "time": 34, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 34 + } + }, + { + "_id": "4734d7816408991b39320106367532a9", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 440, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/payload" + }, + "response": { + "bodySize": 191, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 191, + "text": "{\"_id\":\"servletfilter/payload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":5},\"urlPatterns\":[\"&{openidm.servlet.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "191" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.413Z", + "time": 37, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 37 + } + }, + { + "_id": "479d6a831987c6fbbdfccaa366e89114", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 439, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/upload" + }, + "response": { + "bodySize": 198, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 198, + "text": "{\"_id\":\"servletfilter/upload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":50},\"urlPatterns\":[\"&{openidm.servlet.upload.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "198" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.414Z", + "time": 32, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 32 + } + }, + { + "_id": "c6aed7f604cb532801a9b95de9922a3c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/admin" + }, + "response": { + "bodySize": 244, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 244, + "text": "{\"_id\":\"ui.context/admin\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/admin/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/admin/extension\",\"responseHeaders\":{\"X-Frame-Options\":\"SAMEORIGIN\"},\"urlContextRoot\":\"/admin\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "244" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.416Z", + "time": 35, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 35 + } + }, + { + "_id": "05bacc81732e6f86cfe0b782cdde4f67", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 433, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/api" + }, + "response": { + "bodySize": 205, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 205, + "text": "{\"_id\":\"ui.context/api\",\"authEnabled\":true,\"cacheEnabled\":false,\"defaultDir\":\"&{idm.install.dir}/ui/api/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/api/extension\",\"urlContextRoot\":\"/api\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "205" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.417Z", + "time": 30, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 30 + } + }, + { + "_id": "17421c1d759655006a294261cc77fd75", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 437, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/enduser" + }, + "response": { + "bodySize": 174, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 174, + "text": "{\"_id\":\"ui.context/enduser\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/enduser\",\"enabled\":true,\"responseHeaders\":{\"X-Frame-Options\":\"DENY\"},\"urlContextRoot\":\"/\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "174" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.418Z", + "time": 39, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 39 + } + }, + { + "_id": "61e2740b542f064697798e2a02431f03", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/oauth" + }, + "response": { + "bodySize": 199, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 199, + "text": "{\"_id\":\"ui.context/oauth\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/oauth/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/oauth/extension\",\"urlContextRoot\":\"/oauthReturn\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "199" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.419Z", + "time": 23, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 23 + } + }, + { + "_id": "eadbb4ad948866a207831ff04c796efb", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/configuration" + }, + "response": { + "bodySize": 588, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 588, + "text": "{\"_id\":\"ui/configuration\",\"configuration\":{\"defaultNotificationType\":\"info\",\"forgotUsername\":false,\"lang\":\"en\",\"notificationTypes\":{\"error\":{\"iconPath\":\"images/notifications/error.png\",\"name\":\"common.notification.types.error\"},\"info\":{\"iconPath\":\"images/notifications/info.png\",\"name\":\"common.notification.types.info\"},\"warning\":{\"iconPath\":\"images/notifications/warning.png\",\"name\":\"common.notification.types.warning\"}},\"passwordReset\":false,\"passwordResetLink\":\"\",\"roles\":{\"internal/role/openidm-admin\":\"ui-admin\",\"internal/role/openidm-authorized\":\"ui-user\"},\"selfRegistration\":false}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "588" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.420Z", + "time": 38, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 38 + } + }, + { + "_id": "fb55717b678608c3e9704a46f637ba00", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 429, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/profile" + }, + "response": { + "bodySize": 891, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 891, + "text": "{\"_id\":\"ui/profile\",\"tabs\":[{\"name\":\"personalInfoTab\",\"view\":\"org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab\"},{\"name\":\"signInAndSecurity\",\"view\":\"org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab\"},{\"name\":\"preference\",\"view\":\"org/forgerock/openidm/ui/user/profile/PreferencesTab\"},{\"name\":\"trustedDevice\",\"view\":\"org/forgerock/openidm/ui/user/profile/TrustedDevicesTab\"},{\"name\":\"oauthApplication\",\"view\":\"org/forgerock/openidm/ui/user/profile/OauthApplicationsTab\"},{\"name\":\"privacyAndConsent\",\"view\":\"org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab\"},{\"name\":\"sharing\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/SharingTab\"},{\"name\":\"auditHistory\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/ActivityTab\"},{\"name\":\"accountControls\",\"view\":\"org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "891" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.421Z", + "time": 24, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 24 + } + }, + { + "_id": "dccde179c43e59ffe92f719da481c2cf", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 431, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/dashboard" + }, + "response": { + "bodySize": 1031, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1031, + "text": "[\"H4sIAAAAAAAA/w==\",\"rVbbbtpAEP0VtHk1spNQpeWtTVq1UlKlSao+RFE17A72ivWus5eQi/j3ztqAMRBIqyKBzM6eM7czAy/stxRsyIJMBbhiZMAKljAQpdRniwPHhrcvTLozHENQng29DZgwDSUS9EeQfNK79mA9IadS5OgbBF9iC4tjunrAjdbIvbEuBSFSui/piCxj6AvwMAKHbMn8UYje6QLBZknLU0JVSZ1vkpCB3naCtqU5tQgeexcNpsNj0ZlgOaYlaMhRpNYoTJV0vkvLC+STvrsPYLFvWuqLGta7IpRbC7Dh2wiQclTouzme4YPk2ME7VGOHNp6ngR4s5hSUBS+N7hLmCKu5Gj2WebAU0wriVeoKnJsaK6gO6N/GezmHkAPC7K5mjHxLNePxRg1/0qFbC9R7apjbBW7jun5yHsveJYHRouaxIXcJc/I53lNg86gs/1TFr/dRs41kZ3fR54q4x6Bcq+457YXRkkQY9dPVuMIctbgCTfTDF1Ya7QsyvMuy5Ch+0DujMKaIEzo+zJLjLPlAtpMseX8YLU+xztFCr2RQf9bPDZ7As4SV8Dj3wA6OBoOjY05R0IQuD0eZGPA4uNvThSBk06rtdq4CZWmpID64HfdcXYyvCMoXX4JS9dURWF7ESsb2qHp+t6MVOH+FsZF7an411xFJrDIbW4X0SwsB49YC7uUDNspZen3suxIotjY7EzRl1+TVguOou886zqP4e3Tjermd3ux/a2UWg3NOo7KvOJ+Ckxqd216c3EJV3DSsNCyVxH7TnIRV1jxIEUs1vGWxZpEwXYwzu3s9ASdz/U27pasb6VU9G3Tej4YY8JpnUsXS82u8i+1Tb5JN+u6m2epFUSn+Q4Iap6vrcjOU7zjtdW+sNHOFTpb4bHS9CQrqKEXCspNmVoPH+msWlxfmEOXT/JLO2kIbLkGdm1zqdb01pn+WK23kAGo9yb0ku6XoEOia86v/HDqT+iaxU19aAircfoZfqLihCAg8+wMKiFQxwQgAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.421Z", + "time": 30, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 30 + } + }, + { + "_id": "2cf6006aa7d3908fe4bd8d43fcbca10d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 433, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/themeconfig" + }, + "response": { + "bodySize": 421, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 421, + "text": "{\"_id\":\"ui/themeconfig\",\"icon\":\"favicon.ico\",\"path\":\"\",\"settings\":{\"footer\":{\"mailto\":\"info@pingidentity.com\"},\"loginLogo\":{\"alt\":\"Ping Identity\",\"height\":\"120px\",\"src\":\"images/login-logo-dark.png\",\"title\":\"Ping Identity\",\"width\":\"120px\"},\"logo\":{\"alt\":\"Ping Identity\",\"src\":\"images/logo-horizontal-white.png\",\"title\":\"Ping Identity\"}},\"stylesheets\":[\"css/bootstrap-3.4.1-custom.css\",\"css/structure.css\",\"css/theme.css\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "421" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.422Z", + "time": 37, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 37 + } + }, + { + "_id": "3467e6eff41c0252746cc812803f797c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver" + }, + "response": { + "bodySize": 169, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 169, + "text": "{\"_id\":\"webserver\",\"gzip\":{\"enabled\":true,\"includedMethods\":[\"GET\"]},\"maxThreads\":{\"$int\":\"&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "169" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.423Z", + "time": 21, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 21 + } + }, + { + "_id": "7415ea0af3a4981f3e3feddab0df5329", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/http" + }, + "response": { + "bodySize": 128, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 128, + "text": "{\"_id\":\"webserver.listener/http\",\"enabled\":{\"$bool\":\"&{openidm.http.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.http|8080}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "128" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.424Z", + "time": 26, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 26 + } + }, + { + "_id": "8c44f974db12734398c806d9a1cbcd18", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 443, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/https" + }, + "response": { + "bodySize": 217, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 217, + "text": "{\"_id\":\"webserver.listener/https\",\"enabled\":{\"$bool\":\"&{openidm.https.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.https|8443}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "217" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.425Z", + "time": 27, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 27 + } + }, + { + "_id": "b400d9fa8acbf142278ba15f3b31ee91", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/mutualAuth" + }, + "response": { + "bodySize": 250, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 250, + "text": "{\"_id\":\"webserver.listener/mutualAuth\",\"enabled\":{\"$bool\":\"&{openidm.mutualauth.enabled|true}\"},\"mutualAuth\":true,\"port\":{\"$int\":\"&{openidm.port.mutualauth|8444}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "250" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.426Z", + "time": 22, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 22 + } + }, + { + "_id": "1c44d5ed6a798188a1711859e5a9fceb", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40477036-1fce-4f18-9796-a6283d416278" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 532, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "1000" + }, + { + "name": "_fields", + "value": "condition,description,name,privileges,temporalConstraints" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role?_queryFilter=true&_pageSize=1000&_fields=condition%2Cdescription%2Cname%2Cprivileges%2CtemporalConstraints" + }, + "response": { + "bodySize": 1357, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1357, + "text": "{\"result\":[{\"_id\":\"openidm-admin\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8780\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-admin\",\"description\":\"Administrative access\",\"temporalConstraints\":[]},{\"_id\":\"openidm-authorized\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8781\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-authorized\",\"description\":\"Basic minimum user\",\"temporalConstraints\":[]},{\"_id\":\"openidm-reg\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8783\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-reg\",\"description\":\"Anonymous access\",\"temporalConstraints\":[]},{\"_id\":\"openidm-cert\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8782\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-cert\",\"description\":\"Authenticated via certificate\",\"temporalConstraints\":[]},{\"_id\":\"openidm-tasks-manager\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8784\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-tasks-manager\",\"description\":\"Allowed to reassign workflow tasks\",\"temporalConstraints\":[]},{\"_id\":\"platform-provisioning\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8785\",\"privileges\":[],\"condition\":null,\"name\":\"platform-provisioning\",\"description\":\"Platform provisioning access\",\"temporalConstraints\":[]}],\"resultCount\":6,\"pagedResultsCookie\":null,\"totalPagedResultsPolicy\":\"NONE\",\"totalPagedResults\":-1,\"remainingPagedResults\":-1}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:02:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1357" + } + ], + "headersSize": 2221, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:02:22.468Z", + "time": 13, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 13 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/config_603940551/import_288002260/0_AD_m_4209801721/openidm_3290118515/recording.har b/test/e2e/mocks/config_603940551/import_288002260/0_AD_m_4209801721/openidm_3290118515/recording.har new file mode 100644 index 000000000..1f611d120 --- /dev/null +++ b/test/e2e/mocks/config_603940551/import_288002260/0_AD_m_4209801721/openidm_3290118515/recording.har @@ -0,0 +1,10265 @@ +{ + "log": { + "_recordingName": "config/import/0_AD_m/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "de3566e649dc89e93a6365b0fdaecd4e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 393, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/serverinfo/*" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T18:26:03.139Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "3f3b03432a833cfcbe27438276bb566b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "accept-api-version", + "value": "resource=2.0, protocol=1.0" + }, + { + "name": "x-openam-username", + "value": "openidm-admin" + }, + { + "name": "x-openam-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 507, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/realms/root/authenticate" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T18:26:03.155Z", + "time": 3, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 3 + } + }, + { + "_id": "ea1a070c27903f4e71c8acb5d274be1e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 6159, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "6159" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"access\",\"configs\":[{\"actions\":\"\",\"methods\":\"read\",\"pattern\":\"health\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"info/*\",\"roles\":\"*\"},{\"actions\":\"login,logout\",\"methods\":\"read,action\",\"pattern\":\"authentication\",\"roles\":\"*\"},{\"actions\":\"validate\",\"methods\":\"action\",\"pattern\":\"util/validateQueryFilter\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/themeconfig\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/theme-*\",\"roles\":\"*\"},{\"actions\":\"*\",\"customAuthz\":\"checkIfAnyFeatureEnabled(['registration', 'passwordReset'])\",\"methods\":\"read\",\"pattern\":\"config/selfservice/kbaConfig\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/dashboard\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"query\",\"pattern\":\"info/features\",\"roles\":\"*\"},{\"actions\":\"listPrivileges\",\"methods\":\"action\",\"pattern\":\"privilege\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"privilege/*\",\"roles\":\"*\"},{\"actions\":\"submitRequirements\",\"methods\":\"read,action\",\"pattern\":\"selfservice/termsAndConditions\",\"roles\":\"*\"},{\"actions\":\"submitRequirements\",\"methods\":\"read,action\",\"pattern\":\"selfservice/kbaUpdate\",\"roles\":\"*\"},{\"actions\":\"\",\"customAuthz\":\"isMyProfile()\",\"methods\":\"read,query\",\"pattern\":\"profile/*\",\"roles\":\"*\"},{\"actions\":\"*\",\"customAuthz\":\"checkIfAnyFeatureEnabled('kba')\",\"methods\":\"read\",\"pattern\":\"selfservice/kba\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"schema/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"action,query\",\"pattern\":\"consent\",\"roles\":\"internal/role/openidm-authorized\"},{\"customAuthz\":\"checkIfApiRequest()\",\"methods\":\"read\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"excludePatterns\":\"repo,repo/*\",\"methods\":\"*\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"\",\"methods\":\"create,read,update,delete,patch,query\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"methods\":\"script\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"test,testConfig,createconfiguration,liveSync,authenticate\",\"methods\":\"action\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"customAuthz\":\"disallowCommandAction()\",\"methods\":\"*\",\"pattern\":\"repo\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"customAuthz\":\"disallowCommandAction()\",\"methods\":\"*\",\"pattern\":\"repo/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"command\",\"customAuthz\":\"request.additionalParameters.commandId === 'delete-mapping-links'\",\"methods\":\"action\",\"pattern\":\"repo/link\",\"roles\":\"internal/role/openidm-admin\"},{\"methods\":\"create,read,query,patch\",\"pattern\":\"managed/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read,query\",\"pattern\":\"internal/role/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"create,read,action,update\",\"pattern\":\"profile/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"read,action\",\"pattern\":\"policy/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"schema/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"action,query\",\"pattern\":\"consent\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"selfservice/kba\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"selfservice/terms\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"sendTemplate\",\"methods\":\"action\",\"pattern\":\"external/email\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"authenticate\",\"methods\":\"action\",\"pattern\":\"system/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"read,action\",\"pattern\":\"policy/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"reauthenticate\",\"methods\":\"action\",\"pattern\":\"authentication\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"bind,unbind\",\"customAuthz\":\"ownDataOnly()\",\"methods\":\"read,action,delete\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"patch\",\"customAuthz\":\"ownDataOnly() && onlyEditableManagedObjectProperties('user', []) && reauthIfProtectedAttributeChange()\",\"methods\":\"update,patch,action\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"endpoint/getprocessesforuser\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"query\",\"pattern\":\"endpoint/gettasksview\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"complete\",\"customAuthz\":\"isMyTask()\",\"methods\":\"action\",\"pattern\":\"workflow/taskinstance/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"canUpdateTask()\",\"methods\":\"read,update\",\"pattern\":\"workflow/taskinstance/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"isAllowedToStartProcess()\",\"methods\":\"create\",\"pattern\":\"workflow/processinstance\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"read\",\"methods\":\"*\",\"pattern\":\"workflow/processdefinition/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"customAuthz\":\"restrictPatchToFields(['password'])\",\"methods\":\"patch\",\"pattern\":\"managed/user/*\",\"roles\":\"internal/role/openidm-cert\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipProperty('_meta', false)\",\"methods\":\"read\",\"pattern\":\"internal/usermeta/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipProperty('_notifications', true)\",\"methods\":\"read,delete\",\"pattern\":\"internal/notification/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipCollection(['idps','_meta','_notifications'])\",\"methods\":\"read,query\",\"pattern\":\"managed/user/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"deleteNotificationsForTarget\",\"customAuthz\":\"request.additionalParameters.target === (context.security.authorization.component + '/' + context.security.authorization.id)\",\"methods\":\"action\",\"pattern\":\"notification\",\"roles\":\"internal/role/openidm-authorized\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/access" + }, + "response": { + "bodySize": 6159, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 6159, + "text": "{\"_id\":\"access\",\"configs\":[{\"actions\":\"\",\"methods\":\"read\",\"pattern\":\"health\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"info/*\",\"roles\":\"*\"},{\"actions\":\"login,logout\",\"methods\":\"read,action\",\"pattern\":\"authentication\",\"roles\":\"*\"},{\"actions\":\"validate\",\"methods\":\"action\",\"pattern\":\"util/validateQueryFilter\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/themeconfig\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/theme-*\",\"roles\":\"*\"},{\"actions\":\"*\",\"customAuthz\":\"checkIfAnyFeatureEnabled(['registration', 'passwordReset'])\",\"methods\":\"read\",\"pattern\":\"config/selfservice/kbaConfig\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/dashboard\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"query\",\"pattern\":\"info/features\",\"roles\":\"*\"},{\"actions\":\"listPrivileges\",\"methods\":\"action\",\"pattern\":\"privilege\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"privilege/*\",\"roles\":\"*\"},{\"actions\":\"submitRequirements\",\"methods\":\"read,action\",\"pattern\":\"selfservice/termsAndConditions\",\"roles\":\"*\"},{\"actions\":\"submitRequirements\",\"methods\":\"read,action\",\"pattern\":\"selfservice/kbaUpdate\",\"roles\":\"*\"},{\"actions\":\"\",\"customAuthz\":\"isMyProfile()\",\"methods\":\"read,query\",\"pattern\":\"profile/*\",\"roles\":\"*\"},{\"actions\":\"*\",\"customAuthz\":\"checkIfAnyFeatureEnabled('kba')\",\"methods\":\"read\",\"pattern\":\"selfservice/kba\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"schema/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"action,query\",\"pattern\":\"consent\",\"roles\":\"internal/role/openidm-authorized\"},{\"customAuthz\":\"checkIfApiRequest()\",\"methods\":\"read\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"excludePatterns\":\"repo,repo/*\",\"methods\":\"*\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"\",\"methods\":\"create,read,update,delete,patch,query\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"methods\":\"script\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"test,testConfig,createconfiguration,liveSync,authenticate\",\"methods\":\"action\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"customAuthz\":\"disallowCommandAction()\",\"methods\":\"*\",\"pattern\":\"repo\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"customAuthz\":\"disallowCommandAction()\",\"methods\":\"*\",\"pattern\":\"repo/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"command\",\"customAuthz\":\"request.additionalParameters.commandId === 'delete-mapping-links'\",\"methods\":\"action\",\"pattern\":\"repo/link\",\"roles\":\"internal/role/openidm-admin\"},{\"methods\":\"create,read,query,patch\",\"pattern\":\"managed/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read,query\",\"pattern\":\"internal/role/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"create,read,action,update\",\"pattern\":\"profile/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"read,action\",\"pattern\":\"policy/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"schema/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"action,query\",\"pattern\":\"consent\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"selfservice/kba\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"selfservice/terms\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"sendTemplate\",\"methods\":\"action\",\"pattern\":\"external/email\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"authenticate\",\"methods\":\"action\",\"pattern\":\"system/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"read,action\",\"pattern\":\"policy/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"reauthenticate\",\"methods\":\"action\",\"pattern\":\"authentication\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"bind,unbind\",\"customAuthz\":\"ownDataOnly()\",\"methods\":\"read,action,delete\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"patch\",\"customAuthz\":\"ownDataOnly() && onlyEditableManagedObjectProperties('user', []) && reauthIfProtectedAttributeChange()\",\"methods\":\"update,patch,action\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"endpoint/getprocessesforuser\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"query\",\"pattern\":\"endpoint/gettasksview\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"complete\",\"customAuthz\":\"isMyTask()\",\"methods\":\"action\",\"pattern\":\"workflow/taskinstance/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"canUpdateTask()\",\"methods\":\"read,update\",\"pattern\":\"workflow/taskinstance/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"isAllowedToStartProcess()\",\"methods\":\"create\",\"pattern\":\"workflow/processinstance\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"read\",\"methods\":\"*\",\"pattern\":\"workflow/processdefinition/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"customAuthz\":\"restrictPatchToFields(['password'])\",\"methods\":\"patch\",\"pattern\":\"managed/user/*\",\"roles\":\"internal/role/openidm-cert\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipProperty('_meta', false)\",\"methods\":\"read\",\"pattern\":\"internal/usermeta/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipProperty('_notifications', true)\",\"methods\":\"read,delete\",\"pattern\":\"internal/notification/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipCollection(['idps','_meta','_notifications'])\",\"methods\":\"read,query\",\"pattern\":\"managed/user/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"deleteNotificationsForTarget\",\"customAuthz\":\"request.additionalParameters.target === (context.security.authorization.component + '/' + context.security.authorization.id)\",\"methods\":\"action\",\"pattern\":\"notification\",\"roles\":\"internal/role/openidm-authorized\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.181Z", + "time": 23, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 23 + } + }, + { + "_id": "1a0ce7aa1d685f1d6105fc3fb872f60d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 659, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "659" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 450, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"apiVersion\",\"warning\":{\"enabled\":{\"$bool\":\"&{openidm.apiVersion.warning.enabled|false}\"},\"includeScripts\":{\"$bool\":\"&{openidm.apiVersion.warning.includeScripts|false}\"},\"logFilterResourcePaths\":[\"audit\",\"authentication\",\"cluster\",\"config\",\"consent\",\"csv\",\"external/rest\",\"identityProviders\",\"info\",\"internal\",\"internal/role\",\"internal/user\",\"internal/usermeta\",\"managed\",\"managed/assignment\",\"managed/organization\",\"managed/role\",\"managed/user\",\"notification\",\"policy\",\"privilege\",\"profile\",\"recon\",\"recon/assoc\",\"repo\",\"selfservice/kba\",\"selfservice/terms\",\"scheduler/job\",\"scheduler/trigger\",\"schema\",\"sync\",\"sync/mappings\",\"system\",\"taskscanner\"]}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/apiVersion" + }, + "response": { + "bodySize": 659, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 659, + "text": "{\"_id\":\"apiVersion\",\"warning\":{\"enabled\":{\"$bool\":\"&{openidm.apiVersion.warning.enabled|false}\"},\"includeScripts\":{\"$bool\":\"&{openidm.apiVersion.warning.includeScripts|false}\"},\"logFilterResourcePaths\":[\"audit\",\"authentication\",\"cluster\",\"config\",\"consent\",\"csv\",\"external/rest\",\"identityProviders\",\"info\",\"internal\",\"internal/role\",\"internal/user\",\"internal/usermeta\",\"managed\",\"managed/assignment\",\"managed/organization\",\"managed/role\",\"managed/user\",\"notification\",\"policy\",\"privilege\",\"profile\",\"recon\",\"recon/assoc\",\"repo\",\"selfservice/kba\",\"selfservice/terms\",\"scheduler/job\",\"scheduler/trigger\",\"schema\",\"sync\",\"sync/mappings\",\"system\",\"taskscanner\"]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "659" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.210Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "b6f4684a6808d67f5addd3251973f9ad", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2216, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2216" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"audit\",\"auditServiceConfig\":{\"availableAuditEventHandlers\":[\"org.forgerock.audit.handlers.csv.CsvAuditEventHandler\",\"org.forgerock.audit.handlers.jms.JmsAuditEventHandler\",\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RouterAuditEventHandler\",\"org.forgerock.audit.handlers.syslog.SyslogAuditEventHandler\"],\"caseInsensitiveFields\":[\"/access/http/request/headers\",\"/access/http/response/headers\"],\"filterPolicies\":{\"field\":{\"excludeIf\":[],\"includeIf\":[]}},\"handlerForQueries\":\"json\"},\"eventHandlers\":[{\"class\":\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"config\":{\"buffering\":{\"maxSize\":100000,\"writeInterval\":\"100 millis\"},\"enabled\":{\"$bool\":\"&{openidm.audit.handler.json.enabled|true}\"},\"logDirectory\":\"&{idm.data.dir}/audit\",\"name\":\"json\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.stdout.enabled|false}\"},\"name\":\"stdout\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.repo.enabled|false}\"},\"name\":\"repo\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}}],\"eventTopics\":{\"access\":{\"defaultEvents\":true,\"filter\":{\"script\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"}},\"name\":\"access\"},\"activity\":{\"defaultEvents\":true,\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]},\"name\":\"activity\",\"passwordFields\":[\"password\"],\"watchedFields\":[]},\"authentication\":{\"defaultEvents\":true,\"filter\":{\"script\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"}},\"name\":\"authentication\"},\"config\":{\"defaultEvents\":true,\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]},\"name\":\"config\"},\"recon\":{\"defaultEvents\":true,\"name\":\"recon\"},\"sync\":{\"defaultEvents\":true,\"name\":\"sync\"}},\"exceptionFormatter\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/audit" + }, + "response": { + "bodySize": 2216, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 2216, + "text": "{\"_id\":\"audit\",\"auditServiceConfig\":{\"availableAuditEventHandlers\":[\"org.forgerock.audit.handlers.csv.CsvAuditEventHandler\",\"org.forgerock.audit.handlers.jms.JmsAuditEventHandler\",\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RouterAuditEventHandler\",\"org.forgerock.audit.handlers.syslog.SyslogAuditEventHandler\"],\"caseInsensitiveFields\":[\"/access/http/request/headers\",\"/access/http/response/headers\"],\"filterPolicies\":{\"field\":{\"excludeIf\":[],\"includeIf\":[]}},\"handlerForQueries\":\"json\"},\"eventHandlers\":[{\"class\":\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"config\":{\"buffering\":{\"maxSize\":100000,\"writeInterval\":\"100 millis\"},\"enabled\":{\"$bool\":\"&{openidm.audit.handler.json.enabled|true}\"},\"logDirectory\":\"&{idm.data.dir}/audit\",\"name\":\"json\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.stdout.enabled|false}\"},\"name\":\"stdout\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.repo.enabled|false}\"},\"name\":\"repo\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}}],\"eventTopics\":{\"access\":{\"defaultEvents\":true,\"filter\":{\"script\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"}},\"name\":\"access\"},\"activity\":{\"defaultEvents\":true,\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]},\"name\":\"activity\",\"passwordFields\":[\"password\"],\"watchedFields\":[]},\"authentication\":{\"defaultEvents\":true,\"filter\":{\"script\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"}},\"name\":\"authentication\"},\"config\":{\"defaultEvents\":true,\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]},\"name\":\"config\"},\"recon\":{\"defaultEvents\":true,\"name\":\"recon\"},\"sync\":{\"defaultEvents\":true,\"name\":\"sync\"}},\"exceptionFormatter\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.226Z", + "time": 16, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 16 + } + }, + { + "_id": "3322bf0192ae7a058cb5bce4e4518614", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1661, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "1661" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 455, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"authentication\",\"serverAuthContext\":{\"authModules\":[{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"augmentSecurityContext\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-reg\"],\"password\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"fzE1J3P9LZOmuCuecCDnaQ==\",\"iv\":\"nhI8UHymNRChGIyOC+5Sag==\",\"keySize\":32,\"mac\":\"XfF7VE/o5Shv6AqW1Xe3TQ==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"v0NHakffrjBJNL3zjhEOtg==\",\"stableId\":\"openidm-sym-default\"}}},\"queryOnResource\":\"internal/user\",\"username\":\"anonymous\"}},{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"defaultUserRoles\":[\"internal/role/openidm-authorized\",\"internal/role/openidm-admin\"],\"password\":\"&{openidm.admin.password}\",\"queryOnResource\":\"internal/user\",\"username\":\"openidm-admin\"}},{\"enabled\":true,\"name\":\"MANAGED_USER\",\"properties\":{\"augmentSecurityContext\":{\"source\":\"var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield);\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-authorized\"],\"propertyMapping\":{\"additionalUserFields\":[\"adminOfOrg\",\"ownerOfOrg\"],\"authenticationId\":\"username\",\"userCredential\":\"password\",\"userRoles\":\"authzRoles\"},\"queryId\":\"credential-query\",\"queryOnResource\":\"managed/user\"}}],\"sessionModule\":{\"name\":\"JWT_SESSION\",\"properties\":{\"enableDynamicRoles\":false,\"isHttpOnly\":true,\"maxTokenLifeMinutes\":120,\"sessionOnly\":true,\"tokenIdleTimeMinutes\":30}}}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/authentication" + }, + "response": { + "bodySize": 1661, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1661, + "text": "{\"_id\":\"authentication\",\"serverAuthContext\":{\"authModules\":[{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"augmentSecurityContext\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-reg\"],\"password\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"fzE1J3P9LZOmuCuecCDnaQ==\",\"iv\":\"nhI8UHymNRChGIyOC+5Sag==\",\"keySize\":32,\"mac\":\"XfF7VE/o5Shv6AqW1Xe3TQ==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"v0NHakffrjBJNL3zjhEOtg==\",\"stableId\":\"openidm-sym-default\"}}},\"queryOnResource\":\"internal/user\",\"username\":\"anonymous\"}},{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"defaultUserRoles\":[\"internal/role/openidm-authorized\",\"internal/role/openidm-admin\"],\"password\":\"&{openidm.admin.password}\",\"queryOnResource\":\"internal/user\",\"username\":\"openidm-admin\"}},{\"enabled\":true,\"name\":\"MANAGED_USER\",\"properties\":{\"augmentSecurityContext\":{\"source\":\"var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield);\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-authorized\"],\"propertyMapping\":{\"additionalUserFields\":[\"adminOfOrg\",\"ownerOfOrg\"],\"authenticationId\":\"username\",\"userCredential\":\"password\",\"userRoles\":\"authzRoles\"},\"queryId\":\"credential-query\",\"queryOnResource\":\"managed/user\"}}],\"sessionModule\":{\"name\":\"JWT_SESSION\",\"properties\":{\"enableDynamicRoles\":false,\"isHttpOnly\":true,\"maxTokenLifeMinutes\":120,\"sessionOnly\":true,\"tokenIdleTimeMinutes\":30}}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1661" + } + ], + "headersSize": 2252, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.248Z", + "time": 14, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 14 + } + }, + { + "_id": "cffcfbec868c6d577abdd6dfb2546c66", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 179, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "179" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"cluster\",\"enabled\":true,\"instanceCheckInInterval\":5000,\"instanceCheckInOffset\":0,\"instanceId\":\"&{openidm.node.id}\",\"instanceRecoveryTimeout\":30000,\"instanceTimeout\":30000}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/cluster" + }, + "response": { + "bodySize": 179, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 179, + "text": "{\"_id\":\"cluster\",\"enabled\":true,\"instanceCheckInInterval\":5000,\"instanceCheckInOffset\":0,\"instanceId\":\"&{openidm.node.id}\",\"instanceRecoveryTimeout\":30000,\"instanceTimeout\":30000}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "179" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.269Z", + "time": 44, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 44 + } + }, + { + "_id": "ffb92165ac6b6a54193c1984e5d08a82", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 116, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "116" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 474, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/getavailableuserstoassign\",\"file\":\"workflow/getavailableuserstoassign.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getavailableuserstoassign" + }, + "response": { + "bodySize": 116, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 116, + "text": "{\"_id\":\"endpoint/getavailableuserstoassign\",\"file\":\"workflow/getavailableuserstoassign.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "116" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.319Z", + "time": 13, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 13 + } + }, + { + "_id": "67f7c32d59739e6e62de077c4ac38587", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 104, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "104" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/getprocessesforuser\",\"file\":\"workflow/getprocessesforuser.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getprocessesforuser" + }, + "response": { + "bodySize": 104, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 104, + "text": "{\"_id\":\"endpoint/getprocessesforuser\",\"file\":\"workflow/getprocessesforuser.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "104" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.338Z", + "time": 12, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 12 + } + }, + { + "_id": "a58bd28b08317f836ebe6fc592eea139", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 90, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "90" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 460, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/gettasksview\",\"file\":\"workflow/gettasksview.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/gettasksview" + }, + "response": { + "bodySize": 90, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 90, + "text": "{\"_id\":\"endpoint/gettasksview\",\"file\":\"workflow/gettasksview.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "90" + } + ], + "headersSize": 2250, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.356Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "190fb94af98292c04b2a125fbed0f974", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 121, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "121" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 463, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/mappingDetails\",\"context\":\"endpoint/mappingDetails\",\"file\":\"mappingDetails.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/mappingDetails" + }, + "response": { + "bodySize": 121, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 121, + "text": "{\"_id\":\"endpoint/mappingDetails\",\"context\":\"endpoint/mappingDetails\",\"file\":\"mappingDetails.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "121" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.373Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "7caf7b29cf8511e14fac45895389c849", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 109, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "109" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/oauthproxy\",\"context\":\"endpoint/oauthproxy\",\"file\":\"oauthProxy.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/oauthproxy" + }, + "response": { + "bodySize": 109, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 109, + "text": "{\"_id\":\"endpoint/oauthproxy\",\"context\":\"endpoint/oauthproxy\",\"file\":\"oauthProxy.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "109" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.387Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "765c2ef8259b3e3418e7c3a5a5b10c3e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 126, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "126" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 480, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/removeRepoPathFromRelationships\",\"file\":\"update/removeRepoPathFromRelationships.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/removeRepoPathFromRelationships" + }, + "response": { + "bodySize": 126, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 126, + "text": "{\"_id\":\"endpoint/removeRepoPathFromRelationships\",\"file\":\"update/removeRepoPathFromRelationships.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "126" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.401Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "4bdc8b47251097ee4051909112972e59", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 91, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "91" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 462, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/repairMetadata\",\"file\":\"meta/metadataScanner.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/repairMetadata" + }, + "response": { + "bodySize": 91, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 91, + "text": "{\"_id\":\"endpoint/repairMetadata\",\"file\":\"meta/metadataScanner.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "91" + } + ], + "headersSize": 2250, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.418Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "d2deb2d1663797facc0aec2b49b105d0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 144, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "144" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 489, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/updateInternalUserAndInternalRoleEntries\",\"file\":\"update/updateInternalUserAndInternalRoleEntries.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/updateInternalUserAndInternalRoleEntries" + }, + "response": { + "bodySize": 144, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 144, + "text": "{\"_id\":\"endpoint/updateInternalUserAndInternalRoleEntries\",\"file\":\"update/updateInternalUserAndInternalRoleEntries.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "144" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.433Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "09f96900530f528cc6caad3270bdf518", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 326, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "326" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/validateQueryFilter\",\"context\":\"util/validateQueryFilter\",\"source\":\"try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } };\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/validateQueryFilter" + }, + "response": { + "bodySize": 326, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 326, + "text": "{\"_id\":\"endpoint/validateQueryFilter\",\"context\":\"util/validateQueryFilter\",\"source\":\"try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } };\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "326" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.446Z", + "time": 12, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 12 + } + }, + { + "_id": "1835c2635e9c3818cf24fd460159b6e7", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 86, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "86" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 452, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"external.rest\",\"hostnameVerifier\":\"&{openidm.external.rest.hostnameVerifier}\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/external.rest" + }, + "response": { + "bodySize": 86, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 86, + "text": "{\"_id\":\"external.rest\",\"hostnameVerifier\":\"&{openidm.external.rest.hostnameVerifier}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "86" + } + ], + "headersSize": 2250, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.465Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "c3e432390b418bf9a27e761d92966735", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 353, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "353" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"internal\",\"objects\":[{\"name\":\"role\",\"properties\":{\"authzMembers\":{\"items\":{\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}]}}}},{\"name\":\"notification\",\"properties\":{\"target\":{\"reversePropertyName\":\"_notifications\"}}}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/internal" + }, + "response": { + "bodySize": 353, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 353, + "text": "{\"_id\":\"internal\",\"objects\":[{\"name\":\"role\",\"properties\":{\"authzMembers\":{\"items\":{\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}]}}}},{\"name\":\"notification\",\"properties\":{\"target\":{\"reversePropertyName\":\"_notifications\"}}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "353" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.478Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "c8847f8b05e82ff97b9901f9ef21711f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 33, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "33" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"metrics\",\"enabled\":false}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/metrics" + }, + "response": { + "bodySize": 33, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 33, + "text": "{\"_id\":\"metrics\",\"enabled\":false}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "33" + } + ], + "headersSize": 2250, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.490Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "481b9d20ca5295bab85a70f228c051a0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 415, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "415" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 467, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"notification/passwordUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"password\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.passwordUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your password has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/passwordUpdate" + }, + "response": { + "bodySize": 415, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 415, + "text": "{\"_id\":\"notification/passwordUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"password\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.passwordUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your password has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "415" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.506Z", + "time": 13, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 13 + } + }, + { + "_id": "8761a76489fd8c69e300a2d045819497", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 560, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "560" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 466, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"notification/profileUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"userName\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"preferences\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.profileUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your profile has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/profileUpdate" + }, + "response": { + "bodySize": 560, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 560, + "text": "{\"_id\":\"notification/profileUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"userName\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"preferences\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.profileUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your profile has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "560" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.524Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "409aa8b57ce9b97a4e7b4c72a690bb5b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 180, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "180" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"notificationFactory\",\"enabled\":{\"$bool\":\"&{openidm.notifications|false}\"},\"threadPool\":{\"maxPoolThreads\":2,\"maxQueueSize\":20000,\"steadyPoolThreads\":1,\"threadKeepAlive\":60}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notificationFactory" + }, + "response": { + "bodySize": 180, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 180, + "text": "{\"_id\":\"notificationFactory\",\"enabled\":{\"$bool\":\"&{openidm.notifications|false}\"},\"threadPool\":{\"maxPoolThreads\":2,\"maxQueueSize\":20000,\"steadyPoolThreads\":1,\"threadKeepAlive\":60}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "180" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.538Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "5f5545d40340b0d7eeccc0b7536b62f1", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2368, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2368" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"policy\",\"additionalFiles\":[],\"file\":\"policy.js\",\"resources\":[{\"calculatedProperties\":{\"source\":\"require('selfServicePolicies').getRegistrationProperties()\",\"type\":\"text/javascript\"},\"resource\":\"selfservice/registration\"},{\"calculatedProperties\":{\"source\":\"require('selfServicePolicies').getResetProperties()\",\"type\":\"text/javascript\"},\"resource\":\"selfservice/reset\"},{\"properties\":[{\"name\":\"_id\",\"policies\":[{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"}]},{\"name\":\"password\",\"policies\":[{\"params\":{\"minLength\":8},\"policyId\":\"minimum-length\"}]}],\"resource\":\"internal/user/*\"},{\"properties\":[{\"name\":\"name\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"forbiddenChars\":[\"/*\"]},\"policyId\":\"cannot-contain-characters\"}]},{\"name\":\"temporalConstraints\",\"policies\":[{\"policyId\":\"valid-temporal-constraints\"}]},{\"name\":\"condition\",\"policies\":[{\"policyId\":\"valid-query-filter\"}]},{\"name\":\"privileges\",\"policies\":[{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"params\":{\"properties\":[{\"name\":\"name\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"string\"]},\"policyId\":\"valid-type\"}]},{\"name\":\"path\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"forbiddenChars\":[\"/*\"]},\"policyId\":\"cannot-contain-characters\"},{\"policyId\":\"valid-privilege-path\"}]},{\"name\":\"accessFlags\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-accessFlags-object\"}]},{\"name\":\"actions\",\"policies\":[{\"policyId\":\"required\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"}]},{\"name\":\"permissions\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-permissions\"}]},{\"name\":\"filter\",\"policies\":[{\"params\":{\"types\":[\"string\",\"null\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-query-filter\"}]}]},\"policyId\":\"valid-array-items\"}]}],\"resource\":\"internal/role/*\"},{\"properties\":[{\"name\":\"temporalConstraints\",\"policies\":[{\"policyId\":\"valid-temporal-constraints\"}]},{\"name\":\"condition\",\"policies\":[{\"policyId\":\"valid-query-filter\"}]}],\"resource\":\"managed/role/*\"},{\"properties\":[{\"name\":\"objects\",\"policies\":[{\"policyId\":\"valid-event-scripts\"}]}],\"resource\":\"config/managed\"}],\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/policy" + }, + "response": { + "bodySize": 2368, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 2368, + "text": "{\"_id\":\"policy\",\"additionalFiles\":[],\"file\":\"policy.js\",\"resources\":[{\"calculatedProperties\":{\"source\":\"require('selfServicePolicies').getRegistrationProperties()\",\"type\":\"text/javascript\"},\"resource\":\"selfservice/registration\"},{\"calculatedProperties\":{\"source\":\"require('selfServicePolicies').getResetProperties()\",\"type\":\"text/javascript\"},\"resource\":\"selfservice/reset\"},{\"properties\":[{\"name\":\"_id\",\"policies\":[{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"}]},{\"name\":\"password\",\"policies\":[{\"params\":{\"minLength\":8},\"policyId\":\"minimum-length\"}]}],\"resource\":\"internal/user/*\"},{\"properties\":[{\"name\":\"name\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"forbiddenChars\":[\"/*\"]},\"policyId\":\"cannot-contain-characters\"}]},{\"name\":\"temporalConstraints\",\"policies\":[{\"policyId\":\"valid-temporal-constraints\"}]},{\"name\":\"condition\",\"policies\":[{\"policyId\":\"valid-query-filter\"}]},{\"name\":\"privileges\",\"policies\":[{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"params\":{\"properties\":[{\"name\":\"name\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"string\"]},\"policyId\":\"valid-type\"}]},{\"name\":\"path\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"forbiddenChars\":[\"/*\"]},\"policyId\":\"cannot-contain-characters\"},{\"policyId\":\"valid-privilege-path\"}]},{\"name\":\"accessFlags\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-accessFlags-object\"}]},{\"name\":\"actions\",\"policies\":[{\"policyId\":\"required\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"}]},{\"name\":\"permissions\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-permissions\"}]},{\"name\":\"filter\",\"policies\":[{\"params\":{\"types\":[\"string\",\"null\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-query-filter\"}]}]},\"policyId\":\"valid-array-items\"}]}],\"resource\":\"internal/role/*\"},{\"properties\":[{\"name\":\"temporalConstraints\",\"policies\":[{\"policyId\":\"valid-temporal-constraints\"}]},{\"name\":\"condition\",\"policies\":[{\"policyId\":\"valid-query-filter\"}]}],\"resource\":\"managed/role/*\"},{\"properties\":[{\"name\":\"objects\",\"policies\":[{\"policyId\":\"valid-event-scripts\"}]}],\"resource\":\"config/managed\"}],\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.555Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "85aa7f57d20e37b9a3d0385b7306304b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 493, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "493" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 460, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"privilegeAssignments\",\"privilegeAssignments\":[{\"name\":\"ownerPrivileges\",\"privileges\":[\"owner-view-update-delete-orgs\",\"owner-create-orgs\",\"owner-view-update-delete-admins-and-members\",\"owner-create-admins\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"ownerOfOrg\"},{\"name\":\"adminPrivileges\",\"privileges\":[\"admin-view-update-delete-orgs\",\"admin-create-orgs\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"adminOfOrg\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privilegeAssignments" + }, + "response": { + "bodySize": 493, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 493, + "text": "{\"_id\":\"privilegeAssignments\",\"privilegeAssignments\":[{\"name\":\"ownerPrivileges\",\"privileges\":[\"owner-view-update-delete-orgs\",\"owner-create-orgs\",\"owner-view-update-delete-admins-and-members\",\"owner-create-admins\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"ownerOfOrg\"},{\"name\":\"adminPrivileges\",\"privileges\":[\"admin-view-update-delete-orgs\",\"admin-create-orgs\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"adminOfOrg\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "493" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.569Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "cbec42ff637072f3ce8377be01511efe", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 8228, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "8228" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 451, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"privileges\",\"privileges\":[{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":false},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/ownerIDs eq \\\"{{_id}}\\\" or /parentOwnerIDs eq \\\"{{_id}}\\\"\",\"name\":\"owner-view-update-delete-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"VIEW\",\"UPDATE\",\"DELETE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":false},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/parent pr\",\"name\":\"owner-create-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":false},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrgIDs eq \\\"__org_id_placeholder__\\\"\",\"name\":\"owner-view-update-delete-admins-and-members\",\"path\":\"managed/user\",\"permissions\":[\"VIEW\",\"DELETE\",\"UPDATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":false},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrg/0 pr and /adminOfOrg/0 pr and !(/ownerOfOrg pr)\",\"name\":\"owner-create-admins\",\"path\":\"managed/user\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":true},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/adminIDs eq \\\"{{_id}}\\\" or /parentAdminIDs eq \\\"{{_id}}\\\"\",\"name\":\"admin-view-update-delete-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"VIEW\",\"UPDATE\",\"DELETE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":true},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/parent pr\",\"name\":\"admin-create-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":true},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrgIDs eq \\\"__org_id_placeholder__\\\"\",\"name\":\"admin-view-update-delete-members\",\"path\":\"managed/user\",\"permissions\":[\"VIEW\",\"DELETE\",\"UPDATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":true},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrg/0 pr and !(/adminOfOrg pr) and !(/ownerOfOrg pr)\",\"name\":\"admin-create-members\",\"path\":\"managed/user\",\"permissions\":[\"CREATE\"]}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privileges" + }, + "response": { + "bodySize": 8228, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 8228, + "text": "{\"_id\":\"privileges\",\"privileges\":[{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":false},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/ownerIDs eq \\\"{{_id}}\\\" or /parentOwnerIDs eq \\\"{{_id}}\\\"\",\"name\":\"owner-view-update-delete-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"VIEW\",\"UPDATE\",\"DELETE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":false},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/parent pr\",\"name\":\"owner-create-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":false},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrgIDs eq \\\"__org_id_placeholder__\\\"\",\"name\":\"owner-view-update-delete-admins-and-members\",\"path\":\"managed/user\",\"permissions\":[\"VIEW\",\"DELETE\",\"UPDATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":false},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrg/0 pr and /adminOfOrg/0 pr and !(/ownerOfOrg pr)\",\"name\":\"owner-create-admins\",\"path\":\"managed/user\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":true},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/adminIDs eq \\\"{{_id}}\\\" or /parentAdminIDs eq \\\"{{_id}}\\\"\",\"name\":\"admin-view-update-delete-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"VIEW\",\"UPDATE\",\"DELETE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":true},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/parent pr\",\"name\":\"admin-create-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":true},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrgIDs eq \\\"__org_id_placeholder__\\\"\",\"name\":\"admin-view-update-delete-members\",\"path\":\"managed/user\",\"permissions\":[\"VIEW\",\"DELETE\",\"UPDATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":true},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrg/0 pr and !(/adminOfOrg pr) and !(/ownerOfOrg pr)\",\"name\":\"admin-create-members\",\"path\":\"managed/user\",\"permissions\":[\"CREATE\"]}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.584Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "e113b4988a44660730d55e50b60c01f7", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 246, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "246" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 454, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"process/access\",\"workflowAccess\":[{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-authorized\"}},{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-admin\"}}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/process/access" + }, + "response": { + "bodySize": 246, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 246, + "text": "{\"_id\":\"process/access\",\"workflowAccess\":[{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-authorized\"}},{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-admin\"}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "246" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.601Z", + "time": 13, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 13 + } + }, + { + "_id": "eb131157f5058c14dd4e167f0cdcbc5a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 20198, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "20198" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"repo.ds\",\"commands\":{\"delete-mapping-links\":{\"_queryFilter\":\"/linkType eq \\\"${mapping}\\\"\",\"operation\":\"DELETE\"},\"delete-target-ids-for-recon\":{\"_queryFilter\":\"/reconId eq \\\"${reconId}\\\"\",\"operation\":\"DELETE\"}},\"embedded\":false,\"ldapConnectionFactories\":{\"bind\":{\"connectionPoolSize\":50,\"connectionSecurity\":\"startTLS\",\"heartBeatIntervalSeconds\":60,\"heartBeatTimeoutMilliSeconds\":10000,\"primaryLdapServers\":[{\"hostname\":\"opendj-frodo-dev.classic.com\",\"port\":2389}],\"secondaryLdapServers\":[]},\"root\":{\"authentication\":{\"simple\":{\"bindDn\":\"uid=admin\",\"bindPassword\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"lJ/B6T9e9CDKHCN8TxkD4g==\",\"iv\":\"EdrerzwEUUkHG582cLDw5w==\",\"keySize\":32,\"mac\":\"Aty9fXUtl4pexGlHOc+CBg==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"BITSKlnPeT5klcuEZbngzw==\",\"stableId\":\"openidm-sym-default\"}}}}},\"inheritFrom\":\"bind\"}},\"maxConnectionAttempts\":5,\"resourceMapping\":{\"defaultMapping\":{\"dnTemplate\":\"ou=generic,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"explicitMapping\":{\"clusteredrecontargetids\":{\"dnTemplate\":\"ou=clusteredrecontargetids,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-recon-clusteredTargetIds\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"reconId\":{\"ldapAttribute\":\"fr-idm-recon-id\",\"type\":\"simple\"},\"targetIds\":{\"ldapAttribute\":\"fr-idm-recon-targetIds\",\"type\":\"json\"}}},\"dsconfig/attributeValue\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-attribute-value-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"checkSubstrings\":{\"ldapAttribute\":\"ds-cfg-check-substrings\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"matchAttribute\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-match-attribute\",\"type\":\"simple\"},\"minSubstringLength\":{\"ldapAttribute\":\"ds-cfg-min-substring-length\",\"type\":\"simple\"},\"testReversedPassword\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-test-reversed-password\",\"type\":\"simple\"}}},\"dsconfig/characterSet\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-character-set-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"allowUnclassifiedCharacters\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-allow-unclassified-characters\",\"type\":\"simple\"},\"characterSet\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-character-set\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minCharacterSets\":{\"ldapAttribute\":\"ds-cfg-min-character-sets\",\"type\":\"simple\"}}},\"dsconfig/dictionary\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-dictionary-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"checkSubstrings\":{\"ldapAttribute\":\"ds-cfg-check-substrings\",\"type\":\"simple\"},\"dictionaryFile\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-dictionary-file\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minSubstringLength\":{\"ldapAttribute\":\"ds-cfg-min-substring-length\",\"type\":\"simple\"},\"testReversedPassword\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-test-reversed-password\",\"type\":\"simple\"}}},\"dsconfig/lengthBased\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-length-based-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"maxPasswordLength\":{\"ldapAttribute\":\"ds-cfg-max-password-length\",\"type\":\"simple\"},\"minPasswordLength\":{\"ldapAttribute\":\"ds-cfg-min-password-length\",\"type\":\"simple\"}}},\"dsconfig/passwordPolicies\":{\"dnTemplate\":\"cn=Password Policies,cn=config\",\"objectClasses\":[\"ds-cfg-password-policy\",\"ds-cfg-authentication-policy\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"defaultPasswordStorageScheme\":{\"isMultiValued\":true,\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-default-password-storage-scheme\",\"type\":\"simple\"},\"maxPasswordAge\":{\"ldapAttribute\":\"ds-cfg-max-password-age\",\"type\":\"simple\"},\"passwordAttribute\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-password-attribute\",\"type\":\"simple\"},\"passwordHistoryCount\":{\"ldapAttribute\":\"ds-cfg-password-history-count\",\"type\":\"simple\"},\"validator\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-password-validator\",\"type\":\"simple\"}}},\"dsconfig/repeatedCharacters\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-repeated-characters-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"maxConsecutiveLength\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-max-consecutive-length\",\"type\":\"simple\"}}},\"dsconfig/similarityBased\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-similarity-based-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minPasswordDifference\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-min-password-difference\",\"type\":\"simple\"}}},\"dsconfig/uniqueCharacters\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-unique-characters-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minUniqueCharacters\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-min-unique-characters\",\"type\":\"simple\"}}},\"dsconfig/userDefinedVirtualAttribute\":{\"dnTemplate\":\"cn=Virtual Attributes,cn=config\",\"objectClasses\":[\"ds-cfg-user-defined-virtual-attribute\",\"ds-cfg-virtual-attribute\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"attributeType\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-attribute-type\",\"type\":\"simple\"},\"baseDn\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-base-dn\",\"type\":\"simple\"},\"conflictBehavior\":{\"ldapAttribute\":\"ds-cfg-conflict-behavior\",\"type\":\"simple\"},\"enabled\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"filter\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-filter\",\"type\":\"simple\"},\"groupDn\":{\"ldapAttribute\":\"ds-cfg-group-dn\",\"type\":\"simple\"},\"javaClass\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"scope\":{\"ldapAttribute\":\"ds-cfg-scope\",\"type\":\"simple\"},\"value\":{\"isMultiValued\":true,\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-value\",\"type\":\"simple\"}}},\"internal/role\":{\"dnTemplate\":\"ou=roles,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"fr-idm-internal-role\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"authzMembers\":{\"isMultiValued\":true,\"propertyName\":\"authzRoles\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"condition\":{\"ldapAttribute\":\"fr-idm-condition\",\"type\":\"simple\"},\"description\":{\"ldapAttribute\":\"description\",\"type\":\"simple\"},\"name\":{\"ldapAttribute\":\"fr-idm-name\",\"type\":\"simple\"},\"privileges\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-privilege\",\"type\":\"json\"},\"temporalConstraints\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-temporal-constraints\",\"type\":\"json\"}}},\"internal/user\":{\"dnTemplate\":\"ou=users,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-internal-user\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"password\":{\"ldapAttribute\":\"fr-idm-password\",\"type\":\"json\"}}},\"link\":{\"dnTemplate\":\"ou=links,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-link\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"firstId\":{\"ldapAttribute\":\"fr-idm-link-firstId\",\"type\":\"simple\"},\"linkQualifier\":{\"ldapAttribute\":\"fr-idm-link-qualifier\",\"type\":\"simple\"},\"linkType\":{\"ldapAttribute\":\"fr-idm-link-type\",\"type\":\"simple\"},\"secondId\":{\"ldapAttribute\":\"fr-idm-link-secondId\",\"type\":\"simple\"}}},\"locks\":{\"dnTemplate\":\"ou=locks,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-lock\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"nodeId\":{\"ldapAttribute\":\"fr-idm-lock-nodeid\",\"type\":\"simple\"}}},\"recon/assoc\":{\"dnTemplate\":\"ou=assoc,ou=recon,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"namingStrategy\":{\"dnAttribute\":\"fr-idm-reconassoc-reconid\",\"type\":\"clientDnNaming\"},\"objectClasses\":[\"fr-idm-reconassoc\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"fr-idm-reconassoc-reconid\",\"type\":\"simple\"},\"finishTime\":{\"ldapAttribute\":\"fr-idm-reconassoc-finishtime\",\"type\":\"simple\"},\"isAnalysis\":{\"ldapAttribute\":\"fr-idm-reconassoc-isanalysis\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-reconassoc-mapping\",\"type\":\"simple\"},\"sourceResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-sourceresourcecollection\",\"type\":\"simple\"},\"targetResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-targetresourcecollection\",\"type\":\"simple\"}},\"subResources\":{\"entry\":{\"namingStrategy\":{\"dnAttribute\":\"uid\",\"type\":\"clientDnNaming\"},\"resource\":\"recon-assoc-entry\",\"type\":\"collection\"}}},\"recon/assoc/entry\":{\"objectClasses\":[\"uidObject\",\"fr-idm-reconassocentry\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\"},\"action\":{\"ldapAttribute\":\"fr-idm-reconassocentry-action\",\"type\":\"simple\"},\"ambiguousTargetObjectIds\":{\"ldapAttribute\":\"fr-idm-reconassocentry-ambiguoustargetobjectids\",\"type\":\"simple\"},\"exception\":{\"ldapAttribute\":\"fr-idm-reconassocentry-exception\",\"type\":\"simple\"},\"isAnalysis\":{\"ldapAttribute\":\"fr-idm-reconassoc-isanalysis\",\"type\":\"simple\"},\"linkQualifier\":{\"ldapAttribute\":\"fr-idm-reconassocentry-linkqualifier\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-reconassoc-mapping\",\"type\":\"simple\"},\"message\":{\"ldapAttribute\":\"fr-idm-reconassocentry-message\",\"type\":\"simple\"},\"messageDetail\":{\"ldapAttribute\":\"fr-idm-reconassocentry-messagedetail\",\"type\":\"simple\"},\"phase\":{\"ldapAttribute\":\"fr-idm-reconassocentry-phase\",\"type\":\"simple\"},\"reconId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-reconid\",\"type\":\"simple\"},\"situation\":{\"ldapAttribute\":\"fr-idm-reconassocentry-situation\",\"type\":\"simple\"},\"sourceObjectId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-sourceObjectId\",\"type\":\"simple\"},\"sourceResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-sourceresourcecollection\",\"type\":\"simple\"},\"status\":{\"ldapAttribute\":\"fr-idm-reconassocentry-status\",\"type\":\"simple\"},\"targetObjectId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-targetObjectId\",\"type\":\"simple\"},\"targetResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-targetresourcecollection\",\"type\":\"simple\"}},\"resourceName\":\"recon-assoc-entry\",\"subResourceRouting\":[{\"prefix\":\"entry\",\"template\":\"recon/assoc/{reconId}/entry\"}]},\"sync/queue\":{\"dnTemplate\":\"ou=queue,ou=sync,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-syncqueue\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"context\":{\"ldapAttribute\":\"fr-idm-syncqueue-context\",\"type\":\"json\"},\"createDate\":{\"ldapAttribute\":\"fr-idm-syncqueue-createdate\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-syncqueue-mapping\",\"type\":\"simple\"},\"newObject\":{\"ldapAttribute\":\"fr-idm-syncqueue-newobject\",\"type\":\"json\"},\"nodeId\":{\"ldapAttribute\":\"fr-idm-syncqueue-nodeid\",\"type\":\"simple\"},\"objectRev\":{\"ldapAttribute\":\"fr-idm-syncqueue-objectRev\",\"type\":\"simple\"},\"oldObject\":{\"ldapAttribute\":\"fr-idm-syncqueue-oldobject\",\"type\":\"json\"},\"resourceCollection\":{\"ldapAttribute\":\"fr-idm-syncqueue-resourcecollection\",\"type\":\"simple\"},\"resourceId\":{\"ldapAttribute\":\"fr-idm-syncqueue-resourceid\",\"type\":\"simple\"},\"state\":{\"ldapAttribute\":\"fr-idm-syncqueue-state\",\"type\":\"simple\"},\"syncAction\":{\"ldapAttribute\":\"fr-idm-syncqueue-syncaction\",\"type\":\"simple\"}}}},\"genericMapping\":{\"cluster/*\":{\"dnTemplate\":\"ou=cluster,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-cluster-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchClusterObject\",\"objectClasses\":[\"uidObject\",\"fr-idm-cluster-obj\"]},\"config\":{\"dnTemplate\":\"ou=config,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"file\":{\"dnTemplate\":\"ou=file,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"import\":{\"dnTemplate\":\"ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"import/*\":{\"dnTemplate\":\"ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"internal/notification\":{\"dnTemplate\":\"ou=notification,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-notification-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-notification\"],\"properties\":{\"target\":{\"propertyName\":\"_notifications\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"internal/usermeta\":{\"dnTemplate\":\"ou=usermeta,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-generic-obj\"],\"properties\":{\"target\":{\"propertyName\":\"_meta\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"jsonstorage\":{\"dnTemplate\":\"ou=jsonstorage,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"managed/*\":{\"dnTemplate\":\"ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"managed/assignment\":{\"dnTemplate\":\"ou=assignment,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-assignment-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-assignment\"],\"properties\":{\"condition\":{\"ldapAttribute\":\"fr-idm-assignment-condition\",\"type\":\"simple\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"assignments\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"roles\":{\"isMultiValued\":true,\"propertyName\":\"assignments\",\"resourcePath\":\"managed/role\",\"type\":\"reverseReference\"}}},\"managed/organization\":{\"dnTemplate\":\"ou=organization,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-organization-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-organization\"],\"properties\":{\"admins\":{\"isMultiValued\":true,\"propertyName\":\"adminOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"children\":{\"isMultiValued\":true,\"propertyName\":\"parent\",\"resourcePath\":\"managed/organization\",\"type\":\"reverseReference\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"memberOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"name\":{\"ldapAttribute\":\"fr-idm-managed-organization-name\",\"type\":\"simple\"},\"owners\":{\"isMultiValued\":true,\"propertyName\":\"ownerOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"parent\":{\"ldapAttribute\":\"fr-idm-managed-organization-parent\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"}}},\"managed/role\":{\"dnTemplate\":\"ou=role,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-role-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchManagedRole\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-role\"],\"properties\":{\"assignments\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-role-assignments\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/assignment\",\"type\":\"reference\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"roles\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"managed/user\":{\"dnTemplate\":\"ou=user,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-user-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchManagedUser\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-user\"],\"properties\":{\"_meta\":{\"isMultiValued\":false,\"ldapAttribute\":\"fr-idm-managed-user-meta\",\"primaryKey\":\"uid\",\"resourcePath\":\"internal/usermeta\",\"type\":\"reference\"},\"_notifications\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-notifications\",\"primaryKey\":\"uid\",\"resourcePath\":\"internal/notification\",\"type\":\"reference\"},\"adminOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-admin\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"assignments\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-assignment-member\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/assignment\",\"type\":\"reference\"},\"authzRoles\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-authzroles-internal-role\",\"primaryKey\":\"cn\",\"resourcePath\":\"internal/role\",\"type\":\"reference\"},\"manager\":{\"isMultiValued\":false,\"ldapAttribute\":\"fr-idm-managed-user-manager\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/user\",\"type\":\"reference\"},\"memberOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-member\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"ownerOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-owner\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"passwordExpirationTime\":{\"ldapAttribute\":\"pwdExpirationTime\",\"type\":\"simple\",\"writability\":\"readOnlyDiscardWrites\"},\"passwordLastChangedTime\":{\"ldapAttribute\":\"pwdChangedTime\",\"type\":\"simple\",\"writability\":\"readOnlyDiscardWrites\"},\"reports\":{\"isMultiValued\":true,\"propertyName\":\"manager\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"roles\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-roles\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/role\",\"type\":\"reference\"}}},\"reconprogressstate\":{\"dnTemplate\":\"ou=reconprogressstate,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"relationships\":{\"dnTemplate\":\"ou=relationships,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-relationship-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchRelationship\",\"objectClasses\":[\"uidObject\",\"fr-idm-relationship\"]},\"scheduler\":{\"dnTemplate\":\"ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"scheduler/*\":{\"dnTemplate\":\"ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"ui/*\":{\"dnTemplate\":\"ou=ui,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"updates\":{\"dnTemplate\":\"ou=updates,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"}}},\"rest2LdapOptions\":{\"mvccAttribute\":\"etag\",\"readOnUpdatePolicy\":\"controls\",\"returnNullForMissingProperties\":true,\"useMvcc\":true,\"usePermissiveModify\":true,\"useSubtreeDelete\":false},\"security\":{\"fileBasedTrustManagerFile\":\"&{idm.install.dir}/security/truststore\",\"fileBasedTrustManagerPasswordFile\":\"&{idm.install.dir}/security/storepass\",\"fileBasedTrustManagerType\":\"JKS\",\"trustManager\":\"file\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.ds" + }, + "response": { + "bodySize": 20198, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 20198, + "text": "{\"_id\":\"repo.ds\",\"commands\":{\"delete-mapping-links\":{\"_queryFilter\":\"/linkType eq \\\"${mapping}\\\"\",\"operation\":\"DELETE\"},\"delete-target-ids-for-recon\":{\"_queryFilter\":\"/reconId eq \\\"${reconId}\\\"\",\"operation\":\"DELETE\"}},\"embedded\":false,\"ldapConnectionFactories\":{\"bind\":{\"connectionPoolSize\":50,\"connectionSecurity\":\"startTLS\",\"heartBeatIntervalSeconds\":60,\"heartBeatTimeoutMilliSeconds\":10000,\"primaryLdapServers\":[{\"hostname\":\"opendj-frodo-dev.classic.com\",\"port\":2389}],\"secondaryLdapServers\":[]},\"root\":{\"authentication\":{\"simple\":{\"bindDn\":\"uid=admin\",\"bindPassword\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"lJ/B6T9e9CDKHCN8TxkD4g==\",\"iv\":\"EdrerzwEUUkHG582cLDw5w==\",\"keySize\":32,\"mac\":\"Aty9fXUtl4pexGlHOc+CBg==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"BITSKlnPeT5klcuEZbngzw==\",\"stableId\":\"openidm-sym-default\"}}}}},\"inheritFrom\":\"bind\"}},\"maxConnectionAttempts\":5,\"resourceMapping\":{\"defaultMapping\":{\"dnTemplate\":\"ou=generic,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"explicitMapping\":{\"clusteredrecontargetids\":{\"dnTemplate\":\"ou=clusteredrecontargetids,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-recon-clusteredTargetIds\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"reconId\":{\"ldapAttribute\":\"fr-idm-recon-id\",\"type\":\"simple\"},\"targetIds\":{\"ldapAttribute\":\"fr-idm-recon-targetIds\",\"type\":\"json\"}}},\"dsconfig/attributeValue\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-attribute-value-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"checkSubstrings\":{\"ldapAttribute\":\"ds-cfg-check-substrings\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"matchAttribute\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-match-attribute\",\"type\":\"simple\"},\"minSubstringLength\":{\"ldapAttribute\":\"ds-cfg-min-substring-length\",\"type\":\"simple\"},\"testReversedPassword\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-test-reversed-password\",\"type\":\"simple\"}}},\"dsconfig/characterSet\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-character-set-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"allowUnclassifiedCharacters\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-allow-unclassified-characters\",\"type\":\"simple\"},\"characterSet\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-character-set\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minCharacterSets\":{\"ldapAttribute\":\"ds-cfg-min-character-sets\",\"type\":\"simple\"}}},\"dsconfig/dictionary\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-dictionary-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"checkSubstrings\":{\"ldapAttribute\":\"ds-cfg-check-substrings\",\"type\":\"simple\"},\"dictionaryFile\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-dictionary-file\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minSubstringLength\":{\"ldapAttribute\":\"ds-cfg-min-substring-length\",\"type\":\"simple\"},\"testReversedPassword\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-test-reversed-password\",\"type\":\"simple\"}}},\"dsconfig/lengthBased\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-length-based-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"maxPasswordLength\":{\"ldapAttribute\":\"ds-cfg-max-password-length\",\"type\":\"simple\"},\"minPasswordLength\":{\"ldapAttribute\":\"ds-cfg-min-password-length\",\"type\":\"simple\"}}},\"dsconfig/passwordPolicies\":{\"dnTemplate\":\"cn=Password Policies,cn=config\",\"objectClasses\":[\"ds-cfg-password-policy\",\"ds-cfg-authentication-policy\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"defaultPasswordStorageScheme\":{\"isMultiValued\":true,\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-default-password-storage-scheme\",\"type\":\"simple\"},\"maxPasswordAge\":{\"ldapAttribute\":\"ds-cfg-max-password-age\",\"type\":\"simple\"},\"passwordAttribute\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-password-attribute\",\"type\":\"simple\"},\"passwordHistoryCount\":{\"ldapAttribute\":\"ds-cfg-password-history-count\",\"type\":\"simple\"},\"validator\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-password-validator\",\"type\":\"simple\"}}},\"dsconfig/repeatedCharacters\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-repeated-characters-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"maxConsecutiveLength\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-max-consecutive-length\",\"type\":\"simple\"}}},\"dsconfig/similarityBased\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-similarity-based-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minPasswordDifference\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-min-password-difference\",\"type\":\"simple\"}}},\"dsconfig/uniqueCharacters\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-unique-characters-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minUniqueCharacters\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-min-unique-characters\",\"type\":\"simple\"}}},\"dsconfig/userDefinedVirtualAttribute\":{\"dnTemplate\":\"cn=Virtual Attributes,cn=config\",\"objectClasses\":[\"ds-cfg-user-defined-virtual-attribute\",\"ds-cfg-virtual-attribute\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"attributeType\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-attribute-type\",\"type\":\"simple\"},\"baseDn\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-base-dn\",\"type\":\"simple\"},\"conflictBehavior\":{\"ldapAttribute\":\"ds-cfg-conflict-behavior\",\"type\":\"simple\"},\"enabled\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"filter\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-filter\",\"type\":\"simple\"},\"groupDn\":{\"ldapAttribute\":\"ds-cfg-group-dn\",\"type\":\"simple\"},\"javaClass\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"scope\":{\"ldapAttribute\":\"ds-cfg-scope\",\"type\":\"simple\"},\"value\":{\"isMultiValued\":true,\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-value\",\"type\":\"simple\"}}},\"internal/role\":{\"dnTemplate\":\"ou=roles,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"fr-idm-internal-role\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"authzMembers\":{\"isMultiValued\":true,\"propertyName\":\"authzRoles\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"condition\":{\"ldapAttribute\":\"fr-idm-condition\",\"type\":\"simple\"},\"description\":{\"ldapAttribute\":\"description\",\"type\":\"simple\"},\"name\":{\"ldapAttribute\":\"fr-idm-name\",\"type\":\"simple\"},\"privileges\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-privilege\",\"type\":\"json\"},\"temporalConstraints\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-temporal-constraints\",\"type\":\"json\"}}},\"internal/user\":{\"dnTemplate\":\"ou=users,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-internal-user\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"password\":{\"ldapAttribute\":\"fr-idm-password\",\"type\":\"json\"}}},\"link\":{\"dnTemplate\":\"ou=links,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-link\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"firstId\":{\"ldapAttribute\":\"fr-idm-link-firstId\",\"type\":\"simple\"},\"linkQualifier\":{\"ldapAttribute\":\"fr-idm-link-qualifier\",\"type\":\"simple\"},\"linkType\":{\"ldapAttribute\":\"fr-idm-link-type\",\"type\":\"simple\"},\"secondId\":{\"ldapAttribute\":\"fr-idm-link-secondId\",\"type\":\"simple\"}}},\"locks\":{\"dnTemplate\":\"ou=locks,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-lock\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"nodeId\":{\"ldapAttribute\":\"fr-idm-lock-nodeid\",\"type\":\"simple\"}}},\"recon/assoc\":{\"dnTemplate\":\"ou=assoc,ou=recon,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"namingStrategy\":{\"dnAttribute\":\"fr-idm-reconassoc-reconid\",\"type\":\"clientDnNaming\"},\"objectClasses\":[\"fr-idm-reconassoc\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"fr-idm-reconassoc-reconid\",\"type\":\"simple\"},\"finishTime\":{\"ldapAttribute\":\"fr-idm-reconassoc-finishtime\",\"type\":\"simple\"},\"isAnalysis\":{\"ldapAttribute\":\"fr-idm-reconassoc-isanalysis\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-reconassoc-mapping\",\"type\":\"simple\"},\"sourceResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-sourceresourcecollection\",\"type\":\"simple\"},\"targetResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-targetresourcecollection\",\"type\":\"simple\"}},\"subResources\":{\"entry\":{\"namingStrategy\":{\"dnAttribute\":\"uid\",\"type\":\"clientDnNaming\"},\"resource\":\"recon-assoc-entry\",\"type\":\"collection\"}}},\"recon/assoc/entry\":{\"objectClasses\":[\"uidObject\",\"fr-idm-reconassocentry\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\"},\"action\":{\"ldapAttribute\":\"fr-idm-reconassocentry-action\",\"type\":\"simple\"},\"ambiguousTargetObjectIds\":{\"ldapAttribute\":\"fr-idm-reconassocentry-ambiguoustargetobjectids\",\"type\":\"simple\"},\"exception\":{\"ldapAttribute\":\"fr-idm-reconassocentry-exception\",\"type\":\"simple\"},\"isAnalysis\":{\"ldapAttribute\":\"fr-idm-reconassoc-isanalysis\",\"type\":\"simple\"},\"linkQualifier\":{\"ldapAttribute\":\"fr-idm-reconassocentry-linkqualifier\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-reconassoc-mapping\",\"type\":\"simple\"},\"message\":{\"ldapAttribute\":\"fr-idm-reconassocentry-message\",\"type\":\"simple\"},\"messageDetail\":{\"ldapAttribute\":\"fr-idm-reconassocentry-messagedetail\",\"type\":\"simple\"},\"phase\":{\"ldapAttribute\":\"fr-idm-reconassocentry-phase\",\"type\":\"simple\"},\"reconId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-reconid\",\"type\":\"simple\"},\"situation\":{\"ldapAttribute\":\"fr-idm-reconassocentry-situation\",\"type\":\"simple\"},\"sourceObjectId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-sourceObjectId\",\"type\":\"simple\"},\"sourceResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-sourceresourcecollection\",\"type\":\"simple\"},\"status\":{\"ldapAttribute\":\"fr-idm-reconassocentry-status\",\"type\":\"simple\"},\"targetObjectId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-targetObjectId\",\"type\":\"simple\"},\"targetResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-targetresourcecollection\",\"type\":\"simple\"}},\"resourceName\":\"recon-assoc-entry\",\"subResourceRouting\":[{\"prefix\":\"entry\",\"template\":\"recon/assoc/{reconId}/entry\"}]},\"sync/queue\":{\"dnTemplate\":\"ou=queue,ou=sync,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-syncqueue\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"context\":{\"ldapAttribute\":\"fr-idm-syncqueue-context\",\"type\":\"json\"},\"createDate\":{\"ldapAttribute\":\"fr-idm-syncqueue-createdate\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-syncqueue-mapping\",\"type\":\"simple\"},\"newObject\":{\"ldapAttribute\":\"fr-idm-syncqueue-newobject\",\"type\":\"json\"},\"nodeId\":{\"ldapAttribute\":\"fr-idm-syncqueue-nodeid\",\"type\":\"simple\"},\"objectRev\":{\"ldapAttribute\":\"fr-idm-syncqueue-objectRev\",\"type\":\"simple\"},\"oldObject\":{\"ldapAttribute\":\"fr-idm-syncqueue-oldobject\",\"type\":\"json\"},\"resourceCollection\":{\"ldapAttribute\":\"fr-idm-syncqueue-resourcecollection\",\"type\":\"simple\"},\"resourceId\":{\"ldapAttribute\":\"fr-idm-syncqueue-resourceid\",\"type\":\"simple\"},\"state\":{\"ldapAttribute\":\"fr-idm-syncqueue-state\",\"type\":\"simple\"},\"syncAction\":{\"ldapAttribute\":\"fr-idm-syncqueue-syncaction\",\"type\":\"simple\"}}}},\"genericMapping\":{\"cluster/*\":{\"dnTemplate\":\"ou=cluster,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-cluster-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchClusterObject\",\"objectClasses\":[\"uidObject\",\"fr-idm-cluster-obj\"]},\"config\":{\"dnTemplate\":\"ou=config,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"file\":{\"dnTemplate\":\"ou=file,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"import\":{\"dnTemplate\":\"ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"import/*\":{\"dnTemplate\":\"ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"internal/notification\":{\"dnTemplate\":\"ou=notification,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-notification-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-notification\"],\"properties\":{\"target\":{\"propertyName\":\"_notifications\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"internal/usermeta\":{\"dnTemplate\":\"ou=usermeta,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-generic-obj\"],\"properties\":{\"target\":{\"propertyName\":\"_meta\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"jsonstorage\":{\"dnTemplate\":\"ou=jsonstorage,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"managed/*\":{\"dnTemplate\":\"ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"managed/assignment\":{\"dnTemplate\":\"ou=assignment,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-assignment-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-assignment\"],\"properties\":{\"condition\":{\"ldapAttribute\":\"fr-idm-assignment-condition\",\"type\":\"simple\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"assignments\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"roles\":{\"isMultiValued\":true,\"propertyName\":\"assignments\",\"resourcePath\":\"managed/role\",\"type\":\"reverseReference\"}}},\"managed/organization\":{\"dnTemplate\":\"ou=organization,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-organization-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-organization\"],\"properties\":{\"admins\":{\"isMultiValued\":true,\"propertyName\":\"adminOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"children\":{\"isMultiValued\":true,\"propertyName\":\"parent\",\"resourcePath\":\"managed/organization\",\"type\":\"reverseReference\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"memberOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"name\":{\"ldapAttribute\":\"fr-idm-managed-organization-name\",\"type\":\"simple\"},\"owners\":{\"isMultiValued\":true,\"propertyName\":\"ownerOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"parent\":{\"ldapAttribute\":\"fr-idm-managed-organization-parent\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"}}},\"managed/role\":{\"dnTemplate\":\"ou=role,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-role-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchManagedRole\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-role\"],\"properties\":{\"assignments\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-role-assignments\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/assignment\",\"type\":\"reference\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"roles\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"managed/user\":{\"dnTemplate\":\"ou=user,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-user-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchManagedUser\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-user\"],\"properties\":{\"_meta\":{\"isMultiValued\":false,\"ldapAttribute\":\"fr-idm-managed-user-meta\",\"primaryKey\":\"uid\",\"resourcePath\":\"internal/usermeta\",\"type\":\"reference\"},\"_notifications\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-notifications\",\"primaryKey\":\"uid\",\"resourcePath\":\"internal/notification\",\"type\":\"reference\"},\"adminOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-admin\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"assignments\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-assignment-member\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/assignment\",\"type\":\"reference\"},\"authzRoles\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-authzroles-internal-role\",\"primaryKey\":\"cn\",\"resourcePath\":\"internal/role\",\"type\":\"reference\"},\"manager\":{\"isMultiValued\":false,\"ldapAttribute\":\"fr-idm-managed-user-manager\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/user\",\"type\":\"reference\"},\"memberOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-member\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"ownerOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-owner\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"passwordExpirationTime\":{\"ldapAttribute\":\"pwdExpirationTime\",\"type\":\"simple\",\"writability\":\"readOnlyDiscardWrites\"},\"passwordLastChangedTime\":{\"ldapAttribute\":\"pwdChangedTime\",\"type\":\"simple\",\"writability\":\"readOnlyDiscardWrites\"},\"reports\":{\"isMultiValued\":true,\"propertyName\":\"manager\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"roles\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-roles\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/role\",\"type\":\"reference\"}}},\"reconprogressstate\":{\"dnTemplate\":\"ou=reconprogressstate,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"relationships\":{\"dnTemplate\":\"ou=relationships,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-relationship-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchRelationship\",\"objectClasses\":[\"uidObject\",\"fr-idm-relationship\"]},\"scheduler\":{\"dnTemplate\":\"ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"scheduler/*\":{\"dnTemplate\":\"ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"ui/*\":{\"dnTemplate\":\"ou=ui,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"updates\":{\"dnTemplate\":\"ou=updates,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"}}},\"rest2LdapOptions\":{\"mvccAttribute\":\"etag\",\"readOnUpdatePolicy\":\"controls\",\"returnNullForMissingProperties\":true,\"useMvcc\":true,\"usePermissiveModify\":true,\"useSubtreeDelete\":false},\"security\":{\"fileBasedTrustManagerFile\":\"&{idm.install.dir}/security/truststore\",\"fileBasedTrustManagerPasswordFile\":\"&{idm.install.dir}/security/storepass\",\"fileBasedTrustManagerType\":\"JKS\",\"trustManager\":\"file\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.622Z", + "time": 18, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 18 + } + }, + { + "_id": "713d28bcb7fbcf706532db458785e079", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 789, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "789" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"repo.init\",\"insert\":{\"internal/role\":[{\"description\":\"Administrative access\",\"id\":\"openidm-admin\",\"name\":\"openidm-admin\"},{\"description\":\"Basic minimum user\",\"id\":\"openidm-authorized\",\"name\":\"openidm-authorized\"},{\"description\":\"Anonymous access\",\"id\":\"openidm-reg\",\"name\":\"openidm-reg\"},{\"description\":\"Authenticated via certificate\",\"id\":\"openidm-cert\",\"name\":\"openidm-cert\"},{\"description\":\"Allowed to reassign workflow tasks\",\"id\":\"openidm-tasks-manager\",\"name\":\"openidm-tasks-manager\"},{\"description\":\"Platform provisioning access\",\"id\":\"platform-provisioning\",\"name\":\"platform-provisioning\"}],\"internal/user\":[{\"id\":\"openidm-admin\",\"password\":\"&{openidm.admin.password}\"},{\"id\":\"anonymous\",\"password\":\"anonymous\"},{\"id\":\"idm-provisioning\"},{\"id\":\"connector-server-client\"}]}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.init" + }, + "response": { + "bodySize": 789, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 789, + "text": "{\"_id\":\"repo.init\",\"insert\":{\"internal/role\":[{\"description\":\"Administrative access\",\"id\":\"openidm-admin\",\"name\":\"openidm-admin\"},{\"description\":\"Basic minimum user\",\"id\":\"openidm-authorized\",\"name\":\"openidm-authorized\"},{\"description\":\"Anonymous access\",\"id\":\"openidm-reg\",\"name\":\"openidm-reg\"},{\"description\":\"Authenticated via certificate\",\"id\":\"openidm-cert\",\"name\":\"openidm-cert\"},{\"description\":\"Allowed to reassign workflow tasks\",\"id\":\"openidm-tasks-manager\",\"name\":\"openidm-tasks-manager\"},{\"description\":\"Platform provisioning access\",\"id\":\"platform-provisioning\",\"name\":\"platform-provisioning\"}],\"internal/user\":[{\"id\":\"openidm-admin\",\"password\":\"&{openidm.admin.password}\"},{\"id\":\"anonymous\",\"password\":\"anonymous\"},{\"id\":\"idm-provisioning\"},{\"id\":\"connector-server-client\"}]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "789" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.647Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "42c6e3613a1d003bb03982859b13f769", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 619, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "619" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"router\",\"filters\":[{\"methods\":[\"create\",\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"},{\"methods\":[\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^config/managed$\"},{\"condition\":{\"source\":\"(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0)\",\"type\":\"text/javascript\"},\"onResponse\":{\"source\":\"require('relationshipFilter').filterResponse()\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/router" + }, + "response": { + "bodySize": 619, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 619, + "text": "{\"_id\":\"router\",\"filters\":[{\"methods\":[\"create\",\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"},{\"methods\":[\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^config/managed$\"},{\"condition\":{\"source\":\"(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0)\",\"type\":\"text/javascript\"},\"onResponse\":{\"source\":\"require('relationshipFilter').filterResponse()\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "619" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.661Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "424494959b5c9b3055c3c7adfdbd139c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 459, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "459" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 457, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"schedule/seantest\",\"concurrentExecution\":false,\"enabled\":false,\"endTime\":null,\"invokeContext\":{\"script\":{\"globals\":{},\"source\":\"//sean has changed this script. Let's see if it is still working. qqqqqqqqqqqqqqSchedule1\\n\",\"type\":\"text/javascript\"}},\"invokeLogLevel\":\"info\",\"invokeService\":\"script\",\"misfirePolicy\":\"fireAndProceed\",\"persisted\":true,\"recoverable\":false,\"repeatCount\":0,\"repeatInterval\":0,\"schedule\":null,\"startTime\":null,\"type\":\"simple\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/seantest" + }, + "response": { + "bodySize": 459, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 459, + "text": "{\"_id\":\"schedule/seantest\",\"concurrentExecution\":false,\"enabled\":false,\"endTime\":null,\"invokeContext\":{\"script\":{\"globals\":{},\"source\":\"//sean has changed this script. Let's see if it is still working. qqqqqqqqqqqqqqSchedule1\\n\",\"type\":\"text/javascript\"}},\"invokeLogLevel\":\"info\",\"invokeService\":\"script\",\"misfirePolicy\":\"fireAndProceed\",\"persisted\":true,\"recoverable\":false,\"repeatCount\":0,\"repeatInterval\":0,\"schedule\":null,\"startTime\":null,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "459" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.676Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "b72f7bad2fb70bd3408d023227d6c0a1", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 838, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "838" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 466, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"schedule/taskscan_activate\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/activeDate le \\\"${Time.nowWithOffset}\\\") AND (!(/inactiveDate pr) or /inactiveDate ge \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/activateAccount/task-completed\",\"started\":\"/activateAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"active\\\" }];\\n\\nlogger.debug(\\\"Performing Activate Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_activate" + }, + "response": { + "bodySize": 838, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 838, + "text": "{\"_id\":\"schedule/taskscan_activate\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/activeDate le \\\"${Time.nowWithOffset}\\\") AND (!(/inactiveDate pr) or /inactiveDate ge \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/activateAccount/task-completed\",\"started\":\"/activateAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"active\\\" }];\\n\\nlogger.debug(\\\"Performing Activate Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "838" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.689Z", + "time": 6, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 6 + } + }, + { + "_id": "4b0af8e512d690c0f8ba8f746dc7f7f0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 830, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "830" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 464, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"schedule/taskscan_expire\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/inactiveDate lt \\\"${Time.nowWithOffset}\\\") AND (!(/activeDate pr) or /activeDate le \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/expireAccount/task-completed\",\"started\":\"/expireAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"inactive\\\" }];\\n\\nlogger.debug(\\\"Performing Expire Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_expire" + }, + "response": { + "bodySize": 830, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 830, + "text": "{\"_id\":\"schedule/taskscan_expire\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/inactiveDate lt \\\"${Time.nowWithOffset}\\\") AND (!(/activeDate pr) or /activeDate le \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/expireAccount/task-completed\",\"started\":\"/expireAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"inactive\\\" }];\\n\\nlogger.debug(\\\"Performing Expire Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "830" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.703Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "1024d424442077395a76f0ae65915bbe", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 156, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "156" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"scheduler\",\"scheduler\":{\"executePersistentSchedules\":{\"$bool\":\"&{openidm.scheduler.execute.persistent.schedules}\"}},\"threadPool\":{\"threadCount\":10}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/scheduler" + }, + "response": { + "bodySize": 156, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 156, + "text": "{\"_id\":\"scheduler\",\"scheduler\":{\"executePersistentSchedules\":{\"$bool\":\"&{openidm.scheduler.execute.persistent.schedules}\"}},\"threadPool\":{\"threadCount\":10}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "156" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.719Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "940e52bd5df8ce79327cf7ca6c2a4b70", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 939, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "939" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"ECMAScript\":{\"javascript.optimization.level\":9,\"javascript.recompile.minimumInterval\":60000},\"Groovy\":{\"#groovy.disabled.global.ast.transformations\":\"\",\"#groovy.errors.tolerance\":10,\"#groovy.output.debug\":false,\"#groovy.output.verbose\":false,\"#groovy.script.base\":\"#any class extends groovy.lang.Script\",\"#groovy.script.extension\":\".groovy\",\"#groovy.target.bytecode\":\"1.8\",\"#groovy.target.directory\":\"&{idm.data.dir}/classes\",\"#groovy.target.indy\":true,\"#groovy.warnings\":\"likely errors #othere values [none,likely,possible,paranoia]\",\"groovy.classpath\":\"&{idm.install.dir}/lib\",\"groovy.recompile\":true,\"groovy.recompile.minimumInterval\":60000,\"groovy.source.encoding\":\"UTF-8\"},\"_id\":\"script\",\"properties\":{},\"sources\":{\"default\":{\"directory\":\"&{idm.install.dir}/bin/defaults/script\"},\"install\":{\"directory\":\"&{idm.install.dir}\"},\"project\":{\"directory\":\"&{idm.instance.dir}\"},\"project-script\":{\"directory\":\"&{idm.instance.dir}/script\"}}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/script" + }, + "response": { + "bodySize": 939, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 939, + "text": "{\"_id\":\"script\",\"ECMAScript\":{\"javascript.optimization.level\":9,\"javascript.recompile.minimumInterval\":60000},\"Groovy\":{\"#groovy.disabled.global.ast.transformations\":\"\",\"#groovy.errors.tolerance\":10,\"#groovy.output.debug\":false,\"#groovy.output.verbose\":false,\"#groovy.script.base\":\"#any class extends groovy.lang.Script\",\"#groovy.script.extension\":\".groovy\",\"#groovy.target.bytecode\":\"1.8\",\"#groovy.target.directory\":\"&{idm.data.dir}/classes\",\"#groovy.target.indy\":true,\"#groovy.warnings\":\"likely errors #othere values [none,likely,possible,paranoia]\",\"groovy.classpath\":\"&{idm.install.dir}/lib\",\"groovy.recompile\":true,\"groovy.recompile.minimumInterval\":60000,\"groovy.source.encoding\":\"UTF-8\"},\"properties\":{},\"sources\":{\"default\":{\"directory\":\"&{idm.install.dir}/bin/defaults/script\"},\"install\":{\"directory\":\"&{idm.install.dir}\"},\"project\":{\"directory\":\"&{idm.instance.dir}\"},\"project-script\":{\"directory\":\"&{idm.instance.dir}/script\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "939" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.734Z", + "time": 16, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 16 + } + }, + { + "_id": "e743b381506753be0f13b78ef7ba632d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1829, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "1829" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"secrets\",\"stores\":[{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}\",\"mappings\":[{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.default\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.config.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.password.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"],\"secretId\":\"idm.jwt.session.module.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}\"],\"secretId\":\"idm.jwt.session.module.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"selfservice\"],\"secretId\":\"idm.selfservice.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}\"],\"secretId\":\"idm.selfservice.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.assignment.attribute.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]}],\"providerName\":\"&{openidm.keystore.provider|SunJCE}\",\"storePassword\":\"&{openidm.keystore.password|changeit}\",\"storetype\":\"&{openidm.keystore.type|JCEKS}\"},\"name\":\"mainKeyStore\"},{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.truststore.location|&{idm.install.dir}/security/truststore}\",\"mappings\":[],\"providerName\":\"&{openidm.truststore.provider|SUN}\",\"storePassword\":\"&{openidm.truststore.password|changeit}\",\"storetype\":\"&{openidm.truststore.type|JKS}\"},\"name\":\"mainTrustStore\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/secrets" + }, + "response": { + "bodySize": 1829, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1829, + "text": "{\"_id\":\"secrets\",\"stores\":[{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}\",\"mappings\":[{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.default\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.config.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.password.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"],\"secretId\":\"idm.jwt.session.module.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}\"],\"secretId\":\"idm.jwt.session.module.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"selfservice\"],\"secretId\":\"idm.selfservice.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}\"],\"secretId\":\"idm.selfservice.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.assignment.attribute.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]}],\"providerName\":\"&{openidm.keystore.provider|SunJCE}\",\"storePassword\":\"&{openidm.keystore.password|changeit}\",\"storetype\":\"&{openidm.keystore.type|JCEKS}\"},\"name\":\"mainKeyStore\"},{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.truststore.location|&{idm.install.dir}/security/truststore}\",\"mappings\":[],\"providerName\":\"&{openidm.truststore.provider|SUN}\",\"storePassword\":\"&{openidm.truststore.password|changeit}\",\"storetype\":\"&{openidm.truststore.type|JKS}\"},\"name\":\"mainTrustStore\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1829" + } + ], + "headersSize": 2252, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.756Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "075665a037e3c1ea3d5c043d72cebd9b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 290, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "290" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 455, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"selfservice.kba\",\"kbaPropertyName\":\"kbaInfo\",\"minimumAnswersToDefine\":2,\"minimumAnswersToVerify\":1,\"questions\":{\"1\":{\"en\":\"What's your favorite color?\",\"en_GB\":\"What is your favourite colour?\",\"fr\":\"Quelle est votre couleur préférée?\"},\"2\":{\"en\":\"Who was your first employer?\"}}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.kba" + }, + "response": { + "bodySize": 290, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 290, + "text": "{\"_id\":\"selfservice.kba\",\"kbaPropertyName\":\"kbaInfo\",\"minimumAnswersToDefine\":2,\"minimumAnswersToVerify\":1,\"questions\":{\"1\":{\"en\":\"What's your favorite color?\",\"en_GB\":\"What is your favourite colour?\",\"fr\":\"Quelle est votre couleur préférée?\"},\"2\":{\"en\":\"Who was your first employer?\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "290" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.771Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "886ef232f84c623d0f2daf1d8668ce6e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 713, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "713" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 463, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"selfservice.propertymap\",\"properties\":[{\"source\":\"givenName\",\"target\":\"givenName\"},{\"source\":\"familyName\",\"target\":\"sn\"},{\"source\":\"email\",\"target\":\"mail\"},{\"condition\":\"/object/postalAddress pr\",\"source\":\"postalAddress\",\"target\":\"postalAddress\"},{\"condition\":\"/object/addressLocality pr\",\"source\":\"addressLocality\",\"target\":\"city\"},{\"condition\":\"/object/addressRegion pr\",\"source\":\"addressRegion\",\"target\":\"stateProvince\"},{\"condition\":\"/object/postalCode pr\",\"source\":\"postalCode\",\"target\":\"postalCode\"},{\"condition\":\"/object/country pr\",\"source\":\"country\",\"target\":\"country\"},{\"condition\":\"/object/phone pr\",\"source\":\"phone\",\"target\":\"telephoneNumber\"},{\"source\":\"username\",\"target\":\"userName\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.propertymap" + }, + "response": { + "bodySize": 713, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 713, + "text": "{\"_id\":\"selfservice.propertymap\",\"properties\":[{\"source\":\"givenName\",\"target\":\"givenName\"},{\"source\":\"familyName\",\"target\":\"sn\"},{\"source\":\"email\",\"target\":\"mail\"},{\"condition\":\"/object/postalAddress pr\",\"source\":\"postalAddress\",\"target\":\"postalAddress\"},{\"condition\":\"/object/addressLocality pr\",\"source\":\"addressLocality\",\"target\":\"city\"},{\"condition\":\"/object/addressRegion pr\",\"source\":\"addressRegion\",\"target\":\"stateProvince\"},{\"condition\":\"/object/postalCode pr\",\"source\":\"postalCode\",\"target\":\"postalCode\"},{\"condition\":\"/object/country pr\",\"source\":\"country\",\"target\":\"country\"},{\"condition\":\"/object/phone pr\",\"source\":\"phone\",\"target\":\"telephoneNumber\"},{\"source\":\"username\",\"target\":\"userName\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "713" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.783Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "6e5e53c9330c498d5a944251e0e8323f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 730, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "730" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 457, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"selfservice.terms\",\"active\":\"0.0\",\"uiConfig\":{\"buttonText\":\"Accept\",\"displayName\":\"We've updated our terms\",\"purpose\":\"You must accept the updated terms in order to proceed.\"},\"versions\":[{\"createDate\":\"2019-10-28T04:20:11.320Z\",\"termsTranslations\":{\"en\":\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"},\"version\":\"0.0\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.terms" + }, + "response": { + "bodySize": 730, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 730, + "text": "{\"_id\":\"selfservice.terms\",\"active\":\"0.0\",\"uiConfig\":{\"buttonText\":\"Accept\",\"displayName\":\"We've updated our terms\",\"purpose\":\"You must accept the updated terms in order to proceed.\"},\"versions\":[{\"createDate\":\"2019-10-28T04:20:11.320Z\",\"termsTranslations\":{\"en\":\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"},\"version\":\"0.0\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "730" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.797Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "3f77ccba1a46c8634dcf686cc6848c1a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 402, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "402" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"servletfilter/cors\",\"filterClass\":\"org.eclipse.jetty.ee10.servlets.CrossOriginFilter\",\"initParams\":{\"allowCredentials\":true,\"allowedHeaders\":\"accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with\",\"allowedMethods\":\"GET,POST,PUT,DELETE,PATCH\",\"allowedOrigins\":\"https://localhost:&{openidm.port.https}\",\"chainPreflight\":false},\"urlPatterns\":[\"/*\"]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/cors" + }, + "response": { + "bodySize": 402, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 402, + "text": "{\"_id\":\"servletfilter/cors\",\"filterClass\":\"org.eclipse.jetty.ee10.servlets.CrossOriginFilter\",\"initParams\":{\"allowCredentials\":true,\"allowedHeaders\":\"accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with\",\"allowedMethods\":\"GET,POST,PUT,DELETE,PATCH\",\"allowedOrigins\":\"https://localhost:&{openidm.port.https}\",\"chainPreflight\":false},\"urlPatterns\":[\"/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "402" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.813Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "11cc10c6d2f5a6faeed47d54f9af0abc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 191, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "191" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 461, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"servletfilter/payload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":5},\"urlPatterns\":[\"&{openidm.servlet.alias}/*\"]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/payload" + }, + "response": { + "bodySize": 191, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 191, + "text": "{\"_id\":\"servletfilter/payload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":5},\"urlPatterns\":[\"&{openidm.servlet.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "191" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.827Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "2cf4a8279922f2f68ba3daaf00d920cc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 198, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "198" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 460, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"servletfilter/upload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":50},\"urlPatterns\":[\"&{openidm.servlet.upload.alias}/*\"]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/upload" + }, + "response": { + "bodySize": 198, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 198, + "text": "{\"_id\":\"servletfilter/upload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":50},\"urlPatterns\":[\"&{openidm.servlet.upload.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "198" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.841Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "ffedaec2f8530b2951b4fe52409794b2", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 588, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "588" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 456, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui/configuration\",\"configuration\":{\"defaultNotificationType\":\"info\",\"forgotUsername\":false,\"lang\":\"en\",\"notificationTypes\":{\"error\":{\"iconPath\":\"images/notifications/error.png\",\"name\":\"common.notification.types.error\"},\"info\":{\"iconPath\":\"images/notifications/info.png\",\"name\":\"common.notification.types.info\"},\"warning\":{\"iconPath\":\"images/notifications/warning.png\",\"name\":\"common.notification.types.warning\"}},\"passwordReset\":false,\"passwordResetLink\":\"\",\"roles\":{\"internal/role/openidm-admin\":\"ui-admin\",\"internal/role/openidm-authorized\":\"ui-user\"},\"selfRegistration\":false}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/configuration" + }, + "response": { + "bodySize": 588, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 588, + "text": "{\"_id\":\"ui/configuration\",\"configuration\":{\"defaultNotificationType\":\"info\",\"forgotUsername\":false,\"lang\":\"en\",\"notificationTypes\":{\"error\":{\"iconPath\":\"images/notifications/error.png\",\"name\":\"common.notification.types.error\"},\"info\":{\"iconPath\":\"images/notifications/info.png\",\"name\":\"common.notification.types.info\"},\"warning\":{\"iconPath\":\"images/notifications/warning.png\",\"name\":\"common.notification.types.warning\"}},\"passwordReset\":false,\"passwordResetLink\":\"\",\"roles\":{\"internal/role/openidm-admin\":\"ui-admin\",\"internal/role/openidm-authorized\":\"ui-user\"},\"selfRegistration\":false}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "588" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.854Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "7ca95a1b42482427cd49ea83db0aecb0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2241, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2241" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui/dashboard\",\"adminDashboards\":[{\"isDefault\":true,\"name\":\"Quick Start\",\"widgets\":[{\"cards\":[{\"href\":\"#connectors/add/\",\"icon\":\"fa-database\",\"name\":\"Add Connector\"},{\"href\":\"#mapping/add/\",\"icon\":\"fa-map-marker\",\"name\":\"Create Mapping\"},{\"href\":\"#resource/managed/role/list/\",\"icon\":\"fa-check-square-o\",\"name\":\"Manage Roles\"},{\"href\":\"#managed/add/\",\"icon\":\"fa-tablet\",\"name\":\"Add Device\"},{\"href\":\"#selfservice/userregistration/\",\"icon\":\"fa-gear\",\"name\":\"Configure Registration\"},{\"href\":\"#selfservice/passwordreset/\",\"icon\":\"fa-gear\",\"name\":\"Configure Password Reset\"},{\"href\":\"#resource/managed/user/list/\",\"icon\":\"fa-user\",\"name\":\"Manage Users\"},{\"href\":\"#settings/\",\"icon\":\"fa-user\",\"name\":\"Configure System Preferences\"}],\"size\":\"large\",\"type\":\"quickStart\"}]},{\"isDefault\":false,\"name\":\"System Monitoring\",\"widgets\":[{\"legendRange\":{\"month\":[500,2500,5000],\"week\":[10,30,90,270,810],\"year\":[10000,40000,100000,250000]},\"maxRange\":\"#24423c\",\"minRange\":\"#b0d4cd\",\"size\":\"large\",\"type\":\"audit\"},{\"size\":\"large\",\"type\":\"clusterStatus\"},{\"size\":\"large\",\"type\":\"systemHealthFull\"},{\"barchart\":\"false\",\"size\":\"large\",\"type\":\"lastRecon\"}]},{\"isDefault\":false,\"name\":\"Resource Report\",\"widgets\":[{\"selected\":\"activeUsers\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"rolesEnabled\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"activeConnectors\",\"size\":\"x-small\",\"type\":\"counter\"},{\"size\":\"large\",\"type\":\"resourceList\"}]},{\"isDefault\":false,\"name\":\"Business Report\",\"widgets\":[{\"graphType\":\"fa-pie-chart\",\"providers\":[\"Username/Password\"],\"size\":\"x-small\",\"type\":\"signIns\",\"widgetTitle\":\"Sign-Ins\"},{\"graphType\":\"fa-bar-chart\",\"size\":\"x-small\",\"type\":\"passwordResets\",\"widgetTitle\":\"Password Resets\"},{\"graphType\":\"fa-line-chart\",\"providers\":[\"Username/Password\"],\"size\":\"x-small\",\"type\":\"newRegistrations\",\"widgetTitle\":\"New Registrations\"},{\"size\":\"x-small\",\"timezone\":{\"hours\":\"07\",\"minutes\":\"00\",\"negative\":true},\"type\":\"socialLogin\"},{\"selected\":\"socialEnabled\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"manualRegistrations\",\"size\":\"x-small\",\"type\":\"counter\"}]},{\"isDefault\":false,\"name\":\"seantestdashboard\",\"widgets\":[{\"size\":\"large\",\"type\":\"resourceList\"}]}],\"dashboard\":{\"widgets\":[{\"size\":\"large\",\"type\":\"Welcome\"}]}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/dashboard" + }, + "response": { + "bodySize": 2241, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 2241, + "text": "{\"_id\":\"ui/dashboard\",\"adminDashboards\":[{\"isDefault\":true,\"name\":\"Quick Start\",\"widgets\":[{\"cards\":[{\"href\":\"#connectors/add/\",\"icon\":\"fa-database\",\"name\":\"Add Connector\"},{\"href\":\"#mapping/add/\",\"icon\":\"fa-map-marker\",\"name\":\"Create Mapping\"},{\"href\":\"#resource/managed/role/list/\",\"icon\":\"fa-check-square-o\",\"name\":\"Manage Roles\"},{\"href\":\"#managed/add/\",\"icon\":\"fa-tablet\",\"name\":\"Add Device\"},{\"href\":\"#selfservice/userregistration/\",\"icon\":\"fa-gear\",\"name\":\"Configure Registration\"},{\"href\":\"#selfservice/passwordreset/\",\"icon\":\"fa-gear\",\"name\":\"Configure Password Reset\"},{\"href\":\"#resource/managed/user/list/\",\"icon\":\"fa-user\",\"name\":\"Manage Users\"},{\"href\":\"#settings/\",\"icon\":\"fa-user\",\"name\":\"Configure System Preferences\"}],\"size\":\"large\",\"type\":\"quickStart\"}]},{\"isDefault\":false,\"name\":\"System Monitoring\",\"widgets\":[{\"legendRange\":{\"month\":[500,2500,5000],\"week\":[10,30,90,270,810],\"year\":[10000,40000,100000,250000]},\"maxRange\":\"#24423c\",\"minRange\":\"#b0d4cd\",\"size\":\"large\",\"type\":\"audit\"},{\"size\":\"large\",\"type\":\"clusterStatus\"},{\"size\":\"large\",\"type\":\"systemHealthFull\"},{\"barchart\":\"false\",\"size\":\"large\",\"type\":\"lastRecon\"}]},{\"isDefault\":false,\"name\":\"Resource Report\",\"widgets\":[{\"selected\":\"activeUsers\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"rolesEnabled\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"activeConnectors\",\"size\":\"x-small\",\"type\":\"counter\"},{\"size\":\"large\",\"type\":\"resourceList\"}]},{\"isDefault\":false,\"name\":\"Business Report\",\"widgets\":[{\"graphType\":\"fa-pie-chart\",\"providers\":[\"Username/Password\"],\"size\":\"x-small\",\"type\":\"signIns\",\"widgetTitle\":\"Sign-Ins\"},{\"graphType\":\"fa-bar-chart\",\"size\":\"x-small\",\"type\":\"passwordResets\",\"widgetTitle\":\"Password Resets\"},{\"graphType\":\"fa-line-chart\",\"providers\":[\"Username/Password\"],\"size\":\"x-small\",\"type\":\"newRegistrations\",\"widgetTitle\":\"New Registrations\"},{\"size\":\"x-small\",\"timezone\":{\"hours\":\"07\",\"minutes\":\"00\",\"negative\":true},\"type\":\"socialLogin\"},{\"selected\":\"socialEnabled\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"manualRegistrations\",\"size\":\"x-small\",\"type\":\"counter\"}]},{\"isDefault\":false,\"name\":\"seantestdashboard\",\"widgets\":[{\"size\":\"large\",\"type\":\"resourceList\"}]}],\"dashboard\":{\"widgets\":[{\"size\":\"large\",\"type\":\"Welcome\"}]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.867Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "df3eb8ec5f2f8390ee9bda4e21313f01", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 891, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "891" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 450, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui/profile\",\"tabs\":[{\"name\":\"personalInfoTab\",\"view\":\"org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab\"},{\"name\":\"signInAndSecurity\",\"view\":\"org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab\"},{\"name\":\"preference\",\"view\":\"org/forgerock/openidm/ui/user/profile/PreferencesTab\"},{\"name\":\"trustedDevice\",\"view\":\"org/forgerock/openidm/ui/user/profile/TrustedDevicesTab\"},{\"name\":\"oauthApplication\",\"view\":\"org/forgerock/openidm/ui/user/profile/OauthApplicationsTab\"},{\"name\":\"privacyAndConsent\",\"view\":\"org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab\"},{\"name\":\"sharing\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/SharingTab\"},{\"name\":\"auditHistory\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/ActivityTab\"},{\"name\":\"accountControls\",\"view\":\"org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/profile" + }, + "response": { + "bodySize": 891, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 891, + "text": "{\"_id\":\"ui/profile\",\"tabs\":[{\"name\":\"personalInfoTab\",\"view\":\"org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab\"},{\"name\":\"signInAndSecurity\",\"view\":\"org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab\"},{\"name\":\"preference\",\"view\":\"org/forgerock/openidm/ui/user/profile/PreferencesTab\"},{\"name\":\"trustedDevice\",\"view\":\"org/forgerock/openidm/ui/user/profile/TrustedDevicesTab\"},{\"name\":\"oauthApplication\",\"view\":\"org/forgerock/openidm/ui/user/profile/OauthApplicationsTab\"},{\"name\":\"privacyAndConsent\",\"view\":\"org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab\"},{\"name\":\"sharing\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/SharingTab\"},{\"name\":\"auditHistory\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/ActivityTab\"},{\"name\":\"accountControls\",\"view\":\"org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "891" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.881Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "927933d6d1d6362ba93eab1026e492e6", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 421, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "421" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 454, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui/themeconfig\",\"icon\":\"favicon.ico\",\"path\":\"\",\"settings\":{\"footer\":{\"mailto\":\"info@pingidentity.com\"},\"loginLogo\":{\"alt\":\"Ping Identity\",\"height\":\"120px\",\"src\":\"images/login-logo-dark.png\",\"title\":\"Ping Identity\",\"width\":\"120px\"},\"logo\":{\"alt\":\"Ping Identity\",\"src\":\"images/logo-horizontal-white.png\",\"title\":\"Ping Identity\"}},\"stylesheets\":[\"css/bootstrap-3.4.1-custom.css\",\"css/structure.css\",\"css/theme.css\"]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/themeconfig" + }, + "response": { + "bodySize": 421, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 421, + "text": "{\"_id\":\"ui/themeconfig\",\"icon\":\"favicon.ico\",\"path\":\"\",\"settings\":{\"footer\":{\"mailto\":\"info@pingidentity.com\"},\"loginLogo\":{\"alt\":\"Ping Identity\",\"height\":\"120px\",\"src\":\"images/login-logo-dark.png\",\"title\":\"Ping Identity\",\"width\":\"120px\"},\"logo\":{\"alt\":\"Ping Identity\",\"src\":\"images/logo-horizontal-white.png\",\"title\":\"Ping Identity\"}},\"stylesheets\":[\"css/bootstrap-3.4.1-custom.css\",\"css/structure.css\",\"css/theme.css\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "421" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.892Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "f9398fa965ae2c914addd884d1c11499", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 244, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "244" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 456, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui.context/admin\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/admin/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/admin/extension\",\"responseHeaders\":{\"X-Frame-Options\":\"SAMEORIGIN\"},\"urlContextRoot\":\"/admin\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/admin" + }, + "response": { + "bodySize": 244, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 244, + "text": "{\"_id\":\"ui.context/admin\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/admin/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/admin/extension\",\"responseHeaders\":{\"X-Frame-Options\":\"SAMEORIGIN\"},\"urlContextRoot\":\"/admin\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "244" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.905Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "2531d9e46a98d59bb2310cfaf6e0c434", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 205, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "205" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 454, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui.context/api\",\"authEnabled\":true,\"cacheEnabled\":false,\"defaultDir\":\"&{idm.install.dir}/ui/api/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/api/extension\",\"urlContextRoot\":\"/api\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/api" + }, + "response": { + "bodySize": 205, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 205, + "text": "{\"_id\":\"ui.context/api\",\"authEnabled\":true,\"cacheEnabled\":false,\"defaultDir\":\"&{idm.install.dir}/ui/api/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/api/extension\",\"urlContextRoot\":\"/api\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "205" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.916Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "8e4d55d902fda9dcf6cb28a38f8b05c3", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 174, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "174" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui.context/enduser\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/enduser\",\"enabled\":true,\"responseHeaders\":{\"X-Frame-Options\":\"DENY\"},\"urlContextRoot\":\"/\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/enduser" + }, + "response": { + "bodySize": 174, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 174, + "text": "{\"_id\":\"ui.context/enduser\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/enduser\",\"enabled\":true,\"responseHeaders\":{\"X-Frame-Options\":\"DENY\"},\"urlContextRoot\":\"/\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "174" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.929Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "856e10b34afe79e55e6c6744c87c36e4", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 199, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "199" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 456, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui.context/oauth\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/oauth/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/oauth/extension\",\"urlContextRoot\":\"/oauthReturn\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/oauth" + }, + "response": { + "bodySize": 199, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 199, + "text": "{\"_id\":\"ui.context/oauth\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/oauth/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/oauth/extension\",\"urlContextRoot\":\"/oauthReturn\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "199" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.943Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "aae156524eceaac7659d29ccabfa6b7e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 169, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "169" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"webserver\",\"gzip\":{\"enabled\":true,\"includedMethods\":[\"GET\"]},\"maxThreads\":{\"$int\":\"&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver" + }, + "response": { + "bodySize": 169, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 169, + "text": "{\"_id\":\"webserver\",\"gzip\":{\"enabled\":true,\"includedMethods\":[\"GET\"]},\"maxThreads\":{\"$int\":\"&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "169" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.957Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "3b9fc03ddabd674233d649150dbf0931", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 128, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "128" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 463, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"webserver.listener/http\",\"enabled\":{\"$bool\":\"&{openidm.http.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.http|8080}\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/http" + }, + "response": { + "bodySize": 128, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 128, + "text": "{\"_id\":\"webserver.listener/http\",\"enabled\":{\"$bool\":\"&{openidm.http.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.http|8080}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "128" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.970Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "0ef4585bbfb32a7b30964a6d50210a3d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 217, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "217" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 464, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"webserver.listener/https\",\"enabled\":{\"$bool\":\"&{openidm.https.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.https|8443}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/https" + }, + "response": { + "bodySize": 217, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 217, + "text": "{\"_id\":\"webserver.listener/https\",\"enabled\":{\"$bool\":\"&{openidm.https.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.https|8443}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "217" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.983Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "50bbd6ee40df0dd745b9fec4c55bb37c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 250, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "250" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 469, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"webserver.listener/mutualAuth\",\"enabled\":{\"$bool\":\"&{openidm.mutualauth.enabled|true}\"},\"mutualAuth\":true,\"port\":{\"$int\":\"&{openidm.port.mutualauth|8444}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/mutualAuth" + }, + "response": { + "bodySize": 250, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 250, + "text": "{\"_id\":\"webserver.listener/mutualAuth\",\"enabled\":{\"$bool\":\"&{openidm.mutualauth.enabled|true}\"},\"mutualAuth\":true,\"port\":{\"$int\":\"&{openidm.port.mutualauth|8444}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:03 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "250" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:03.994Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "80df31f756ec3532329ed08ab69f20f3", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 28289, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "28289" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"managed\",\"objects\":[{\"lastSync\":{\"effectiveAssignmentsProperty\":\"effectiveAssignments\",\"lastSyncProperty\":\"lastSync\"},\"name\":\"user\",\"notifications\":{\"property\":\"_notifications\"},\"postDelete\":{\"source\":\"require('postDelete-idp-cleanup').removeConnectedIdpData(oldObject, resourceName, request);require('postDelete-notification-cleanup').removeConnectedNotificationData(oldObject, resourceName, request);\",\"type\":\"text/javascript\"},\"schema\":{\"$schema\":\"http://json-schema.org/draft-03/schema\",\"icon\":\"fa-user\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User\",\"mat-icon\":\"people\",\"order\":[\"_id\",\"userName\",\"password\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"roles\",\"assignments\",\"manager\",\"authzRoles\",\"reports\",\"effectiveRoles\",\"effectiveAssignments\",\"lastSync\",\"kbaInfo\",\"preferences\",\"consentedMappings\",\"ownerOfOrg\",\"adminOfOrg\",\"memberOfOrg\",\"memberOfOrgIDs\",\"activeDate\",\"inactiveDate\"],\"properties\":{\"_id\":{\"description\":\"User ID\",\"isPersonal\":false,\"policies\":[{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"}],\"searchable\":false,\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":false},\"accountStatus\":{\"default\":\"active\",\"description\":\"Status\",\"isPersonal\":false,\"policies\":[{\"params\":{\"regexp\":\"^(active|inactive)$\"},\"policyId\":\"regexpMatches\"}],\"searchable\":true,\"title\":\"Status\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"activeDate\":{\"description\":\"Active Date\",\"format\":\"datetime\",\"isPersonal\":false,\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":false,\"title\":\"Active Date\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"adminOfOrg\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"admins\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations I Administer\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"assignments\":{\"description\":\"Assignments\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Provisioning Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Assignment\",\"path\":\"managed/assignment\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"title\":\"Assignments Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Assignments\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"authzRoles\":{\"description\":\"Authorization Roles\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Authorization Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Internal Role\",\"path\":\"internal/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"authzMembers\",\"reverseRelationship\":true,\"title\":\"Authorization Roles Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Authorization Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"city\":{\"description\":\"City\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"City\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"consentedMappings\":{\"description\":\"Consented Mappings\",\"isPersonal\":false,\"isVirtual\":false,\"items\":{\"order\":[\"mapping\",\"consentDate\"],\"properties\":{\"consentDate\":{\"description\":\"Consent Date\",\"format\":\"datetime\",\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":true,\"title\":\"Consent Date\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"mapping\":{\"description\":\"Mapping\",\"searchable\":true,\"title\":\"Mapping\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true}},\"required\":[\"mapping\",\"consentDate\"],\"title\":\"Consented Mapping\",\"type\":\"object\"},\"returnByDefault\":false,\"searchable\":false,\"title\":\"Consented Mappings\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"country\":{\"description\":\"Country\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Country\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"description\":{\"description\":\"Description\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"effectiveAssignments\":{\"description\":\"Effective Assignments\",\"isPersonal\":false,\"isVirtual\":true,\"items\":{\"title\":\"Effective Assignments Items\",\"type\":\"object\"},\"queryConfig\":{\"referencedObjectFields\":[\"*\"],\"referencedRelationshipFields\":[[\"roles\",\"assignments\"],[\"assignments\"]]},\"returnByDefault\":true,\"title\":\"Effective Assignments\",\"type\":\"array\",\"usageDescription\":\"\",\"viewable\":false},\"effectiveRoles\":{\"description\":\"Effective Roles\",\"isPersonal\":false,\"isVirtual\":true,\"items\":{\"title\":\"Effective Roles Items\",\"type\":\"object\"},\"queryConfig\":{\"referencedRelationshipFields\":[\"roles\"]},\"returnByDefault\":true,\"title\":\"Effective Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"viewable\":false},\"givenName\":{\"description\":\"First Name\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"First Name\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"inactiveDate\":{\"description\":\"Inactive Date\",\"format\":\"datetime\",\"isPersonal\":false,\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":false,\"title\":\"Inactive Date\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"kbaInfo\":{\"description\":\"KBA Info\",\"isPersonal\":true,\"items\":{\"order\":[\"answer\",\"customQuestion\",\"questionId\"],\"properties\":{\"answer\":{\"description\":\"Answer\",\"type\":\"string\"},\"customQuestion\":{\"description\":\"Custom question\",\"type\":\"string\"},\"questionId\":{\"description\":\"Question ID\",\"type\":\"string\"}},\"required\":[],\"title\":\"KBA Info Items\",\"type\":\"object\"},\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"lastSync\":{\"description\":\"Last Sync timestamp\",\"isPersonal\":false,\"order\":[\"effectiveAssignments\",\"timestamp\"],\"properties\":{\"effectiveAssignments\":{\"description\":\"Effective Assignments\",\"items\":{\"title\":\"Effective Assignments Items\",\"type\":\"object\"},\"title\":\"Effective Assignments\",\"type\":\"array\"},\"timestamp\":{\"description\":\"Timestamp\",\"policies\":[{\"policyId\":\"valid-datetime\"}],\"type\":\"string\"}},\"required\":[],\"scope\":\"private\",\"searchable\":false,\"title\":\"Last Sync timestamp\",\"type\":\"object\",\"usageDescription\":\"\",\"viewable\":false},\"mail\":{\"description\":\"Email Address\",\"isPersonal\":true,\"policies\":[{\"policyId\":\"valid-email-address-format\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Email Address\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"manager\":{\"description\":\"Manager\",\"isPersonal\":false,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Manager _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"reports\",\"reverseRelationship\":true,\"searchable\":false,\"title\":\"Manager\",\"type\":\"relationship\",\"usageDescription\":\"\",\"userEditable\":false,\"validate\":true,\"viewable\":true},\"memberOfOrg\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":false,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations to which I Belong\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"memberOfOrgIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"org identifiers\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\",\"parentIDs\"],\"referencedRelationshipFields\":[\"memberOfOrg\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"MemberOfOrgIDs\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"ownerOfOrg\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"owners\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations I Own\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"password\":{\"description\":\"Password\",\"encryption\":{\"purpose\":\"idm.password.encryption\"},\"isPersonal\":false,\"isProtected\":true,\"policies\":[{\"params\":{\"minLength\":8},\"policyId\":\"minimum-length\"},{\"params\":{\"numCaps\":1},\"policyId\":\"at-least-X-capitals\"},{\"params\":{\"numNums\":1},\"policyId\":\"at-least-X-numbers\"},{\"params\":{\"disallowedFields\":[\"userName\",\"givenName\",\"sn\"]},\"policyId\":\"cannot-contain-others\"}],\"scope\":\"private\",\"searchable\":false,\"title\":\"Password\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"postalAddress\":{\"description\":\"Address 1\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Address 1\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"postalCode\":{\"description\":\"Postal Code\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Postal Code\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"preferences\":{\"description\":\"Preferences\",\"isPersonal\":false,\"order\":[\"updates\",\"marketing\"],\"properties\":{\"marketing\":{\"description\":\"Send me special offers and services\",\"type\":\"boolean\"},\"updates\":{\"description\":\"Send me news and updates\",\"type\":\"boolean\"}},\"required\":[],\"searchable\":false,\"title\":\"Preferences\",\"type\":\"object\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"reports\":{\"description\":\"Direct Reports\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Direct Reports Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"manager\",\"reverseRelationship\":true,\"title\":\"Direct Reports Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Direct Reports\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"roles\":{\"description\":\"Provisioning Roles\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:roles\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Provisioning Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Role\",\"path\":\"managed/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"title\":\"Provisioning Roles Items\",\"type\":\"relationship\",\"validate\":true},\"relationshipGrantTemporalConstraintsEnforced\":true,\"returnByDefault\":false,\"title\":\"Provisioning Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"sn\":{\"description\":\"Last Name\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Last Name\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"stateProvince\":{\"description\":\"State/Province\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"State/Province\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"telephoneNumber\":{\"description\":\"Telephone Number\",\"isPersonal\":true,\"pattern\":\"^\\\\+?([0-9\\\\- \\\\(\\\\)])*$\",\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Telephone Number\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"userName\":{\"description\":\"Username\",\"isPersonal\":true,\"policies\":[{\"policyId\":\"valid-username\"},{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"},{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Username\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true}},\"required\":[\"userName\",\"givenName\",\"sn\",\"mail\"],\"title\":\"User\",\"type\":\"object\",\"viewable\":true}},{\"name\":\"role\",\"onCreate\":{\"globals\":{},\"source\":\"//asdfasdfadsfasdf\",\"type\":\"text/javascript\"},\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"icon\":\"fa-check-square\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role\",\"mat-icon\":\"assignment_ind\",\"order\":[\"_id\",\"name\",\"description\",\"members\",\"assignments\",\"condition\",\"temporalConstraints\"],\"properties\":{\"_id\":{\"description\":\"Role ID\",\"searchable\":false,\"title\":\"Name\",\"type\":\"string\",\"viewable\":false},\"assignments\":{\"description\":\"Managed Assignments\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Managed Assignments Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Assignment\",\"path\":\"managed/assignment\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"roles\",\"reverseRelationship\":true,\"title\":\"Managed Assignments Items\",\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"members\"],\"returnByDefault\":false,\"title\":\"Managed Assignments\",\"type\":\"array\",\"viewable\":true},\"condition\":{\"description\":\"A conditional filter for this role\",\"isConditional\":true,\"searchable\":false,\"title\":\"Condition\",\"type\":\"string\",\"viewable\":false},\"description\":{\"description\":\"The role description, used for display purposes.\",\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"viewable\":true},\"members\":{\"description\":\"Role Members\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Role Members Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"roles\",\"reverseRelationship\":true,\"title\":\"Role Members Items\",\"type\":\"relationship\",\"validate\":true},\"relationshipGrantTemporalConstraintsEnforced\":true,\"returnByDefault\":false,\"title\":\"Role Members\",\"type\":\"array\",\"viewable\":true},\"name\":{\"description\":\"The role name, used for display purposes.\",\"policies\":[{\"policyId\":\"unique\"}],\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"viewable\":true},\"temporalConstraints\":{\"description\":\"An array of temporal constraints for a role\",\"isTemporalConstraint\":true,\"items\":{\"order\":[\"duration\"],\"properties\":{\"duration\":{\"description\":\"Duration\",\"type\":\"string\"}},\"required\":[\"duration\"],\"title\":\"Temporal Constraints Items\",\"type\":\"object\"},\"notifyRelationships\":[\"members\"],\"returnByDefault\":true,\"title\":\"Temporal Constraints\",\"type\":\"array\",\"viewable\":false}},\"required\":[\"name\"],\"title\":\"Role\",\"type\":\"object\"}},{\"attributeEncryption\":{},\"name\":\"assignment\",\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"description\":\"A role assignment\",\"icon\":\"fa-key\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment\",\"mat-icon\":\"vpn_key\",\"order\":[\"_id\",\"name\",\"description\",\"mapping\",\"attributes\",\"linkQualifiers\",\"roles\",\"members\",\"condition\",\"weight\"],\"properties\":{\"_id\":{\"description\":\"The assignment ID\",\"searchable\":false,\"title\":\"Name\",\"type\":\"string\",\"viewable\":false},\"attributes\":{\"description\":\"The attributes operated on by this assignment.\",\"items\":{\"order\":[\"assignmentOperation\",\"unassignmentOperation\",\"name\",\"value\"],\"properties\":{\"assignmentOperation\":{\"description\":\"Assignment operation\",\"type\":\"string\"},\"name\":{\"description\":\"Name\",\"type\":\"string\"},\"unassignmentOperation\":{\"description\":\"Unassignment operation\",\"type\":\"string\"},\"value\":{\"description\":\"Value\",\"type\":\"string\"}},\"required\":[],\"title\":\"Assignment Attributes Items\",\"type\":\"object\"},\"notifyRelationships\":[\"roles\",\"members\"],\"title\":\"Assignment Attributes\",\"type\":\"array\",\"viewable\":true},\"condition\":{\"description\":\"A conditional filter for this assignment\",\"isConditional\":true,\"searchable\":false,\"title\":\"Condition\",\"type\":\"string\",\"viewable\":false},\"description\":{\"description\":\"The assignment description, used for display purposes.\",\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"viewable\":true},\"linkQualifiers\":{\"description\":\"Conditional link qualifiers to restrict this assignment to.\",\"items\":{\"title\":\"Link Qualifiers Items\",\"type\":\"string\"},\"title\":\"Link Qualifiers\",\"type\":\"array\",\"viewable\":true},\"mapping\":{\"description\":\"The name of the mapping this assignment applies to\",\"policies\":[{\"policyId\":\"mapping-exists\"}],\"searchable\":true,\"title\":\"Mapping\",\"type\":\"string\",\"viewable\":true},\"members\":{\"description\":\"Assignment Members\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Assignment Members Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"assignments\",\"reverseRelationship\":true,\"title\":\"Assignment Members Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Assignment Members\",\"type\":\"array\",\"viewable\":true},\"name\":{\"description\":\"The assignment name, used for display purposes.\",\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"viewable\":true},\"roles\":{\"description\":\"Managed Roles\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Managed Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Role\",\"notify\":true,\"path\":\"managed/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"assignments\",\"reverseRelationship\":true,\"title\":\"Managed Roles Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Managed Roles\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"weight\":{\"description\":\"The weight of the assignment.\",\"notifyRelationships\":[\"roles\",\"members\"],\"searchable\":false,\"title\":\"Weight\",\"type\":[\"number\",\"null\"],\"viewable\":true}},\"required\":[\"name\",\"description\",\"mapping\"],\"title\":\"Assignment\",\"type\":\"object\"}},{\"name\":\"organization\",\"onCreate\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"onRead\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"description\":\"An organization or tenant, whose resources are managed by organizational admins.\",\"icon\":\"fa-building\",\"mat-icon\":\"domain\",\"order\":[\"name\",\"description\",\"owners\",\"admins\",\"members\",\"parent\",\"children\",\"adminIDs\",\"ownerIDs\",\"parentAdminIDs\",\"parentOwnerIDs\",\"parentIDs\"],\"properties\":{\"adminIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"admin ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\"],\"referencedRelationshipFields\":[\"admins\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"Admin user ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"admins\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":false,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"adminOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"children\"],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Administrators\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"children\":{\"description\":\"Child Organizations\",\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\",\"description\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"parent\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Child Organizations\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"description\":{\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"members\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"memberOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"searchable\":false,\"title\":\"Members\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"name\":{\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"ownerIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"owner ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\"],\"referencedRelationshipFields\":[\"owners\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"Owner user ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"owners\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":false,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"ownerOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"children\"],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Owner\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"parent\":{\"description\":\"Parent Organization\",\"notifyRelationships\":[\"children\",\"members\"],\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":false,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\",\"description\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"returnByDefault\":false,\"reversePropertyName\":\"children\",\"reverseRelationship\":true,\"searchable\":false,\"title\":\"Parent Organization\",\"type\":\"relationship\",\"userEditable\":false,\"validate\":true,\"viewable\":true},\"parentAdminIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"user ids of parent admins\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"adminIDs\",\"parentAdminIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"user ids of parent admins\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"parentIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"parent org ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\",\"parentIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"parent org ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"parentOwnerIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"user ids of parent owners\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"ownerIDs\",\"parentOwnerIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"user ids of parent owners\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false}},\"required\":[\"name\"],\"title\":\"Organization\",\"type\":\"object\"}},{\"name\":\"seantestmanagedobject\",\"schema\":{\"description\":null,\"icon\":\"fa-database\",\"mat-icon\":null,\"title\":null}}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/managed" + }, + "response": { + "bodySize": 28289, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 28289, + "text": "{\"_id\":\"managed\",\"objects\":[{\"lastSync\":{\"effectiveAssignmentsProperty\":\"effectiveAssignments\",\"lastSyncProperty\":\"lastSync\"},\"name\":\"user\",\"notifications\":{\"property\":\"_notifications\"},\"postDelete\":{\"source\":\"require('postDelete-idp-cleanup').removeConnectedIdpData(oldObject, resourceName, request);require('postDelete-notification-cleanup').removeConnectedNotificationData(oldObject, resourceName, request);\",\"type\":\"text/javascript\"},\"schema\":{\"$schema\":\"http://json-schema.org/draft-03/schema\",\"icon\":\"fa-user\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User\",\"mat-icon\":\"people\",\"order\":[\"_id\",\"userName\",\"password\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"roles\",\"assignments\",\"manager\",\"authzRoles\",\"reports\",\"effectiveRoles\",\"effectiveAssignments\",\"lastSync\",\"kbaInfo\",\"preferences\",\"consentedMappings\",\"ownerOfOrg\",\"adminOfOrg\",\"memberOfOrg\",\"memberOfOrgIDs\",\"activeDate\",\"inactiveDate\"],\"properties\":{\"_id\":{\"description\":\"User ID\",\"isPersonal\":false,\"policies\":[{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"}],\"searchable\":false,\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":false},\"accountStatus\":{\"default\":\"active\",\"description\":\"Status\",\"isPersonal\":false,\"policies\":[{\"params\":{\"regexp\":\"^(active|inactive)$\"},\"policyId\":\"regexpMatches\"}],\"searchable\":true,\"title\":\"Status\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"activeDate\":{\"description\":\"Active Date\",\"format\":\"datetime\",\"isPersonal\":false,\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":false,\"title\":\"Active Date\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"adminOfOrg\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"admins\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations I Administer\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"assignments\":{\"description\":\"Assignments\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Provisioning Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Assignment\",\"path\":\"managed/assignment\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"title\":\"Assignments Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Assignments\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"authzRoles\":{\"description\":\"Authorization Roles\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Authorization Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Internal Role\",\"path\":\"internal/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"authzMembers\",\"reverseRelationship\":true,\"title\":\"Authorization Roles Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Authorization Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"city\":{\"description\":\"City\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"City\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"consentedMappings\":{\"description\":\"Consented Mappings\",\"isPersonal\":false,\"isVirtual\":false,\"items\":{\"order\":[\"mapping\",\"consentDate\"],\"properties\":{\"consentDate\":{\"description\":\"Consent Date\",\"format\":\"datetime\",\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":true,\"title\":\"Consent Date\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"mapping\":{\"description\":\"Mapping\",\"searchable\":true,\"title\":\"Mapping\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true}},\"required\":[\"mapping\",\"consentDate\"],\"title\":\"Consented Mapping\",\"type\":\"object\"},\"returnByDefault\":false,\"searchable\":false,\"title\":\"Consented Mappings\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"country\":{\"description\":\"Country\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Country\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"description\":{\"description\":\"Description\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"effectiveAssignments\":{\"description\":\"Effective Assignments\",\"isPersonal\":false,\"isVirtual\":true,\"items\":{\"title\":\"Effective Assignments Items\",\"type\":\"object\"},\"queryConfig\":{\"referencedObjectFields\":[\"*\"],\"referencedRelationshipFields\":[[\"roles\",\"assignments\"],[\"assignments\"]]},\"returnByDefault\":true,\"title\":\"Effective Assignments\",\"type\":\"array\",\"usageDescription\":\"\",\"viewable\":false},\"effectiveRoles\":{\"description\":\"Effective Roles\",\"isPersonal\":false,\"isVirtual\":true,\"items\":{\"title\":\"Effective Roles Items\",\"type\":\"object\"},\"queryConfig\":{\"referencedRelationshipFields\":[\"roles\"]},\"returnByDefault\":true,\"title\":\"Effective Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"viewable\":false},\"givenName\":{\"description\":\"First Name\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"First Name\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"inactiveDate\":{\"description\":\"Inactive Date\",\"format\":\"datetime\",\"isPersonal\":false,\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":false,\"title\":\"Inactive Date\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"kbaInfo\":{\"description\":\"KBA Info\",\"isPersonal\":true,\"items\":{\"order\":[\"answer\",\"customQuestion\",\"questionId\"],\"properties\":{\"answer\":{\"description\":\"Answer\",\"type\":\"string\"},\"customQuestion\":{\"description\":\"Custom question\",\"type\":\"string\"},\"questionId\":{\"description\":\"Question ID\",\"type\":\"string\"}},\"required\":[],\"title\":\"KBA Info Items\",\"type\":\"object\"},\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"lastSync\":{\"description\":\"Last Sync timestamp\",\"isPersonal\":false,\"order\":[\"effectiveAssignments\",\"timestamp\"],\"properties\":{\"effectiveAssignments\":{\"description\":\"Effective Assignments\",\"items\":{\"title\":\"Effective Assignments Items\",\"type\":\"object\"},\"title\":\"Effective Assignments\",\"type\":\"array\"},\"timestamp\":{\"description\":\"Timestamp\",\"policies\":[{\"policyId\":\"valid-datetime\"}],\"type\":\"string\"}},\"required\":[],\"scope\":\"private\",\"searchable\":false,\"title\":\"Last Sync timestamp\",\"type\":\"object\",\"usageDescription\":\"\",\"viewable\":false},\"mail\":{\"description\":\"Email Address\",\"isPersonal\":true,\"policies\":[{\"policyId\":\"valid-email-address-format\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Email Address\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"manager\":{\"description\":\"Manager\",\"isPersonal\":false,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Manager _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"reports\",\"reverseRelationship\":true,\"searchable\":false,\"title\":\"Manager\",\"type\":\"relationship\",\"usageDescription\":\"\",\"userEditable\":false,\"validate\":true,\"viewable\":true},\"memberOfOrg\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":false,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations to which I Belong\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"memberOfOrgIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"org identifiers\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\",\"parentIDs\"],\"referencedRelationshipFields\":[\"memberOfOrg\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"MemberOfOrgIDs\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"ownerOfOrg\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"owners\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations I Own\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"password\":{\"description\":\"Password\",\"encryption\":{\"purpose\":\"idm.password.encryption\"},\"isPersonal\":false,\"isProtected\":true,\"policies\":[{\"params\":{\"minLength\":8},\"policyId\":\"minimum-length\"},{\"params\":{\"numCaps\":1},\"policyId\":\"at-least-X-capitals\"},{\"params\":{\"numNums\":1},\"policyId\":\"at-least-X-numbers\"},{\"params\":{\"disallowedFields\":[\"userName\",\"givenName\",\"sn\"]},\"policyId\":\"cannot-contain-others\"}],\"scope\":\"private\",\"searchable\":false,\"title\":\"Password\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"postalAddress\":{\"description\":\"Address 1\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Address 1\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"postalCode\":{\"description\":\"Postal Code\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Postal Code\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"preferences\":{\"description\":\"Preferences\",\"isPersonal\":false,\"order\":[\"updates\",\"marketing\"],\"properties\":{\"marketing\":{\"description\":\"Send me special offers and services\",\"type\":\"boolean\"},\"updates\":{\"description\":\"Send me news and updates\",\"type\":\"boolean\"}},\"required\":[],\"searchable\":false,\"title\":\"Preferences\",\"type\":\"object\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"reports\":{\"description\":\"Direct Reports\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Direct Reports Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"manager\",\"reverseRelationship\":true,\"title\":\"Direct Reports Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Direct Reports\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"roles\":{\"description\":\"Provisioning Roles\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:roles\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Provisioning Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Role\",\"path\":\"managed/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"title\":\"Provisioning Roles Items\",\"type\":\"relationship\",\"validate\":true},\"relationshipGrantTemporalConstraintsEnforced\":true,\"returnByDefault\":false,\"title\":\"Provisioning Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"sn\":{\"description\":\"Last Name\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Last Name\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"stateProvince\":{\"description\":\"State/Province\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"State/Province\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"telephoneNumber\":{\"description\":\"Telephone Number\",\"isPersonal\":true,\"pattern\":\"^\\\\+?([0-9\\\\- \\\\(\\\\)])*$\",\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Telephone Number\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"userName\":{\"description\":\"Username\",\"isPersonal\":true,\"policies\":[{\"policyId\":\"valid-username\"},{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"},{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Username\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true}},\"required\":[\"userName\",\"givenName\",\"sn\",\"mail\"],\"title\":\"User\",\"type\":\"object\",\"viewable\":true}},{\"name\":\"role\",\"onCreate\":{\"globals\":{},\"source\":\"//asdfasdfadsfasdf\",\"type\":\"text/javascript\"},\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"icon\":\"fa-check-square\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role\",\"mat-icon\":\"assignment_ind\",\"order\":[\"_id\",\"name\",\"description\",\"members\",\"assignments\",\"condition\",\"temporalConstraints\"],\"properties\":{\"_id\":{\"description\":\"Role ID\",\"searchable\":false,\"title\":\"Name\",\"type\":\"string\",\"viewable\":false},\"assignments\":{\"description\":\"Managed Assignments\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Managed Assignments Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Assignment\",\"path\":\"managed/assignment\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"roles\",\"reverseRelationship\":true,\"title\":\"Managed Assignments Items\",\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"members\"],\"returnByDefault\":false,\"title\":\"Managed Assignments\",\"type\":\"array\",\"viewable\":true},\"condition\":{\"description\":\"A conditional filter for this role\",\"isConditional\":true,\"searchable\":false,\"title\":\"Condition\",\"type\":\"string\",\"viewable\":false},\"description\":{\"description\":\"The role description, used for display purposes.\",\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"viewable\":true},\"members\":{\"description\":\"Role Members\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Role Members Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"roles\",\"reverseRelationship\":true,\"title\":\"Role Members Items\",\"type\":\"relationship\",\"validate\":true},\"relationshipGrantTemporalConstraintsEnforced\":true,\"returnByDefault\":false,\"title\":\"Role Members\",\"type\":\"array\",\"viewable\":true},\"name\":{\"description\":\"The role name, used for display purposes.\",\"policies\":[{\"policyId\":\"unique\"}],\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"viewable\":true},\"temporalConstraints\":{\"description\":\"An array of temporal constraints for a role\",\"isTemporalConstraint\":true,\"items\":{\"order\":[\"duration\"],\"properties\":{\"duration\":{\"description\":\"Duration\",\"type\":\"string\"}},\"required\":[\"duration\"],\"title\":\"Temporal Constraints Items\",\"type\":\"object\"},\"notifyRelationships\":[\"members\"],\"returnByDefault\":true,\"title\":\"Temporal Constraints\",\"type\":\"array\",\"viewable\":false}},\"required\":[\"name\"],\"title\":\"Role\",\"type\":\"object\"}},{\"attributeEncryption\":{},\"name\":\"assignment\",\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"description\":\"A role assignment\",\"icon\":\"fa-key\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment\",\"mat-icon\":\"vpn_key\",\"order\":[\"_id\",\"name\",\"description\",\"mapping\",\"attributes\",\"linkQualifiers\",\"roles\",\"members\",\"condition\",\"weight\"],\"properties\":{\"_id\":{\"description\":\"The assignment ID\",\"searchable\":false,\"title\":\"Name\",\"type\":\"string\",\"viewable\":false},\"attributes\":{\"description\":\"The attributes operated on by this assignment.\",\"items\":{\"order\":[\"assignmentOperation\",\"unassignmentOperation\",\"name\",\"value\"],\"properties\":{\"assignmentOperation\":{\"description\":\"Assignment operation\",\"type\":\"string\"},\"name\":{\"description\":\"Name\",\"type\":\"string\"},\"unassignmentOperation\":{\"description\":\"Unassignment operation\",\"type\":\"string\"},\"value\":{\"description\":\"Value\",\"type\":\"string\"}},\"required\":[],\"title\":\"Assignment Attributes Items\",\"type\":\"object\"},\"notifyRelationships\":[\"roles\",\"members\"],\"title\":\"Assignment Attributes\",\"type\":\"array\",\"viewable\":true},\"condition\":{\"description\":\"A conditional filter for this assignment\",\"isConditional\":true,\"searchable\":false,\"title\":\"Condition\",\"type\":\"string\",\"viewable\":false},\"description\":{\"description\":\"The assignment description, used for display purposes.\",\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"viewable\":true},\"linkQualifiers\":{\"description\":\"Conditional link qualifiers to restrict this assignment to.\",\"items\":{\"title\":\"Link Qualifiers Items\",\"type\":\"string\"},\"title\":\"Link Qualifiers\",\"type\":\"array\",\"viewable\":true},\"mapping\":{\"description\":\"The name of the mapping this assignment applies to\",\"policies\":[{\"policyId\":\"mapping-exists\"}],\"searchable\":true,\"title\":\"Mapping\",\"type\":\"string\",\"viewable\":true},\"members\":{\"description\":\"Assignment Members\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Assignment Members Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"assignments\",\"reverseRelationship\":true,\"title\":\"Assignment Members Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Assignment Members\",\"type\":\"array\",\"viewable\":true},\"name\":{\"description\":\"The assignment name, used for display purposes.\",\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"viewable\":true},\"roles\":{\"description\":\"Managed Roles\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Managed Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Role\",\"notify\":true,\"path\":\"managed/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"assignments\",\"reverseRelationship\":true,\"title\":\"Managed Roles Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Managed Roles\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"weight\":{\"description\":\"The weight of the assignment.\",\"notifyRelationships\":[\"roles\",\"members\"],\"searchable\":false,\"title\":\"Weight\",\"type\":[\"number\",\"null\"],\"viewable\":true}},\"required\":[\"name\",\"description\",\"mapping\"],\"title\":\"Assignment\",\"type\":\"object\"}},{\"name\":\"organization\",\"onCreate\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"onRead\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"description\":\"An organization or tenant, whose resources are managed by organizational admins.\",\"icon\":\"fa-building\",\"mat-icon\":\"domain\",\"order\":[\"name\",\"description\",\"owners\",\"admins\",\"members\",\"parent\",\"children\",\"adminIDs\",\"ownerIDs\",\"parentAdminIDs\",\"parentOwnerIDs\",\"parentIDs\"],\"properties\":{\"adminIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"admin ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\"],\"referencedRelationshipFields\":[\"admins\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"Admin user ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"admins\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":false,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"adminOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"children\"],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Administrators\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"children\":{\"description\":\"Child Organizations\",\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\",\"description\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"parent\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Child Organizations\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"description\":{\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"members\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"memberOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"searchable\":false,\"title\":\"Members\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"name\":{\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"ownerIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"owner ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\"],\"referencedRelationshipFields\":[\"owners\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"Owner user ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"owners\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":false,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"ownerOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"children\"],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Owner\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"parent\":{\"description\":\"Parent Organization\",\"notifyRelationships\":[\"children\",\"members\"],\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":false,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\",\"description\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"returnByDefault\":false,\"reversePropertyName\":\"children\",\"reverseRelationship\":true,\"searchable\":false,\"title\":\"Parent Organization\",\"type\":\"relationship\",\"userEditable\":false,\"validate\":true,\"viewable\":true},\"parentAdminIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"user ids of parent admins\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"adminIDs\",\"parentAdminIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"user ids of parent admins\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"parentIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"parent org ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\",\"parentIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"parent org ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"parentOwnerIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"user ids of parent owners\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"ownerIDs\",\"parentOwnerIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"user ids of parent owners\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false}},\"required\":[\"name\"],\"title\":\"Organization\",\"type\":\"object\"}},{\"name\":\"seantestmanagedobject\",\"schema\":{\"description\":null,\"icon\":\"fa-database\",\"mat-icon\":null,\"title\":null}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:04 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:04.012Z", + "time": 26, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 26 + } + }, + { + "_id": "047f43a49dff3686ec2e9da2c2dd2a16", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 743, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "743" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 471, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/forgottenUsername\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

\",\"fr\":\"{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Account Information - username\",\"fr\":\"Informations sur le compte - nom d'utilisateur\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/forgottenUsername" + }, + "response": { + "bodySize": 743, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 743, + "text": "{\"_id\":\"emailTemplate/forgottenUsername\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

\",\"fr\":\"{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Account Information - username\",\"fr\":\"Informations sur le compte - nom d'utilisateur\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:04 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "743" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:04.046Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "63b37e07e202b68dc9889582625abf16", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 431, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "431" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 466, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/registration\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

This is your registration email.

Email verification link

\",\"fr\":\"

Ceci est votre mail d'inscription.

Lien de vérification email

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Register new account\",\"fr\":\"Créer un nouveau compte\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/registration" + }, + "response": { + "bodySize": 431, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 431, + "text": "{\"_id\":\"emailTemplate/registration\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

This is your registration email.

Email verification link

\",\"fr\":\"

Ceci est votre mail d'inscription.

Lien de vérification email

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Register new account\",\"fr\":\"Créer un nouveau compte\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:04 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "431" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:04.058Z", + "time": 6, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 6 + } + }, + { + "_id": "6f03115777dabeb2ee464972baac6d91", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 455, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "455" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 467, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/resetPassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Click to reset your password

Password reset link

\",\"fr\":\"

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Reset your password\",\"fr\":\"Réinitialisez votre mot de passe\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/resetPassword" + }, + "response": { + "bodySize": 455, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 455, + "text": "{\"_id\":\"emailTemplate/resetPassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Click to reset your password

Password reset link

\",\"fr\":\"

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Reset your password\",\"fr\":\"Réinitialisez votre mot de passe\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:04 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "455" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:04.071Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "45e0b48dbb5854c86c7df3d75efcda80", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 273, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/updatePassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Verify email to update password

Update password link

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Update your password\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/updatePassword" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 273, + "text": "{\"_id\":\"emailTemplate/updatePassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Verify email to update password

Update password link

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Update your password\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:04 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "273" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:04.084Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "fbc9263fd25ddd47ab77bcc419cd03de", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 420, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "420" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 461, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/welcome\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Welcome to OpenIDM. Your username is '{{object.userName}}'.

\",\"fr\":\"

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Your account has been created\",\"fr\":\"Votre compte vient d’être créé !\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/welcome" + }, + "response": { + "bodySize": 420, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 420, + "text": "{\"_id\":\"emailTemplate/welcome\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Welcome to OpenIDM. Your username is '{{object.userName}}'.

\",\"fr\":\"

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Your account has been created\",\"fr\":\"Votre compte vient d’être créé !\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:04 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "420" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:04.095Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "7c48e2a73c469f7244310b21bcde6ca8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 886, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "886" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"mapping/mappingtest\",\"consentRequired\":false,\"displayName\":\"mappingtest\",\"icon\":null,\"name\":\"mappingtest\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"target\":\"managed/organization\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/mapping/mappingtest" + }, + "response": { + "bodySize": 886, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 886, + "text": "{\"_id\":\"mapping/mappingtest\",\"consentRequired\":false,\"displayName\":\"mappingtest\",\"icon\":null,\"name\":\"mappingtest\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"target\":\"managed/organization\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:04 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "886" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:04.110Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "ec97f6cf2cdee9bb3bb97a78c4058574", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 795, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "795" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 463, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"mapping/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"target\":\"managed/organization\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/mapping/seantestmapping" + }, + "response": { + "bodySize": 795, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 795, + "text": "{\"_id\":\"mapping/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"target\":\"managed/organization\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:04 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "795" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:04.124Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "4c1fef66c916c8940b0315dddc564b06", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 423, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 811, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 811, + "text": "[\"H4sIAAAAAAAA/w==\",\"7VfRjqIwFP2XPpP47ltH0ZDFkgV5MBtDOlBJJ9iytE7WNf77tiOziztlKErcfeDBROHc0yvec+7xBBKagSkQR5YCB+xxWVKWCzD9dmrcmewxwznJgirHjP7EknKW1NdCXhBVmXImCJMh+X6gFVGFO1wI4oCMirLAR4T3RJF181BFBKbsUBQOYLZFJS9oSsmlbZxqBJieQF7wZ9WFent2gOCHKtV0k4kgmEkipKqUx1Jfk+SHnLzgVyzSipYSaDyVB3xhAnD15C3jII7UjcEOUF80o4O3GgVxOHOTlRdFHlre3G9ecf561OQlFxLexdBsz9QXgNEGzcA1cBHEaJ5AP3ThfJP4HvrizrurYvQ1hr638OzAUDWzRDZY3UASIH/TDV3DcOmuE0UchDbU9S9mjYe+nywD5HYjZwFaeOHKhvTtcVuc/RS5aA3OWzUXFS9JJS+q2zaGoZbmhDf0qmmUj8CdJNUFLnGVE9mAV1rKugE724nqgas/8ucXksohfKiNuJ8xtbEYnerTRz3cOJhd7EGTc5uee8jO2ln66u0TRx1E/31s6Mrf7hRh5141qVQY59osWygEzdleqfGdNhbq5J4abWVpF2RrSc+cgEW206+updY3HrzzXnPfGhHMbH0XuFU/98jiH23+AX6FMTM8LDPg38rta1ZO/21s8reDNoq/7OyP5739ObI2sI91Bsv6CBojwhgRHhkRHqo5p2NHmzR5lWHMUcN42D2pw4awPYDYVI8yH2X+SJmbk/v/qfjLFt6efwHCOyj+nhQAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:04.137Z", + "time": 6, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 6 + } + }, + { + "_id": "2eb6e1b577722143657744b884f00830", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 5283, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "5283" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"mappings\":[{\"_id\":\"sync/managedOrganization_managedRole\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedRole\",\"icon\":null,\"name\":\"managedOrganization_managedRole\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[],\"target\":\"managed/role\"},{\"_id\":\"sync/managedOrganization_managedSeantestmanagedobject\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedSeantestmanagedobject\",\"icon\":null,\"name\":\"managedOrganization_managedSeantestmanagedobject\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[\"managedOrganization_managedRole\"],\"target\":\"managed/seantestmanagedobject\"},{\"_id\":\"sync/managedAssignment_managedUser\",\"consentRequired\":false,\"displayName\":\"managedAssignment_managedUser\",\"icon\":null,\"name\":\"managedAssignment_managedUser\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"groovy\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\"],\"target\":\"managed/user\"},{\"_id\":\"sync/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\"],\"target\":\"managed/organization\"},{\"_id\":\"sync/managedSeantestmanagedobject_managedUser\",\"consentRequired\":false,\"displayName\":\"managedSeantestmanagedobject_managedUser\",\"icon\":null,\"name\":\"managedSeantestmanagedobject_managedUser\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/seantestmanagedobject\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\",\"seantestmapping\"],\"target\":\"managed/user\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 5296, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 5296, + "text": "{\"_id\":\"sync\",\"mappings\":[{\"_id\":\"sync/managedOrganization_managedRole\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedRole\",\"icon\":null,\"name\":\"managedOrganization_managedRole\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[],\"target\":\"managed/role\"},{\"_id\":\"sync/managedOrganization_managedSeantestmanagedobject\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedSeantestmanagedobject\",\"icon\":null,\"name\":\"managedOrganization_managedSeantestmanagedobject\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[\"managedOrganization_managedRole\"],\"target\":\"managed/seantestmanagedobject\"},{\"_id\":\"sync/managedAssignment_managedUser\",\"consentRequired\":false,\"displayName\":\"managedAssignment_managedUser\",\"icon\":null,\"name\":\"managedAssignment_managedUser\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"groovy\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\"],\"target\":\"managed/user\"},{\"_id\":\"sync/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\"],\"target\":\"managed/organization\"},{\"_id\":\"sync/managedSeantestmanagedobject_managedUser\",\"consentRequired\":false,\"displayName\":\"managedSeantestmanagedobject_managedUser\",\"icon\":null,\"name\":\"managedSeantestmanagedobject_managedUser\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/seantestmanagedobject\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\",\"seantestmapping\"],\"target\":\"managed/user\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:04 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:04.152Z", + "time": 17, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 17 + } + }, + { + "_id": "06a9e9e17e68d3d259468e8f2a3eda67", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 5265, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "5265" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"mappings\":[{\"_id\":\"sync/managedOrganization_managedRole\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedRole\",\"icon\":null,\"name\":\"managedOrganization_managedRole\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[],\"target\":\"managed/role\"},{\"_id\":\"sync/managedOrganization_managedSeantestmanagedobject\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedSeantestmanagedobject\",\"icon\":null,\"name\":\"managedOrganization_managedSeantestmanagedobject\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[\"managedOrganization_managedRole\"],\"target\":\"managed/seantestmanagedobject\"},{\"_id\":\"sync/managedAssignment_managedUser\",\"consentRequired\":false,\"displayName\":\"managedAssignment_managedUser\",\"icon\":null,\"name\":\"managedAssignment_managedUser\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"groovy\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\"],\"target\":\"managed/user\"},{\"_id\":\"sync/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\"],\"target\":\"managed/organization\"},{\"_id\":\"sync/managedSeantestmanagedobject_managedUser\",\"consentRequired\":false,\"displayName\":\"managedSeantestmanagedobject_managedUser\",\"icon\":null,\"name\":\"managedSeantestmanagedobject_managedUser\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/seantestmanagedobject\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\"],\"target\":\"managed/user\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 5278, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 5278, + "text": "{\"_id\":\"sync\",\"mappings\":[{\"_id\":\"sync/managedOrganization_managedRole\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedRole\",\"icon\":null,\"name\":\"managedOrganization_managedRole\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[],\"target\":\"managed/role\"},{\"_id\":\"sync/managedOrganization_managedSeantestmanagedobject\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedSeantestmanagedobject\",\"icon\":null,\"name\":\"managedOrganization_managedSeantestmanagedobject\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[\"managedOrganization_managedRole\"],\"target\":\"managed/seantestmanagedobject\"},{\"_id\":\"sync/managedAssignment_managedUser\",\"consentRequired\":false,\"displayName\":\"managedAssignment_managedUser\",\"icon\":null,\"name\":\"managedAssignment_managedUser\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"groovy\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\"],\"target\":\"managed/user\"},{\"_id\":\"sync/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\"],\"target\":\"managed/organization\"},{\"_id\":\"sync/managedSeantestmanagedobject_managedUser\",\"consentRequired\":false,\"displayName\":\"managedSeantestmanagedobject_managedUser\",\"icon\":null,\"name\":\"managedSeantestmanagedobject_managedUser\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/seantestmanagedobject\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\"],\"target\":\"managed/user\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:04 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:04.230Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "6787041b9e28fc782af01d1a938d5c61", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 117, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "117" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 460, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"openidm-admin\",\"condition\":null,\"description\":\"Administrative access\",\"name\":\"openidm-admin\",\"privileges\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role/openidm-admin" + }, + "response": { + "bodySize": 193, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 193, + "text": "{\"_id\":\"openidm-admin\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8114\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-admin\",\"description\":\"Administrative access\",\"temporalConstraints\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:04 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8114\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "193" + } + ], + "headersSize": 2254, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:04.245Z", + "time": 18, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 18 + } + }, + { + "_id": "4b1a0a65d562ca6a9f68f3aa3364e99c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 124, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "124" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 465, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"openidm-authorized\",\"condition\":null,\"description\":\"Basic minimum user\",\"name\":\"openidm-authorized\",\"privileges\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role/openidm-authorized" + }, + "response": { + "bodySize": 200, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 200, + "text": "{\"_id\":\"openidm-authorized\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8115\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-authorized\",\"description\":\"Basic minimum user\",\"temporalConstraints\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:04 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8115\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "200" + } + ], + "headersSize": 2254, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:04.270Z", + "time": 68, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 68 + } + }, + { + "_id": "2bfff6c7e2c8069aca3368f98758ec42", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 123, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "123" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"openidm-cert\",\"condition\":null,\"description\":\"Authenticated via certificate\",\"name\":\"openidm-cert\",\"privileges\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role/openidm-cert" + }, + "response": { + "bodySize": 199, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 199, + "text": "{\"_id\":\"openidm-cert\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8116\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-cert\",\"description\":\"Authenticated via certificate\",\"temporalConstraints\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:04 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8116\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "199" + } + ], + "headersSize": 2254, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:04.343Z", + "time": 14, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 14 + } + }, + { + "_id": "75d6976246a9dc1f1ab1849bbcfbcc40", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 108, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "108" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"openidm-reg\",\"condition\":null,\"description\":\"Anonymous access\",\"name\":\"openidm-reg\",\"privileges\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role/openidm-reg" + }, + "response": { + "bodySize": 184, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 184, + "text": "{\"_id\":\"openidm-reg\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8117\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-reg\",\"description\":\"Anonymous access\",\"temporalConstraints\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:04 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8117\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "184" + } + ], + "headersSize": 2254, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:04.362Z", + "time": 13, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 13 + } + }, + { + "_id": "2b8a77d0354a870267b704fc6f7b358f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 146, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "146" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"openidm-tasks-manager\",\"condition\":null,\"description\":\"Allowed to reassign workflow tasks\",\"name\":\"openidm-tasks-manager\",\"privileges\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role/openidm-tasks-manager" + }, + "response": { + "bodySize": 222, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 222, + "text": "{\"_id\":\"openidm-tasks-manager\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8118\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-tasks-manager\",\"description\":\"Allowed to reassign workflow tasks\",\"temporalConstraints\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:04 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8118\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "222" + } + ], + "headersSize": 2254, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:04.380Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "ee2c366c33d54481795486a93f74a3a7", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 140, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-6021aced-bde8-4c73-bb3a-c0aaf6dde5a1" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "140" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"platform-provisioning\",\"condition\":null,\"description\":\"Platform provisioning access\",\"name\":\"platform-provisioning\",\"privileges\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role/platform-provisioning" + }, + "response": { + "bodySize": 216, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 216, + "text": "{\"_id\":\"platform-provisioning\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8119\",\"privileges\":[],\"condition\":null,\"name\":\"platform-provisioning\",\"description\":\"Platform provisioning access\",\"temporalConstraints\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:26:04 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8119\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "216" + } + ], + "headersSize": 2254, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:26:04.395Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/config_603940551/import_288002260/0_af_m_950605143/openidm_3290118515/recording.har b/test/e2e/mocks/config_603940551/import_288002260/0_af_m_950605143/openidm_3290118515/recording.har new file mode 100644 index 000000000..11c6a5d6f --- /dev/null +++ b/test/e2e/mocks/config_603940551/import_288002260/0_af_m_950605143/openidm_3290118515/recording.har @@ -0,0 +1,9821 @@ +{ + "log": { + "_recordingName": "config/import/0_af_m/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "de3566e649dc89e93a6365b0fdaecd4e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 393, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/serverinfo/*" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:35 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T18:52:35.732Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "3f3b03432a833cfcbe27438276bb566b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "accept-api-version", + "value": "resource=2.0, protocol=1.0" + }, + { + "name": "x-openam-username", + "value": "openidm-admin" + }, + { + "name": "x-openam-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 507, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/realms/root/authenticate" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:35 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T18:52:35.750Z", + "time": 3, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 3 + } + }, + { + "_id": "ea1a070c27903f4e71c8acb5d274be1e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 6159, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "6159" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"access\",\"configs\":[{\"actions\":\"\",\"methods\":\"read\",\"pattern\":\"health\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"info/*\",\"roles\":\"*\"},{\"actions\":\"login,logout\",\"methods\":\"read,action\",\"pattern\":\"authentication\",\"roles\":\"*\"},{\"actions\":\"validate\",\"methods\":\"action\",\"pattern\":\"util/validateQueryFilter\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/themeconfig\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/theme-*\",\"roles\":\"*\"},{\"actions\":\"*\",\"customAuthz\":\"checkIfAnyFeatureEnabled(['registration', 'passwordReset'])\",\"methods\":\"read\",\"pattern\":\"config/selfservice/kbaConfig\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/dashboard\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"query\",\"pattern\":\"info/features\",\"roles\":\"*\"},{\"actions\":\"listPrivileges\",\"methods\":\"action\",\"pattern\":\"privilege\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"privilege/*\",\"roles\":\"*\"},{\"actions\":\"submitRequirements\",\"methods\":\"read,action\",\"pattern\":\"selfservice/termsAndConditions\",\"roles\":\"*\"},{\"actions\":\"submitRequirements\",\"methods\":\"read,action\",\"pattern\":\"selfservice/kbaUpdate\",\"roles\":\"*\"},{\"actions\":\"\",\"customAuthz\":\"isMyProfile()\",\"methods\":\"read,query\",\"pattern\":\"profile/*\",\"roles\":\"*\"},{\"actions\":\"*\",\"customAuthz\":\"checkIfAnyFeatureEnabled('kba')\",\"methods\":\"read\",\"pattern\":\"selfservice/kba\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"schema/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"action,query\",\"pattern\":\"consent\",\"roles\":\"internal/role/openidm-authorized\"},{\"customAuthz\":\"checkIfApiRequest()\",\"methods\":\"read\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"excludePatterns\":\"repo,repo/*\",\"methods\":\"*\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"\",\"methods\":\"create,read,update,delete,patch,query\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"methods\":\"script\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"test,testConfig,createconfiguration,liveSync,authenticate\",\"methods\":\"action\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"customAuthz\":\"disallowCommandAction()\",\"methods\":\"*\",\"pattern\":\"repo\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"customAuthz\":\"disallowCommandAction()\",\"methods\":\"*\",\"pattern\":\"repo/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"command\",\"customAuthz\":\"request.additionalParameters.commandId === 'delete-mapping-links'\",\"methods\":\"action\",\"pattern\":\"repo/link\",\"roles\":\"internal/role/openidm-admin\"},{\"methods\":\"create,read,query,patch\",\"pattern\":\"managed/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read,query\",\"pattern\":\"internal/role/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"create,read,action,update\",\"pattern\":\"profile/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"read,action\",\"pattern\":\"policy/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"schema/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"action,query\",\"pattern\":\"consent\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"selfservice/kba\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"selfservice/terms\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"sendTemplate\",\"methods\":\"action\",\"pattern\":\"external/email\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"authenticate\",\"methods\":\"action\",\"pattern\":\"system/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"read,action\",\"pattern\":\"policy/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"reauthenticate\",\"methods\":\"action\",\"pattern\":\"authentication\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"bind,unbind\",\"customAuthz\":\"ownDataOnly()\",\"methods\":\"read,action,delete\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"patch\",\"customAuthz\":\"ownDataOnly() && onlyEditableManagedObjectProperties('user', []) && reauthIfProtectedAttributeChange()\",\"methods\":\"update,patch,action\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"endpoint/getprocessesforuser\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"query\",\"pattern\":\"endpoint/gettasksview\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"complete\",\"customAuthz\":\"isMyTask()\",\"methods\":\"action\",\"pattern\":\"workflow/taskinstance/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"canUpdateTask()\",\"methods\":\"read,update\",\"pattern\":\"workflow/taskinstance/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"isAllowedToStartProcess()\",\"methods\":\"create\",\"pattern\":\"workflow/processinstance\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"read\",\"methods\":\"*\",\"pattern\":\"workflow/processdefinition/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"customAuthz\":\"restrictPatchToFields(['password'])\",\"methods\":\"patch\",\"pattern\":\"managed/user/*\",\"roles\":\"internal/role/openidm-cert\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipProperty('_meta', false)\",\"methods\":\"read\",\"pattern\":\"internal/usermeta/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipProperty('_notifications', true)\",\"methods\":\"read,delete\",\"pattern\":\"internal/notification/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipCollection(['idps','_meta','_notifications'])\",\"methods\":\"read,query\",\"pattern\":\"managed/user/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"deleteNotificationsForTarget\",\"customAuthz\":\"request.additionalParameters.target === (context.security.authorization.component + '/' + context.security.authorization.id)\",\"methods\":\"action\",\"pattern\":\"notification\",\"roles\":\"internal/role/openidm-authorized\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/access" + }, + "response": { + "bodySize": 6159, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 6159, + "text": "{\"_id\":\"access\",\"configs\":[{\"actions\":\"\",\"methods\":\"read\",\"pattern\":\"health\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"info/*\",\"roles\":\"*\"},{\"actions\":\"login,logout\",\"methods\":\"read,action\",\"pattern\":\"authentication\",\"roles\":\"*\"},{\"actions\":\"validate\",\"methods\":\"action\",\"pattern\":\"util/validateQueryFilter\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/themeconfig\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/theme-*\",\"roles\":\"*\"},{\"actions\":\"*\",\"customAuthz\":\"checkIfAnyFeatureEnabled(['registration', 'passwordReset'])\",\"methods\":\"read\",\"pattern\":\"config/selfservice/kbaConfig\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/dashboard\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"query\",\"pattern\":\"info/features\",\"roles\":\"*\"},{\"actions\":\"listPrivileges\",\"methods\":\"action\",\"pattern\":\"privilege\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"privilege/*\",\"roles\":\"*\"},{\"actions\":\"submitRequirements\",\"methods\":\"read,action\",\"pattern\":\"selfservice/termsAndConditions\",\"roles\":\"*\"},{\"actions\":\"submitRequirements\",\"methods\":\"read,action\",\"pattern\":\"selfservice/kbaUpdate\",\"roles\":\"*\"},{\"actions\":\"\",\"customAuthz\":\"isMyProfile()\",\"methods\":\"read,query\",\"pattern\":\"profile/*\",\"roles\":\"*\"},{\"actions\":\"*\",\"customAuthz\":\"checkIfAnyFeatureEnabled('kba')\",\"methods\":\"read\",\"pattern\":\"selfservice/kba\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"schema/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"action,query\",\"pattern\":\"consent\",\"roles\":\"internal/role/openidm-authorized\"},{\"customAuthz\":\"checkIfApiRequest()\",\"methods\":\"read\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"excludePatterns\":\"repo,repo/*\",\"methods\":\"*\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"\",\"methods\":\"create,read,update,delete,patch,query\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"methods\":\"script\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"test,testConfig,createconfiguration,liveSync,authenticate\",\"methods\":\"action\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"customAuthz\":\"disallowCommandAction()\",\"methods\":\"*\",\"pattern\":\"repo\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"customAuthz\":\"disallowCommandAction()\",\"methods\":\"*\",\"pattern\":\"repo/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"command\",\"customAuthz\":\"request.additionalParameters.commandId === 'delete-mapping-links'\",\"methods\":\"action\",\"pattern\":\"repo/link\",\"roles\":\"internal/role/openidm-admin\"},{\"methods\":\"create,read,query,patch\",\"pattern\":\"managed/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read,query\",\"pattern\":\"internal/role/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"create,read,action,update\",\"pattern\":\"profile/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"read,action\",\"pattern\":\"policy/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"schema/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"action,query\",\"pattern\":\"consent\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"selfservice/kba\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"selfservice/terms\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"sendTemplate\",\"methods\":\"action\",\"pattern\":\"external/email\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"authenticate\",\"methods\":\"action\",\"pattern\":\"system/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"read,action\",\"pattern\":\"policy/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"reauthenticate\",\"methods\":\"action\",\"pattern\":\"authentication\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"bind,unbind\",\"customAuthz\":\"ownDataOnly()\",\"methods\":\"read,action,delete\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"patch\",\"customAuthz\":\"ownDataOnly() && onlyEditableManagedObjectProperties('user', []) && reauthIfProtectedAttributeChange()\",\"methods\":\"update,patch,action\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"endpoint/getprocessesforuser\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"query\",\"pattern\":\"endpoint/gettasksview\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"complete\",\"customAuthz\":\"isMyTask()\",\"methods\":\"action\",\"pattern\":\"workflow/taskinstance/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"canUpdateTask()\",\"methods\":\"read,update\",\"pattern\":\"workflow/taskinstance/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"isAllowedToStartProcess()\",\"methods\":\"create\",\"pattern\":\"workflow/processinstance\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"read\",\"methods\":\"*\",\"pattern\":\"workflow/processdefinition/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"customAuthz\":\"restrictPatchToFields(['password'])\",\"methods\":\"patch\",\"pattern\":\"managed/user/*\",\"roles\":\"internal/role/openidm-cert\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipProperty('_meta', false)\",\"methods\":\"read\",\"pattern\":\"internal/usermeta/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipProperty('_notifications', true)\",\"methods\":\"read,delete\",\"pattern\":\"internal/notification/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipCollection(['idps','_meta','_notifications'])\",\"methods\":\"read,query\",\"pattern\":\"managed/user/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"deleteNotificationsForTarget\",\"customAuthz\":\"request.additionalParameters.target === (context.security.authorization.component + '/' + context.security.authorization.id)\",\"methods\":\"action\",\"pattern\":\"notification\",\"roles\":\"internal/role/openidm-authorized\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:35 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:35.762Z", + "time": 51, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 51 + } + }, + { + "_id": "1a0ce7aa1d685f1d6105fc3fb872f60d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 659, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "659" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 450, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"apiVersion\",\"warning\":{\"enabled\":{\"$bool\":\"&{openidm.apiVersion.warning.enabled|false}\"},\"includeScripts\":{\"$bool\":\"&{openidm.apiVersion.warning.includeScripts|false}\"},\"logFilterResourcePaths\":[\"audit\",\"authentication\",\"cluster\",\"config\",\"consent\",\"csv\",\"external/rest\",\"identityProviders\",\"info\",\"internal\",\"internal/role\",\"internal/user\",\"internal/usermeta\",\"managed\",\"managed/assignment\",\"managed/organization\",\"managed/role\",\"managed/user\",\"notification\",\"policy\",\"privilege\",\"profile\",\"recon\",\"recon/assoc\",\"repo\",\"selfservice/kba\",\"selfservice/terms\",\"scheduler/job\",\"scheduler/trigger\",\"schema\",\"sync\",\"sync/mappings\",\"system\",\"taskscanner\"]}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/apiVersion" + }, + "response": { + "bodySize": 659, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 659, + "text": "{\"_id\":\"apiVersion\",\"warning\":{\"enabled\":{\"$bool\":\"&{openidm.apiVersion.warning.enabled|false}\"},\"includeScripts\":{\"$bool\":\"&{openidm.apiVersion.warning.includeScripts|false}\"},\"logFilterResourcePaths\":[\"audit\",\"authentication\",\"cluster\",\"config\",\"consent\",\"csv\",\"external/rest\",\"identityProviders\",\"info\",\"internal\",\"internal/role\",\"internal/user\",\"internal/usermeta\",\"managed\",\"managed/assignment\",\"managed/organization\",\"managed/role\",\"managed/user\",\"notification\",\"policy\",\"privilege\",\"profile\",\"recon\",\"recon/assoc\",\"repo\",\"selfservice/kba\",\"selfservice/terms\",\"scheduler/job\",\"scheduler/trigger\",\"schema\",\"sync\",\"sync/mappings\",\"system\",\"taskscanner\"]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:35 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "659" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:35.819Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "b6f4684a6808d67f5addd3251973f9ad", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2216, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2216" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"audit\",\"auditServiceConfig\":{\"availableAuditEventHandlers\":[\"org.forgerock.audit.handlers.csv.CsvAuditEventHandler\",\"org.forgerock.audit.handlers.jms.JmsAuditEventHandler\",\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RouterAuditEventHandler\",\"org.forgerock.audit.handlers.syslog.SyslogAuditEventHandler\"],\"caseInsensitiveFields\":[\"/access/http/request/headers\",\"/access/http/response/headers\"],\"filterPolicies\":{\"field\":{\"excludeIf\":[],\"includeIf\":[]}},\"handlerForQueries\":\"json\"},\"eventHandlers\":[{\"class\":\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"config\":{\"buffering\":{\"maxSize\":100000,\"writeInterval\":\"100 millis\"},\"enabled\":{\"$bool\":\"&{openidm.audit.handler.json.enabled|true}\"},\"logDirectory\":\"&{idm.data.dir}/audit\",\"name\":\"json\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.stdout.enabled|false}\"},\"name\":\"stdout\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.repo.enabled|false}\"},\"name\":\"repo\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}}],\"eventTopics\":{\"access\":{\"defaultEvents\":true,\"filter\":{\"script\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"}},\"name\":\"access\"},\"activity\":{\"defaultEvents\":true,\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]},\"name\":\"activity\",\"passwordFields\":[\"password\"],\"watchedFields\":[]},\"authentication\":{\"defaultEvents\":true,\"filter\":{\"script\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"}},\"name\":\"authentication\"},\"config\":{\"defaultEvents\":true,\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]},\"name\":\"config\"},\"recon\":{\"defaultEvents\":true,\"name\":\"recon\"},\"sync\":{\"defaultEvents\":true,\"name\":\"sync\"}},\"exceptionFormatter\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/audit" + }, + "response": { + "bodySize": 2216, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 2216, + "text": "{\"_id\":\"audit\",\"auditServiceConfig\":{\"availableAuditEventHandlers\":[\"org.forgerock.audit.handlers.csv.CsvAuditEventHandler\",\"org.forgerock.audit.handlers.jms.JmsAuditEventHandler\",\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RouterAuditEventHandler\",\"org.forgerock.audit.handlers.syslog.SyslogAuditEventHandler\"],\"caseInsensitiveFields\":[\"/access/http/request/headers\",\"/access/http/response/headers\"],\"filterPolicies\":{\"field\":{\"excludeIf\":[],\"includeIf\":[]}},\"handlerForQueries\":\"json\"},\"eventHandlers\":[{\"class\":\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"config\":{\"buffering\":{\"maxSize\":100000,\"writeInterval\":\"100 millis\"},\"enabled\":{\"$bool\":\"&{openidm.audit.handler.json.enabled|true}\"},\"logDirectory\":\"&{idm.data.dir}/audit\",\"name\":\"json\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.stdout.enabled|false}\"},\"name\":\"stdout\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.repo.enabled|false}\"},\"name\":\"repo\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}}],\"eventTopics\":{\"access\":{\"defaultEvents\":true,\"filter\":{\"script\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"}},\"name\":\"access\"},\"activity\":{\"defaultEvents\":true,\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]},\"name\":\"activity\",\"passwordFields\":[\"password\"],\"watchedFields\":[]},\"authentication\":{\"defaultEvents\":true,\"filter\":{\"script\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"}},\"name\":\"authentication\"},\"config\":{\"defaultEvents\":true,\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]},\"name\":\"config\"},\"recon\":{\"defaultEvents\":true,\"name\":\"recon\"},\"sync\":{\"defaultEvents\":true,\"name\":\"sync\"}},\"exceptionFormatter\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:35 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:35.832Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "3322bf0192ae7a058cb5bce4e4518614", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1661, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "1661" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 455, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"authentication\",\"serverAuthContext\":{\"authModules\":[{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"augmentSecurityContext\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-reg\"],\"password\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"fzE1J3P9LZOmuCuecCDnaQ==\",\"iv\":\"nhI8UHymNRChGIyOC+5Sag==\",\"keySize\":32,\"mac\":\"XfF7VE/o5Shv6AqW1Xe3TQ==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"v0NHakffrjBJNL3zjhEOtg==\",\"stableId\":\"openidm-sym-default\"}}},\"queryOnResource\":\"internal/user\",\"username\":\"anonymous\"}},{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"defaultUserRoles\":[\"internal/role/openidm-authorized\",\"internal/role/openidm-admin\"],\"password\":\"&{openidm.admin.password}\",\"queryOnResource\":\"internal/user\",\"username\":\"openidm-admin\"}},{\"enabled\":true,\"name\":\"MANAGED_USER\",\"properties\":{\"augmentSecurityContext\":{\"source\":\"var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield);\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-authorized\"],\"propertyMapping\":{\"additionalUserFields\":[\"adminOfOrg\",\"ownerOfOrg\"],\"authenticationId\":\"username\",\"userCredential\":\"password\",\"userRoles\":\"authzRoles\"},\"queryId\":\"credential-query\",\"queryOnResource\":\"managed/user\"}}],\"sessionModule\":{\"name\":\"JWT_SESSION\",\"properties\":{\"enableDynamicRoles\":false,\"isHttpOnly\":true,\"maxTokenLifeMinutes\":120,\"sessionOnly\":true,\"tokenIdleTimeMinutes\":30}}}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/authentication" + }, + "response": { + "bodySize": 1661, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1661, + "text": "{\"_id\":\"authentication\",\"serverAuthContext\":{\"authModules\":[{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"augmentSecurityContext\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-reg\"],\"password\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"fzE1J3P9LZOmuCuecCDnaQ==\",\"iv\":\"nhI8UHymNRChGIyOC+5Sag==\",\"keySize\":32,\"mac\":\"XfF7VE/o5Shv6AqW1Xe3TQ==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"v0NHakffrjBJNL3zjhEOtg==\",\"stableId\":\"openidm-sym-default\"}}},\"queryOnResource\":\"internal/user\",\"username\":\"anonymous\"}},{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"defaultUserRoles\":[\"internal/role/openidm-authorized\",\"internal/role/openidm-admin\"],\"password\":\"&{openidm.admin.password}\",\"queryOnResource\":\"internal/user\",\"username\":\"openidm-admin\"}},{\"enabled\":true,\"name\":\"MANAGED_USER\",\"properties\":{\"augmentSecurityContext\":{\"source\":\"var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield);\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-authorized\"],\"propertyMapping\":{\"additionalUserFields\":[\"adminOfOrg\",\"ownerOfOrg\"],\"authenticationId\":\"username\",\"userCredential\":\"password\",\"userRoles\":\"authzRoles\"},\"queryId\":\"credential-query\",\"queryOnResource\":\"managed/user\"}}],\"sessionModule\":{\"name\":\"JWT_SESSION\",\"properties\":{\"enableDynamicRoles\":false,\"isHttpOnly\":true,\"maxTokenLifeMinutes\":120,\"sessionOnly\":true,\"tokenIdleTimeMinutes\":30}}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:35 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1661" + } + ], + "headersSize": 2252, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:35.846Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "cffcfbec868c6d577abdd6dfb2546c66", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 179, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "179" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"cluster\",\"enabled\":true,\"instanceCheckInInterval\":5000,\"instanceCheckInOffset\":0,\"instanceId\":\"&{openidm.node.id}\",\"instanceRecoveryTimeout\":30000,\"instanceTimeout\":30000}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/cluster" + }, + "response": { + "bodySize": 179, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 179, + "text": "{\"_id\":\"cluster\",\"enabled\":true,\"instanceCheckInInterval\":5000,\"instanceCheckInOffset\":0,\"instanceId\":\"&{openidm.node.id}\",\"instanceRecoveryTimeout\":30000,\"instanceTimeout\":30000}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:35 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "179" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:35.858Z", + "time": 6, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 6 + } + }, + { + "_id": "ffb92165ac6b6a54193c1984e5d08a82", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 116, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "116" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 474, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/getavailableuserstoassign\",\"file\":\"workflow/getavailableuserstoassign.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getavailableuserstoassign" + }, + "response": { + "bodySize": 116, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 116, + "text": "{\"_id\":\"endpoint/getavailableuserstoassign\",\"file\":\"workflow/getavailableuserstoassign.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:35 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "116" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:35.870Z", + "time": 16, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 16 + } + }, + { + "_id": "67f7c32d59739e6e62de077c4ac38587", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 104, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "104" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/getprocessesforuser\",\"file\":\"workflow/getprocessesforuser.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getprocessesforuser" + }, + "response": { + "bodySize": 104, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 104, + "text": "{\"_id\":\"endpoint/getprocessesforuser\",\"file\":\"workflow/getprocessesforuser.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:35 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "104" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:35.890Z", + "time": 45, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 45 + } + }, + { + "_id": "a58bd28b08317f836ebe6fc592eea139", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 90, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "90" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 460, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/gettasksview\",\"file\":\"workflow/gettasksview.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/gettasksview" + }, + "response": { + "bodySize": 90, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 90, + "text": "{\"_id\":\"endpoint/gettasksview\",\"file\":\"workflow/gettasksview.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:35 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "90" + } + ], + "headersSize": 2250, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:35.941Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "190fb94af98292c04b2a125fbed0f974", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 121, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "121" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 463, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/mappingDetails\",\"context\":\"endpoint/mappingDetails\",\"file\":\"mappingDetails.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/mappingDetails" + }, + "response": { + "bodySize": 121, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 121, + "text": "{\"_id\":\"endpoint/mappingDetails\",\"context\":\"endpoint/mappingDetails\",\"file\":\"mappingDetails.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:35 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "121" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:35.953Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "7caf7b29cf8511e14fac45895389c849", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 109, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "109" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/oauthproxy\",\"context\":\"endpoint/oauthproxy\",\"file\":\"oauthProxy.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/oauthproxy" + }, + "response": { + "bodySize": 109, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 109, + "text": "{\"_id\":\"endpoint/oauthproxy\",\"context\":\"endpoint/oauthproxy\",\"file\":\"oauthProxy.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:35 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "109" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:35.967Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "765c2ef8259b3e3418e7c3a5a5b10c3e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 126, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "126" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 480, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/removeRepoPathFromRelationships\",\"file\":\"update/removeRepoPathFromRelationships.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/removeRepoPathFromRelationships" + }, + "response": { + "bodySize": 126, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 126, + "text": "{\"_id\":\"endpoint/removeRepoPathFromRelationships\",\"file\":\"update/removeRepoPathFromRelationships.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:35 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "126" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:35.979Z", + "time": 13, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 13 + } + }, + { + "_id": "4bdc8b47251097ee4051909112972e59", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 91, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "91" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 462, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/repairMetadata\",\"file\":\"meta/metadataScanner.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/repairMetadata" + }, + "response": { + "bodySize": 91, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 91, + "text": "{\"_id\":\"endpoint/repairMetadata\",\"file\":\"meta/metadataScanner.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:35 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "91" + } + ], + "headersSize": 2250, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:35.997Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "d2deb2d1663797facc0aec2b49b105d0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 144, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "144" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 489, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/updateInternalUserAndInternalRoleEntries\",\"file\":\"update/updateInternalUserAndInternalRoleEntries.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/updateInternalUserAndInternalRoleEntries" + }, + "response": { + "bodySize": 144, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 144, + "text": "{\"_id\":\"endpoint/updateInternalUserAndInternalRoleEntries\",\"file\":\"update/updateInternalUserAndInternalRoleEntries.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "144" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.010Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "09f96900530f528cc6caad3270bdf518", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 326, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "326" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/validateQueryFilter\",\"context\":\"util/validateQueryFilter\",\"source\":\"try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } };\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/validateQueryFilter" + }, + "response": { + "bodySize": 326, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 326, + "text": "{\"_id\":\"endpoint/validateQueryFilter\",\"context\":\"util/validateQueryFilter\",\"source\":\"try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } };\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "326" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.023Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "1835c2635e9c3818cf24fd460159b6e7", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 86, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "86" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 452, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"external.rest\",\"hostnameVerifier\":\"&{openidm.external.rest.hostnameVerifier}\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/external.rest" + }, + "response": { + "bodySize": 86, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 86, + "text": "{\"_id\":\"external.rest\",\"hostnameVerifier\":\"&{openidm.external.rest.hostnameVerifier}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "86" + } + ], + "headersSize": 2250, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.036Z", + "time": 6, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 6 + } + }, + { + "_id": "c3e432390b418bf9a27e761d92966735", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 353, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "353" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"internal\",\"objects\":[{\"name\":\"role\",\"properties\":{\"authzMembers\":{\"items\":{\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}]}}}},{\"name\":\"notification\",\"properties\":{\"target\":{\"reversePropertyName\":\"_notifications\"}}}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/internal" + }, + "response": { + "bodySize": 353, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 353, + "text": "{\"_id\":\"internal\",\"objects\":[{\"name\":\"role\",\"properties\":{\"authzMembers\":{\"items\":{\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}]}}}},{\"name\":\"notification\",\"properties\":{\"target\":{\"reversePropertyName\":\"_notifications\"}}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "353" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.048Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "80df31f756ec3532329ed08ab69f20f3", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 28289, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "28289" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"managed\",\"objects\":[{\"lastSync\":{\"effectiveAssignmentsProperty\":\"effectiveAssignments\",\"lastSyncProperty\":\"lastSync\"},\"name\":\"user\",\"notifications\":{\"property\":\"_notifications\"},\"postDelete\":{\"source\":\"require('postDelete-idp-cleanup').removeConnectedIdpData(oldObject, resourceName, request);require('postDelete-notification-cleanup').removeConnectedNotificationData(oldObject, resourceName, request);\",\"type\":\"text/javascript\"},\"schema\":{\"$schema\":\"http://json-schema.org/draft-03/schema\",\"icon\":\"fa-user\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User\",\"mat-icon\":\"people\",\"order\":[\"_id\",\"userName\",\"password\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"roles\",\"assignments\",\"manager\",\"authzRoles\",\"reports\",\"effectiveRoles\",\"effectiveAssignments\",\"lastSync\",\"kbaInfo\",\"preferences\",\"consentedMappings\",\"ownerOfOrg\",\"adminOfOrg\",\"memberOfOrg\",\"memberOfOrgIDs\",\"activeDate\",\"inactiveDate\"],\"properties\":{\"_id\":{\"description\":\"User ID\",\"isPersonal\":false,\"policies\":[{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"}],\"searchable\":false,\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":false},\"accountStatus\":{\"default\":\"active\",\"description\":\"Status\",\"isPersonal\":false,\"policies\":[{\"params\":{\"regexp\":\"^(active|inactive)$\"},\"policyId\":\"regexpMatches\"}],\"searchable\":true,\"title\":\"Status\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"activeDate\":{\"description\":\"Active Date\",\"format\":\"datetime\",\"isPersonal\":false,\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":false,\"title\":\"Active Date\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"adminOfOrg\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"admins\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations I Administer\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"assignments\":{\"description\":\"Assignments\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Provisioning Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Assignment\",\"path\":\"managed/assignment\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"title\":\"Assignments Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Assignments\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"authzRoles\":{\"description\":\"Authorization Roles\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Authorization Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Internal Role\",\"path\":\"internal/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"authzMembers\",\"reverseRelationship\":true,\"title\":\"Authorization Roles Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Authorization Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"city\":{\"description\":\"City\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"City\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"consentedMappings\":{\"description\":\"Consented Mappings\",\"isPersonal\":false,\"isVirtual\":false,\"items\":{\"order\":[\"mapping\",\"consentDate\"],\"properties\":{\"consentDate\":{\"description\":\"Consent Date\",\"format\":\"datetime\",\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":true,\"title\":\"Consent Date\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"mapping\":{\"description\":\"Mapping\",\"searchable\":true,\"title\":\"Mapping\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true}},\"required\":[\"mapping\",\"consentDate\"],\"title\":\"Consented Mapping\",\"type\":\"object\"},\"returnByDefault\":false,\"searchable\":false,\"title\":\"Consented Mappings\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"country\":{\"description\":\"Country\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Country\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"description\":{\"description\":\"Description\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"effectiveAssignments\":{\"description\":\"Effective Assignments\",\"isPersonal\":false,\"isVirtual\":true,\"items\":{\"title\":\"Effective Assignments Items\",\"type\":\"object\"},\"queryConfig\":{\"referencedObjectFields\":[\"*\"],\"referencedRelationshipFields\":[[\"roles\",\"assignments\"],[\"assignments\"]]},\"returnByDefault\":true,\"title\":\"Effective Assignments\",\"type\":\"array\",\"usageDescription\":\"\",\"viewable\":false},\"effectiveRoles\":{\"description\":\"Effective Roles\",\"isPersonal\":false,\"isVirtual\":true,\"items\":{\"title\":\"Effective Roles Items\",\"type\":\"object\"},\"queryConfig\":{\"referencedRelationshipFields\":[\"roles\"]},\"returnByDefault\":true,\"title\":\"Effective Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"viewable\":false},\"givenName\":{\"description\":\"First Name\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"First Name\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"inactiveDate\":{\"description\":\"Inactive Date\",\"format\":\"datetime\",\"isPersonal\":false,\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":false,\"title\":\"Inactive Date\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"kbaInfo\":{\"description\":\"KBA Info\",\"isPersonal\":true,\"items\":{\"order\":[\"answer\",\"customQuestion\",\"questionId\"],\"properties\":{\"answer\":{\"description\":\"Answer\",\"type\":\"string\"},\"customQuestion\":{\"description\":\"Custom question\",\"type\":\"string\"},\"questionId\":{\"description\":\"Question ID\",\"type\":\"string\"}},\"required\":[],\"title\":\"KBA Info Items\",\"type\":\"object\"},\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"lastSync\":{\"description\":\"Last Sync timestamp\",\"isPersonal\":false,\"order\":[\"effectiveAssignments\",\"timestamp\"],\"properties\":{\"effectiveAssignments\":{\"description\":\"Effective Assignments\",\"items\":{\"title\":\"Effective Assignments Items\",\"type\":\"object\"},\"title\":\"Effective Assignments\",\"type\":\"array\"},\"timestamp\":{\"description\":\"Timestamp\",\"policies\":[{\"policyId\":\"valid-datetime\"}],\"type\":\"string\"}},\"required\":[],\"scope\":\"private\",\"searchable\":false,\"title\":\"Last Sync timestamp\",\"type\":\"object\",\"usageDescription\":\"\",\"viewable\":false},\"mail\":{\"description\":\"Email Address\",\"isPersonal\":true,\"policies\":[{\"policyId\":\"valid-email-address-format\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Email Address\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"manager\":{\"description\":\"Manager\",\"isPersonal\":false,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Manager _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"reports\",\"reverseRelationship\":true,\"searchable\":false,\"title\":\"Manager\",\"type\":\"relationship\",\"usageDescription\":\"\",\"userEditable\":false,\"validate\":true,\"viewable\":true},\"memberOfOrg\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":false,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations to which I Belong\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"memberOfOrgIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"org identifiers\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\",\"parentIDs\"],\"referencedRelationshipFields\":[\"memberOfOrg\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"MemberOfOrgIDs\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"ownerOfOrg\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"owners\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations I Own\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"password\":{\"description\":\"Password\",\"encryption\":{\"purpose\":\"idm.password.encryption\"},\"isPersonal\":false,\"isProtected\":true,\"policies\":[{\"params\":{\"minLength\":8},\"policyId\":\"minimum-length\"},{\"params\":{\"numCaps\":1},\"policyId\":\"at-least-X-capitals\"},{\"params\":{\"numNums\":1},\"policyId\":\"at-least-X-numbers\"},{\"params\":{\"disallowedFields\":[\"userName\",\"givenName\",\"sn\"]},\"policyId\":\"cannot-contain-others\"}],\"scope\":\"private\",\"searchable\":false,\"title\":\"Password\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"postalAddress\":{\"description\":\"Address 1\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Address 1\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"postalCode\":{\"description\":\"Postal Code\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Postal Code\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"preferences\":{\"description\":\"Preferences\",\"isPersonal\":false,\"order\":[\"updates\",\"marketing\"],\"properties\":{\"marketing\":{\"description\":\"Send me special offers and services\",\"type\":\"boolean\"},\"updates\":{\"description\":\"Send me news and updates\",\"type\":\"boolean\"}},\"required\":[],\"searchable\":false,\"title\":\"Preferences\",\"type\":\"object\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"reports\":{\"description\":\"Direct Reports\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Direct Reports Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"manager\",\"reverseRelationship\":true,\"title\":\"Direct Reports Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Direct Reports\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"roles\":{\"description\":\"Provisioning Roles\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:roles\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Provisioning Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Role\",\"path\":\"managed/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"title\":\"Provisioning Roles Items\",\"type\":\"relationship\",\"validate\":true},\"relationshipGrantTemporalConstraintsEnforced\":true,\"returnByDefault\":false,\"title\":\"Provisioning Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"sn\":{\"description\":\"Last Name\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Last Name\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"stateProvince\":{\"description\":\"State/Province\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"State/Province\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"telephoneNumber\":{\"description\":\"Telephone Number\",\"isPersonal\":true,\"pattern\":\"^\\\\+?([0-9\\\\- \\\\(\\\\)])*$\",\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Telephone Number\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"userName\":{\"description\":\"Username\",\"isPersonal\":true,\"policies\":[{\"policyId\":\"valid-username\"},{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"},{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Username\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true}},\"required\":[\"userName\",\"givenName\",\"sn\",\"mail\"],\"title\":\"User\",\"type\":\"object\",\"viewable\":true}},{\"name\":\"role\",\"onCreate\":{\"globals\":{},\"source\":\"//asdfasdfadsfasdf\",\"type\":\"text/javascript\"},\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"icon\":\"fa-check-square\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role\",\"mat-icon\":\"assignment_ind\",\"order\":[\"_id\",\"name\",\"description\",\"members\",\"assignments\",\"condition\",\"temporalConstraints\"],\"properties\":{\"_id\":{\"description\":\"Role ID\",\"searchable\":false,\"title\":\"Name\",\"type\":\"string\",\"viewable\":false},\"assignments\":{\"description\":\"Managed Assignments\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Managed Assignments Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Assignment\",\"path\":\"managed/assignment\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"roles\",\"reverseRelationship\":true,\"title\":\"Managed Assignments Items\",\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"members\"],\"returnByDefault\":false,\"title\":\"Managed Assignments\",\"type\":\"array\",\"viewable\":true},\"condition\":{\"description\":\"A conditional filter for this role\",\"isConditional\":true,\"searchable\":false,\"title\":\"Condition\",\"type\":\"string\",\"viewable\":false},\"description\":{\"description\":\"The role description, used for display purposes.\",\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"viewable\":true},\"members\":{\"description\":\"Role Members\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Role Members Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"roles\",\"reverseRelationship\":true,\"title\":\"Role Members Items\",\"type\":\"relationship\",\"validate\":true},\"relationshipGrantTemporalConstraintsEnforced\":true,\"returnByDefault\":false,\"title\":\"Role Members\",\"type\":\"array\",\"viewable\":true},\"name\":{\"description\":\"The role name, used for display purposes.\",\"policies\":[{\"policyId\":\"unique\"}],\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"viewable\":true},\"temporalConstraints\":{\"description\":\"An array of temporal constraints for a role\",\"isTemporalConstraint\":true,\"items\":{\"order\":[\"duration\"],\"properties\":{\"duration\":{\"description\":\"Duration\",\"type\":\"string\"}},\"required\":[\"duration\"],\"title\":\"Temporal Constraints Items\",\"type\":\"object\"},\"notifyRelationships\":[\"members\"],\"returnByDefault\":true,\"title\":\"Temporal Constraints\",\"type\":\"array\",\"viewable\":false}},\"required\":[\"name\"],\"title\":\"Role\",\"type\":\"object\"}},{\"attributeEncryption\":{},\"name\":\"assignment\",\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"description\":\"A role assignment\",\"icon\":\"fa-key\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment\",\"mat-icon\":\"vpn_key\",\"order\":[\"_id\",\"name\",\"description\",\"mapping\",\"attributes\",\"linkQualifiers\",\"roles\",\"members\",\"condition\",\"weight\"],\"properties\":{\"_id\":{\"description\":\"The assignment ID\",\"searchable\":false,\"title\":\"Name\",\"type\":\"string\",\"viewable\":false},\"attributes\":{\"description\":\"The attributes operated on by this assignment.\",\"items\":{\"order\":[\"assignmentOperation\",\"unassignmentOperation\",\"name\",\"value\"],\"properties\":{\"assignmentOperation\":{\"description\":\"Assignment operation\",\"type\":\"string\"},\"name\":{\"description\":\"Name\",\"type\":\"string\"},\"unassignmentOperation\":{\"description\":\"Unassignment operation\",\"type\":\"string\"},\"value\":{\"description\":\"Value\",\"type\":\"string\"}},\"required\":[],\"title\":\"Assignment Attributes Items\",\"type\":\"object\"},\"notifyRelationships\":[\"roles\",\"members\"],\"title\":\"Assignment Attributes\",\"type\":\"array\",\"viewable\":true},\"condition\":{\"description\":\"A conditional filter for this assignment\",\"isConditional\":true,\"searchable\":false,\"title\":\"Condition\",\"type\":\"string\",\"viewable\":false},\"description\":{\"description\":\"The assignment description, used for display purposes.\",\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"viewable\":true},\"linkQualifiers\":{\"description\":\"Conditional link qualifiers to restrict this assignment to.\",\"items\":{\"title\":\"Link Qualifiers Items\",\"type\":\"string\"},\"title\":\"Link Qualifiers\",\"type\":\"array\",\"viewable\":true},\"mapping\":{\"description\":\"The name of the mapping this assignment applies to\",\"policies\":[{\"policyId\":\"mapping-exists\"}],\"searchable\":true,\"title\":\"Mapping\",\"type\":\"string\",\"viewable\":true},\"members\":{\"description\":\"Assignment Members\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Assignment Members Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"assignments\",\"reverseRelationship\":true,\"title\":\"Assignment Members Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Assignment Members\",\"type\":\"array\",\"viewable\":true},\"name\":{\"description\":\"The assignment name, used for display purposes.\",\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"viewable\":true},\"roles\":{\"description\":\"Managed Roles\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Managed Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Role\",\"notify\":true,\"path\":\"managed/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"assignments\",\"reverseRelationship\":true,\"title\":\"Managed Roles Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Managed Roles\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"weight\":{\"description\":\"The weight of the assignment.\",\"notifyRelationships\":[\"roles\",\"members\"],\"searchable\":false,\"title\":\"Weight\",\"type\":[\"number\",\"null\"],\"viewable\":true}},\"required\":[\"name\",\"description\",\"mapping\"],\"title\":\"Assignment\",\"type\":\"object\"}},{\"name\":\"organization\",\"onCreate\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"onRead\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"description\":\"An organization or tenant, whose resources are managed by organizational admins.\",\"icon\":\"fa-building\",\"mat-icon\":\"domain\",\"order\":[\"name\",\"description\",\"owners\",\"admins\",\"members\",\"parent\",\"children\",\"adminIDs\",\"ownerIDs\",\"parentAdminIDs\",\"parentOwnerIDs\",\"parentIDs\"],\"properties\":{\"adminIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"admin ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\"],\"referencedRelationshipFields\":[\"admins\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"Admin user ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"admins\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":false,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"adminOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"children\"],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Administrators\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"children\":{\"description\":\"Child Organizations\",\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\",\"description\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"parent\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Child Organizations\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"description\":{\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"members\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"memberOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"searchable\":false,\"title\":\"Members\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"name\":{\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"ownerIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"owner ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\"],\"referencedRelationshipFields\":[\"owners\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"Owner user ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"owners\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":false,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"ownerOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"children\"],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Owner\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"parent\":{\"description\":\"Parent Organization\",\"notifyRelationships\":[\"children\",\"members\"],\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":false,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\",\"description\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"returnByDefault\":false,\"reversePropertyName\":\"children\",\"reverseRelationship\":true,\"searchable\":false,\"title\":\"Parent Organization\",\"type\":\"relationship\",\"userEditable\":false,\"validate\":true,\"viewable\":true},\"parentAdminIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"user ids of parent admins\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"adminIDs\",\"parentAdminIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"user ids of parent admins\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"parentIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"parent org ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\",\"parentIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"parent org ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"parentOwnerIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"user ids of parent owners\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"ownerIDs\",\"parentOwnerIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"user ids of parent owners\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false}},\"required\":[\"name\"],\"title\":\"Organization\",\"type\":\"object\"}},{\"name\":\"seantestmanagedobject\",\"schema\":{\"description\":null,\"icon\":\"fa-database\",\"mat-icon\":null,\"title\":null}}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/managed" + }, + "response": { + "bodySize": 28289, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 28289, + "text": "{\"_id\":\"managed\",\"objects\":[{\"lastSync\":{\"effectiveAssignmentsProperty\":\"effectiveAssignments\",\"lastSyncProperty\":\"lastSync\"},\"name\":\"user\",\"notifications\":{\"property\":\"_notifications\"},\"postDelete\":{\"source\":\"require('postDelete-idp-cleanup').removeConnectedIdpData(oldObject, resourceName, request);require('postDelete-notification-cleanup').removeConnectedNotificationData(oldObject, resourceName, request);\",\"type\":\"text/javascript\"},\"schema\":{\"$schema\":\"http://json-schema.org/draft-03/schema\",\"icon\":\"fa-user\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User\",\"mat-icon\":\"people\",\"order\":[\"_id\",\"userName\",\"password\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"roles\",\"assignments\",\"manager\",\"authzRoles\",\"reports\",\"effectiveRoles\",\"effectiveAssignments\",\"lastSync\",\"kbaInfo\",\"preferences\",\"consentedMappings\",\"ownerOfOrg\",\"adminOfOrg\",\"memberOfOrg\",\"memberOfOrgIDs\",\"activeDate\",\"inactiveDate\"],\"properties\":{\"_id\":{\"description\":\"User ID\",\"isPersonal\":false,\"policies\":[{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"}],\"searchable\":false,\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":false},\"accountStatus\":{\"default\":\"active\",\"description\":\"Status\",\"isPersonal\":false,\"policies\":[{\"params\":{\"regexp\":\"^(active|inactive)$\"},\"policyId\":\"regexpMatches\"}],\"searchable\":true,\"title\":\"Status\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"activeDate\":{\"description\":\"Active Date\",\"format\":\"datetime\",\"isPersonal\":false,\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":false,\"title\":\"Active Date\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"adminOfOrg\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"admins\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations I Administer\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"assignments\":{\"description\":\"Assignments\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Provisioning Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Assignment\",\"path\":\"managed/assignment\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"title\":\"Assignments Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Assignments\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"authzRoles\":{\"description\":\"Authorization Roles\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Authorization Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Internal Role\",\"path\":\"internal/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"authzMembers\",\"reverseRelationship\":true,\"title\":\"Authorization Roles Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Authorization Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"city\":{\"description\":\"City\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"City\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"consentedMappings\":{\"description\":\"Consented Mappings\",\"isPersonal\":false,\"isVirtual\":false,\"items\":{\"order\":[\"mapping\",\"consentDate\"],\"properties\":{\"consentDate\":{\"description\":\"Consent Date\",\"format\":\"datetime\",\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":true,\"title\":\"Consent Date\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"mapping\":{\"description\":\"Mapping\",\"searchable\":true,\"title\":\"Mapping\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true}},\"required\":[\"mapping\",\"consentDate\"],\"title\":\"Consented Mapping\",\"type\":\"object\"},\"returnByDefault\":false,\"searchable\":false,\"title\":\"Consented Mappings\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"country\":{\"description\":\"Country\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Country\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"description\":{\"description\":\"Description\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"effectiveAssignments\":{\"description\":\"Effective Assignments\",\"isPersonal\":false,\"isVirtual\":true,\"items\":{\"title\":\"Effective Assignments Items\",\"type\":\"object\"},\"queryConfig\":{\"referencedObjectFields\":[\"*\"],\"referencedRelationshipFields\":[[\"roles\",\"assignments\"],[\"assignments\"]]},\"returnByDefault\":true,\"title\":\"Effective Assignments\",\"type\":\"array\",\"usageDescription\":\"\",\"viewable\":false},\"effectiveRoles\":{\"description\":\"Effective Roles\",\"isPersonal\":false,\"isVirtual\":true,\"items\":{\"title\":\"Effective Roles Items\",\"type\":\"object\"},\"queryConfig\":{\"referencedRelationshipFields\":[\"roles\"]},\"returnByDefault\":true,\"title\":\"Effective Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"viewable\":false},\"givenName\":{\"description\":\"First Name\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"First Name\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"inactiveDate\":{\"description\":\"Inactive Date\",\"format\":\"datetime\",\"isPersonal\":false,\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":false,\"title\":\"Inactive Date\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"kbaInfo\":{\"description\":\"KBA Info\",\"isPersonal\":true,\"items\":{\"order\":[\"answer\",\"customQuestion\",\"questionId\"],\"properties\":{\"answer\":{\"description\":\"Answer\",\"type\":\"string\"},\"customQuestion\":{\"description\":\"Custom question\",\"type\":\"string\"},\"questionId\":{\"description\":\"Question ID\",\"type\":\"string\"}},\"required\":[],\"title\":\"KBA Info Items\",\"type\":\"object\"},\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"lastSync\":{\"description\":\"Last Sync timestamp\",\"isPersonal\":false,\"order\":[\"effectiveAssignments\",\"timestamp\"],\"properties\":{\"effectiveAssignments\":{\"description\":\"Effective Assignments\",\"items\":{\"title\":\"Effective Assignments Items\",\"type\":\"object\"},\"title\":\"Effective Assignments\",\"type\":\"array\"},\"timestamp\":{\"description\":\"Timestamp\",\"policies\":[{\"policyId\":\"valid-datetime\"}],\"type\":\"string\"}},\"required\":[],\"scope\":\"private\",\"searchable\":false,\"title\":\"Last Sync timestamp\",\"type\":\"object\",\"usageDescription\":\"\",\"viewable\":false},\"mail\":{\"description\":\"Email Address\",\"isPersonal\":true,\"policies\":[{\"policyId\":\"valid-email-address-format\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Email Address\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"manager\":{\"description\":\"Manager\",\"isPersonal\":false,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Manager _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"reports\",\"reverseRelationship\":true,\"searchable\":false,\"title\":\"Manager\",\"type\":\"relationship\",\"usageDescription\":\"\",\"userEditable\":false,\"validate\":true,\"viewable\":true},\"memberOfOrg\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":false,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations to which I Belong\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"memberOfOrgIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"org identifiers\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\",\"parentIDs\"],\"referencedRelationshipFields\":[\"memberOfOrg\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"MemberOfOrgIDs\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"ownerOfOrg\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"owners\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations I Own\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"password\":{\"description\":\"Password\",\"encryption\":{\"purpose\":\"idm.password.encryption\"},\"isPersonal\":false,\"isProtected\":true,\"policies\":[{\"params\":{\"minLength\":8},\"policyId\":\"minimum-length\"},{\"params\":{\"numCaps\":1},\"policyId\":\"at-least-X-capitals\"},{\"params\":{\"numNums\":1},\"policyId\":\"at-least-X-numbers\"},{\"params\":{\"disallowedFields\":[\"userName\",\"givenName\",\"sn\"]},\"policyId\":\"cannot-contain-others\"}],\"scope\":\"private\",\"searchable\":false,\"title\":\"Password\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"postalAddress\":{\"description\":\"Address 1\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Address 1\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"postalCode\":{\"description\":\"Postal Code\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Postal Code\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"preferences\":{\"description\":\"Preferences\",\"isPersonal\":false,\"order\":[\"updates\",\"marketing\"],\"properties\":{\"marketing\":{\"description\":\"Send me special offers and services\",\"type\":\"boolean\"},\"updates\":{\"description\":\"Send me news and updates\",\"type\":\"boolean\"}},\"required\":[],\"searchable\":false,\"title\":\"Preferences\",\"type\":\"object\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"reports\":{\"description\":\"Direct Reports\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Direct Reports Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"manager\",\"reverseRelationship\":true,\"title\":\"Direct Reports Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Direct Reports\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"roles\":{\"description\":\"Provisioning Roles\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:roles\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Provisioning Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Role\",\"path\":\"managed/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"title\":\"Provisioning Roles Items\",\"type\":\"relationship\",\"validate\":true},\"relationshipGrantTemporalConstraintsEnforced\":true,\"returnByDefault\":false,\"title\":\"Provisioning Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"sn\":{\"description\":\"Last Name\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Last Name\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"stateProvince\":{\"description\":\"State/Province\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"State/Province\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"telephoneNumber\":{\"description\":\"Telephone Number\",\"isPersonal\":true,\"pattern\":\"^\\\\+?([0-9\\\\- \\\\(\\\\)])*$\",\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Telephone Number\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"userName\":{\"description\":\"Username\",\"isPersonal\":true,\"policies\":[{\"policyId\":\"valid-username\"},{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"},{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Username\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true}},\"required\":[\"userName\",\"givenName\",\"sn\",\"mail\"],\"title\":\"User\",\"type\":\"object\",\"viewable\":true}},{\"name\":\"role\",\"onCreate\":{\"globals\":{},\"source\":\"//asdfasdfadsfasdf\",\"type\":\"text/javascript\"},\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"icon\":\"fa-check-square\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role\",\"mat-icon\":\"assignment_ind\",\"order\":[\"_id\",\"name\",\"description\",\"members\",\"assignments\",\"condition\",\"temporalConstraints\"],\"properties\":{\"_id\":{\"description\":\"Role ID\",\"searchable\":false,\"title\":\"Name\",\"type\":\"string\",\"viewable\":false},\"assignments\":{\"description\":\"Managed Assignments\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Managed Assignments Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Assignment\",\"path\":\"managed/assignment\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"roles\",\"reverseRelationship\":true,\"title\":\"Managed Assignments Items\",\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"members\"],\"returnByDefault\":false,\"title\":\"Managed Assignments\",\"type\":\"array\",\"viewable\":true},\"condition\":{\"description\":\"A conditional filter for this role\",\"isConditional\":true,\"searchable\":false,\"title\":\"Condition\",\"type\":\"string\",\"viewable\":false},\"description\":{\"description\":\"The role description, used for display purposes.\",\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"viewable\":true},\"members\":{\"description\":\"Role Members\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Role Members Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"roles\",\"reverseRelationship\":true,\"title\":\"Role Members Items\",\"type\":\"relationship\",\"validate\":true},\"relationshipGrantTemporalConstraintsEnforced\":true,\"returnByDefault\":false,\"title\":\"Role Members\",\"type\":\"array\",\"viewable\":true},\"name\":{\"description\":\"The role name, used for display purposes.\",\"policies\":[{\"policyId\":\"unique\"}],\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"viewable\":true},\"temporalConstraints\":{\"description\":\"An array of temporal constraints for a role\",\"isTemporalConstraint\":true,\"items\":{\"order\":[\"duration\"],\"properties\":{\"duration\":{\"description\":\"Duration\",\"type\":\"string\"}},\"required\":[\"duration\"],\"title\":\"Temporal Constraints Items\",\"type\":\"object\"},\"notifyRelationships\":[\"members\"],\"returnByDefault\":true,\"title\":\"Temporal Constraints\",\"type\":\"array\",\"viewable\":false}},\"required\":[\"name\"],\"title\":\"Role\",\"type\":\"object\"}},{\"attributeEncryption\":{},\"name\":\"assignment\",\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"description\":\"A role assignment\",\"icon\":\"fa-key\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment\",\"mat-icon\":\"vpn_key\",\"order\":[\"_id\",\"name\",\"description\",\"mapping\",\"attributes\",\"linkQualifiers\",\"roles\",\"members\",\"condition\",\"weight\"],\"properties\":{\"_id\":{\"description\":\"The assignment ID\",\"searchable\":false,\"title\":\"Name\",\"type\":\"string\",\"viewable\":false},\"attributes\":{\"description\":\"The attributes operated on by this assignment.\",\"items\":{\"order\":[\"assignmentOperation\",\"unassignmentOperation\",\"name\",\"value\"],\"properties\":{\"assignmentOperation\":{\"description\":\"Assignment operation\",\"type\":\"string\"},\"name\":{\"description\":\"Name\",\"type\":\"string\"},\"unassignmentOperation\":{\"description\":\"Unassignment operation\",\"type\":\"string\"},\"value\":{\"description\":\"Value\",\"type\":\"string\"}},\"required\":[],\"title\":\"Assignment Attributes Items\",\"type\":\"object\"},\"notifyRelationships\":[\"roles\",\"members\"],\"title\":\"Assignment Attributes\",\"type\":\"array\",\"viewable\":true},\"condition\":{\"description\":\"A conditional filter for this assignment\",\"isConditional\":true,\"searchable\":false,\"title\":\"Condition\",\"type\":\"string\",\"viewable\":false},\"description\":{\"description\":\"The assignment description, used for display purposes.\",\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"viewable\":true},\"linkQualifiers\":{\"description\":\"Conditional link qualifiers to restrict this assignment to.\",\"items\":{\"title\":\"Link Qualifiers Items\",\"type\":\"string\"},\"title\":\"Link Qualifiers\",\"type\":\"array\",\"viewable\":true},\"mapping\":{\"description\":\"The name of the mapping this assignment applies to\",\"policies\":[{\"policyId\":\"mapping-exists\"}],\"searchable\":true,\"title\":\"Mapping\",\"type\":\"string\",\"viewable\":true},\"members\":{\"description\":\"Assignment Members\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Assignment Members Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"assignments\",\"reverseRelationship\":true,\"title\":\"Assignment Members Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Assignment Members\",\"type\":\"array\",\"viewable\":true},\"name\":{\"description\":\"The assignment name, used for display purposes.\",\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"viewable\":true},\"roles\":{\"description\":\"Managed Roles\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Managed Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Role\",\"notify\":true,\"path\":\"managed/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"assignments\",\"reverseRelationship\":true,\"title\":\"Managed Roles Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Managed Roles\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"weight\":{\"description\":\"The weight of the assignment.\",\"notifyRelationships\":[\"roles\",\"members\"],\"searchable\":false,\"title\":\"Weight\",\"type\":[\"number\",\"null\"],\"viewable\":true}},\"required\":[\"name\",\"description\",\"mapping\"],\"title\":\"Assignment\",\"type\":\"object\"}},{\"name\":\"organization\",\"onCreate\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"onRead\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"description\":\"An organization or tenant, whose resources are managed by organizational admins.\",\"icon\":\"fa-building\",\"mat-icon\":\"domain\",\"order\":[\"name\",\"description\",\"owners\",\"admins\",\"members\",\"parent\",\"children\",\"adminIDs\",\"ownerIDs\",\"parentAdminIDs\",\"parentOwnerIDs\",\"parentIDs\"],\"properties\":{\"adminIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"admin ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\"],\"referencedRelationshipFields\":[\"admins\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"Admin user ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"admins\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":false,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"adminOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"children\"],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Administrators\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"children\":{\"description\":\"Child Organizations\",\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\",\"description\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"parent\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Child Organizations\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"description\":{\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"members\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"memberOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"searchable\":false,\"title\":\"Members\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"name\":{\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"ownerIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"owner ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\"],\"referencedRelationshipFields\":[\"owners\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"Owner user ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"owners\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":false,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"ownerOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"children\"],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Owner\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"parent\":{\"description\":\"Parent Organization\",\"notifyRelationships\":[\"children\",\"members\"],\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":false,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\",\"description\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"returnByDefault\":false,\"reversePropertyName\":\"children\",\"reverseRelationship\":true,\"searchable\":false,\"title\":\"Parent Organization\",\"type\":\"relationship\",\"userEditable\":false,\"validate\":true,\"viewable\":true},\"parentAdminIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"user ids of parent admins\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"adminIDs\",\"parentAdminIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"user ids of parent admins\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"parentIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"parent org ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\",\"parentIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"parent org ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"parentOwnerIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"user ids of parent owners\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"ownerIDs\",\"parentOwnerIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"user ids of parent owners\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false}},\"required\":[\"name\"],\"title\":\"Organization\",\"type\":\"object\"}},{\"name\":\"seantestmanagedobject\",\"schema\":{\"description\":null,\"icon\":\"fa-database\",\"mat-icon\":null,\"title\":null}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.065Z", + "time": 22, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 22 + } + }, + { + "_id": "c8847f8b05e82ff97b9901f9ef21711f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 33, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "33" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"metrics\",\"enabled\":false}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/metrics" + }, + "response": { + "bodySize": 33, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 33, + "text": "{\"_id\":\"metrics\",\"enabled\":false}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "33" + } + ], + "headersSize": 2250, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.091Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "481b9d20ca5295bab85a70f228c051a0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 415, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "415" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 467, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"notification/passwordUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"password\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.passwordUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your password has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/passwordUpdate" + }, + "response": { + "bodySize": 415, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 415, + "text": "{\"_id\":\"notification/passwordUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"password\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.passwordUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your password has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "415" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.104Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "8761a76489fd8c69e300a2d045819497", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 560, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "560" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 466, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"notification/profileUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"userName\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"preferences\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.profileUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your profile has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/profileUpdate" + }, + "response": { + "bodySize": 560, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 560, + "text": "{\"_id\":\"notification/profileUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"userName\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"preferences\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.profileUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your profile has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "560" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.118Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "409aa8b57ce9b97a4e7b4c72a690bb5b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 180, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "180" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"notificationFactory\",\"enabled\":{\"$bool\":\"&{openidm.notifications|false}\"},\"threadPool\":{\"maxPoolThreads\":2,\"maxQueueSize\":20000,\"steadyPoolThreads\":1,\"threadKeepAlive\":60}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notificationFactory" + }, + "response": { + "bodySize": 180, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 180, + "text": "{\"_id\":\"notificationFactory\",\"enabled\":{\"$bool\":\"&{openidm.notifications|false}\"},\"threadPool\":{\"maxPoolThreads\":2,\"maxQueueSize\":20000,\"steadyPoolThreads\":1,\"threadKeepAlive\":60}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "180" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.130Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "5f5545d40340b0d7eeccc0b7536b62f1", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2368, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2368" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"policy\",\"additionalFiles\":[],\"file\":\"policy.js\",\"resources\":[{\"calculatedProperties\":{\"source\":\"require('selfServicePolicies').getRegistrationProperties()\",\"type\":\"text/javascript\"},\"resource\":\"selfservice/registration\"},{\"calculatedProperties\":{\"source\":\"require('selfServicePolicies').getResetProperties()\",\"type\":\"text/javascript\"},\"resource\":\"selfservice/reset\"},{\"properties\":[{\"name\":\"_id\",\"policies\":[{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"}]},{\"name\":\"password\",\"policies\":[{\"params\":{\"minLength\":8},\"policyId\":\"minimum-length\"}]}],\"resource\":\"internal/user/*\"},{\"properties\":[{\"name\":\"name\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"forbiddenChars\":[\"/*\"]},\"policyId\":\"cannot-contain-characters\"}]},{\"name\":\"temporalConstraints\",\"policies\":[{\"policyId\":\"valid-temporal-constraints\"}]},{\"name\":\"condition\",\"policies\":[{\"policyId\":\"valid-query-filter\"}]},{\"name\":\"privileges\",\"policies\":[{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"params\":{\"properties\":[{\"name\":\"name\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"string\"]},\"policyId\":\"valid-type\"}]},{\"name\":\"path\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"forbiddenChars\":[\"/*\"]},\"policyId\":\"cannot-contain-characters\"},{\"policyId\":\"valid-privilege-path\"}]},{\"name\":\"accessFlags\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-accessFlags-object\"}]},{\"name\":\"actions\",\"policies\":[{\"policyId\":\"required\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"}]},{\"name\":\"permissions\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-permissions\"}]},{\"name\":\"filter\",\"policies\":[{\"params\":{\"types\":[\"string\",\"null\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-query-filter\"}]}]},\"policyId\":\"valid-array-items\"}]}],\"resource\":\"internal/role/*\"},{\"properties\":[{\"name\":\"temporalConstraints\",\"policies\":[{\"policyId\":\"valid-temporal-constraints\"}]},{\"name\":\"condition\",\"policies\":[{\"policyId\":\"valid-query-filter\"}]}],\"resource\":\"managed/role/*\"},{\"properties\":[{\"name\":\"objects\",\"policies\":[{\"policyId\":\"valid-event-scripts\"}]}],\"resource\":\"config/managed\"}],\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/policy" + }, + "response": { + "bodySize": 2368, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 2368, + "text": "{\"_id\":\"policy\",\"additionalFiles\":[],\"file\":\"policy.js\",\"resources\":[{\"calculatedProperties\":{\"source\":\"require('selfServicePolicies').getRegistrationProperties()\",\"type\":\"text/javascript\"},\"resource\":\"selfservice/registration\"},{\"calculatedProperties\":{\"source\":\"require('selfServicePolicies').getResetProperties()\",\"type\":\"text/javascript\"},\"resource\":\"selfservice/reset\"},{\"properties\":[{\"name\":\"_id\",\"policies\":[{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"}]},{\"name\":\"password\",\"policies\":[{\"params\":{\"minLength\":8},\"policyId\":\"minimum-length\"}]}],\"resource\":\"internal/user/*\"},{\"properties\":[{\"name\":\"name\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"forbiddenChars\":[\"/*\"]},\"policyId\":\"cannot-contain-characters\"}]},{\"name\":\"temporalConstraints\",\"policies\":[{\"policyId\":\"valid-temporal-constraints\"}]},{\"name\":\"condition\",\"policies\":[{\"policyId\":\"valid-query-filter\"}]},{\"name\":\"privileges\",\"policies\":[{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"params\":{\"properties\":[{\"name\":\"name\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"string\"]},\"policyId\":\"valid-type\"}]},{\"name\":\"path\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"forbiddenChars\":[\"/*\"]},\"policyId\":\"cannot-contain-characters\"},{\"policyId\":\"valid-privilege-path\"}]},{\"name\":\"accessFlags\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-accessFlags-object\"}]},{\"name\":\"actions\",\"policies\":[{\"policyId\":\"required\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"}]},{\"name\":\"permissions\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-permissions\"}]},{\"name\":\"filter\",\"policies\":[{\"params\":{\"types\":[\"string\",\"null\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-query-filter\"}]}]},\"policyId\":\"valid-array-items\"}]}],\"resource\":\"internal/role/*\"},{\"properties\":[{\"name\":\"temporalConstraints\",\"policies\":[{\"policyId\":\"valid-temporal-constraints\"}]},{\"name\":\"condition\",\"policies\":[{\"policyId\":\"valid-query-filter\"}]}],\"resource\":\"managed/role/*\"},{\"properties\":[{\"name\":\"objects\",\"policies\":[{\"policyId\":\"valid-event-scripts\"}]}],\"resource\":\"config/managed\"}],\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.142Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "85aa7f57d20e37b9a3d0385b7306304b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 493, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "493" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 460, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"privilegeAssignments\",\"privilegeAssignments\":[{\"name\":\"ownerPrivileges\",\"privileges\":[\"owner-view-update-delete-orgs\",\"owner-create-orgs\",\"owner-view-update-delete-admins-and-members\",\"owner-create-admins\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"ownerOfOrg\"},{\"name\":\"adminPrivileges\",\"privileges\":[\"admin-view-update-delete-orgs\",\"admin-create-orgs\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"adminOfOrg\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privilegeAssignments" + }, + "response": { + "bodySize": 493, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 493, + "text": "{\"_id\":\"privilegeAssignments\",\"privilegeAssignments\":[{\"name\":\"ownerPrivileges\",\"privileges\":[\"owner-view-update-delete-orgs\",\"owner-create-orgs\",\"owner-view-update-delete-admins-and-members\",\"owner-create-admins\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"ownerOfOrg\"},{\"name\":\"adminPrivileges\",\"privileges\":[\"admin-view-update-delete-orgs\",\"admin-create-orgs\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"adminOfOrg\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "493" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.155Z", + "time": 6, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 6 + } + }, + { + "_id": "cbec42ff637072f3ce8377be01511efe", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 8228, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "8228" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 451, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"privileges\",\"privileges\":[{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":false},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/ownerIDs eq \\\"{{_id}}\\\" or /parentOwnerIDs eq \\\"{{_id}}\\\"\",\"name\":\"owner-view-update-delete-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"VIEW\",\"UPDATE\",\"DELETE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":false},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/parent pr\",\"name\":\"owner-create-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":false},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrgIDs eq \\\"__org_id_placeholder__\\\"\",\"name\":\"owner-view-update-delete-admins-and-members\",\"path\":\"managed/user\",\"permissions\":[\"VIEW\",\"DELETE\",\"UPDATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":false},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrg/0 pr and /adminOfOrg/0 pr and !(/ownerOfOrg pr)\",\"name\":\"owner-create-admins\",\"path\":\"managed/user\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":true},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/adminIDs eq \\\"{{_id}}\\\" or /parentAdminIDs eq \\\"{{_id}}\\\"\",\"name\":\"admin-view-update-delete-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"VIEW\",\"UPDATE\",\"DELETE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":true},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/parent pr\",\"name\":\"admin-create-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":true},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrgIDs eq \\\"__org_id_placeholder__\\\"\",\"name\":\"admin-view-update-delete-members\",\"path\":\"managed/user\",\"permissions\":[\"VIEW\",\"DELETE\",\"UPDATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":true},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrg/0 pr and !(/adminOfOrg pr) and !(/ownerOfOrg pr)\",\"name\":\"admin-create-members\",\"path\":\"managed/user\",\"permissions\":[\"CREATE\"]}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privileges" + }, + "response": { + "bodySize": 8228, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 8228, + "text": "{\"_id\":\"privileges\",\"privileges\":[{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":false},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/ownerIDs eq \\\"{{_id}}\\\" or /parentOwnerIDs eq \\\"{{_id}}\\\"\",\"name\":\"owner-view-update-delete-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"VIEW\",\"UPDATE\",\"DELETE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":false},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/parent pr\",\"name\":\"owner-create-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":false},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrgIDs eq \\\"__org_id_placeholder__\\\"\",\"name\":\"owner-view-update-delete-admins-and-members\",\"path\":\"managed/user\",\"permissions\":[\"VIEW\",\"DELETE\",\"UPDATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":false},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrg/0 pr and /adminOfOrg/0 pr and !(/ownerOfOrg pr)\",\"name\":\"owner-create-admins\",\"path\":\"managed/user\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":true},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/adminIDs eq \\\"{{_id}}\\\" or /parentAdminIDs eq \\\"{{_id}}\\\"\",\"name\":\"admin-view-update-delete-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"VIEW\",\"UPDATE\",\"DELETE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":true},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/parent pr\",\"name\":\"admin-create-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":true},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrgIDs eq \\\"__org_id_placeholder__\\\"\",\"name\":\"admin-view-update-delete-members\",\"path\":\"managed/user\",\"permissions\":[\"VIEW\",\"DELETE\",\"UPDATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":true},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrg/0 pr and !(/adminOfOrg pr) and !(/ownerOfOrg pr)\",\"name\":\"admin-create-members\",\"path\":\"managed/user\",\"permissions\":[\"CREATE\"]}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.167Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "e113b4988a44660730d55e50b60c01f7", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 246, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "246" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 454, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"process/access\",\"workflowAccess\":[{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-authorized\"}},{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-admin\"}}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/process/access" + }, + "response": { + "bodySize": 246, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 246, + "text": "{\"_id\":\"process/access\",\"workflowAccess\":[{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-authorized\"}},{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-admin\"}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "246" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.186Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "eb131157f5058c14dd4e167f0cdcbc5a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 20198, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "20198" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"repo.ds\",\"commands\":{\"delete-mapping-links\":{\"_queryFilter\":\"/linkType eq \\\"${mapping}\\\"\",\"operation\":\"DELETE\"},\"delete-target-ids-for-recon\":{\"_queryFilter\":\"/reconId eq \\\"${reconId}\\\"\",\"operation\":\"DELETE\"}},\"embedded\":false,\"ldapConnectionFactories\":{\"bind\":{\"connectionPoolSize\":50,\"connectionSecurity\":\"startTLS\",\"heartBeatIntervalSeconds\":60,\"heartBeatTimeoutMilliSeconds\":10000,\"primaryLdapServers\":[{\"hostname\":\"opendj-frodo-dev.classic.com\",\"port\":2389}],\"secondaryLdapServers\":[]},\"root\":{\"authentication\":{\"simple\":{\"bindDn\":\"uid=admin\",\"bindPassword\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"lJ/B6T9e9CDKHCN8TxkD4g==\",\"iv\":\"EdrerzwEUUkHG582cLDw5w==\",\"keySize\":32,\"mac\":\"Aty9fXUtl4pexGlHOc+CBg==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"BITSKlnPeT5klcuEZbngzw==\",\"stableId\":\"openidm-sym-default\"}}}}},\"inheritFrom\":\"bind\"}},\"maxConnectionAttempts\":5,\"resourceMapping\":{\"defaultMapping\":{\"dnTemplate\":\"ou=generic,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"explicitMapping\":{\"clusteredrecontargetids\":{\"dnTemplate\":\"ou=clusteredrecontargetids,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-recon-clusteredTargetIds\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"reconId\":{\"ldapAttribute\":\"fr-idm-recon-id\",\"type\":\"simple\"},\"targetIds\":{\"ldapAttribute\":\"fr-idm-recon-targetIds\",\"type\":\"json\"}}},\"dsconfig/attributeValue\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-attribute-value-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"checkSubstrings\":{\"ldapAttribute\":\"ds-cfg-check-substrings\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"matchAttribute\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-match-attribute\",\"type\":\"simple\"},\"minSubstringLength\":{\"ldapAttribute\":\"ds-cfg-min-substring-length\",\"type\":\"simple\"},\"testReversedPassword\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-test-reversed-password\",\"type\":\"simple\"}}},\"dsconfig/characterSet\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-character-set-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"allowUnclassifiedCharacters\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-allow-unclassified-characters\",\"type\":\"simple\"},\"characterSet\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-character-set\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minCharacterSets\":{\"ldapAttribute\":\"ds-cfg-min-character-sets\",\"type\":\"simple\"}}},\"dsconfig/dictionary\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-dictionary-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"checkSubstrings\":{\"ldapAttribute\":\"ds-cfg-check-substrings\",\"type\":\"simple\"},\"dictionaryFile\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-dictionary-file\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minSubstringLength\":{\"ldapAttribute\":\"ds-cfg-min-substring-length\",\"type\":\"simple\"},\"testReversedPassword\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-test-reversed-password\",\"type\":\"simple\"}}},\"dsconfig/lengthBased\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-length-based-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"maxPasswordLength\":{\"ldapAttribute\":\"ds-cfg-max-password-length\",\"type\":\"simple\"},\"minPasswordLength\":{\"ldapAttribute\":\"ds-cfg-min-password-length\",\"type\":\"simple\"}}},\"dsconfig/passwordPolicies\":{\"dnTemplate\":\"cn=Password Policies,cn=config\",\"objectClasses\":[\"ds-cfg-password-policy\",\"ds-cfg-authentication-policy\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"defaultPasswordStorageScheme\":{\"isMultiValued\":true,\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-default-password-storage-scheme\",\"type\":\"simple\"},\"maxPasswordAge\":{\"ldapAttribute\":\"ds-cfg-max-password-age\",\"type\":\"simple\"},\"passwordAttribute\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-password-attribute\",\"type\":\"simple\"},\"passwordHistoryCount\":{\"ldapAttribute\":\"ds-cfg-password-history-count\",\"type\":\"simple\"},\"validator\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-password-validator\",\"type\":\"simple\"}}},\"dsconfig/repeatedCharacters\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-repeated-characters-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"maxConsecutiveLength\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-max-consecutive-length\",\"type\":\"simple\"}}},\"dsconfig/similarityBased\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-similarity-based-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minPasswordDifference\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-min-password-difference\",\"type\":\"simple\"}}},\"dsconfig/uniqueCharacters\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-unique-characters-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minUniqueCharacters\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-min-unique-characters\",\"type\":\"simple\"}}},\"dsconfig/userDefinedVirtualAttribute\":{\"dnTemplate\":\"cn=Virtual Attributes,cn=config\",\"objectClasses\":[\"ds-cfg-user-defined-virtual-attribute\",\"ds-cfg-virtual-attribute\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"attributeType\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-attribute-type\",\"type\":\"simple\"},\"baseDn\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-base-dn\",\"type\":\"simple\"},\"conflictBehavior\":{\"ldapAttribute\":\"ds-cfg-conflict-behavior\",\"type\":\"simple\"},\"enabled\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"filter\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-filter\",\"type\":\"simple\"},\"groupDn\":{\"ldapAttribute\":\"ds-cfg-group-dn\",\"type\":\"simple\"},\"javaClass\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"scope\":{\"ldapAttribute\":\"ds-cfg-scope\",\"type\":\"simple\"},\"value\":{\"isMultiValued\":true,\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-value\",\"type\":\"simple\"}}},\"internal/role\":{\"dnTemplate\":\"ou=roles,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"fr-idm-internal-role\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"authzMembers\":{\"isMultiValued\":true,\"propertyName\":\"authzRoles\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"condition\":{\"ldapAttribute\":\"fr-idm-condition\",\"type\":\"simple\"},\"description\":{\"ldapAttribute\":\"description\",\"type\":\"simple\"},\"name\":{\"ldapAttribute\":\"fr-idm-name\",\"type\":\"simple\"},\"privileges\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-privilege\",\"type\":\"json\"},\"temporalConstraints\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-temporal-constraints\",\"type\":\"json\"}}},\"internal/user\":{\"dnTemplate\":\"ou=users,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-internal-user\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"password\":{\"ldapAttribute\":\"fr-idm-password\",\"type\":\"json\"}}},\"link\":{\"dnTemplate\":\"ou=links,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-link\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"firstId\":{\"ldapAttribute\":\"fr-idm-link-firstId\",\"type\":\"simple\"},\"linkQualifier\":{\"ldapAttribute\":\"fr-idm-link-qualifier\",\"type\":\"simple\"},\"linkType\":{\"ldapAttribute\":\"fr-idm-link-type\",\"type\":\"simple\"},\"secondId\":{\"ldapAttribute\":\"fr-idm-link-secondId\",\"type\":\"simple\"}}},\"locks\":{\"dnTemplate\":\"ou=locks,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-lock\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"nodeId\":{\"ldapAttribute\":\"fr-idm-lock-nodeid\",\"type\":\"simple\"}}},\"recon/assoc\":{\"dnTemplate\":\"ou=assoc,ou=recon,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"namingStrategy\":{\"dnAttribute\":\"fr-idm-reconassoc-reconid\",\"type\":\"clientDnNaming\"},\"objectClasses\":[\"fr-idm-reconassoc\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"fr-idm-reconassoc-reconid\",\"type\":\"simple\"},\"finishTime\":{\"ldapAttribute\":\"fr-idm-reconassoc-finishtime\",\"type\":\"simple\"},\"isAnalysis\":{\"ldapAttribute\":\"fr-idm-reconassoc-isanalysis\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-reconassoc-mapping\",\"type\":\"simple\"},\"sourceResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-sourceresourcecollection\",\"type\":\"simple\"},\"targetResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-targetresourcecollection\",\"type\":\"simple\"}},\"subResources\":{\"entry\":{\"namingStrategy\":{\"dnAttribute\":\"uid\",\"type\":\"clientDnNaming\"},\"resource\":\"recon-assoc-entry\",\"type\":\"collection\"}}},\"recon/assoc/entry\":{\"objectClasses\":[\"uidObject\",\"fr-idm-reconassocentry\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\"},\"action\":{\"ldapAttribute\":\"fr-idm-reconassocentry-action\",\"type\":\"simple\"},\"ambiguousTargetObjectIds\":{\"ldapAttribute\":\"fr-idm-reconassocentry-ambiguoustargetobjectids\",\"type\":\"simple\"},\"exception\":{\"ldapAttribute\":\"fr-idm-reconassocentry-exception\",\"type\":\"simple\"},\"isAnalysis\":{\"ldapAttribute\":\"fr-idm-reconassoc-isanalysis\",\"type\":\"simple\"},\"linkQualifier\":{\"ldapAttribute\":\"fr-idm-reconassocentry-linkqualifier\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-reconassoc-mapping\",\"type\":\"simple\"},\"message\":{\"ldapAttribute\":\"fr-idm-reconassocentry-message\",\"type\":\"simple\"},\"messageDetail\":{\"ldapAttribute\":\"fr-idm-reconassocentry-messagedetail\",\"type\":\"simple\"},\"phase\":{\"ldapAttribute\":\"fr-idm-reconassocentry-phase\",\"type\":\"simple\"},\"reconId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-reconid\",\"type\":\"simple\"},\"situation\":{\"ldapAttribute\":\"fr-idm-reconassocentry-situation\",\"type\":\"simple\"},\"sourceObjectId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-sourceObjectId\",\"type\":\"simple\"},\"sourceResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-sourceresourcecollection\",\"type\":\"simple\"},\"status\":{\"ldapAttribute\":\"fr-idm-reconassocentry-status\",\"type\":\"simple\"},\"targetObjectId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-targetObjectId\",\"type\":\"simple\"},\"targetResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-targetresourcecollection\",\"type\":\"simple\"}},\"resourceName\":\"recon-assoc-entry\",\"subResourceRouting\":[{\"prefix\":\"entry\",\"template\":\"recon/assoc/{reconId}/entry\"}]},\"sync/queue\":{\"dnTemplate\":\"ou=queue,ou=sync,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-syncqueue\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"context\":{\"ldapAttribute\":\"fr-idm-syncqueue-context\",\"type\":\"json\"},\"createDate\":{\"ldapAttribute\":\"fr-idm-syncqueue-createdate\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-syncqueue-mapping\",\"type\":\"simple\"},\"newObject\":{\"ldapAttribute\":\"fr-idm-syncqueue-newobject\",\"type\":\"json\"},\"nodeId\":{\"ldapAttribute\":\"fr-idm-syncqueue-nodeid\",\"type\":\"simple\"},\"objectRev\":{\"ldapAttribute\":\"fr-idm-syncqueue-objectRev\",\"type\":\"simple\"},\"oldObject\":{\"ldapAttribute\":\"fr-idm-syncqueue-oldobject\",\"type\":\"json\"},\"resourceCollection\":{\"ldapAttribute\":\"fr-idm-syncqueue-resourcecollection\",\"type\":\"simple\"},\"resourceId\":{\"ldapAttribute\":\"fr-idm-syncqueue-resourceid\",\"type\":\"simple\"},\"state\":{\"ldapAttribute\":\"fr-idm-syncqueue-state\",\"type\":\"simple\"},\"syncAction\":{\"ldapAttribute\":\"fr-idm-syncqueue-syncaction\",\"type\":\"simple\"}}}},\"genericMapping\":{\"cluster/*\":{\"dnTemplate\":\"ou=cluster,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-cluster-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchClusterObject\",\"objectClasses\":[\"uidObject\",\"fr-idm-cluster-obj\"]},\"config\":{\"dnTemplate\":\"ou=config,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"file\":{\"dnTemplate\":\"ou=file,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"import\":{\"dnTemplate\":\"ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"import/*\":{\"dnTemplate\":\"ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"internal/notification\":{\"dnTemplate\":\"ou=notification,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-notification-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-notification\"],\"properties\":{\"target\":{\"propertyName\":\"_notifications\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"internal/usermeta\":{\"dnTemplate\":\"ou=usermeta,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-generic-obj\"],\"properties\":{\"target\":{\"propertyName\":\"_meta\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"jsonstorage\":{\"dnTemplate\":\"ou=jsonstorage,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"managed/*\":{\"dnTemplate\":\"ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"managed/assignment\":{\"dnTemplate\":\"ou=assignment,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-assignment-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-assignment\"],\"properties\":{\"condition\":{\"ldapAttribute\":\"fr-idm-assignment-condition\",\"type\":\"simple\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"assignments\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"roles\":{\"isMultiValued\":true,\"propertyName\":\"assignments\",\"resourcePath\":\"managed/role\",\"type\":\"reverseReference\"}}},\"managed/organization\":{\"dnTemplate\":\"ou=organization,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-organization-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-organization\"],\"properties\":{\"admins\":{\"isMultiValued\":true,\"propertyName\":\"adminOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"children\":{\"isMultiValued\":true,\"propertyName\":\"parent\",\"resourcePath\":\"managed/organization\",\"type\":\"reverseReference\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"memberOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"name\":{\"ldapAttribute\":\"fr-idm-managed-organization-name\",\"type\":\"simple\"},\"owners\":{\"isMultiValued\":true,\"propertyName\":\"ownerOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"parent\":{\"ldapAttribute\":\"fr-idm-managed-organization-parent\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"}}},\"managed/role\":{\"dnTemplate\":\"ou=role,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-role-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchManagedRole\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-role\"],\"properties\":{\"assignments\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-role-assignments\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/assignment\",\"type\":\"reference\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"roles\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"managed/user\":{\"dnTemplate\":\"ou=user,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-user-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchManagedUser\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-user\"],\"properties\":{\"_meta\":{\"isMultiValued\":false,\"ldapAttribute\":\"fr-idm-managed-user-meta\",\"primaryKey\":\"uid\",\"resourcePath\":\"internal/usermeta\",\"type\":\"reference\"},\"_notifications\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-notifications\",\"primaryKey\":\"uid\",\"resourcePath\":\"internal/notification\",\"type\":\"reference\"},\"adminOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-admin\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"assignments\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-assignment-member\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/assignment\",\"type\":\"reference\"},\"authzRoles\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-authzroles-internal-role\",\"primaryKey\":\"cn\",\"resourcePath\":\"internal/role\",\"type\":\"reference\"},\"manager\":{\"isMultiValued\":false,\"ldapAttribute\":\"fr-idm-managed-user-manager\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/user\",\"type\":\"reference\"},\"memberOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-member\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"ownerOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-owner\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"passwordExpirationTime\":{\"ldapAttribute\":\"pwdExpirationTime\",\"type\":\"simple\",\"writability\":\"readOnlyDiscardWrites\"},\"passwordLastChangedTime\":{\"ldapAttribute\":\"pwdChangedTime\",\"type\":\"simple\",\"writability\":\"readOnlyDiscardWrites\"},\"reports\":{\"isMultiValued\":true,\"propertyName\":\"manager\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"roles\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-roles\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/role\",\"type\":\"reference\"}}},\"reconprogressstate\":{\"dnTemplate\":\"ou=reconprogressstate,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"relationships\":{\"dnTemplate\":\"ou=relationships,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-relationship-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchRelationship\",\"objectClasses\":[\"uidObject\",\"fr-idm-relationship\"]},\"scheduler\":{\"dnTemplate\":\"ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"scheduler/*\":{\"dnTemplate\":\"ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"ui/*\":{\"dnTemplate\":\"ou=ui,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"updates\":{\"dnTemplate\":\"ou=updates,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"}}},\"rest2LdapOptions\":{\"mvccAttribute\":\"etag\",\"readOnUpdatePolicy\":\"controls\",\"returnNullForMissingProperties\":true,\"useMvcc\":true,\"usePermissiveModify\":true,\"useSubtreeDelete\":false},\"security\":{\"fileBasedTrustManagerFile\":\"&{idm.install.dir}/security/truststore\",\"fileBasedTrustManagerPasswordFile\":\"&{idm.install.dir}/security/storepass\",\"fileBasedTrustManagerType\":\"JKS\",\"trustManager\":\"file\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.ds" + }, + "response": { + "bodySize": 20198, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 20198, + "text": "{\"_id\":\"repo.ds\",\"commands\":{\"delete-mapping-links\":{\"_queryFilter\":\"/linkType eq \\\"${mapping}\\\"\",\"operation\":\"DELETE\"},\"delete-target-ids-for-recon\":{\"_queryFilter\":\"/reconId eq \\\"${reconId}\\\"\",\"operation\":\"DELETE\"}},\"embedded\":false,\"ldapConnectionFactories\":{\"bind\":{\"connectionPoolSize\":50,\"connectionSecurity\":\"startTLS\",\"heartBeatIntervalSeconds\":60,\"heartBeatTimeoutMilliSeconds\":10000,\"primaryLdapServers\":[{\"hostname\":\"opendj-frodo-dev.classic.com\",\"port\":2389}],\"secondaryLdapServers\":[]},\"root\":{\"authentication\":{\"simple\":{\"bindDn\":\"uid=admin\",\"bindPassword\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"lJ/B6T9e9CDKHCN8TxkD4g==\",\"iv\":\"EdrerzwEUUkHG582cLDw5w==\",\"keySize\":32,\"mac\":\"Aty9fXUtl4pexGlHOc+CBg==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"BITSKlnPeT5klcuEZbngzw==\",\"stableId\":\"openidm-sym-default\"}}}}},\"inheritFrom\":\"bind\"}},\"maxConnectionAttempts\":5,\"resourceMapping\":{\"defaultMapping\":{\"dnTemplate\":\"ou=generic,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"explicitMapping\":{\"clusteredrecontargetids\":{\"dnTemplate\":\"ou=clusteredrecontargetids,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-recon-clusteredTargetIds\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"reconId\":{\"ldapAttribute\":\"fr-idm-recon-id\",\"type\":\"simple\"},\"targetIds\":{\"ldapAttribute\":\"fr-idm-recon-targetIds\",\"type\":\"json\"}}},\"dsconfig/attributeValue\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-attribute-value-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"checkSubstrings\":{\"ldapAttribute\":\"ds-cfg-check-substrings\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"matchAttribute\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-match-attribute\",\"type\":\"simple\"},\"minSubstringLength\":{\"ldapAttribute\":\"ds-cfg-min-substring-length\",\"type\":\"simple\"},\"testReversedPassword\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-test-reversed-password\",\"type\":\"simple\"}}},\"dsconfig/characterSet\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-character-set-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"allowUnclassifiedCharacters\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-allow-unclassified-characters\",\"type\":\"simple\"},\"characterSet\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-character-set\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minCharacterSets\":{\"ldapAttribute\":\"ds-cfg-min-character-sets\",\"type\":\"simple\"}}},\"dsconfig/dictionary\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-dictionary-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"checkSubstrings\":{\"ldapAttribute\":\"ds-cfg-check-substrings\",\"type\":\"simple\"},\"dictionaryFile\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-dictionary-file\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minSubstringLength\":{\"ldapAttribute\":\"ds-cfg-min-substring-length\",\"type\":\"simple\"},\"testReversedPassword\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-test-reversed-password\",\"type\":\"simple\"}}},\"dsconfig/lengthBased\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-length-based-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"maxPasswordLength\":{\"ldapAttribute\":\"ds-cfg-max-password-length\",\"type\":\"simple\"},\"minPasswordLength\":{\"ldapAttribute\":\"ds-cfg-min-password-length\",\"type\":\"simple\"}}},\"dsconfig/passwordPolicies\":{\"dnTemplate\":\"cn=Password Policies,cn=config\",\"objectClasses\":[\"ds-cfg-password-policy\",\"ds-cfg-authentication-policy\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"defaultPasswordStorageScheme\":{\"isMultiValued\":true,\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-default-password-storage-scheme\",\"type\":\"simple\"},\"maxPasswordAge\":{\"ldapAttribute\":\"ds-cfg-max-password-age\",\"type\":\"simple\"},\"passwordAttribute\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-password-attribute\",\"type\":\"simple\"},\"passwordHistoryCount\":{\"ldapAttribute\":\"ds-cfg-password-history-count\",\"type\":\"simple\"},\"validator\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-password-validator\",\"type\":\"simple\"}}},\"dsconfig/repeatedCharacters\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-repeated-characters-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"maxConsecutiveLength\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-max-consecutive-length\",\"type\":\"simple\"}}},\"dsconfig/similarityBased\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-similarity-based-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minPasswordDifference\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-min-password-difference\",\"type\":\"simple\"}}},\"dsconfig/uniqueCharacters\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-unique-characters-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minUniqueCharacters\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-min-unique-characters\",\"type\":\"simple\"}}},\"dsconfig/userDefinedVirtualAttribute\":{\"dnTemplate\":\"cn=Virtual Attributes,cn=config\",\"objectClasses\":[\"ds-cfg-user-defined-virtual-attribute\",\"ds-cfg-virtual-attribute\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"attributeType\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-attribute-type\",\"type\":\"simple\"},\"baseDn\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-base-dn\",\"type\":\"simple\"},\"conflictBehavior\":{\"ldapAttribute\":\"ds-cfg-conflict-behavior\",\"type\":\"simple\"},\"enabled\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"filter\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-filter\",\"type\":\"simple\"},\"groupDn\":{\"ldapAttribute\":\"ds-cfg-group-dn\",\"type\":\"simple\"},\"javaClass\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"scope\":{\"ldapAttribute\":\"ds-cfg-scope\",\"type\":\"simple\"},\"value\":{\"isMultiValued\":true,\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-value\",\"type\":\"simple\"}}},\"internal/role\":{\"dnTemplate\":\"ou=roles,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"fr-idm-internal-role\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"authzMembers\":{\"isMultiValued\":true,\"propertyName\":\"authzRoles\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"condition\":{\"ldapAttribute\":\"fr-idm-condition\",\"type\":\"simple\"},\"description\":{\"ldapAttribute\":\"description\",\"type\":\"simple\"},\"name\":{\"ldapAttribute\":\"fr-idm-name\",\"type\":\"simple\"},\"privileges\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-privilege\",\"type\":\"json\"},\"temporalConstraints\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-temporal-constraints\",\"type\":\"json\"}}},\"internal/user\":{\"dnTemplate\":\"ou=users,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-internal-user\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"password\":{\"ldapAttribute\":\"fr-idm-password\",\"type\":\"json\"}}},\"link\":{\"dnTemplate\":\"ou=links,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-link\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"firstId\":{\"ldapAttribute\":\"fr-idm-link-firstId\",\"type\":\"simple\"},\"linkQualifier\":{\"ldapAttribute\":\"fr-idm-link-qualifier\",\"type\":\"simple\"},\"linkType\":{\"ldapAttribute\":\"fr-idm-link-type\",\"type\":\"simple\"},\"secondId\":{\"ldapAttribute\":\"fr-idm-link-secondId\",\"type\":\"simple\"}}},\"locks\":{\"dnTemplate\":\"ou=locks,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-lock\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"nodeId\":{\"ldapAttribute\":\"fr-idm-lock-nodeid\",\"type\":\"simple\"}}},\"recon/assoc\":{\"dnTemplate\":\"ou=assoc,ou=recon,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"namingStrategy\":{\"dnAttribute\":\"fr-idm-reconassoc-reconid\",\"type\":\"clientDnNaming\"},\"objectClasses\":[\"fr-idm-reconassoc\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"fr-idm-reconassoc-reconid\",\"type\":\"simple\"},\"finishTime\":{\"ldapAttribute\":\"fr-idm-reconassoc-finishtime\",\"type\":\"simple\"},\"isAnalysis\":{\"ldapAttribute\":\"fr-idm-reconassoc-isanalysis\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-reconassoc-mapping\",\"type\":\"simple\"},\"sourceResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-sourceresourcecollection\",\"type\":\"simple\"},\"targetResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-targetresourcecollection\",\"type\":\"simple\"}},\"subResources\":{\"entry\":{\"namingStrategy\":{\"dnAttribute\":\"uid\",\"type\":\"clientDnNaming\"},\"resource\":\"recon-assoc-entry\",\"type\":\"collection\"}}},\"recon/assoc/entry\":{\"objectClasses\":[\"uidObject\",\"fr-idm-reconassocentry\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\"},\"action\":{\"ldapAttribute\":\"fr-idm-reconassocentry-action\",\"type\":\"simple\"},\"ambiguousTargetObjectIds\":{\"ldapAttribute\":\"fr-idm-reconassocentry-ambiguoustargetobjectids\",\"type\":\"simple\"},\"exception\":{\"ldapAttribute\":\"fr-idm-reconassocentry-exception\",\"type\":\"simple\"},\"isAnalysis\":{\"ldapAttribute\":\"fr-idm-reconassoc-isanalysis\",\"type\":\"simple\"},\"linkQualifier\":{\"ldapAttribute\":\"fr-idm-reconassocentry-linkqualifier\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-reconassoc-mapping\",\"type\":\"simple\"},\"message\":{\"ldapAttribute\":\"fr-idm-reconassocentry-message\",\"type\":\"simple\"},\"messageDetail\":{\"ldapAttribute\":\"fr-idm-reconassocentry-messagedetail\",\"type\":\"simple\"},\"phase\":{\"ldapAttribute\":\"fr-idm-reconassocentry-phase\",\"type\":\"simple\"},\"reconId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-reconid\",\"type\":\"simple\"},\"situation\":{\"ldapAttribute\":\"fr-idm-reconassocentry-situation\",\"type\":\"simple\"},\"sourceObjectId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-sourceObjectId\",\"type\":\"simple\"},\"sourceResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-sourceresourcecollection\",\"type\":\"simple\"},\"status\":{\"ldapAttribute\":\"fr-idm-reconassocentry-status\",\"type\":\"simple\"},\"targetObjectId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-targetObjectId\",\"type\":\"simple\"},\"targetResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-targetresourcecollection\",\"type\":\"simple\"}},\"resourceName\":\"recon-assoc-entry\",\"subResourceRouting\":[{\"prefix\":\"entry\",\"template\":\"recon/assoc/{reconId}/entry\"}]},\"sync/queue\":{\"dnTemplate\":\"ou=queue,ou=sync,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-syncqueue\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"context\":{\"ldapAttribute\":\"fr-idm-syncqueue-context\",\"type\":\"json\"},\"createDate\":{\"ldapAttribute\":\"fr-idm-syncqueue-createdate\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-syncqueue-mapping\",\"type\":\"simple\"},\"newObject\":{\"ldapAttribute\":\"fr-idm-syncqueue-newobject\",\"type\":\"json\"},\"nodeId\":{\"ldapAttribute\":\"fr-idm-syncqueue-nodeid\",\"type\":\"simple\"},\"objectRev\":{\"ldapAttribute\":\"fr-idm-syncqueue-objectRev\",\"type\":\"simple\"},\"oldObject\":{\"ldapAttribute\":\"fr-idm-syncqueue-oldobject\",\"type\":\"json\"},\"resourceCollection\":{\"ldapAttribute\":\"fr-idm-syncqueue-resourcecollection\",\"type\":\"simple\"},\"resourceId\":{\"ldapAttribute\":\"fr-idm-syncqueue-resourceid\",\"type\":\"simple\"},\"state\":{\"ldapAttribute\":\"fr-idm-syncqueue-state\",\"type\":\"simple\"},\"syncAction\":{\"ldapAttribute\":\"fr-idm-syncqueue-syncaction\",\"type\":\"simple\"}}}},\"genericMapping\":{\"cluster/*\":{\"dnTemplate\":\"ou=cluster,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-cluster-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchClusterObject\",\"objectClasses\":[\"uidObject\",\"fr-idm-cluster-obj\"]},\"config\":{\"dnTemplate\":\"ou=config,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"file\":{\"dnTemplate\":\"ou=file,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"import\":{\"dnTemplate\":\"ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"import/*\":{\"dnTemplate\":\"ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"internal/notification\":{\"dnTemplate\":\"ou=notification,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-notification-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-notification\"],\"properties\":{\"target\":{\"propertyName\":\"_notifications\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"internal/usermeta\":{\"dnTemplate\":\"ou=usermeta,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-generic-obj\"],\"properties\":{\"target\":{\"propertyName\":\"_meta\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"jsonstorage\":{\"dnTemplate\":\"ou=jsonstorage,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"managed/*\":{\"dnTemplate\":\"ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"managed/assignment\":{\"dnTemplate\":\"ou=assignment,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-assignment-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-assignment\"],\"properties\":{\"condition\":{\"ldapAttribute\":\"fr-idm-assignment-condition\",\"type\":\"simple\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"assignments\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"roles\":{\"isMultiValued\":true,\"propertyName\":\"assignments\",\"resourcePath\":\"managed/role\",\"type\":\"reverseReference\"}}},\"managed/organization\":{\"dnTemplate\":\"ou=organization,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-organization-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-organization\"],\"properties\":{\"admins\":{\"isMultiValued\":true,\"propertyName\":\"adminOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"children\":{\"isMultiValued\":true,\"propertyName\":\"parent\",\"resourcePath\":\"managed/organization\",\"type\":\"reverseReference\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"memberOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"name\":{\"ldapAttribute\":\"fr-idm-managed-organization-name\",\"type\":\"simple\"},\"owners\":{\"isMultiValued\":true,\"propertyName\":\"ownerOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"parent\":{\"ldapAttribute\":\"fr-idm-managed-organization-parent\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"}}},\"managed/role\":{\"dnTemplate\":\"ou=role,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-role-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchManagedRole\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-role\"],\"properties\":{\"assignments\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-role-assignments\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/assignment\",\"type\":\"reference\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"roles\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"managed/user\":{\"dnTemplate\":\"ou=user,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-user-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchManagedUser\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-user\"],\"properties\":{\"_meta\":{\"isMultiValued\":false,\"ldapAttribute\":\"fr-idm-managed-user-meta\",\"primaryKey\":\"uid\",\"resourcePath\":\"internal/usermeta\",\"type\":\"reference\"},\"_notifications\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-notifications\",\"primaryKey\":\"uid\",\"resourcePath\":\"internal/notification\",\"type\":\"reference\"},\"adminOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-admin\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"assignments\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-assignment-member\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/assignment\",\"type\":\"reference\"},\"authzRoles\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-authzroles-internal-role\",\"primaryKey\":\"cn\",\"resourcePath\":\"internal/role\",\"type\":\"reference\"},\"manager\":{\"isMultiValued\":false,\"ldapAttribute\":\"fr-idm-managed-user-manager\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/user\",\"type\":\"reference\"},\"memberOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-member\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"ownerOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-owner\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"passwordExpirationTime\":{\"ldapAttribute\":\"pwdExpirationTime\",\"type\":\"simple\",\"writability\":\"readOnlyDiscardWrites\"},\"passwordLastChangedTime\":{\"ldapAttribute\":\"pwdChangedTime\",\"type\":\"simple\",\"writability\":\"readOnlyDiscardWrites\"},\"reports\":{\"isMultiValued\":true,\"propertyName\":\"manager\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"roles\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-roles\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/role\",\"type\":\"reference\"}}},\"reconprogressstate\":{\"dnTemplate\":\"ou=reconprogressstate,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"relationships\":{\"dnTemplate\":\"ou=relationships,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-relationship-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchRelationship\",\"objectClasses\":[\"uidObject\",\"fr-idm-relationship\"]},\"scheduler\":{\"dnTemplate\":\"ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"scheduler/*\":{\"dnTemplate\":\"ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"ui/*\":{\"dnTemplate\":\"ou=ui,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"updates\":{\"dnTemplate\":\"ou=updates,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"}}},\"rest2LdapOptions\":{\"mvccAttribute\":\"etag\",\"readOnUpdatePolicy\":\"controls\",\"returnNullForMissingProperties\":true,\"useMvcc\":true,\"usePermissiveModify\":true,\"useSubtreeDelete\":false},\"security\":{\"fileBasedTrustManagerFile\":\"&{idm.install.dir}/security/truststore\",\"fileBasedTrustManagerPasswordFile\":\"&{idm.install.dir}/security/storepass\",\"fileBasedTrustManagerType\":\"JKS\",\"trustManager\":\"file\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.202Z", + "time": 22, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 22 + } + }, + { + "_id": "713d28bcb7fbcf706532db458785e079", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 789, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "789" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"repo.init\",\"insert\":{\"internal/role\":[{\"description\":\"Administrative access\",\"id\":\"openidm-admin\",\"name\":\"openidm-admin\"},{\"description\":\"Basic minimum user\",\"id\":\"openidm-authorized\",\"name\":\"openidm-authorized\"},{\"description\":\"Anonymous access\",\"id\":\"openidm-reg\",\"name\":\"openidm-reg\"},{\"description\":\"Authenticated via certificate\",\"id\":\"openidm-cert\",\"name\":\"openidm-cert\"},{\"description\":\"Allowed to reassign workflow tasks\",\"id\":\"openidm-tasks-manager\",\"name\":\"openidm-tasks-manager\"},{\"description\":\"Platform provisioning access\",\"id\":\"platform-provisioning\",\"name\":\"platform-provisioning\"}],\"internal/user\":[{\"id\":\"openidm-admin\",\"password\":\"&{openidm.admin.password}\"},{\"id\":\"anonymous\",\"password\":\"anonymous\"},{\"id\":\"idm-provisioning\"},{\"id\":\"connector-server-client\"}]}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.init" + }, + "response": { + "bodySize": 789, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 789, + "text": "{\"_id\":\"repo.init\",\"insert\":{\"internal/role\":[{\"description\":\"Administrative access\",\"id\":\"openidm-admin\",\"name\":\"openidm-admin\"},{\"description\":\"Basic minimum user\",\"id\":\"openidm-authorized\",\"name\":\"openidm-authorized\"},{\"description\":\"Anonymous access\",\"id\":\"openidm-reg\",\"name\":\"openidm-reg\"},{\"description\":\"Authenticated via certificate\",\"id\":\"openidm-cert\",\"name\":\"openidm-cert\"},{\"description\":\"Allowed to reassign workflow tasks\",\"id\":\"openidm-tasks-manager\",\"name\":\"openidm-tasks-manager\"},{\"description\":\"Platform provisioning access\",\"id\":\"platform-provisioning\",\"name\":\"platform-provisioning\"}],\"internal/user\":[{\"id\":\"openidm-admin\",\"password\":\"&{openidm.admin.password}\"},{\"id\":\"anonymous\",\"password\":\"anonymous\"},{\"id\":\"idm-provisioning\"},{\"id\":\"connector-server-client\"}]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "789" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.230Z", + "time": 6, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 6 + } + }, + { + "_id": "42c6e3613a1d003bb03982859b13f769", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 619, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "619" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"router\",\"filters\":[{\"methods\":[\"create\",\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"},{\"methods\":[\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^config/managed$\"},{\"condition\":{\"source\":\"(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0)\",\"type\":\"text/javascript\"},\"onResponse\":{\"source\":\"require('relationshipFilter').filterResponse()\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/router" + }, + "response": { + "bodySize": 619, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 619, + "text": "{\"_id\":\"router\",\"filters\":[{\"methods\":[\"create\",\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"},{\"methods\":[\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^config/managed$\"},{\"condition\":{\"source\":\"(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0)\",\"type\":\"text/javascript\"},\"onResponse\":{\"source\":\"require('relationshipFilter').filterResponse()\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "619" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.239Z", + "time": 6, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 6 + } + }, + { + "_id": "424494959b5c9b3055c3c7adfdbd139c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 459, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "459" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 457, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"schedule/seantest\",\"concurrentExecution\":false,\"enabled\":false,\"endTime\":null,\"invokeContext\":{\"script\":{\"globals\":{},\"source\":\"//sean has changed this script. Let's see if it is still working. qqqqqqqqqqqqqqSchedule1\\n\",\"type\":\"text/javascript\"}},\"invokeLogLevel\":\"info\",\"invokeService\":\"script\",\"misfirePolicy\":\"fireAndProceed\",\"persisted\":true,\"recoverable\":false,\"repeatCount\":0,\"repeatInterval\":0,\"schedule\":null,\"startTime\":null,\"type\":\"simple\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/seantest" + }, + "response": { + "bodySize": 459, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 459, + "text": "{\"_id\":\"schedule/seantest\",\"concurrentExecution\":false,\"enabled\":false,\"endTime\":null,\"invokeContext\":{\"script\":{\"globals\":{},\"source\":\"//sean has changed this script. Let's see if it is still working. qqqqqqqqqqqqqqSchedule1\\n\",\"type\":\"text/javascript\"}},\"invokeLogLevel\":\"info\",\"invokeService\":\"script\",\"misfirePolicy\":\"fireAndProceed\",\"persisted\":true,\"recoverable\":false,\"repeatCount\":0,\"repeatInterval\":0,\"schedule\":null,\"startTime\":null,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "459" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.249Z", + "time": 6, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 6 + } + }, + { + "_id": "b72f7bad2fb70bd3408d023227d6c0a1", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 838, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "838" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 466, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"schedule/taskscan_activate\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/activeDate le \\\"${Time.nowWithOffset}\\\") AND (!(/inactiveDate pr) or /inactiveDate ge \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/activateAccount/task-completed\",\"started\":\"/activateAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"active\\\" }];\\n\\nlogger.debug(\\\"Performing Activate Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_activate" + }, + "response": { + "bodySize": 838, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 838, + "text": "{\"_id\":\"schedule/taskscan_activate\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/activeDate le \\\"${Time.nowWithOffset}\\\") AND (!(/inactiveDate pr) or /inactiveDate ge \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/activateAccount/task-completed\",\"started\":\"/activateAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"active\\\" }];\\n\\nlogger.debug(\\\"Performing Activate Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "838" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.259Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "4b0af8e512d690c0f8ba8f746dc7f7f0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 830, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "830" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 464, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"schedule/taskscan_expire\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/inactiveDate lt \\\"${Time.nowWithOffset}\\\") AND (!(/activeDate pr) or /activeDate le \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/expireAccount/task-completed\",\"started\":\"/expireAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"inactive\\\" }];\\n\\nlogger.debug(\\\"Performing Expire Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_expire" + }, + "response": { + "bodySize": 830, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 830, + "text": "{\"_id\":\"schedule/taskscan_expire\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/inactiveDate lt \\\"${Time.nowWithOffset}\\\") AND (!(/activeDate pr) or /activeDate le \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/expireAccount/task-completed\",\"started\":\"/expireAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"inactive\\\" }];\\n\\nlogger.debug(\\\"Performing Expire Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "830" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.273Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "1024d424442077395a76f0ae65915bbe", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 156, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "156" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"scheduler\",\"scheduler\":{\"executePersistentSchedules\":{\"$bool\":\"&{openidm.scheduler.execute.persistent.schedules}\"}},\"threadPool\":{\"threadCount\":10}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/scheduler" + }, + "response": { + "bodySize": 156, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 156, + "text": "{\"_id\":\"scheduler\",\"scheduler\":{\"executePersistentSchedules\":{\"$bool\":\"&{openidm.scheduler.execute.persistent.schedules}\"}},\"threadPool\":{\"threadCount\":10}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "156" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.290Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "940e52bd5df8ce79327cf7ca6c2a4b70", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 939, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "939" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"ECMAScript\":{\"javascript.optimization.level\":9,\"javascript.recompile.minimumInterval\":60000},\"Groovy\":{\"#groovy.disabled.global.ast.transformations\":\"\",\"#groovy.errors.tolerance\":10,\"#groovy.output.debug\":false,\"#groovy.output.verbose\":false,\"#groovy.script.base\":\"#any class extends groovy.lang.Script\",\"#groovy.script.extension\":\".groovy\",\"#groovy.target.bytecode\":\"1.8\",\"#groovy.target.directory\":\"&{idm.data.dir}/classes\",\"#groovy.target.indy\":true,\"#groovy.warnings\":\"likely errors #othere values [none,likely,possible,paranoia]\",\"groovy.classpath\":\"&{idm.install.dir}/lib\",\"groovy.recompile\":true,\"groovy.recompile.minimumInterval\":60000,\"groovy.source.encoding\":\"UTF-8\"},\"_id\":\"script\",\"properties\":{},\"sources\":{\"default\":{\"directory\":\"&{idm.install.dir}/bin/defaults/script\"},\"install\":{\"directory\":\"&{idm.install.dir}\"},\"project\":{\"directory\":\"&{idm.instance.dir}\"},\"project-script\":{\"directory\":\"&{idm.instance.dir}/script\"}}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/script" + }, + "response": { + "bodySize": 939, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 939, + "text": "{\"_id\":\"script\",\"ECMAScript\":{\"javascript.optimization.level\":9,\"javascript.recompile.minimumInterval\":60000},\"Groovy\":{\"#groovy.disabled.global.ast.transformations\":\"\",\"#groovy.errors.tolerance\":10,\"#groovy.output.debug\":false,\"#groovy.output.verbose\":false,\"#groovy.script.base\":\"#any class extends groovy.lang.Script\",\"#groovy.script.extension\":\".groovy\",\"#groovy.target.bytecode\":\"1.8\",\"#groovy.target.directory\":\"&{idm.data.dir}/classes\",\"#groovy.target.indy\":true,\"#groovy.warnings\":\"likely errors #othere values [none,likely,possible,paranoia]\",\"groovy.classpath\":\"&{idm.install.dir}/lib\",\"groovy.recompile\":true,\"groovy.recompile.minimumInterval\":60000,\"groovy.source.encoding\":\"UTF-8\"},\"properties\":{},\"sources\":{\"default\":{\"directory\":\"&{idm.install.dir}/bin/defaults/script\"},\"install\":{\"directory\":\"&{idm.install.dir}\"},\"project\":{\"directory\":\"&{idm.instance.dir}\"},\"project-script\":{\"directory\":\"&{idm.instance.dir}/script\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "939" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.303Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "e743b381506753be0f13b78ef7ba632d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1829, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "1829" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"secrets\",\"stores\":[{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}\",\"mappings\":[{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.default\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.config.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.password.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"],\"secretId\":\"idm.jwt.session.module.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}\"],\"secretId\":\"idm.jwt.session.module.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"selfservice\"],\"secretId\":\"idm.selfservice.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}\"],\"secretId\":\"idm.selfservice.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.assignment.attribute.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]}],\"providerName\":\"&{openidm.keystore.provider|SunJCE}\",\"storePassword\":\"&{openidm.keystore.password|changeit}\",\"storetype\":\"&{openidm.keystore.type|JCEKS}\"},\"name\":\"mainKeyStore\"},{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.truststore.location|&{idm.install.dir}/security/truststore}\",\"mappings\":[],\"providerName\":\"&{openidm.truststore.provider|SUN}\",\"storePassword\":\"&{openidm.truststore.password|changeit}\",\"storetype\":\"&{openidm.truststore.type|JKS}\"},\"name\":\"mainTrustStore\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/secrets" + }, + "response": { + "bodySize": 1829, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1829, + "text": "{\"_id\":\"secrets\",\"stores\":[{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}\",\"mappings\":[{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.default\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.config.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.password.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"],\"secretId\":\"idm.jwt.session.module.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}\"],\"secretId\":\"idm.jwt.session.module.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"selfservice\"],\"secretId\":\"idm.selfservice.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}\"],\"secretId\":\"idm.selfservice.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.assignment.attribute.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]}],\"providerName\":\"&{openidm.keystore.provider|SunJCE}\",\"storePassword\":\"&{openidm.keystore.password|changeit}\",\"storetype\":\"&{openidm.keystore.type|JCEKS}\"},\"name\":\"mainKeyStore\"},{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.truststore.location|&{idm.install.dir}/security/truststore}\",\"mappings\":[],\"providerName\":\"&{openidm.truststore.provider|SUN}\",\"storePassword\":\"&{openidm.truststore.password|changeit}\",\"storetype\":\"&{openidm.truststore.type|JKS}\"},\"name\":\"mainTrustStore\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1829" + } + ], + "headersSize": 2252, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.316Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "075665a037e3c1ea3d5c043d72cebd9b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 290, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "290" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 455, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"selfservice.kba\",\"kbaPropertyName\":\"kbaInfo\",\"minimumAnswersToDefine\":2,\"minimumAnswersToVerify\":1,\"questions\":{\"1\":{\"en\":\"What's your favorite color?\",\"en_GB\":\"What is your favourite colour?\",\"fr\":\"Quelle est votre couleur préférée?\"},\"2\":{\"en\":\"Who was your first employer?\"}}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.kba" + }, + "response": { + "bodySize": 290, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 290, + "text": "{\"_id\":\"selfservice.kba\",\"kbaPropertyName\":\"kbaInfo\",\"minimumAnswersToDefine\":2,\"minimumAnswersToVerify\":1,\"questions\":{\"1\":{\"en\":\"What's your favorite color?\",\"en_GB\":\"What is your favourite colour?\",\"fr\":\"Quelle est votre couleur préférée?\"},\"2\":{\"en\":\"Who was your first employer?\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "290" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.331Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "886ef232f84c623d0f2daf1d8668ce6e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 713, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "713" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 463, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"selfservice.propertymap\",\"properties\":[{\"source\":\"givenName\",\"target\":\"givenName\"},{\"source\":\"familyName\",\"target\":\"sn\"},{\"source\":\"email\",\"target\":\"mail\"},{\"condition\":\"/object/postalAddress pr\",\"source\":\"postalAddress\",\"target\":\"postalAddress\"},{\"condition\":\"/object/addressLocality pr\",\"source\":\"addressLocality\",\"target\":\"city\"},{\"condition\":\"/object/addressRegion pr\",\"source\":\"addressRegion\",\"target\":\"stateProvince\"},{\"condition\":\"/object/postalCode pr\",\"source\":\"postalCode\",\"target\":\"postalCode\"},{\"condition\":\"/object/country pr\",\"source\":\"country\",\"target\":\"country\"},{\"condition\":\"/object/phone pr\",\"source\":\"phone\",\"target\":\"telephoneNumber\"},{\"source\":\"username\",\"target\":\"userName\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.propertymap" + }, + "response": { + "bodySize": 713, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 713, + "text": "{\"_id\":\"selfservice.propertymap\",\"properties\":[{\"source\":\"givenName\",\"target\":\"givenName\"},{\"source\":\"familyName\",\"target\":\"sn\"},{\"source\":\"email\",\"target\":\"mail\"},{\"condition\":\"/object/postalAddress pr\",\"source\":\"postalAddress\",\"target\":\"postalAddress\"},{\"condition\":\"/object/addressLocality pr\",\"source\":\"addressLocality\",\"target\":\"city\"},{\"condition\":\"/object/addressRegion pr\",\"source\":\"addressRegion\",\"target\":\"stateProvince\"},{\"condition\":\"/object/postalCode pr\",\"source\":\"postalCode\",\"target\":\"postalCode\"},{\"condition\":\"/object/country pr\",\"source\":\"country\",\"target\":\"country\"},{\"condition\":\"/object/phone pr\",\"source\":\"phone\",\"target\":\"telephoneNumber\"},{\"source\":\"username\",\"target\":\"userName\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "713" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.344Z", + "time": 12, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 12 + } + }, + { + "_id": "6e5e53c9330c498d5a944251e0e8323f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 730, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "730" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 457, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"selfservice.terms\",\"active\":\"0.0\",\"uiConfig\":{\"buttonText\":\"Accept\",\"displayName\":\"We've updated our terms\",\"purpose\":\"You must accept the updated terms in order to proceed.\"},\"versions\":[{\"createDate\":\"2019-10-28T04:20:11.320Z\",\"termsTranslations\":{\"en\":\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"},\"version\":\"0.0\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.terms" + }, + "response": { + "bodySize": 730, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 730, + "text": "{\"_id\":\"selfservice.terms\",\"active\":\"0.0\",\"uiConfig\":{\"buttonText\":\"Accept\",\"displayName\":\"We've updated our terms\",\"purpose\":\"You must accept the updated terms in order to proceed.\"},\"versions\":[{\"createDate\":\"2019-10-28T04:20:11.320Z\",\"termsTranslations\":{\"en\":\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"},\"version\":\"0.0\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "730" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.362Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "3f77ccba1a46c8634dcf686cc6848c1a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 402, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "402" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"servletfilter/cors\",\"filterClass\":\"org.eclipse.jetty.ee10.servlets.CrossOriginFilter\",\"initParams\":{\"allowCredentials\":true,\"allowedHeaders\":\"accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with\",\"allowedMethods\":\"GET,POST,PUT,DELETE,PATCH\",\"allowedOrigins\":\"https://localhost:&{openidm.port.https}\",\"chainPreflight\":false},\"urlPatterns\":[\"/*\"]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/cors" + }, + "response": { + "bodySize": 402, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 402, + "text": "{\"_id\":\"servletfilter/cors\",\"filterClass\":\"org.eclipse.jetty.ee10.servlets.CrossOriginFilter\",\"initParams\":{\"allowCredentials\":true,\"allowedHeaders\":\"accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with\",\"allowedMethods\":\"GET,POST,PUT,DELETE,PATCH\",\"allowedOrigins\":\"https://localhost:&{openidm.port.https}\",\"chainPreflight\":false},\"urlPatterns\":[\"/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "402" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.375Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "11cc10c6d2f5a6faeed47d54f9af0abc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 191, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "191" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 461, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"servletfilter/payload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":5},\"urlPatterns\":[\"&{openidm.servlet.alias}/*\"]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/payload" + }, + "response": { + "bodySize": 191, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 191, + "text": "{\"_id\":\"servletfilter/payload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":5},\"urlPatterns\":[\"&{openidm.servlet.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "191" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.389Z", + "time": 6, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 6 + } + }, + { + "_id": "2cf4a8279922f2f68ba3daaf00d920cc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 198, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "198" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 460, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"servletfilter/upload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":50},\"urlPatterns\":[\"&{openidm.servlet.upload.alias}/*\"]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/upload" + }, + "response": { + "bodySize": 198, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 198, + "text": "{\"_id\":\"servletfilter/upload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":50},\"urlPatterns\":[\"&{openidm.servlet.upload.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "198" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.400Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "f9398fa965ae2c914addd884d1c11499", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 244, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "244" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 456, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui.context/admin\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/admin/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/admin/extension\",\"responseHeaders\":{\"X-Frame-Options\":\"SAMEORIGIN\"},\"urlContextRoot\":\"/admin\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/admin" + }, + "response": { + "bodySize": 244, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 244, + "text": "{\"_id\":\"ui.context/admin\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/admin/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/admin/extension\",\"responseHeaders\":{\"X-Frame-Options\":\"SAMEORIGIN\"},\"urlContextRoot\":\"/admin\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "244" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.413Z", + "time": 6, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 6 + } + }, + { + "_id": "2531d9e46a98d59bb2310cfaf6e0c434", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 205, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "205" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 454, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui.context/api\",\"authEnabled\":true,\"cacheEnabled\":false,\"defaultDir\":\"&{idm.install.dir}/ui/api/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/api/extension\",\"urlContextRoot\":\"/api\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/api" + }, + "response": { + "bodySize": 205, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 205, + "text": "{\"_id\":\"ui.context/api\",\"authEnabled\":true,\"cacheEnabled\":false,\"defaultDir\":\"&{idm.install.dir}/ui/api/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/api/extension\",\"urlContextRoot\":\"/api\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "205" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.424Z", + "time": 6, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 6 + } + }, + { + "_id": "8e4d55d902fda9dcf6cb28a38f8b05c3", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 174, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "174" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui.context/enduser\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/enduser\",\"enabled\":true,\"responseHeaders\":{\"X-Frame-Options\":\"DENY\"},\"urlContextRoot\":\"/\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/enduser" + }, + "response": { + "bodySize": 174, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 174, + "text": "{\"_id\":\"ui.context/enduser\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/enduser\",\"enabled\":true,\"responseHeaders\":{\"X-Frame-Options\":\"DENY\"},\"urlContextRoot\":\"/\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "174" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.435Z", + "time": 5, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 5 + } + }, + { + "_id": "856e10b34afe79e55e6c6744c87c36e4", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 199, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "199" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 456, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui.context/oauth\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/oauth/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/oauth/extension\",\"urlContextRoot\":\"/oauthReturn\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/oauth" + }, + "response": { + "bodySize": 199, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 199, + "text": "{\"_id\":\"ui.context/oauth\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/oauth/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/oauth/extension\",\"urlContextRoot\":\"/oauthReturn\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "199" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.446Z", + "time": 6, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 6 + } + }, + { + "_id": "ffedaec2f8530b2951b4fe52409794b2", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 588, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "588" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 456, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui/configuration\",\"configuration\":{\"defaultNotificationType\":\"info\",\"forgotUsername\":false,\"lang\":\"en\",\"notificationTypes\":{\"error\":{\"iconPath\":\"images/notifications/error.png\",\"name\":\"common.notification.types.error\"},\"info\":{\"iconPath\":\"images/notifications/info.png\",\"name\":\"common.notification.types.info\"},\"warning\":{\"iconPath\":\"images/notifications/warning.png\",\"name\":\"common.notification.types.warning\"}},\"passwordReset\":false,\"passwordResetLink\":\"\",\"roles\":{\"internal/role/openidm-admin\":\"ui-admin\",\"internal/role/openidm-authorized\":\"ui-user\"},\"selfRegistration\":false}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/configuration" + }, + "response": { + "bodySize": 588, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 588, + "text": "{\"_id\":\"ui/configuration\",\"configuration\":{\"defaultNotificationType\":\"info\",\"forgotUsername\":false,\"lang\":\"en\",\"notificationTypes\":{\"error\":{\"iconPath\":\"images/notifications/error.png\",\"name\":\"common.notification.types.error\"},\"info\":{\"iconPath\":\"images/notifications/info.png\",\"name\":\"common.notification.types.info\"},\"warning\":{\"iconPath\":\"images/notifications/warning.png\",\"name\":\"common.notification.types.warning\"}},\"passwordReset\":false,\"passwordResetLink\":\"\",\"roles\":{\"internal/role/openidm-admin\":\"ui-admin\",\"internal/role/openidm-authorized\":\"ui-user\"},\"selfRegistration\":false}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "588" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.456Z", + "time": 6, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 6 + } + }, + { + "_id": "7ca95a1b42482427cd49ea83db0aecb0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2241, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2241" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui/dashboard\",\"adminDashboards\":[{\"isDefault\":true,\"name\":\"Quick Start\",\"widgets\":[{\"cards\":[{\"href\":\"#connectors/add/\",\"icon\":\"fa-database\",\"name\":\"Add Connector\"},{\"href\":\"#mapping/add/\",\"icon\":\"fa-map-marker\",\"name\":\"Create Mapping\"},{\"href\":\"#resource/managed/role/list/\",\"icon\":\"fa-check-square-o\",\"name\":\"Manage Roles\"},{\"href\":\"#managed/add/\",\"icon\":\"fa-tablet\",\"name\":\"Add Device\"},{\"href\":\"#selfservice/userregistration/\",\"icon\":\"fa-gear\",\"name\":\"Configure Registration\"},{\"href\":\"#selfservice/passwordreset/\",\"icon\":\"fa-gear\",\"name\":\"Configure Password Reset\"},{\"href\":\"#resource/managed/user/list/\",\"icon\":\"fa-user\",\"name\":\"Manage Users\"},{\"href\":\"#settings/\",\"icon\":\"fa-user\",\"name\":\"Configure System Preferences\"}],\"size\":\"large\",\"type\":\"quickStart\"}]},{\"isDefault\":false,\"name\":\"System Monitoring\",\"widgets\":[{\"legendRange\":{\"month\":[500,2500,5000],\"week\":[10,30,90,270,810],\"year\":[10000,40000,100000,250000]},\"maxRange\":\"#24423c\",\"minRange\":\"#b0d4cd\",\"size\":\"large\",\"type\":\"audit\"},{\"size\":\"large\",\"type\":\"clusterStatus\"},{\"size\":\"large\",\"type\":\"systemHealthFull\"},{\"barchart\":\"false\",\"size\":\"large\",\"type\":\"lastRecon\"}]},{\"isDefault\":false,\"name\":\"Resource Report\",\"widgets\":[{\"selected\":\"activeUsers\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"rolesEnabled\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"activeConnectors\",\"size\":\"x-small\",\"type\":\"counter\"},{\"size\":\"large\",\"type\":\"resourceList\"}]},{\"isDefault\":false,\"name\":\"Business Report\",\"widgets\":[{\"graphType\":\"fa-pie-chart\",\"providers\":[\"Username/Password\"],\"size\":\"x-small\",\"type\":\"signIns\",\"widgetTitle\":\"Sign-Ins\"},{\"graphType\":\"fa-bar-chart\",\"size\":\"x-small\",\"type\":\"passwordResets\",\"widgetTitle\":\"Password Resets\"},{\"graphType\":\"fa-line-chart\",\"providers\":[\"Username/Password\"],\"size\":\"x-small\",\"type\":\"newRegistrations\",\"widgetTitle\":\"New Registrations\"},{\"size\":\"x-small\",\"timezone\":{\"hours\":\"07\",\"minutes\":\"00\",\"negative\":true},\"type\":\"socialLogin\"},{\"selected\":\"socialEnabled\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"manualRegistrations\",\"size\":\"x-small\",\"type\":\"counter\"}]},{\"isDefault\":false,\"name\":\"seantestdashboard\",\"widgets\":[{\"size\":\"large\",\"type\":\"resourceList\"}]}],\"dashboard\":{\"widgets\":[{\"size\":\"large\",\"type\":\"Welcome\"}]}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/dashboard" + }, + "response": { + "bodySize": 2241, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 2241, + "text": "{\"_id\":\"ui/dashboard\",\"adminDashboards\":[{\"isDefault\":true,\"name\":\"Quick Start\",\"widgets\":[{\"cards\":[{\"href\":\"#connectors/add/\",\"icon\":\"fa-database\",\"name\":\"Add Connector\"},{\"href\":\"#mapping/add/\",\"icon\":\"fa-map-marker\",\"name\":\"Create Mapping\"},{\"href\":\"#resource/managed/role/list/\",\"icon\":\"fa-check-square-o\",\"name\":\"Manage Roles\"},{\"href\":\"#managed/add/\",\"icon\":\"fa-tablet\",\"name\":\"Add Device\"},{\"href\":\"#selfservice/userregistration/\",\"icon\":\"fa-gear\",\"name\":\"Configure Registration\"},{\"href\":\"#selfservice/passwordreset/\",\"icon\":\"fa-gear\",\"name\":\"Configure Password Reset\"},{\"href\":\"#resource/managed/user/list/\",\"icon\":\"fa-user\",\"name\":\"Manage Users\"},{\"href\":\"#settings/\",\"icon\":\"fa-user\",\"name\":\"Configure System Preferences\"}],\"size\":\"large\",\"type\":\"quickStart\"}]},{\"isDefault\":false,\"name\":\"System Monitoring\",\"widgets\":[{\"legendRange\":{\"month\":[500,2500,5000],\"week\":[10,30,90,270,810],\"year\":[10000,40000,100000,250000]},\"maxRange\":\"#24423c\",\"minRange\":\"#b0d4cd\",\"size\":\"large\",\"type\":\"audit\"},{\"size\":\"large\",\"type\":\"clusterStatus\"},{\"size\":\"large\",\"type\":\"systemHealthFull\"},{\"barchart\":\"false\",\"size\":\"large\",\"type\":\"lastRecon\"}]},{\"isDefault\":false,\"name\":\"Resource Report\",\"widgets\":[{\"selected\":\"activeUsers\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"rolesEnabled\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"activeConnectors\",\"size\":\"x-small\",\"type\":\"counter\"},{\"size\":\"large\",\"type\":\"resourceList\"}]},{\"isDefault\":false,\"name\":\"Business Report\",\"widgets\":[{\"graphType\":\"fa-pie-chart\",\"providers\":[\"Username/Password\"],\"size\":\"x-small\",\"type\":\"signIns\",\"widgetTitle\":\"Sign-Ins\"},{\"graphType\":\"fa-bar-chart\",\"size\":\"x-small\",\"type\":\"passwordResets\",\"widgetTitle\":\"Password Resets\"},{\"graphType\":\"fa-line-chart\",\"providers\":[\"Username/Password\"],\"size\":\"x-small\",\"type\":\"newRegistrations\",\"widgetTitle\":\"New Registrations\"},{\"size\":\"x-small\",\"timezone\":{\"hours\":\"07\",\"minutes\":\"00\",\"negative\":true},\"type\":\"socialLogin\"},{\"selected\":\"socialEnabled\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"manualRegistrations\",\"size\":\"x-small\",\"type\":\"counter\"}]},{\"isDefault\":false,\"name\":\"seantestdashboard\",\"widgets\":[{\"size\":\"large\",\"type\":\"resourceList\"}]}],\"dashboard\":{\"widgets\":[{\"size\":\"large\",\"type\":\"Welcome\"}]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.466Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "df3eb8ec5f2f8390ee9bda4e21313f01", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 891, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "891" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 450, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui/profile\",\"tabs\":[{\"name\":\"personalInfoTab\",\"view\":\"org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab\"},{\"name\":\"signInAndSecurity\",\"view\":\"org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab\"},{\"name\":\"preference\",\"view\":\"org/forgerock/openidm/ui/user/profile/PreferencesTab\"},{\"name\":\"trustedDevice\",\"view\":\"org/forgerock/openidm/ui/user/profile/TrustedDevicesTab\"},{\"name\":\"oauthApplication\",\"view\":\"org/forgerock/openidm/ui/user/profile/OauthApplicationsTab\"},{\"name\":\"privacyAndConsent\",\"view\":\"org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab\"},{\"name\":\"sharing\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/SharingTab\"},{\"name\":\"auditHistory\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/ActivityTab\"},{\"name\":\"accountControls\",\"view\":\"org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/profile" + }, + "response": { + "bodySize": 891, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 891, + "text": "{\"_id\":\"ui/profile\",\"tabs\":[{\"name\":\"personalInfoTab\",\"view\":\"org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab\"},{\"name\":\"signInAndSecurity\",\"view\":\"org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab\"},{\"name\":\"preference\",\"view\":\"org/forgerock/openidm/ui/user/profile/PreferencesTab\"},{\"name\":\"trustedDevice\",\"view\":\"org/forgerock/openidm/ui/user/profile/TrustedDevicesTab\"},{\"name\":\"oauthApplication\",\"view\":\"org/forgerock/openidm/ui/user/profile/OauthApplicationsTab\"},{\"name\":\"privacyAndConsent\",\"view\":\"org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab\"},{\"name\":\"sharing\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/SharingTab\"},{\"name\":\"auditHistory\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/ActivityTab\"},{\"name\":\"accountControls\",\"view\":\"org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "891" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.482Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "927933d6d1d6362ba93eab1026e492e6", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 421, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "421" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 454, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui/themeconfig\",\"icon\":\"favicon.ico\",\"path\":\"\",\"settings\":{\"footer\":{\"mailto\":\"info@pingidentity.com\"},\"loginLogo\":{\"alt\":\"Ping Identity\",\"height\":\"120px\",\"src\":\"images/login-logo-dark.png\",\"title\":\"Ping Identity\",\"width\":\"120px\"},\"logo\":{\"alt\":\"Ping Identity\",\"src\":\"images/logo-horizontal-white.png\",\"title\":\"Ping Identity\"}},\"stylesheets\":[\"css/bootstrap-3.4.1-custom.css\",\"css/structure.css\",\"css/theme.css\"]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/themeconfig" + }, + "response": { + "bodySize": 421, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 421, + "text": "{\"_id\":\"ui/themeconfig\",\"icon\":\"favicon.ico\",\"path\":\"\",\"settings\":{\"footer\":{\"mailto\":\"info@pingidentity.com\"},\"loginLogo\":{\"alt\":\"Ping Identity\",\"height\":\"120px\",\"src\":\"images/login-logo-dark.png\",\"title\":\"Ping Identity\",\"width\":\"120px\"},\"logo\":{\"alt\":\"Ping Identity\",\"src\":\"images/logo-horizontal-white.png\",\"title\":\"Ping Identity\"}},\"stylesheets\":[\"css/bootstrap-3.4.1-custom.css\",\"css/structure.css\",\"css/theme.css\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "421" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.498Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "aae156524eceaac7659d29ccabfa6b7e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 169, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "169" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"webserver\",\"gzip\":{\"enabled\":true,\"includedMethods\":[\"GET\"]},\"maxThreads\":{\"$int\":\"&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver" + }, + "response": { + "bodySize": 169, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 169, + "text": "{\"_id\":\"webserver\",\"gzip\":{\"enabled\":true,\"includedMethods\":[\"GET\"]},\"maxThreads\":{\"$int\":\"&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "169" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.510Z", + "time": 6, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 6 + } + }, + { + "_id": "3b9fc03ddabd674233d649150dbf0931", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 128, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "128" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 463, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"webserver.listener/http\",\"enabled\":{\"$bool\":\"&{openidm.http.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.http|8080}\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/http" + }, + "response": { + "bodySize": 128, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 128, + "text": "{\"_id\":\"webserver.listener/http\",\"enabled\":{\"$bool\":\"&{openidm.http.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.http|8080}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "128" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.521Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "0ef4585bbfb32a7b30964a6d50210a3d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 217, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "217" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 464, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"webserver.listener/https\",\"enabled\":{\"$bool\":\"&{openidm.https.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.https|8443}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/https" + }, + "response": { + "bodySize": 217, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 217, + "text": "{\"_id\":\"webserver.listener/https\",\"enabled\":{\"$bool\":\"&{openidm.https.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.https|8443}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "217" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.533Z", + "time": 6, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 6 + } + }, + { + "_id": "50bbd6ee40df0dd745b9fec4c55bb37c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 250, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "250" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 469, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"webserver.listener/mutualAuth\",\"enabled\":{\"$bool\":\"&{openidm.mutualauth.enabled|true}\"},\"mutualAuth\":true,\"port\":{\"$int\":\"&{openidm.port.mutualauth|8444}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/mutualAuth" + }, + "response": { + "bodySize": 250, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 250, + "text": "{\"_id\":\"webserver.listener/mutualAuth\",\"enabled\":{\"$bool\":\"&{openidm.mutualauth.enabled|true}\"},\"mutualAuth\":true,\"port\":{\"$int\":\"&{openidm.port.mutualauth|8444}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "250" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.544Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "047f43a49dff3686ec2e9da2c2dd2a16", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 743, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "743" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 471, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/forgottenUsername\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

\",\"fr\":\"{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Account Information - username\",\"fr\":\"Informations sur le compte - nom d'utilisateur\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/forgottenUsername" + }, + "response": { + "bodySize": 743, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 743, + "text": "{\"_id\":\"emailTemplate/forgottenUsername\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

\",\"fr\":\"{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Account Information - username\",\"fr\":\"Informations sur le compte - nom d'utilisateur\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "743" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.557Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "63b37e07e202b68dc9889582625abf16", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 431, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "431" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 466, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/registration\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

This is your registration email.

Email verification link

\",\"fr\":\"

Ceci est votre mail d'inscription.

Lien de vérification email

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Register new account\",\"fr\":\"Créer un nouveau compte\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/registration" + }, + "response": { + "bodySize": 431, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 431, + "text": "{\"_id\":\"emailTemplate/registration\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

This is your registration email.

Email verification link

\",\"fr\":\"

Ceci est votre mail d'inscription.

Lien de vérification email

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Register new account\",\"fr\":\"Créer un nouveau compte\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "431" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.570Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "6f03115777dabeb2ee464972baac6d91", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 455, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "455" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 467, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/resetPassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Click to reset your password

Password reset link

\",\"fr\":\"

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Reset your password\",\"fr\":\"Réinitialisez votre mot de passe\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/resetPassword" + }, + "response": { + "bodySize": 455, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 455, + "text": "{\"_id\":\"emailTemplate/resetPassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Click to reset your password

Password reset link

\",\"fr\":\"

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Reset your password\",\"fr\":\"Réinitialisez votre mot de passe\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "455" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.583Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "45e0b48dbb5854c86c7df3d75efcda80", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 273, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/updatePassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Verify email to update password

Update password link

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Update your password\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/updatePassword" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 273, + "text": "{\"_id\":\"emailTemplate/updatePassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Verify email to update password

Update password link

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Update your password\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "273" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.599Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "fbc9263fd25ddd47ab77bcc419cd03de", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 420, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "420" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 461, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/welcome\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Welcome to OpenIDM. Your username is '{{object.userName}}'.

\",\"fr\":\"

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Your account has been created\",\"fr\":\"Votre compte vient d’être créé !\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/welcome" + }, + "response": { + "bodySize": 420, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 420, + "text": "{\"_id\":\"emailTemplate/welcome\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Welcome to OpenIDM. Your username is '{{object.userName}}'.

\",\"fr\":\"

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Your account has been created\",\"fr\":\"Votre compte vient d’être créé !\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "420" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.613Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "4c1fef66c916c8940b0315dddc564b06", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 423, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 811, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 811, + "text": "[\"H4sIAAAAAAAA/w==\",\"7VfRjqIwFP2XPpP47ltHkZDFkgV5MBtDOlBJJ9iytE7GMf77tqOzq2sZihLmxQcThXNPr3jPucc9SGkOxkDsWAYcsMFVRVkhwPjX/uzOaIMZLkge1gVm9B1Lyll6uhbxkqjKjDNBmIzI7y2tiSpc41IQB+RUVCXeIbwhiqydhyoiMGbbsnQAsy2qeEkzSo5t40wjwHgPipI/qy7U24MDBN/WmaYbjQTBTBIhVaXcVfqaJG9y9IJfschqWkmg8VRu8ZEJwPmT7yVhEqsbvR2gvmhOe281DpNo4qZzP4595N3cb1Fz/rrT5BUXEt7FcN6eqS8A4yWagEvgLEzQNIVB5MLpMg189MOdtlcl6GcCA3/m24GhasZDNljdQBqiYNkOXcDIcxepIg4jG+rTL2aNh0GQeiFy25GTEM38aG5D+vG4Lc5+il20AIeVmouaV6SWR9WtzobhJM0RP9OrplE+AteS1Ee4xHVB5Bm81lLWDdjZTnwauNNH/vxCMtmHDzURdzOmJhajU335qPsbB7OLDTQ5t+m5g+ysnaWr3r5w1F7038WGLvztThG27lWTSoVxrs2yhULQgm2UGj9pE6FO7qjRRpZmQTaWdMwJWORr/Wpbal3jwSfvJfetEcHM1nWBW/Vzjyy+afP38Cs8MsNgmQH/VW5Xs3K6b2OTv221UfxnZ/887+PPkbWBXdcZLOsa9IgIj4gwZEQYVHNOy442afIiw5ijhvGwe1KHDWFzALGpfsj8IfMhZW5O7t+veOdqBTbv5dXhD+46tPKwFAAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.630Z", + "time": 3, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 3 + } + }, + { + "_id": "2eb6e1b577722143657744b884f00830", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 5283, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "5283" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"mappings\":[{\"_id\":\"sync/managedOrganization_managedRole\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedRole\",\"icon\":null,\"name\":\"managedOrganization_managedRole\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[],\"target\":\"managed/role\"},{\"_id\":\"sync/managedOrganization_managedSeantestmanagedobject\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedSeantestmanagedobject\",\"icon\":null,\"name\":\"managedOrganization_managedSeantestmanagedobject\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[\"managedOrganization_managedRole\"],\"target\":\"managed/seantestmanagedobject\"},{\"_id\":\"sync/managedAssignment_managedUser\",\"consentRequired\":false,\"displayName\":\"managedAssignment_managedUser\",\"icon\":null,\"name\":\"managedAssignment_managedUser\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"groovy\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\"],\"target\":\"managed/user\"},{\"_id\":\"sync/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\"],\"target\":\"managed/organization\"},{\"_id\":\"sync/managedSeantestmanagedobject_managedUser\",\"consentRequired\":false,\"displayName\":\"managedSeantestmanagedobject_managedUser\",\"icon\":null,\"name\":\"managedSeantestmanagedobject_managedUser\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/seantestmanagedobject\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\",\"seantestmapping\"],\"target\":\"managed/user\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 5296, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 5296, + "text": "{\"_id\":\"sync\",\"mappings\":[{\"_id\":\"sync/managedOrganization_managedRole\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedRole\",\"icon\":null,\"name\":\"managedOrganization_managedRole\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[],\"target\":\"managed/role\"},{\"_id\":\"sync/managedOrganization_managedSeantestmanagedobject\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedSeantestmanagedobject\",\"icon\":null,\"name\":\"managedOrganization_managedSeantestmanagedobject\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[\"managedOrganization_managedRole\"],\"target\":\"managed/seantestmanagedobject\"},{\"_id\":\"sync/managedAssignment_managedUser\",\"consentRequired\":false,\"displayName\":\"managedAssignment_managedUser\",\"icon\":null,\"name\":\"managedAssignment_managedUser\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"groovy\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\"],\"target\":\"managed/user\"},{\"_id\":\"sync/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\"],\"target\":\"managed/organization\"},{\"_id\":\"sync/managedSeantestmanagedobject_managedUser\",\"consentRequired\":false,\"displayName\":\"managedSeantestmanagedobject_managedUser\",\"icon\":null,\"name\":\"managedSeantestmanagedobject_managedUser\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/seantestmanagedobject\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\",\"seantestmapping\"],\"target\":\"managed/user\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.641Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "6787041b9e28fc782af01d1a938d5c61", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 117, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "117" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 460, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"openidm-admin\",\"condition\":null,\"description\":\"Administrative access\",\"name\":\"openidm-admin\",\"privileges\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role/openidm-admin" + }, + "response": { + "bodySize": 193, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 193, + "text": "{\"_id\":\"openidm-admin\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8780\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-admin\",\"description\":\"Administrative access\",\"temporalConstraints\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8780\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "193" + } + ], + "headersSize": 2254, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.750Z", + "time": 12, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 12 + } + }, + { + "_id": "4b1a0a65d562ca6a9f68f3aa3364e99c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 124, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "124" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 465, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"openidm-authorized\",\"condition\":null,\"description\":\"Basic minimum user\",\"name\":\"openidm-authorized\",\"privileges\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role/openidm-authorized" + }, + "response": { + "bodySize": 200, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 200, + "text": "{\"_id\":\"openidm-authorized\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8781\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-authorized\",\"description\":\"Basic minimum user\",\"temporalConstraints\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8781\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "200" + } + ], + "headersSize": 2254, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.769Z", + "time": 12, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 12 + } + }, + { + "_id": "2bfff6c7e2c8069aca3368f98758ec42", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 123, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "123" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"openidm-cert\",\"condition\":null,\"description\":\"Authenticated via certificate\",\"name\":\"openidm-cert\",\"privileges\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role/openidm-cert" + }, + "response": { + "bodySize": 199, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 199, + "text": "{\"_id\":\"openidm-cert\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8782\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-cert\",\"description\":\"Authenticated via certificate\",\"temporalConstraints\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8782\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "199" + } + ], + "headersSize": 2254, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.788Z", + "time": 17, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 17 + } + }, + { + "_id": "75d6976246a9dc1f1ab1849bbcfbcc40", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 108, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "108" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"openidm-reg\",\"condition\":null,\"description\":\"Anonymous access\",\"name\":\"openidm-reg\",\"privileges\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role/openidm-reg" + }, + "response": { + "bodySize": 184, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 184, + "text": "{\"_id\":\"openidm-reg\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8783\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-reg\",\"description\":\"Anonymous access\",\"temporalConstraints\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8783\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "184" + } + ], + "headersSize": 2254, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.810Z", + "time": 16, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 16 + } + }, + { + "_id": "2b8a77d0354a870267b704fc6f7b358f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 146, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "146" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"openidm-tasks-manager\",\"condition\":null,\"description\":\"Allowed to reassign workflow tasks\",\"name\":\"openidm-tasks-manager\",\"privileges\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role/openidm-tasks-manager" + }, + "response": { + "bodySize": 222, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 222, + "text": "{\"_id\":\"openidm-tasks-manager\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8784\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-tasks-manager\",\"description\":\"Allowed to reassign workflow tasks\",\"temporalConstraints\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8784\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "222" + } + ], + "headersSize": 2254, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.832Z", + "time": 14, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 14 + } + }, + { + "_id": "ee2c366c33d54481795486a93f74a3a7", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 140, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e915b603-3837-4416-afe9-689a7368600f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "140" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"platform-provisioning\",\"condition\":null,\"description\":\"Platform provisioning access\",\"name\":\"platform-provisioning\",\"privileges\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role/platform-provisioning" + }, + "response": { + "bodySize": 216, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 216, + "text": "{\"_id\":\"platform-provisioning\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8785\",\"privileges\":[],\"condition\":null,\"name\":\"platform-provisioning\",\"description\":\"Platform provisioning access\",\"temporalConstraints\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 18:52:36 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8785\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "216" + } + ], + "headersSize": 2254, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T18:52:36.852Z", + "time": 17, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 17 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/default_2470140894/recording.har b/test/e2e/mocks/default_2470140894/recording.har index f879fb963..ab479deca 100644 --- a/test/e2e/mocks/default_2470140894/recording.har +++ b/test/e2e/mocks/default_2470140894/recording.har @@ -8,7 +8,7 @@ }, "entries": [ { - "_id": "f30717c7ec52ff5fe13dfa0ba3bd0962", + "_id": "4c1fef66c916c8940b0315dddc564b06", "_order": 0, "cache": {}, "request": { @@ -19,121 +19,128 @@ "name": "accept", "value": "application/json, text/plain, */*" }, + { + "name": "content-type", + "value": "application/json" + }, { "name": "user-agent", - "value": "@rockcarver/frodo-lib/2.0.0-39" + "value": "@rockcarver/frodo-lib/3.0.4-0" }, { "name": "x-forgerock-transactionid", - "value": "frodo-90e5fb14-79c4-4f02-93c1-29164373b487" + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" }, { - "name": "content-type", - "value": "application/json" + "name": "x-openidm-username", + "value": "openidm-admin" }, { - "name": "accept-api-version", - "value": "protocol=2.1,resource=1.0" + "name": "x-openidm-password", + "value": "openidm-admin" }, { - "name": "authorization", - "value": "Bearer " + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" }, { "name": "host", - "value": "openam-frodo-dev.forgeblocks.com" + "value": "openidm-frodo-dev.classic.com:9080" } ], - "headersSize": 1599, + "headersSize": 425, "httpVersion": "HTTP/1.1", "method": "GET", - "queryString": [ - { - "name": "entityid", - "value": "sales-IDP" - }, - { - "name": "realm", - "value": "alpha" - } - ], - "url": "https://openam-frodo-dev.forgeblocks.com/am/saml2/jsp/exportmetadata.jsp?entityid=sales-IDP&realm=alpha" + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" }, "response": { - "bodySize": 6250, + "bodySize": 539, "content": { - "mimeType": "text/xml;charset=utf-8", - "size": 6250, - "text": "\n\n \n \n \n \n \n \n \n \nMIIDXzCCAkegAwIBAgIEDvqo1zANBgkqhkiG9w0BAQsFADBgMQswCQYDVQQGEwJVSzEQMA4GA1UE\nCBMHQnJpc3RvbDEQMA4GA1UEBxMHQnJpc3RvbDESMBAGA1UEChMJRm9yZ2VSb2NrMRkwFwYDVQQD\nExByc2Fqd3RzaWduaW5na2V5MB4XDTIyMDgxMTAxMzIyOVoXDTMyMDgwODAxMzIyOVowYDELMAkG\nA1UEBhMCVUsxEDAOBgNVBAgTB0JyaXN0b2wxEDAOBgNVBAcTB0JyaXN0b2wxEjAQBgNVBAoTCUZv\ncmdlUm9jazEZMBcGA1UEAxMQcnNhand0c2lnbmluZ2tleTCCASIwDQYJKoZIhvcNAQEBBQADggEP\nADCCAQoCggEBAKz4i7AfLdKa2fOueSyaX3rviRZXzY3w8J01B6VZZk+ujatitD8h9uSE7RjK2NS6\nBYSf/wMsg2/Xy/vVbqEMrAl8ptdjXd9rsyL4sz33IRDgs9PqW2X2Ml5et0ASCwwQJWv8aGJJqkOG\nZorLVGqCS8PvkiN8MoYXGvkMpLPeWuSBqTTC2iBubhenRqcRkvCoeZ0JbrRWfEHKoFM1gkTj/xcn\nL8yrXb5S3e2iAPkRw8+UPf8d4i9syS/jDyUZgrfqOsypbHh0dNMkS5dYpiqnOmJDWkjy1UDdUGmA\nSKglu7c6gKaPaxcqh9VNGnTerQFbpKMV34guBoyBFrVFD1Sq6eUCAwEAAaMhMB8wHQYDVR0OBBYE\nFCRENQBDfGf/R6qys11dPZM1+i5zMA0GCSqGSIb3DQEBCwUAA4IBAQACttnaeWl6CLVhffIlVz28\nCgxJbLB+pY9mL/jy7G0+5AxK7h9Njoe9ZK9k59uMcwD5BfVPl58kxFLJcnFc68R9m2Cdii1aCm/A\nBLlHPhpxHni5INeH9J4P7MLdVwxMa/Inp9tw3gZQ60txgG/mv535kL1mtlUSqbPDf57AtG0tNWKT\n2EBe/aSLndIWAhGf1qjS5Sc3uz+O5QEG7fnkLS4uOh5//coh14wfY3EAnMl/DpkgViliQOu7voX8\n7geBJd5jJhs6Ne2BJUp0q4iylD6WJrcfOLc3mcrgVaey5rLzVvX8vsp+p/m88KKhPzK+C8soYHz4\nT7PNNC7YVB2EQVSm\n \n \n \n \n \n \n \n \nMIIDRzCCAi+gAwIBAgIEK9RtfDANBgkqhkiG9w0BAQsFADBUMQswCQYDVQQGEwJVSzEQMA4GA1UE\nCBMHQnJpc3RvbDEQMA4GA1UEBxMHQnJpc3RvbDESMBAGA1UEChMJRm9yZ2VSb2NrMQ0wCwYDVQQD\nEwR0ZXN0MB4XDTIyMDgxMTAxMzIzMFoXDTMyMDgwODAxMzIzMFowVDELMAkGA1UEBhMCVUsxEDAO\nBgNVBAgTB0JyaXN0b2wxEDAOBgNVBAcTB0JyaXN0b2wxEjAQBgNVBAoTCUZvcmdlUm9jazENMAsG\nA1UEAxMEdGVzdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAIjkMGOu0kbOsvdp45J6\nFYW5wIn5TsKEPQUlNbYiFITg9o18Ja+6vWouK0fbIkzp8Ejj3U5OPHXqCtXCiDWiNX+bbFZoELW2\nKUigC26QdqbhmA/hTBheyQaUg/I4D64fqebUare9r0zxtMYE8FnR3YRgGeEG2qSlxgmIFvTMnzd4\nUwrUuw8C/uZTRbppDQITpkLDrOKb9608qnRvbXSR7UVP/JTm8Pq6uP2pvXz2F/QSK/wMKOnsjf+B\nXfnqNZ9b+PP+fJvUKIcxjFwgDkmGP+Kr9YV7aFaur5Hgh7Q+q4bSDJMbNDhk5Lqu6qr3oGulyiTX\nhtoEkLMcbMA7JrVFCl0CAwEAAaMhMB8wHQYDVR0OBBYEFPoZt1jm2z/0gX/TnN/Sn+T31BU1MA0G\nCSqGSIb3DQEBCwUAA4IBAQAY2Hy1f+lKClRzJFHNVyYZ0ahRCkbGB0FppwI8ZhIt6Aj3p9LBXOdu\nIckDfAjg0/mckuEteA7l1LRqYcQIxpxrJU4FTxeyV1gTgudW43rw9Vd3AxdVocXqdpVxAvECtI+X\n/jdbkk54k0mYTCI9ruNRdof1BpOWkI9Jtdj0GRe7L9nydNb3V/kJzSVMDNsx+Vc0GnmysL7edZDo\nmK3zry+aIWav0yj1Pmh2lOgD6rEnOlGZDqrmIqWd0d2jp8Am4iawP0sr9e7etjK/YGCFW4byuCOx\n328SOTHshVUBtIGbq11vuQleknlVL7A/aYUeUIyOvdYhWD7YoVnBV+QwcrAH\n \n \n \n \n \n \n \n \n 128\n \n \n \n \n \n urn:oasis:names:tc:SAML:2.0:nameid-format:persistent\n urn:oasis:names:tc:SAML:2.0:nameid-format:transient\n urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress\n urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified\n urn:oasis:names:tc:SAML:1.1:nameid-format:WindowsDomainQualifiedName\n urn:oasis:names:tc:SAML:2.0:nameid-format:kerberos\n urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName\n \n \n \n \n \n\n\n" + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 539, + "text": "[\"H4sIAAAAAAAA/w==\",\"7ZVBb4IwGIb/S88k3r2hImmGbQZyMIshHVbSBQpry8EZ//vagQtGTOvFE8e2z/e2h/eBM8jYAcyBPPEceKAiTcN4IcH84zw4mUlKuKJS9eeazGsuKVcx/W6ZoBo8klJSDxyYbEpyQqSiZvhujulBMOdtWXqAP4KaumQ5o90zSK6YmQF+skNLfSqZasl1b5EEaAsuno2LoizEKHAgNwsYpjhN7OgSozWMN8HKjq5xilyxzI/iwF/tsgiiN5dww2UYRTs7uoFJAlFoBxOcxssggyHCscsbet45f+vHYbB1z0+Rr5ND5Ma+p34E19DAe10nUTdUqK5Qei3rVuSmeRXhpKCHGZGSFbzSfTZJuvD+UVHRwYqIgqoBXIuCcPbTXWbeMvCkZ/AAyfq9uC6pszf2nBGP7EOTV5NXr/TqRpVbs+6++mOqCVPbccWS//G/Zf35RXN1rXsq9R1PuuYS+Fg6l+nJvsm+V9onxzpp09Cz/kbGRG1Nwy/7yy8hq2ynTwoAAA==\"]" }, "cookies": [ { "httpOnly": true, - "name": "JSESSIONID", - "path": "/am", - "secure": true, - "value": "14875872C8C283EE27E4A5F94B72F578" + "name": "session-jwt", + "path": "/", + "value": "" } ], "headers": [ { - "name": "x-frame-options", - "value": "SAMEORIGIN" + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" }, { - "name": "content-security-policy-report-only", - "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + "name": "vary", + "value": "Accept-Encoding, Origin" }, { - "name": "x-content-type-options", - "value": "nosniff" + "name": "cache-control", + "value": "no-store" }, { - "_fromType": "array", - "name": "set-cookie", - "value": "JSESSIONID=14875872C8C283EE27E4A5F94B72F578; Path=/am; Secure; HttpOnly" + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" }, { - "name": "pragma", - "value": "no-cache" + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" }, { "name": "content-type", - "value": "text/xml;charset=utf-8" + "value": "application/json;charset=utf-8" }, { - "name": "content-length", - "value": "6250" + "name": "cross-origin-opener-policy", + "value": "same-origin" }, { - "name": "date", - "value": "Sun, 15 Oct 2023 03:29:00 GMT" + "name": "cross-origin-resource-policy", + "value": "same-origin" }, { - "name": "x-forgerock-transactionid", - "value": "frodo-90e5fb14-79c4-4f02-93c1-29164373b487" + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" }, { - "name": "strict-transport-security", - "value": "max-age=31536000; includeSubDomains; preload;" + "name": "x-frame-options", + "value": "DENY" }, { - "name": "via", - "value": "1.1 google" + "name": "content-encoding", + "value": "gzip" }, { - "name": "alt-svc", - "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + "name": "transfer-encoding", + "value": "chunked" } ], - "headersSize": 593, + "headersSize": 2299, "httpVersion": "HTTP/1.1", "redirectURL": "", "status": 200, "statusText": "OK" }, - "startedDateTime": "2023-10-15T03:29:01.070Z", - "time": 39, + "startedDateTime": "2025-05-06T22:21:01.066Z", + "time": 30, "timings": { "blocked": -1, "connect": -1, @@ -141,11 +148,11 @@ "receive": 0, "send": 0, "ssl": -1, - "wait": 39 + "wait": 30 } }, { - "_id": "3e2c66f09e595edbe4719f89b2142c68", + "_id": "4c963e6ac6a0c10bf75de375d8e3da12", "_order": 0, "cache": {}, "request": { @@ -156,121 +163,128 @@ "name": "accept", "value": "application/json, text/plain, */*" }, + { + "name": "content-type", + "value": "application/json" + }, { "name": "user-agent", - "value": "@rockcarver/frodo-lib/2.0.0-39" + "value": "@rockcarver/frodo-lib/3.0.4-0" }, { "name": "x-forgerock-transactionid", - "value": "frodo-90e5fb14-79c4-4f02-93c1-29164373b487" + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" }, { - "name": "content-type", - "value": "application/json" + "name": "x-openidm-username", + "value": "openidm-admin" }, { - "name": "accept-api-version", - "value": "protocol=2.1,resource=1.0" + "name": "x-openidm-password", + "value": "openidm-admin" }, { - "name": "authorization", - "value": "Bearer " + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" }, { "name": "host", - "value": "openam-frodo-dev.forgeblocks.com" + "value": "openidm-frodo-dev.classic.com:9080" } ], - "headersSize": 1605, + "headersSize": 458, "httpVersion": "HTTP/1.1", "method": "GET", "queryString": [ { - "name": "entityid", - "value": "engineering-IDP" - }, - { - "name": "realm", - "value": "alpha" + "name": "_queryFilter", + "value": "_id sw 'mapping'" } ], - "url": "https://openam-frodo-dev.forgeblocks.com/am/saml2/jsp/exportmetadata.jsp?entityid=engineering-IDP&realm=alpha" + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=_id%20sw%20%27mapping%27" }, "response": { - "bodySize": 6310, + "bodySize": 138, "content": { - "mimeType": "text/xml;charset=utf-8", - "size": 6310, - "text": "\n\n \n \n \n \n \n \n \n \nMIIDXzCCAkegAwIBAgIEDvqo1zANBgkqhkiG9w0BAQsFADBgMQswCQYDVQQGEwJVSzEQMA4GA1UE\nCBMHQnJpc3RvbDEQMA4GA1UEBxMHQnJpc3RvbDESMBAGA1UEChMJRm9yZ2VSb2NrMRkwFwYDVQQD\nExByc2Fqd3RzaWduaW5na2V5MB4XDTIyMDgxMTAxMzIyOVoXDTMyMDgwODAxMzIyOVowYDELMAkG\nA1UEBhMCVUsxEDAOBgNVBAgTB0JyaXN0b2wxEDAOBgNVBAcTB0JyaXN0b2wxEjAQBgNVBAoTCUZv\ncmdlUm9jazEZMBcGA1UEAxMQcnNhand0c2lnbmluZ2tleTCCASIwDQYJKoZIhvcNAQEBBQADggEP\nADCCAQoCggEBAKz4i7AfLdKa2fOueSyaX3rviRZXzY3w8J01B6VZZk+ujatitD8h9uSE7RjK2NS6\nBYSf/wMsg2/Xy/vVbqEMrAl8ptdjXd9rsyL4sz33IRDgs9PqW2X2Ml5et0ASCwwQJWv8aGJJqkOG\nZorLVGqCS8PvkiN8MoYXGvkMpLPeWuSBqTTC2iBubhenRqcRkvCoeZ0JbrRWfEHKoFM1gkTj/xcn\nL8yrXb5S3e2iAPkRw8+UPf8d4i9syS/jDyUZgrfqOsypbHh0dNMkS5dYpiqnOmJDWkjy1UDdUGmA\nSKglu7c6gKaPaxcqh9VNGnTerQFbpKMV34guBoyBFrVFD1Sq6eUCAwEAAaMhMB8wHQYDVR0OBBYE\nFCRENQBDfGf/R6qys11dPZM1+i5zMA0GCSqGSIb3DQEBCwUAA4IBAQACttnaeWl6CLVhffIlVz28\nCgxJbLB+pY9mL/jy7G0+5AxK7h9Njoe9ZK9k59uMcwD5BfVPl58kxFLJcnFc68R9m2Cdii1aCm/A\nBLlHPhpxHni5INeH9J4P7MLdVwxMa/Inp9tw3gZQ60txgG/mv535kL1mtlUSqbPDf57AtG0tNWKT\n2EBe/aSLndIWAhGf1qjS5Sc3uz+O5QEG7fnkLS4uOh5//coh14wfY3EAnMl/DpkgViliQOu7voX8\n7geBJd5jJhs6Ne2BJUp0q4iylD6WJrcfOLc3mcrgVaey5rLzVvX8vsp+p/m88KKhPzK+C8soYHz4\nT7PNNC7YVB2EQVSm\n \n \n \n \n \n \n \n \nMIIDRzCCAi+gAwIBAgIEK9RtfDANBgkqhkiG9w0BAQsFADBUMQswCQYDVQQGEwJVSzEQMA4GA1UE\nCBMHQnJpc3RvbDEQMA4GA1UEBxMHQnJpc3RvbDESMBAGA1UEChMJRm9yZ2VSb2NrMQ0wCwYDVQQD\nEwR0ZXN0MB4XDTIyMDgxMTAxMzIzMFoXDTMyMDgwODAxMzIzMFowVDELMAkGA1UEBhMCVUsxEDAO\nBgNVBAgTB0JyaXN0b2wxEDAOBgNVBAcTB0JyaXN0b2wxEjAQBgNVBAoTCUZvcmdlUm9jazENMAsG\nA1UEAxMEdGVzdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAIjkMGOu0kbOsvdp45J6\nFYW5wIn5TsKEPQUlNbYiFITg9o18Ja+6vWouK0fbIkzp8Ejj3U5OPHXqCtXCiDWiNX+bbFZoELW2\nKUigC26QdqbhmA/hTBheyQaUg/I4D64fqebUare9r0zxtMYE8FnR3YRgGeEG2qSlxgmIFvTMnzd4\nUwrUuw8C/uZTRbppDQITpkLDrOKb9608qnRvbXSR7UVP/JTm8Pq6uP2pvXz2F/QSK/wMKOnsjf+B\nXfnqNZ9b+PP+fJvUKIcxjFwgDkmGP+Kr9YV7aFaur5Hgh7Q+q4bSDJMbNDhk5Lqu6qr3oGulyiTX\nhtoEkLMcbMA7JrVFCl0CAwEAAaMhMB8wHQYDVR0OBBYEFPoZt1jm2z/0gX/TnN/Sn+T31BU1MA0G\nCSqGSIb3DQEBCwUAA4IBAQAY2Hy1f+lKClRzJFHNVyYZ0ahRCkbGB0FppwI8ZhIt6Aj3p9LBXOdu\nIckDfAjg0/mckuEteA7l1LRqYcQIxpxrJU4FTxeyV1gTgudW43rw9Vd3AxdVocXqdpVxAvECtI+X\n/jdbkk54k0mYTCI9ruNRdof1BpOWkI9Jtdj0GRe7L9nydNb3V/kJzSVMDNsx+Vc0GnmysL7edZDo\nmK3zry+aIWav0yj1Pmh2lOgD6rEnOlGZDqrmIqWd0d2jp8Am4iawP0sr9e7etjK/YGCFW4byuCOx\n328SOTHshVUBtIGbq11vuQleknlVL7A/aYUeUIyOvdYhWD7YoVnBV+QwcrAH\n \n \n \n \n \n \n \n \n 128\n \n \n \n \n \n urn:oasis:names:tc:SAML:2.0:nameid-format:persistent\n urn:oasis:names:tc:SAML:2.0:nameid-format:transient\n urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress\n urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified\n urn:oasis:names:tc:SAML:1.1:nameid-format:WindowsDomainQualifiedName\n urn:oasis:names:tc:SAML:2.0:nameid-format:kerberos\n urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName\n \n \n \n \n \n\n\n" + "mimeType": "application/json;charset=utf-8", + "size": 138, + "text": "{\"result\":[],\"resultCount\":0,\"pagedResultsCookie\":null,\"totalPagedResultsPolicy\":\"EXACT\",\"totalPagedResults\":0,\"remainingPagedResults\":-1}" }, "cookies": [ { "httpOnly": true, - "name": "JSESSIONID", - "path": "/am", - "secure": true, - "value": "56B9D3C25E2BD29CFB2103E33D5D9934" + "name": "session-jwt", + "path": "/", + "value": "" } ], "headers": [ { - "name": "x-frame-options", - "value": "SAMEORIGIN" + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" }, { - "name": "content-security-policy-report-only", - "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + "name": "vary", + "value": "Accept-Encoding, Origin" }, { - "name": "x-content-type-options", - "value": "nosniff" + "name": "cache-control", + "value": "no-store" }, { - "_fromType": "array", - "name": "set-cookie", - "value": "JSESSIONID=56B9D3C25E2BD29CFB2103E33D5D9934; Path=/am; Secure; HttpOnly" + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" }, { - "name": "pragma", - "value": "no-cache" + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" }, { "name": "content-type", - "value": "text/xml;charset=utf-8" + "value": "application/json;charset=utf-8" }, { - "name": "content-length", - "value": "6310" + "name": "cross-origin-opener-policy", + "value": "same-origin" }, { - "name": "date", - "value": "Sun, 15 Oct 2023 03:29:00 GMT" + "name": "cross-origin-resource-policy", + "value": "same-origin" }, { - "name": "x-forgerock-transactionid", - "value": "frodo-90e5fb14-79c4-4f02-93c1-29164373b487" + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" }, { - "name": "strict-transport-security", - "value": "max-age=31536000; includeSubDomains; preload;" + "name": "x-content-type-options", + "value": "nosniff" }, { - "name": "via", - "value": "1.1 google" + "name": "x-frame-options", + "value": "DENY" }, { - "name": "alt-svc", - "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + "name": "content-length", + "value": "138" } ], - "headersSize": 593, + "headersSize": 2268, "httpVersion": "HTTP/1.1", "redirectURL": "", "status": 200, "statusText": "OK" }, - "startedDateTime": "2023-10-15T03:29:01.197Z", - "time": 45, + "startedDateTime": "2025-05-06T22:21:01.104Z", + "time": 10, "timings": { "blocked": -1, "connect": -1, @@ -278,11 +292,11 @@ "receive": 0, "send": 0, "ssl": -1, - "wait": 45 + "wait": 10 } }, { - "_id": "5ac34b58b606e7c3d035917a23af91d5", + "_id": "778b519855abd745b38438bc349de829", "_order": 0, "cache": {}, "request": { @@ -293,121 +307,133 @@ "name": "accept", "value": "application/json, text/plain, */*" }, + { + "name": "content-type", + "value": "application/json" + }, { "name": "user-agent", - "value": "@rockcarver/frodo-lib/2.0.0-39" + "value": "@rockcarver/frodo-lib/3.0.4-0" }, { "name": "x-forgerock-transactionid", - "value": "frodo-90e5fb14-79c4-4f02-93c1-29164373b487" + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" }, { - "name": "content-type", - "value": "application/json" + "name": "x-openidm-username", + "value": "openidm-admin" }, { - "name": "accept-api-version", - "value": "protocol=2.1,resource=1.0" + "name": "x-openidm-password", + "value": "openidm-admin" }, { - "name": "authorization", - "value": "Bearer " + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" }, { "name": "host", - "value": "openam-frodo-dev.forgeblocks.com" + "value": "openidm-frodo-dev.classic.com:9080" } ], - "headersSize": 1661, + "headersSize": 463, "httpVersion": "HTTP/1.1", "method": "GET", "queryString": [ { - "name": "entityid", - "value": "https://sts.windows.net/711ffa9c-5972-4713-ace3-688c9732614a/" - }, - { - "name": "realm", - "value": "alpha" + "name": "_queryFilter", + "value": "_id sw 'emailTemplat'" } ], - "url": "https://openam-frodo-dev.forgeblocks.com/am/saml2/jsp/exportmetadata.jsp?entityid=https%3A%2F%2Fsts.windows.net%2F711ffa9c-5972-4713-ace3-688c9732614a%2F&realm=alpha" + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=_id%20sw%20%27emailTemplat%27" }, "response": { - "bodySize": 4331, + "bodySize": 1099, "content": { - "mimeType": "text/xml;charset=utf-8", - "size": 4331, - "text": "\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \nMIIC8DCCAdigAwIBAgIQZzae6CymcZhG5gxIgB7mMDANBgkqhkiG9w0BAQsFADA0MTIwMAYDVQQD\nEylNaWNyb3NvZnQgQXp1cmUgRmVkZXJhdGVkIFNTTyBDZXJ0aWZpY2F0ZTAeFw0yMTAzMzEyMDI0\nMTdaFw0yNDAzMzEyMDI0MTdaMDQxMjAwBgNVBAMTKU1pY3Jvc29mdCBBenVyZSBGZWRlcmF0ZWQg\nU1NPIENlcnRpZmljYXRlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAv62V9U2Wi8gr\narSBp7s4Bupke9vaXsNOgNZ8Vn/i0mo6Jn0E1HmJ6uIy+QeahQDtxFQyoEW1LeLGBeVwvUvOfSwf\nwPBEHLw9g3F84IdgfIWtezj87BHh3ezwb0r/0Eny3xHcS02wQsIFRIhn7ltCaMFrTja18gBapuRl\n36Ujfod7W1uL1HJTsw8auKXYEhutbeQYpdU6qcPaksJd1r16q+Jc78MHptKMWSNI1OnB9jK8hr/3\naug+LSeuJScaJQZDo/qKDmoIC6KT6CgfzUy33I/gjU6RjVcwNw4XFpk5ad13HXTtfCLtPtMxGYuk\ncOxX3M80EJMLFr2sJO0vJbA8aQIDAQABMA0GCSqGSIb3DQEBCwUAA4IBAQB8GmsA4N5KDQ79v+/1\nzVFq8domQYZm8wEAIHn4+T02IluDa9Ty/EqgFzvqAZUILQneFrGCh9uIub/Z3NtkIgs2gbAduxdn\nhzdwhNRNivks4P0CO+9Q1iK/xOsmWo12xsyB4lyAv7HsF+COIPFGhRfzsCxVFKfU8x2r+bb8kWLM\nYpA2NDlz+MTXQEWhFtCLwQRjHlD6C5+yzqoAFBO7RR28mztTF0nVbKj7N+Ri5VLEKJospkwUDtIH\ndcp2bSVwhziAIn05yiw6AVIZnje7cN+kJdCIDgqQ+Ebb96C/Y0JmYvz6sJVP0/u5oR5PrsQqBrw4\nOzVWNFaXuTcN3UicN01V\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \nMIIC8DCCAdigAwIBAgIQfU4A0Hnj17dI0GSzvUwMZTANBgkqhkiG9w0BAQsFADA0MTIwMAYDVQQD\nEylNaWNyb3NvZnQgQXp1cmUgRmVkZXJhdGVkIFNTTyBDZXJ0aWZpY2F0ZTAeFw0yMTA2MDYwMTQy\nMzBaFw0yNDA2MDYwMTQyMzBaMDQxMjAwBgNVBAMTKU1pY3Jvc29mdCBBenVyZSBGZWRlcmF0ZWQg\nU1NPIENlcnRpZmljYXRlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAm+fFmS+eVDho\nFhlYoY1vRkJIblLct3ZT/sT5AmIoCEGxXBeiSCwnSCveXEfrqEHmjlT5qni5spO+OmX7GrLeytHk\nhl3O6XiXyVBlvyTSFd/bLHR2DqdxbUxUs2E7WfwQyq9Ob9i3++4fRIPFw+JcZ99ouZasHn2BJvWh\nliT7yRtYhvwboc8BwWveL70ZJqsCJnlOKQVIccCdNbQe6HleePXgFB4pRge46zmqKVeEpLbBRqgj\nYf7EkhBJjx0WY2zMW7DLHDCZEY6VS2Kf9gJpGntNSLe0gXydBFtaFPgyaKIVswZ5hY1oRDPHEXEJ\n+a5TVRGLeTlyK0v9Y+c8d3XdoQIDAQABMA0GCSqGSIb3DQEBCwUAA4IBAQBZ5lcYpe13quossxB7\nL2Y1E7hpy7AZgWr/OGYi/tUh1pJ4++3uZvHJLtTfXc7V+Y5EG6LRq9HZyF0hSvubhYkDXlwYbF7U\n/osQjTe1tffPWO3bwzcrBVz7ytvb7DyvikI3C0f3LaCgEwxwYCD33IowNQS/IJA7W/kiFb/7q/Qu\n7T/gDL1RjYdm9WmYW3RNn0Kh1VDBiCfY739xpCwdH11OUQfVc+9Z2KSSQY7EAlVgwpq+UiVdOqY9\nm4cqul7uvjiSTgG0h5RW9xi3a6Lilk1TxsQUu4tRnGsDCAFgkgLN5rNnlQULuahzruoXWqe4g6pn\nRitpy6bwva8piGPKhVi/\n \n \n \n \n \n \n \n \n\n\n" + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1099, + "text": "[\"H4sIAAAAAAAA/w==\",\"rVZtbhMxEL2KMT/yJ02ECn+isFIJ/RGpQBXaAqIIObuzianXXvyxJV2txDU4ASrXyE04CWPvJk1pA2kUKVJT2zNv5r1nT0qqwThhae9jST/zhPYoZIyLE8hywSx0U6UnylqQpwa0ZBnQNk0gZRhzpGImwEdIXATJxgIwgdUO2jTVKsMt3MjAGDbBc6U/2KP9qc1E1B+rZBaV5WOeEjX+ArHtOER4jQhV1c+jD8pp4hpMwg1pleWdc61Ov5tjEhAG/xumZKYc0RADLyAhdophoRvCJQGtlW6TXAAzQBJuNEyYTjpl2eUpQk6fRn1GphrS5+d0ieXZyeB0NKyqcxoNBI8vyBQ0EKuIUBMu+10W9bs+uBs6wu++PeoZ2LjZM2UxpVQZSVrOcsENUo/9g7Eb9P2Wk0I5Q1gBV9j9/KcjMVgCe6H1nGnfO6ZrkwIcFwJPScB1JEcSVJZrEqsst/BQLr46TMVjTnIvVqghVlLiWdDreKnQEDyDk1nunWPhmw0byJdxAWbpk4M4Vk5aMpTowYxZriTZW1piQfDKriEGyxDQdIOH7zBKq6p9v8/RDdxYHRLtwOL70Yl3H35mnpvV7LUlUUE8tBHTh0HHAjRPeVynEFxeLBm+8dp+NACUw9umCJYKkUmLSxNrnvvQB+AecfRHAqSYX69Ah+pvsDfXcxQ4AI3muySsFndR+kDPr3HHSZTMFcBco+G/9DJgj5kxl0onOxGsvtx4r0PqWre8AdictEVJTZb1QjXXJ1wd7J5LbjlDn4JeaKesZ9+XAJvjv1qJQvRawdX8QcXt9LtDy6Kh0Wr9V/fUv15Hlyf4Z6dCnvmbMmteftSzhthCy9PbgX+JuTlzTZ7b1K1l5BIEmn+3cxZnzLs6rSfkTQ5y+PJVhzxgyP5/vCHGC/RbAdJBeImXMNuNt60HR+iqeWDIFMfcGPAaxBoQdWnZuqZmUhRYN5r19/cf819hGS/M/Jo8QpE+tZtfSIPwXvWetWmOLCejsGgGSl1wLEg6IdrUKsvE8cr2scJHZYZwh+8PBif0nhMho/YOkFxObu/sPan+ALjZrOmgCQAA\"]" }, "cookies": [ { "httpOnly": true, - "name": "JSESSIONID", - "path": "/am", - "secure": true, - "value": "C509C33781B6A7FFD95BC150CD2E8A3F" + "name": "session-jwt", + "path": "/", + "value": "" } ], "headers": [ { - "name": "x-frame-options", - "value": "SAMEORIGIN" + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" }, { - "name": "content-security-policy-report-only", - "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + "name": "vary", + "value": "Accept-Encoding, Origin" }, { - "name": "x-content-type-options", - "value": "nosniff" + "name": "cache-control", + "value": "no-store" }, { - "_fromType": "array", - "name": "set-cookie", - "value": "JSESSIONID=C509C33781B6A7FFD95BC150CD2E8A3F; Path=/am; Secure; HttpOnly" + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" }, { - "name": "pragma", - "value": "no-cache" + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" }, { "name": "content-type", - "value": "text/xml;charset=utf-8" + "value": "application/json;charset=utf-8" }, { - "name": "content-length", - "value": "4331" + "name": "cross-origin-opener-policy", + "value": "same-origin" }, { - "name": "date", - "value": "Sun, 15 Oct 2023 03:29:00 GMT" + "name": "cross-origin-resource-policy", + "value": "same-origin" }, { - "name": "x-forgerock-transactionid", - "value": "frodo-90e5fb14-79c4-4f02-93c1-29164373b487" + "name": "expires", + "value": "0" }, { - "name": "strict-transport-security", - "value": "max-age=31536000; includeSubDomains; preload;" + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" }, { - "name": "via", - "value": "1.1 google" + "name": "content-encoding", + "value": "gzip" }, { - "name": "alt-svc", - "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + "name": "transfer-encoding", + "value": "chunked" } ], - "headersSize": 593, + "headersSize": 2299, "httpVersion": "HTTP/1.1", "redirectURL": "", "status": 200, "statusText": "OK" }, - "startedDateTime": "2023-10-15T03:29:01.313Z", - "time": 37, + "startedDateTime": "2025-05-06T22:21:01.120Z", + "time": 6, "timings": { "blocked": -1, "connect": -1, @@ -415,11 +441,11 @@ "receive": 0, "send": 0, "ssl": -1, - "wait": 37 + "wait": 6 } }, { - "_id": "973a9da1c7a852d87e1e7564be03f4c7", + "_id": "4f7c200a37e236805c35afa89036bda0", "_order": 0, "cache": {}, "request": { @@ -430,121 +456,133 @@ "name": "accept", "value": "application/json, text/plain, */*" }, + { + "name": "content-type", + "value": "application/json" + }, { "name": "user-agent", - "value": "@rockcarver/frodo-lib/2.0.0-39" + "value": "@rockcarver/frodo-lib/3.0.4-0" }, { "name": "x-forgerock-transactionid", - "value": "frodo-90e5fb14-79c4-4f02-93c1-29164373b487" + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" }, { - "name": "content-type", - "value": "application/json" + "name": "x-openidm-username", + "value": "openidm-admin" }, { - "name": "accept-api-version", - "value": "protocol=2.1,resource=1.0" + "name": "x-openidm-password", + "value": "openidm-admin" }, { - "name": "authorization", - "value": "Bearer " + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" }, { "name": "host", - "value": "openam-frodo-dev.forgeblocks.com" + "value": "openidm-frodo-dev.classic.com:9080" } ], - "headersSize": 1601, + "headersSize": 438, "httpVersion": "HTTP/1.1", "method": "GET", "queryString": [ { - "name": "entityid", - "value": "company-IDP" - }, - { - "name": "realm", - "value": "alpha" + "name": "_queryFilter", + "value": "true" } ], - "url": "https://openam-frodo-dev.forgeblocks.com/am/saml2/jsp/exportmetadata.jsp?entityid=company-IDP&realm=alpha" + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=true" }, "response": { - "bodySize": 6270, + "bodySize": 20962, "content": { - "mimeType": "text/xml;charset=utf-8", - "size": 6270, - "text": "\n\n \n \n \n \n \n \n \n \nMIIDXzCCAkegAwIBAgIEDvqo1zANBgkqhkiG9w0BAQsFADBgMQswCQYDVQQGEwJVSzEQMA4GA1UE\nCBMHQnJpc3RvbDEQMA4GA1UEBxMHQnJpc3RvbDESMBAGA1UEChMJRm9yZ2VSb2NrMRkwFwYDVQQD\nExByc2Fqd3RzaWduaW5na2V5MB4XDTIyMDgxMTAxMzIyOVoXDTMyMDgwODAxMzIyOVowYDELMAkG\nA1UEBhMCVUsxEDAOBgNVBAgTB0JyaXN0b2wxEDAOBgNVBAcTB0JyaXN0b2wxEjAQBgNVBAoTCUZv\ncmdlUm9jazEZMBcGA1UEAxMQcnNhand0c2lnbmluZ2tleTCCASIwDQYJKoZIhvcNAQEBBQADggEP\nADCCAQoCggEBAKz4i7AfLdKa2fOueSyaX3rviRZXzY3w8J01B6VZZk+ujatitD8h9uSE7RjK2NS6\nBYSf/wMsg2/Xy/vVbqEMrAl8ptdjXd9rsyL4sz33IRDgs9PqW2X2Ml5et0ASCwwQJWv8aGJJqkOG\nZorLVGqCS8PvkiN8MoYXGvkMpLPeWuSBqTTC2iBubhenRqcRkvCoeZ0JbrRWfEHKoFM1gkTj/xcn\nL8yrXb5S3e2iAPkRw8+UPf8d4i9syS/jDyUZgrfqOsypbHh0dNMkS5dYpiqnOmJDWkjy1UDdUGmA\nSKglu7c6gKaPaxcqh9VNGnTerQFbpKMV34guBoyBFrVFD1Sq6eUCAwEAAaMhMB8wHQYDVR0OBBYE\nFCRENQBDfGf/R6qys11dPZM1+i5zMA0GCSqGSIb3DQEBCwUAA4IBAQACttnaeWl6CLVhffIlVz28\nCgxJbLB+pY9mL/jy7G0+5AxK7h9Njoe9ZK9k59uMcwD5BfVPl58kxFLJcnFc68R9m2Cdii1aCm/A\nBLlHPhpxHni5INeH9J4P7MLdVwxMa/Inp9tw3gZQ60txgG/mv535kL1mtlUSqbPDf57AtG0tNWKT\n2EBe/aSLndIWAhGf1qjS5Sc3uz+O5QEG7fnkLS4uOh5//coh14wfY3EAnMl/DpkgViliQOu7voX8\n7geBJd5jJhs6Ne2BJUp0q4iylD6WJrcfOLc3mcrgVaey5rLzVvX8vsp+p/m88KKhPzK+C8soYHz4\nT7PNNC7YVB2EQVSm\n \n \n \n \n \n \n \n \nMIIDRzCCAi+gAwIBAgIEK9RtfDANBgkqhkiG9w0BAQsFADBUMQswCQYDVQQGEwJVSzEQMA4GA1UE\nCBMHQnJpc3RvbDEQMA4GA1UEBxMHQnJpc3RvbDESMBAGA1UEChMJRm9yZ2VSb2NrMQ0wCwYDVQQD\nEwR0ZXN0MB4XDTIyMDgxMTAxMzIzMFoXDTMyMDgwODAxMzIzMFowVDELMAkGA1UEBhMCVUsxEDAO\nBgNVBAgTB0JyaXN0b2wxEDAOBgNVBAcTB0JyaXN0b2wxEjAQBgNVBAoTCUZvcmdlUm9jazENMAsG\nA1UEAxMEdGVzdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAIjkMGOu0kbOsvdp45J6\nFYW5wIn5TsKEPQUlNbYiFITg9o18Ja+6vWouK0fbIkzp8Ejj3U5OPHXqCtXCiDWiNX+bbFZoELW2\nKUigC26QdqbhmA/hTBheyQaUg/I4D64fqebUare9r0zxtMYE8FnR3YRgGeEG2qSlxgmIFvTMnzd4\nUwrUuw8C/uZTRbppDQITpkLDrOKb9608qnRvbXSR7UVP/JTm8Pq6uP2pvXz2F/QSK/wMKOnsjf+B\nXfnqNZ9b+PP+fJvUKIcxjFwgDkmGP+Kr9YV7aFaur5Hgh7Q+q4bSDJMbNDhk5Lqu6qr3oGulyiTX\nhtoEkLMcbMA7JrVFCl0CAwEAAaMhMB8wHQYDVR0OBBYEFPoZt1jm2z/0gX/TnN/Sn+T31BU1MA0G\nCSqGSIb3DQEBCwUAA4IBAQAY2Hy1f+lKClRzJFHNVyYZ0ahRCkbGB0FppwI8ZhIt6Aj3p9LBXOdu\nIckDfAjg0/mckuEteA7l1LRqYcQIxpxrJU4FTxeyV1gTgudW43rw9Vd3AxdVocXqdpVxAvECtI+X\n/jdbkk54k0mYTCI9ruNRdof1BpOWkI9Jtdj0GRe7L9nydNb3V/kJzSVMDNsx+Vc0GnmysL7edZDo\nmK3zry+aIWav0yj1Pmh2lOgD6rEnOlGZDqrmIqWd0d2jp8Am4iawP0sr9e7etjK/YGCFW4byuCOx\n328SOTHshVUBtIGbq11vuQleknlVL7A/aYUeUIyOvdYhWD7YoVnBV+QwcrAH\n \n \n \n \n \n \n \n \n 128\n \n \n \n \n \n urn:oasis:names:tc:SAML:2.0:nameid-format:persistent\n urn:oasis:names:tc:SAML:2.0:nameid-format:transient\n urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress\n urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified\n urn:oasis:names:tc:SAML:1.1:nameid-format:WindowsDomainQualifiedName\n urn:oasis:names:tc:SAML:2.0:nameid-format:kerberos\n urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName\n \n \n \n \n \n\n\n" + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 20962, + "text": "[\"H4sIAAAAAAAA/w==\",\"7X2Ldtw2kuivcDs5IznTD/mRmUQTZ1duyYkS6xG1nEzW9vpQJLobEZtk+JDclnXO/Y37BffM/Y38yf2SW4UXARJks1st2TOjObuOmgAKhUJVoapQAK46CUnzIOtsv7rqvKV+Z7vjeh5J006340XhmE5SVuR6GY1C+LsDBTOSTSMffyTE9eFD7GYZSUL4MCVukE3hUxIFBGt80bnu6s2/aG5Pw3E0+KKhfRBNaNiFf6M8q4Dq8noGRDfPpiTMqOeKojrIF25AfTcjBlQLwDyjwUBW/iknyfw5DaBs9UFzQg9yOgBUZ4T/XBu4XhM5sczL0yya7QCd3mPrKfHO98c74fw5cbM8IXuhexYQf/PVRkImNM0SRsiNrrMRu2l6GSX+CUlJtvHmQSu0UhKMU5JcUI8Mzs/c4doG67vp9CxyE18DRkOs5gYD/DCIYhJSf9ZDlogS+p74jX39jnNb5c4xJ0vaxKRApuOEXtCATFjFRoaKZc3VqaBANMpOmp/NaHZCfs9pAowRZmkrCdJnDD7N0p3Qh2nzKYd7q/0Bh7yMhVTWdVNhYZoezI+TaAwU2awyZbc6rzGv3Ei8JSRlA7DeWCANpUGui2er/QCWM9cY2Y064N8tNARBTGGKl+3HTtKYIteQNLPMn9Fri3H5MxpahkTeeUHuk2MOigOPoy7+MzCH/MUaejQAejCMjHQZM+aMu7s+CQj8B7rxphbipvM0I7M2s1gz2qLz1EtonK0Pegaz1MV/uCbv8sFxtZzztaIb0AsymodeV1uMF66zNx6zyVo+Td0giC6H0Wzmhv4Oq1piL3OmkRU+aucrjt3jnVSQSLhI9V2fq243OHYTFxAgSdoXjfZ95+nTp84G58fezI1jGk56AQ3P041FM8ZwxqpLoG2XCiYBXBqMHgBFd0L8BsLEgZuNo2TWA51+QVNAEfAv9VSzCpiAVumiTub0oQkFmstVrXkVumnPdWtsHAXUm6+BjsstNssPYOX1ZrUBtFyVbwyc2VE3IhMM3j8lM6y6UJWSdwI6zA4NbtTtWjX4HfLzTe2ows+4QR8AdQny1XquS/Z6RkOwM0L8T2VNiC7DXTdzj8JgbjOVhfTx1WBZM6gOH6nWGzBx/vQnJ4K/9mClQpv6gOv9o7PfiAeeFXSRZJSkmxs5CBS4oq/esCacvvtjqAEmSEb8nSxL6FmekeHUDSdlb0DYXtzoskzA7XETyG4cAcjBhGTA+xhwISlIAg7n9txXvdfMTc/TC0ouV+8OTIZY8EXV/zoF+CVyWyh8GSXnY7CLBogODdPMDb2mBbAVCUouhRtyD9KCkWaB3zVaNN1Bg5D4p9EocxNkauSCEoLccLDjJvhGoncjreQ3WKLlDn0ypiEzIJenSNkgTUE8QaBRAE+j55QEfrr5SsWVyiGlensQ5aYFNh6ojYUzA4rohARM56ZTGgttM9/ceAuYuKBsxm6QkgV+qeofMcN26+WeehzDKKNjsWSkgGyW5BZcbRpdIaWDuFW0h1EQEO4Kvdqgfgz4SiKXB2IJLlpswiXZoRZzTp1DHYPnUXLqJqA4l3OrMtaG+VSbYEJkYIn1U+LlCc3mfdk/6wE9sDgKYcF3/uxsDDbg3wUNqL9Qv+pEXIocb5AgYj8gpj/DUDiESzdhNtr2FawmLNqFf35+FkUBVP3TlYDVLxr1RZO+qP+Bic81UBzQYCGYEYtIpK0Bmc00eEE04aH4E5JGeeJhcGcKcF+BKQVzA+hXTCqAlPLYvYq6F46Fl16wQJEkFswy/KY+QsgwwngBfydoxmNgmP2HV9X+ZCTWf4slvqIgcCo5+xZ/DUAR0kk44+jIj1EycUPBBNpn0ZEuA/CzxAHcTsY/tKCzcDyRQTBwI/+LvUce+8UCIVXnyObRoA/o5wEI4G/RmfEbdP1kwpDifiL+MQ898Z+BiDUwGMxxgD+YlQIreAjN3lxrPKnmE/474hiInQTgIvcCvBxkth0s3rsA8n3vhn6AcwXMAPTrg60FqETeeZ+B6E9FeR/mvD9MLyotobPGdr/N0v4Ps3T5dilw9g/wz2ot08yP8owBGLE/F4NRksXAUbDh+icwwSnNomS+WnPolyRLDwBmGSS2P2L/qbZ+AwLopmQfpRGQoxeEGwg4hQO+STmYZlk8EAp4MIVFgYtjqTiNUaRVOQAeMzVxjMJACdM8Y4TN1BqPC++PoZ83Skfxn8CBHYE+rAe498dad3AqUAGREquBwROAEOHKtzIPeIqtz/LxGHrk2nfmvhuBqu5sP9zC/4FmhhUCiAXDunBRhcJ3Z0aDgKYMs0ZlraPDsZHKGs0HqVt3KagFZBLWGBuC4ez2fZpcD6RAhrDwSYKA+EYx9bgClpvKuEhdgPYshL+qk/mIuby3J2ArUSiouQRFBOTqAiZGy8tvc7xLy+xK40Q9Xz9KsQrcdIxvhJicCjhXRXMmhmwrfVuzxl4VXpBy1XTzlbkEwvYBs6UjvYdCW8gvKPmX2IAUhdiiINaNu0cNARqExPgbdMSMmWICNOHBmAF4UG4eZOmA78Vw4RmAG+edZ4nrEdUOGBspPo+xJZqCg99gbRM7OMZyWCI3LsqokbPpkNuQbEjw8yDCtZjrJsUZKORqmkenO6f7w7cvR3sn3DQQsRaEIBB/CeBPuCn5qsaWTMgEqa0oj9znJfM4i/BPMaJ3vRRZmfRIyMo47qC+coK1PBpPkXadnb3RYPhsODj+cTj68hjt7BANNdQ+UDp+v/fwh8fHX7/476NZPsyJN9wN3Z+ePkUj6wJt4On+Vy+/n88OT4bT7/bnR8M/fzlyJ6z8nMy5En38CA0nD2r/ffz8rz/vDaIvR9OLv+z8/svDv5PHpxxanCcgcog4ig5nmr6BeupiJk3nYuvwe/d8PE5+e/bD4YvH73+b7h1lvMeUhbP2cdIkqdL5rCcI22H8w/yao1AasWVvEhkxxZ9sutwwCuezKE85P9zmnGr+QbeuCtvXMSZe1zZY2pdF150lh1raPKof7sHO4c53e7v28br5BO3pkfCpNPlQOFy4iSOq/Yp6wnnqJDyJYXMDiTDQHMCNB+CeZdWAY7opvbYHfzMbg1IvckOgObfxi0+nEc7FZiJo0nUkoK5TjAS+5iwYesCtZiyTADAzp+hA/7Wj3An8rg/xwd8aFE13NSZ5o0g/F1gy+is3GaEVSprN6tH4KEHRji7B4uc/3pRXEyY8ii04hwwTwrwyZvko3uNlAmEG5T3/IYWMgfJU256MKFTZ0vCq2CKWYuwtCrlCxYEJ5vvhl9O3o73RaP/osMJ7nF1351CVegIvts6CPKXfg7GK0W/JzGDhnUbnJHxBx+SAhshTYO092lJd65UzrLkPq/gpnRW1H29dX2vLROHsluRGxhCHLP0iLKzIL5lpWSo+GoPTBxKjleybgh5GPulTJuGyxgl4lLAkzRE/NJYANwO2+b3Ame1YyX2uAVpEEayM4cti/gVvvog8l62wJKwOcJxEs47IwkhTmEk+G/Dpm2k2C7795izy599eXX1Gx07E5KqPM30IPVxffxN/+yvwgSN5zqGps3F1Vam30f9mEAMQgobT9f7YmUc5KA6PgOviO9kUmrHRODR0SJJECQhtQMDFcXyawoLpJn7/6mpAx9Dl9Mm337jONCHjp687qi/M1ZyRlyf719evO98OwXs5d2CJJE4WOSwx8puB++03A2w8YCOCv3F4HaRA68H+HGUAMoxmjr+ByY40BdLD+MHHajHuEXUuYDly3AvyHkb/x//JHY9kDuYSwNBjUK0wdgDXdS5IDv4J1AoJfAfihA7MLE0cjIRlZFlagNC+d8Cfc2KcLIYDrNEhquWkji6gCGbAeKea4sMCXKi5elV8suN5UR5mzn44ZtYZyJ/TczQ1xAislaagoRMnIGI0ULlCUd2EM/lcz7RcA4s//vYUuQ/+b4600aFzloQZhEqtKL3H5hFEWYWVHEz5UBQueO3xt0MC04Fsc8FYirX0N0Dk2cKCMb32/b6gwB8+cS7++IfWNcO+6Lv9fJ4wGpAEmO/ScfnkStSHyR//gJI8hCnLL4ibizlsmi80Aop15+YTxoUb5JqB5vMmF7b2RJMoCSj1EyXEh4kOjJ5t8LjApySRcxdlSH1EgbTv/0BrBb3zGdThs1lcbf4qZJEDOtHxf2/Bv34euYe31on8GSVlLjQ/zCfvYoW5fGk2LE1me8oJOCbpailySQJg/vWus7DG/MLBIkGOwGjY3z3oO0sssouXN+jjGfDbBQlzwjSx6ma15W3lhYONSigYZwrL3BkBMeAxBcWyHCexUlxQ3ATy/9//+t9//F/2GQTmj384/2FMkraVr8LdiDM4Jtyh6HRlyEFt4NbWbY4zWDu1ZC1YuivXWqEjPVHB0oMqXha02G7YBZrQQBx34Z5gQx2BgPl92Z4j9ESAMu/m9l6NctEj+3aM35btLSEzMLwxWoi7Yc9BQPUtWG1QXDEtqr9897FLkwOgFAvXFCTEPfGZ+DziWzzLwuYY7ws/FF2CndCXP9G92gszFqEvj7Ftw2URsp8KKqa44eiQ8jSzZO5cOfbwL/NL+6MMNwG05mkfzOqUbMqdaNZhmPXf/l7UedDHcG2cbaK9Y0JHrARo8NN59Z8piy1vPug6YR4ED/7mXDseBjudTfIA8MumSXQJ/93wwNXbcLadJ+DMORtC6+MH0hc/oOV1Y3RBkVFstPbFRus0SjNcCtgKSlkksHAxjcr9ctVrDay2Kct1O49+yqg23zUtx4iy6fsDMjtj2zhXHZqRGftDBmWKzAW+yyNPw7jBDu6ZUm64i0UR9C3BuMRLbUdWOe4xCFk5viACEGpbisVH5IIEpRNwKEPxd8rCbdpEMxbK0cZ5I5x/MdLyTrAxYp6nwIcItn1KZErJIW9spmNgnFLLECj2rXUCB26aYdI/WwnHYyTXhR6Bkj3gzFuKO10FQaupgF6zzAcXgcdF8Vuxk26bJ+uWO8bbz4l/rBFDBvx3eawfe+TZgz7bXhDUtGyvp2VkSjTD3fc02+V7B3q8UcUHi/Ie9eOeFxA3zOONB32ulIfCnfX3/RhzJTejQKREdh05YpyvriM0gRZ61EDraNX3oWe/tOysMYQo9vxxI0D+2cH92e3BALfvevxjH7TSwE/ccdbbejxQeQLUYzM4dnsyfYIFAZNwG9vyatvQdFtptW2hKLYFc267Md0WEggOek9AjEkUMwUARjDKzivG0l1d2jT3oiR4CImlU/tEebRsM4gZe6PMzXK2fgDZ42kUksMcNUqH8wGoCt9PxElbvnnGPw9Bo7JVA2CwaCR8zAjLNtHT/KAfQ1j4OBOx+SYCnTx3I2EVlJDJogVSh/sjZ+4+z2yJwTUhCQEEhKmEKTLEPyhyNrSQbdcM5s6YIrX82t9Vu4dS2mio/XxT1lJM3VwZ5OZq1dnfxcbpMagu1MIqrBqrLX7QSDHmZfHd/ig5o75PQpBsnhQy4HuHLD2Gh4XBJImyHq6lLgU5gYouhpJAkFn0103g0xlaFaIrwfopW50ZC8F87BqoCsaSWc2qKdqv2ofrMg8V2zSdbUGvEtdtdxS7tadCQibkXQxt/2eTA/0gyf/g845JDV71gG2eVikgYtA0Y0ZWwfjroAjLQDC4pMIBO6zMESzEI3DwGY2sjDJhXUiTYqTMPOuptnWTLcZqdr3WARcipFsg3HoYkWBcjMSUEZBUbY9V4AIAseDYqGoVLvwoF32mCsUS4tcwOu5Yii989WdfagwlaQodmSlsjSZRKd3NYhqxJdluBaFhnWQ/kjnf68fZtBs4jNxcYbJi3elRDM6HmehF3eLeADlzGmex7jJYp57Nd6UACyo2MJVOndTZd3YQNyq2bgQSbpK48/bMpGn4qvgY6n/1lXXbXJAsMqe4eD2dbHN4XUMoBA9ZZcIc94la0hzX0SfVwTAWfBN9i02SinxbZaqklPOYLb+O9HSdS5pNaQj+E3FKfFRCeZK4YcbjS2Wo32GRw8oK78L4WEXUtnKa2Ith8qXUIuOCOY+1o1oOMyWcfZwGp0SLJbSC3X16zjPyilJtsDt6XmxJXxg5s8tpiwb9MBPeYLOCkKtCwaOcOJ3WyqNOXVhA25TBDdabwmqsagg979yR9uNNhFg3UW9LUag+lJ7459cKaxNjy5R+BDmWMTeGQCHK5eT5tUmxEdhpJ8p1dFqjSFula42i7YnkSpNthtzpbO8ugBHygoQTnKGHpneA5sksn/UCXoyRIa2Z+042e/Tll6WG7juj4ZuCKgK9VUxqPoNVMlS81ipNZBVH82xt+in9mSZZbtNYKpAgNgkKd9nu0+qFdfg0uTYr+jEml5f6qRK9BXlnRY6XOYgDRYh6BIo6K/R9rTspDYQvjbaY5aqSW8lut3LPCnJcHqQMCsiQkIVNZKzok5VmheEaBdogQpkmu0ZM7lOjS70kmHivkVrWcF+FbHuylrOz0JsrlKBII5Q6UI7FCqy8fBYix9by4hiXCjmKuHORK/pFh63wslhfv1WlV9Y46ZvuK/P3G5uomzNSR5JWkl2V4lIctmEGmgzkJWhvNVpaUN1KVkHVpci2lElTJVgRda/Q6jlN0swREXmdTCIK8GmKuIH1GiXcCJ5XaLUvSj9KnLTc+TojpXKXojLiH5/tOGL/osobVYPNDdNLvmHP0vt/wk0tFXNMRep5xX4Trao+s4RWcQ9L4KurOSt3fi/6r4DQEKo0l4DrPEDNVNIWaEmrej2xRkNG3xo2kX8BJQ4WOchVaebOYjtbqlmr2cUqmldm7IYL4Q0XuaVWlWt9IBUUTzUSLSGmi1gi9SJWAY+NcGltEGz7hJmjbq/q2X5qdSpY7mSxXbpI0ZdHzzIaey5v3xN675Z0exnXNap3ucNrcbDk1q9Nf9/HvAonk9HpBhGuUirPbSbv1IWwig39huhVg8AWzGIPXy2zEhuRLhvHajv/dZuYTfs1/4x7mFLsPsYmZrtNio+yi5lFzuWUelNn33lGgkiPuSy3lVnKH0G2WugLAfUdfm0LJgdW1XLVCxoHeAA71HmNw653SjmnwZIC/SBmi11UQz4aPKomaS5n0yxHU7nuask798kGty+njNyfpJjuO0eX4aqiqZ/2N5dr7USNdmAeGcA4Uy8B6Kfqr2viH+rIdXtn/6slnP0wnw3dOK1ECNysh2c2s97fe54bA0WCtNryMJ81tgxzrqfNhvKSaO12iibDoTFdLQKzSqaqLWPOaxO1DstV6hcz4bHqK/MC5+GnF8VRm3Qaimu06bWUz6rQsDJH5IN+ahFsxTEGluskjZZyWqWNkY/aFB/gZz14hmxyDl5wOKmGBIqiquNCQh+cFieNiUdhoBFewgR+EnwVV59pyy5esENcprRkv7UAQ3LJwRQYlqFUXfMGyTUo0s4BbzUP0uGo7rCw+6CcE+WQ3FIih0DgPouj6tGaU3DjBI5PwL0t0thbJGfYhl/r2C6dl1Hh7zWmZCT2vZ9qcl3nRnlWye2mWCVGdtV9Fua/WRammbRVuof042Re1tFlGa1QlLPZxKPwUYJGWoiXZtAwS/fwmg+vcD0WaRKrWK9Rm6SWXSQWmP9n2xnVkV6jKWmeoKrqByweaCesPlVbu4LoGmlUPqVW3W2SFRx1js3CV+rq6f95/frP/7n5aqv39evXPef1683Xrx+8efDF55W9qo9ES8tw1khNZRFVyKjdXLXsPpa6bcgkwM0Os3U/JfnXiLO2yShlB9bbqmL78Y2JjsWZqnRQPk3ecNZVO9SfTPSTr591yif6Ovq5V/YyXi/9PXcTsrJNeCKvCFfnX4tcqLf8eZjSOVh1x5qelFasyOaJH91GyKqrZsvznIgkN38avN2aNcJykLJpj188K1O3w786kf9tTimteW/Wr+ZQrMGdvfvTQtLvamGx1g68vcnKGcu81kXtLomNqGYD1S4IJQvVllAv5L0a0XU0d8Lh1yo7IDf8GkT5JkI6LCq12Owa6vploeQ3ZgefImejotE+d/HyKZ9h6dM0Dty5I7Yn0n5n9ZTdmh1MixwyzVecTlmHHhJ9/QvFzj5Vj1yfvFvyxT/6hTJrUHdVMn1c17wkc4tUXmi16ZU2CdmFKI1qpM7Ez0O8gnGBfbzQ7FHOXNX6smSoOmycTjR2ZANU27IFG4JbKOsqtetzaX3x9G/V5lMl1f2EXF142piiaAAv3DkxAG3I9UmYK6yY5kTYumtiH74olcYhbQudF21a4qrjymvF9/Tdc8WPHcOKWY/3scM52oBcuCPnZL6yF2KYY5ovchGHbzncVk6IOrqliMNur6Hh+U85aA6Z6SN1U+G06G7KJaGTadbSM0ExL+ixRh+lGIC9T1XuII54caQThc7ZnFtTBUr9jjWvXZUfsdZ85Hlo/y6IzV9hqGa7W9pUFUtBo0iDXFl87crUSrbrOoSr8RWtWnP36qEJE8DP7HP7zHlttMXt/0urnjKbLurgNs1zU+Y/rpGuTeZHMNVL2qR6VEOjItZ1fleVxd3N7IHLMlmhzBBVFf5GEEV/ZSYqWLemQQumqD2li8RmF++iNTDFy7pZxQrq8DlAqziLGowZ+W48eUfTbNF9UfVnf9u7TpqMrM2BKmDeu1F35kZVJ/LfzZkyY6pL3TazumPV9tKZtbhKmjZp4TDd3BuqSbaQQS+VZ7E2dWHmRfzzK4u1R3nXk7FQykNoFN213ySzrJRahr4+AS2z8krp28IXsoosL5O2gelxtLdoG8zGX3jnEvVXnVDuyuL909i4eVuv0Ue0GtN2T1u+NWaeA1iTSx06OlwH7W0SwrradS6noO7UvbqgBNhzKXxSwc/Tm4GpyS8r7Bse+VlOA/EwnuZT+9HMpaHuUlsJpQ4kqGsQC3eZn2hBv3kKPSTs2QdWjR84YU35n7zmTlHGPxyVa4jTMSXPUjZrdaKH1Xaof4tned4sPr8jqLXa0R1GJ/behTmOJY/uCBzqju380x6vK9lj9mN16zPIlrsoVF5mfPPzOzXKU8law+bdIt7ibzxFNmOt5b1hEomq34sljnF0SDeg/iUY8BaOjZlq94aMqPTyJ3CIzM4Pqym0Ukho9ZuS2hypt7zx8K9x6PFu3dklTyivT32uwKu1Hmw7pSjd2qXd0lYMqaypVlYQq/3RrSBhPK5mBTHj8OZWkMDh3gq6Izk2Xnv4VK0gxluryrlYXqtHdNh3x2od1A/AcIP/JTjzNq6/WNk+srOGnXW1OVntBhU7B9TdprLKvSklR7rVWiBVKMZoeHtHOfO3sDa4ZS9fYdtixRCytdqK0WKgSy4eRVSiFaVFp/xSkU/nMpEbEbVuTCtR8mgpI8YynyocdQuUrcSrFLYfgXHLA12K3Auyiez6yRLrBJTDjKSZUNZqh6EIehorIMZj9cAjbiWcual5sIBXEqjgD/PBOILb4uwNKvl+rOAgWUN/o2wgrwXhL9d2SpkN4mnHYiU8iHzcDvf5utGfJFF0gUSdBNEZXtdhLJunEXvVnk+uuPviTbEeisbXGqZXnc/xgH7HfPBee+mtb+L7gQ9NvFg3jYRlJscS45tKyiqQ7/PhoRr5gi5/Qla9+6vekOUgfBWCF235pm6H4sWX11ZbcfAF8oP24p96ic6odXUFJTHeaT2ASbm+1t+fNecniXASbnl6Fh7cuet32PQLKm7MMjoJ18UxHOanxzDPXS+LGEnbU0ijSTZNiOsfs+rs7Bn+eco+AqEeITe8+yknORnR94Djoy34H84elM+Nqg8lrB8JiXcCfFVt+y9bGtI8o4Xtd8gMAuBaGSeTnM0q8adi1QYOTzxwAy/HV7R902ivPvyYgi8w4reJHItY3MaDPpCbP1PPc9gKIJsPCoVueWpRmx8ELK4pGSQaLHaAby344cP3N0YMgPAjhfo7nGqBEsbQrTzlp62D2kOPN75L6g33S9RwjbdHQZzqByscobrMKrXiMwjFdxwgmcXZfPHh0C9WpI8tqXzRkVXZpqfllZtQ9WzcZljM9uvxZMXSzCX0AoRxQqoIKUIgV3LPhdlYJRIIbJFzTfrdySQp3ISh24CcybDAap8Mq3QtU6YmpsdwNbDH96jT9HngTprYaGVStprmcomGU09ayibOcm+jHb4roGVMMElmNE2X6vK2SaTjZCA7lk+ZLxJAFRHnmR3LdV9WAtbmbGA97mnWq2JMUGlUxZ+awjPHoWc2NQ5DPsq98JpsMKqzHl+tLXTzmNc9kI99azeJ1z/pruTfPFhq/axjjG7xsaHUix/Sh++hP9zjNm3P509bR0nxFnGPP+NtfrO04cGjnhv6vSLpxYCgwkvsDxsM7UQ8qyIaGueJSvEEM4iu6xiE0DD4WiTEQA0MjG9rQ1zLgdDd+rgW6StD27Pf8iRDsZqiJX4UBnMtGKDXMp27BZW1G1ZlPR5bNatpr742gtPvIGqsqG3KN9YzgtAtIPKAVYvBtKlYydNqrq5FzNrAPaqt/qarFlDpQPHA/kB24ZDfndedqyvmPr7uYIbcwIRaqtHpGjqjQSyadyT0VQ1k7Of9vV/g68vj3Z3TPfhjd+/FHvzBeP2ek+85uZ6TRWA3TsqcaSrkpbhxeLK304b7tAjZwqlQru6CmnqobUHVtAUPiEDdOgWkHOZbUL0aBVxEq1KQcJE88BhiK6AixLgIoopALpqAUoByQfXi1P6CKStu5GyeCP1R30V9a69YNFYsvZbWvv5OKUG/sZV6kGhhTfnY1OIZNu7jXTjF5adJWyryIgWjeWrMpNXFC061rk1Nlt5iWEJNmi35ov72LahBWNffxoHrkWkU+CR5+7bVGm+14e1ZMvaVXizwasm/17X3uvZe197r2n8xXTvYAsuUXTo/KNAsPv7H5qDACD4+qDFilbPRSsW2NV8/Keepfgrufafb8p0k6vVRgB17jYJNFwXH/v2iAPeM/EkEAWxR2fsgwL0=\",\"YXpvmN4bph/XMK3VkZ9mDKDFVta943+vX+/1671+vdevVb8fXPwCT3TxFzn+1ryAZT1/I0kgQuU64DoW2oCKPB8H0eUO/8BSU1Qei8j+xjTfzJtiLkGnj8nIogYQwTzilrK7gMpJPiKjuIfCEyX0PaavIEa31g/SrGMceUBZ7LOTNV40A6r5KT9YwZcucV0eXiHID/KZB98GWIBp2nyR/PxKNOCub3HJ5bZcztgxegaaZ233qM8evu8lxOO54uUeWMG+LzsQP+s7wPR24AXf104VBr4bD6Mw5KcFeZa3SCk+w9clttldbKIYM7F5gvaXW13t+4h4eUIZxUHVJtnpixGgMCXw5zPgwX0k+IUbjBBBJOJftrTSUzojUZ4d0CCgqsZDngAeJ3TmJvMXgCSmMrPjwsBrU1gkZIwLps//rTdOIj8Cq+Ki7wV405HXhylDXgBl2tl+9Pirr/l9hgi+ApAdDYoilieP7IaPThcZ+imdxcg3nCC7SNCc+k85v3TZR/UCK+bEs8t+I+0s6LseB9HTXsjVbjL1aDxl87mzNxoMnw0Hxz8OR18eY/o6y7jDszqoiX8YPPvL6dfk6+Huj98PD786fXe++2Ty9CnUoBdQvgfLcPL+cu/ly/Pvv/vyq0fei93LLy9Z+TmZ81l7zBLtPewrm389/vvLLHgSk3ffBd8feX8ePuPQzOd9eQZZ30A9dfHsVOfZ/unoxyA8JqdfngdevvffZ+HkPe8xZaegWJ6alK90PoP54eeurvF/gHcIA6fZ8wSmapuzG36eue8KjtzJMDsPU82+REHmmW0H+oWYDKT+JcSLngOXK+386YSAkqRe1/eeClzknzrf4DfBOuxPQAnF5V2M2Xc6eC/IU2Bn4jNx46JKhWYo9VxTdXlMuiIfcIifeUYZsOCRPPQ1TnpIYdZLT3V6yvrb9+vfcKHpiTqLJi5WBLnY0Q1nqr8qzAUBtH+Cp9xowCWeLzNsdWPHBZgSQvBlYAaaFsDX8rzKPidnY/uipgKD93h1GGP5qUh8VIvyz+reYH2OvPCpFF3nZ37AN0rSLnzm7W2EB6XsjSc96Sj0LmQ7FFVepnrtMSG31V19SrxwyRlhrxCN8jOewmulrMBbvFdUVLXMkHb6pwaKrGFpjPmmjJQNzbFOj/G/DQJb6rVWSLEDkH/KJriWaAI2a11Mj7UDGipayXMjtbiilaXIJc+R2NiapNkJP7durBWLZ1t0hAB64uS739Oc1FJXBvOrRP8RPwJ2F6yv+uylYMF8XMZnD7O/DLkuxdOLw+LkwzLEZ3B6uQZIP0Nhme4y4ZdhUYOAn6IA0nCoDa8J0Ew/bILDsQA0GNanbMl3+T0Td8GuRY8fW0m7KRmRMKXooYsBCvuzNZ8iDCCzACLHYd60pfHoOleFgo7PaUCWwlqbAnY485Nk+X+VJYHj8wwYxb8rEeNd9vC2Af8jC9nH5iP3nSTwYjZy3xXEquciPHXSGiRw5kKQBrfI2sfqCFIDy8hKyzGMOq0t11rD/ZbFd8gjwp+UwxoBi7oTMsJrNerNzfbKjkMvxp9y+Pz6YbtBWnDNzoS0ZRm8UsACTJaXLOiW2BfQmyxoWet7ioObDzFI34C2Ajrl9Xssqm8DXOiMJW0qq3pqYvyExMgTJYPxLrSl7FmzMP/dLJOPr6Xx7CjxcsS10KqtB4ty6BUQ2qla+EgDF2Ood7o4F93eL9DGarpLx2KTarm519dYv4DRPPn8GcG7Vza833tV8xH57aVl6pfitsocLuK1lCS7ZExD4otL3gxboMx2oo72iFkrrsNe0NjBbnoXHIZhNYh61aK7jA/JxvJJpfYRIRXgzczHldTUojbdDZc1VLBVz7f760BysIWzZ2TqXlBuA9WJgKjaO5N1m1m/9bAbhEHuYC83XnX9RAXeJInymBOwpi2rUUMsQzRbD69ZWEGA4ibzm5fbzdZ8Da7DRemJQ024jQ1t20YUS2jpwh+y5lq2oMR+jITZY73fpfxiWs2Bdhu8jb6xeZFsKRWHbyceW/Mi1OWw4r5ZuZZfly7Lq9mm8ixvKhbxMvO+/MqUW2/JV63ldeY1PYeu3ZPUb3doKacCompZ3mzr1r1avAx06/Urll094z4uG5vj9/WzuWWnVbE8w+Qut1dVnK9++quhwIKEmJNioxxLYrktarFO75JIY5qkWeMeNKLUk9UsomK8IboIjno/tA6StC+agNQZEjxlZfFgVD3rChFE3rk1RYEV3NrEA/A7nfgw8kkzqQCjHtaypR9cy/SFgYtPTtrIxQpQw7B6q9ANlDMNJyO80pFMxD5XXZID643/qePrBZSE2S4mH4sbluuW5gLKDaahBUa6HRjSdIopXYsyODgoXj+j9hWLpjugZecpXZgPwqHR1JX1rZEdlcSzGNSs8sBtIZLMaDixXLXfBjBvJU0Pr2hdmw6zak+8dZuecFD52UlxEeoV+AcZ34ZdxLB5M2tql5HxxB2OGxGJ27JdgVxZDAcKk9Y5UKwdb7Ze7XMt83ZbTQDDoOfWzq47O6OTPMpTnqnFh9Ii90kHLkHwueYUMi+4Lzy+dx6ptThr4Bdtbl062y65ZRSxXeMKvC6xVzc1t0ZNtqgHtksyPPexNEift7MZ+VO81r09QF7fAqhlIp8GqmFZSGmWu0vyXtGmVgdLkVkGqtnwo6r3lJ/MWQJ5dS26faVYgR6lhh93EZLVhLNuWzC0deokyjMm2Oz0ARnTd9BGLSyF3aYvJipJXiwr7C7SdB56g9/x9nGbzccK0ObDardlKiNsjsFd2suYlUzeWXdny3j1ZN1KBICD3HWzJrWjwWHVxbX4KyjrAlKDrg7JpaBwG0BQu/xEtxzcQo9Cg1LjVkgGOCEXreAUtW2gAn+JgUHtuoHZXopqAbGdYpO1WlJOVq9ZO7K2rMVr2kBAlZ32g8S/6sw2Zp6KIwXVUwGDL2waRBSuojtwumzBRQ6xx2aT1/oJzwbtMUsomx9gojOgdpKzE0+4KbY/CaOE/CBrshpDDkYpozaaSnYNddk90J562KcybFay0rmLMbUHsvH7SgDpjJ8EqoLkJTcAap/zm4CVcc7yWyHlPvTym4Y9axhN7+Km3NaSwYxRV1bD4kWTUmT/rfH0yOrR/UqkeUYyty7ajGW3RPm7IbbQZFya29Oa0eRGJMZxieQ3G3G14pVkSKJilU1ReCPArjpFXRMnFKXdm/RXyxwCYq/o5474pdpxlW3a7I5piDdulM2W3N4rnW1fcX+PXwCwzj7Z3ugCkbDeKWRhLr38dtlL7+mOGcwgQoXFxJ1ZbWfIPOS/6qavvC+rZa/aPVzWHqOat0irPS8pBOULEFYc74JdZiuP1G09a089txhA6aaFFfEvHgNeZgRq1sTR8x/JXLnWS06kVbibUjRuV5ixh5sK8QGHdcK12TLybE8O0XXnklkDxrBMHdx+6rRlzDZxS4tecrPMEp1RmpIcbpdRWPLeehhFPIW+DKPUpFRIK7w0C9otFotGJGzWxcxRtf7tvFHyOFbkX4Zb2XdZAknDXbIjqq1/KyJpqEh588UaNWR3HZpAsym52K5XFWipYzeZagaG6YlS5lwJWS9smPSyOalrLHEr1c1kRV1t1Z6AZeVW0aLr48AVprcFC2pmxzqQZODWjaNM7tp7F1N+v09drkV8Wa60aG9AXlK1S1PPTfxfoJCkeqcv3DQbTt0QcG3oVa+xcpfyGrS2Jq92Fdut+HxthEYu/u0nvFaMVQ4EjHOC1+upIHjFbqzUWimsob8YZk0UMyqs0ejQ4d7U6NDff29pdejds3A2HsT0oRur7aUKV6Kxam2PSt0MeE7tUHO6Gjh2TaeVE0TRCmDFFm/2CK/fOoqV2TS78DydNcDkKu7Y489rH/ODwOxCwAzEhhvZWZ6Eh3kQPI+SA7zCLpzojyJzyQXRPAD42s9jceHdBWHPms+1olF+liWE7LJ72NSVgZiEKe4342+jszN6p0meZtzOTfitB50/XeGVWTTEKyyDvk+T64FsOsiwOoY0UeKtQOQRrxbAGJyYn1SwwuIpp50ffsSL2DKtoLPNN1euS9fc0ZCiWEB3hO+TlA4VvLoyk9Y77O5u8Tb1BXHU1YBUv/RLmoraZW3aXXvdMkwYBvUc8S6zI3S2CbC4DbAKVbspsAJ6J4zC+SzK0xpMEzKpQsSPFlDFGXXiOxfUdTxkOWaEkzJcLKoCZl8tkPGmGYCZRQ4wPzNIHXnVopO56XkFbfZRM9dK/ZjF1Q6PQazHUTLDd+cvKN4BCTJUolAs6vT0OkVX9mK8ba+Urw8cZOWNIqVde0eeFfZl0TVDnbV25TyaLYvPqiY/uKDjJEvExYURXkqDdwD2eNoiJoNoUhHl/GwSP6TELx4Eb3Aa+Wwx4XkMHakq0WWNQkzRAAUn9URHvjTP72zk782L1d7y1HrsZkgxKPyfTWEifJBEfLD5+YfNQf/PDx6wcWiI3Er/5sOxn7M+jbi+yurcFIkhfQ/UFPQBfzKEnadPnzqoWB84f/qTs4m9RmNHVlYnSli1jTwUhwU3nA8fHL5I98/JPN2sNOjPhDFQPLf6oM/PWDNYW83P2SON0hiPZxujEFeEbm6YT6ci1TYe9DkLyIabzT20nUXtolG59A+YvHpu+BbTDy44fwEFQOtjVHLvHTtTjhMgfDl1ik/8puFFdE6GRVpPmHPP63SKqym/RRE7YDEV8zrRzc0B65Wl8jgBYXeKohXfD6PLX2g2PRqPU5Jdv+48cHYOd53N/9gc0FBrghfT4rMfxsdJE5wHykqrmupo2IJssjU341eEQqWHWzOek5aej6RJDLZFjOs1UnIgCbfDL79mFO0VNbr8gtKGurL8WnTD2IRPLvw1CaIzIDX8qTIFO/gWc+LEyJbOU+fVFQxY3b76uuNsw29YYvFu9NedLvwY44u8omBgXNLNy9lJP1HOKQk/rt/87XX4OgyiCWjyvk/O8snm6w6YMqh7UWnviME4YjTOKSDvRKFzde1sXl0/QNg0jPOsj1eNdx1O9/3dBwyu1LtsFJuyrOvgc99dPrYHf2Pi/LcG5geaXLo0A3NsyCle8Oq1ZE68dpUyqklmD+U1xCmYE4XLxa/CkHfHdra/+suTLX4rbHl7oV6MCHrAdyxEBvsHWRsxsghRW1G8BRHiRGsjQJaan5b4yLloI0AsWnIvPgEDZ7jBhIkM+k2sCyC3KGXe2+dnURQYxptq3Bct+7FqqgrTa84jTKaOGYgr8UtcGfRw61pHjtGo29kbHuyMFEMV5OtHYNTORPQMDIILAhC/7uo1UB5mMdgMfeFiFNT5C5IG0PkuiaILJjCfTdif4HilTD30Oe/23TTrg9MTpsg3MvSPN27LBiRJoiTtZ+A2QTWcqodbRSnIIDIR4z+lcUqFILNn7AbmUrEYxhnL8O985oZzh7nYDtpcoZ86ol7ghpP+SBKs1JrVTbn53+dFWiWe8tM/m2dAKx+7edj/qloO3igzoOfKT8VbqrmT6omAS6URDX3la8uiSzcJ+f2DnYCek2DucPI5n0XgZIE4MmlOnVdg35Mur9KNI3CNYE66sQsUjqj7psNuDECArHdx0b3Fgw7oWVFX8YPEqvy9hk9URa7B8HLsiF3Wvd15efq89xU/bK1tXyllJy6Q57dg458VOhrYntFwIGqng8LCFHUWAxCIyHzhmsrAo+XavUJlL2ik0NJllYBzxHZiWZyCu078YgVw/5JJH0QHlHDknfeVyuBN5HXjP5I53rwG2g4/j0TUpEg1HcsQiWyPvgLW6gcR3wr70BQ+UbV/88g5KCKVdy6ejgmoK0KGRQ8CM367e59V+WC52/waHTE+mn3hhfblhHPVy+DuHQ5Pfj0+7eBjNvwv/ojNmnu23d5+1zhIL30NWEyzLE6LucYoSgkXnP4AnwewYfLbJSw/hD110Z9FuAitnTLQhexhOnM9QLWEYFEBy3tQoSWmGAwqTjswJEb73x3C75/3Tvaf/1pBMSXBOBXWQrUHrXTtRNBhp1M3IX6VDlqdOiIYYJYd/VpYt9gT7qsrf5agFs9iuKC+eH3KqrBkjQ+jPPxhuHctteaxLSxWtBKlHzy220Yz1U5Yd5Y2WPIBuvhxdF3kd+HDU6FUtzzMc6uKugiDt1PVRf2Smm4irtZJQd6Xh8201Ru1p67WitO3Sl0Wlxf01YM+Gnufn2GSCfx7bO5rFo8qCUtkJ0wvwZY+jfgdXp3tR9Win0nCdjUedjssGii3WR7yc90A9pepm22kzhxsEmfsXkS47ep4URAl/9lBf/jtd89ELYdq1XJVL2cVx+jx/pSTADxU6Me5iLIEy0FdQYs4+eMf4z/+Af+S/0SKPNK6j5xLVwLGWzgc3GGK5gTAmoZEQSK54wss0DHNq1daHE9/lU2mr2sfEbSqO3ZnNJiXK6ehWYuIl9lUBfa7FA/tDLjPNzDeRHP4a6IKVPnBNAXSLKiD7fLyF7jEgWiUoZeKdfjs6bUFYE/IBL7XAOWFBpmMJ9WayYGvudlpId55KxGCfa0DKR59K8Mr3oIrRi0+1SKHj91V8MKPOpTys3gGc2CgJSwxkHpssE7YwZeY4fTz0AQUbvW3cB+BDpXahIUmi8JTFn/q4CNbzJMDVzQOXKkbfiEbF8Th0X/fQVGSgIsXfH6NcmcG2odt6cSZAz6VasFqOzR0QNGRBPec2DNf4OmyW8vQY+dPgl0ZRzw7j7Yeft17uNV79NXp1pPtR1vbDx/2Hz/a+m+kAYI8Rec4KJLimMi/AO03c2ic5jPHR0XjpBSwmpGs6/DLUjPczXVcn8Y09TAeQ4CLu04KmPqRQ2iegiHk8LuiAGuP+tTHOE2eOYF7BuAdknHQxJm5k9B1QAx+z92+8xLUC2hIgM23Fh3QBtSddZ3fc9BuIbBckvvgQ5ME5ITh7eRB4M68iEPGSjSl2BMDSWOo7BDXwVfBIkCODQC6yvrOLoJ0wUxwaJIDJnysQOSExAmZgpeOLx7hh4soyGMUIkAHRgoKNAXdSYNAUggGlDvjfEJBC2McyXXA3YUfedJ39ti9DKhlUwo0iDzPJbCYOl4e43WX2AJGAfMJS1+IVERKQadeHsQujtuJxmPqUdfxCbAlls6iANFwkUDUZ/qcjT6f6fwguNVk7eQiIBnfIwHxTFK1aTbUTAniBTD94HKRLJv3CXm41Rct0/4wAY/+KKETGj6XVwLihvQx+PczniiMO6NDsCRx45VFELnH7vId0++J67M9ug5n9O67njTx5FqufYIp57a19k1KcpdtOIUZu5CpGzGcoFrCN9aI37uk7DJf0fGB3IfrfLd32j0+GsE/L0+7/MW17vHO6fD7ojIfIVZmjsz2YKDcle3CosDEJ+7poNUBFggNjxMyDuhkmhXRwDwJjvlGEzM/B190aqckdudB5PrWWakaeHx+XqA2O+YNRxxazczM3Hdi1xHfGNsPD8jExfARhsmreGpBQg6VG+TXTfjn8UdCf6sN/hw7+zD4w5lGbKEoARvXDfEVh+Icu3jtsjjoLwKApuKvtqPsgUAWbJaGZ7VSrG7xxxCHJ1MORr8eDjvGDR2dnWejvcPTDn9Vt6neixdvvzs63GtR8+DZ/ncvj16OFlcdHh0+3z852NtdXPX50cvDttXe7rw42dvZ/fXti/3DH9sAx3pvjw5f/Lq46sH+aLR/+N3iiqOjlyfDvbfguB6dtMFB1G8N/3TnBNRQe/gvD3dG6Ea3q/vTy50X+8/3sXIpPx+dMWUTWROq2Qn8Mdsjw8qaMW1JfTUlSCYhHGlV3s6Mgyjt5GYxHIscLW50L1f3cnWXclXKEtclq6L1baLG8vnsIjZSzdlP7idJdhdneZaStTYA64WuTet76buXvruUvtTGk4vEsLtwGbEJKsvi0D2tnPZFOtxAJk96rjclezKBhftEIqC9SzE8Z4mt5pQ3HxT7UsSEoPaIF8MotpNZbjdLkFPe2FXn773nYGmTnsr27ox2DvaOTva/2z/scPNaJNqcsAeYO4MiN7g66Jh2+Dms0ohNKkiF1IIMMb0pEQCCTgLLeABp62hI6Is8nRUnsQBQwrzVPOzuHf5qnwE7uhHSfXVkWfMbEpvDaCY3q3PCTgYY4xjwPYk8keum+bvYlj/UzlOKLHrKQ/DobEbZSxnyU+fpXLbzT1iee6kxD4BhRgNLqYc+5Um+GYh4ahzeTAesYj/Ws6tZiCns6/XYPkPK00x4NsA4agMd67UFzmCydCSWntEGvKjatgcJ+Vo7X3ZC8M1TSVfj6wt2cTmm2RTntPQDCgMzqxxnXCWY11QsTguw2lzbdlmkFsPd/GRDkYBlMJPvptOzyGWXrLNuduUHbojQdFcmeXD+FvT4KafeuTPCHDloeUn9CXtCFUOsqu00IWOo+pnKUk8xRD9QllJn7PYwxnfGL+4UkHd83xnKFozzJRyxCFWBQAH8f3KuHxwYskivI2820+HIM2wD3ZAcBEAoE6x4L/T33E1ILypA8wMoDj9BayIoHMYyguwR+cwc4y5hG9p6ey22ztbMRJs9E+CEuPpYhQYAnPT5rgMt+TFBfmwHVz3axDm7kZqIuYWaQsObNEQdlJYQzfAuzLSpcYHXaJ5mZOYcqxOHKTN+UpAGqBegIdJReYK/I89yluXGiMbcQlRFBwLsQRRSYEJu+Og8jsn6oX+CW6os9AaaG9TJqy+3trqP8B/4/y1A45IQkPVXD7e6j7e6X0PZX7e6Xz3EkjnSGUswCYulM3Yf8qRGbA+N2fnnd6KHzmePnjx59Njju6fq49mW/8RjiazW4bq5T/lU2cvF/Xc847ShXsqIAUtwkE2fg3PDqp65Cb7UlLHpCZj82lsHLj4PixO5gObyMlRgMXbDnUlx4F/cWWEnZNhuE+cc1eu7XjrDTDLtIu4ctSUfV9GYKd099fzPkq1510o7te7fShkpOC9AVBYR51me0hA3Yq3EmSRuPBVLPAhLTPkzWvzyF541wGK+csUfqLSBN/UDwJjXPrvDgXd1SjOWATGC7z0sQIRLPQNXqJ7r4BqrYRW8qWmsvQRAijUMMCSXurqsonJILh2zhjaZGjg6I+9xrxU0wRRmFG3Srb9yWc1Z/L2zhduiIZm4fJ8UV9LrgtCRR93gRTQR3oLGb7xoZXYFjZy7QXmQC4E0s6J0CXXLwZDUVswO81IAAMIthvALCcAII+bZNrBggAHkc9vuGQcgD/QBV0RgLmHiyamL6bIXlFx22IbLQG24SDsK7XK2dAmAA7354LgEC1GQBGGCshP6I3m4dsmOKgAGo/KXUpdxccJ+yb60lbIEk+X/EF+YJUuCPdUblyEzT2YnjoPicpelgB+V2pfh44k615sDuYY8pLc8UUoAyjMMuoYbAUuBzWfuYMSblgCypVk8K7wKVHZEqsoW4gzJsDhZvhTkUvPBjvmbdWYEcQYZvvWs3lBU5toF/tWHfzrsEOGU+zvSsmPZdODk8iMZmISURcI3/S+01dlOPwyuL07wB6gZQT1GfPscTY5jTKvYF/UA9JTwPeXOw0db8TvsK/EK944B6MG/Ebgbyblw7DK54JRggSZiGHNQvP+Grss9RT3mjAHN3KB3OaV4ZqShP/ZiSTYHo2RKuP7reGk6OAP6oM6Oe4/7T/oPex6IVzTreyzbCitgqoeX5Zg7rL6x2WC/tVm6JGf8bDBUmrynMU9kMUIWNART0NdSAF5hDkBH2KDqrNhV53OKp1m0rWMFvA8V+/zMS/oBypNJP4rTJ7/1Y/gOtfpFNQHvw6Otretr/fR+ASxgJ2yAMzF5oGM88Vg9o4N1+qLGB7aysvR/cUlyBWWVlPDhq62vttogkLbBIF0FhfTDV0+ePL7uyIsZ1PGNNA2GJMl2cCve0lXLvPHGkc1y9mQqD4U1Do/XRB1cHaMGRd5n0zjqAhYO/cntDf0NCx6C+SKOYH35V1RFGKRmX9NhFJ1TIndrsgik9VgrVrd07P19Z4i50JUaHGSCSZUY/jGLeg+v/z8hqTBZ3GgBAA==\"]" }, "cookies": [ { "httpOnly": true, - "name": "JSESSIONID", - "path": "/am", - "secure": true, - "value": "C143A7DFCFE307FD0678554755E8493E" + "name": "session-jwt", + "path": "/", + "value": "" } ], "headers": [ { - "name": "x-frame-options", - "value": "SAMEORIGIN" + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" }, { - "name": "content-security-policy-report-only", - "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + "name": "vary", + "value": "Accept-Encoding, Origin" }, { - "name": "x-content-type-options", - "value": "nosniff" + "name": "cache-control", + "value": "no-store" }, { - "_fromType": "array", - "name": "set-cookie", - "value": "JSESSIONID=C143A7DFCFE307FD0678554755E8493E; Path=/am; Secure; HttpOnly" + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" }, { - "name": "pragma", - "value": "no-cache" + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" }, { "name": "content-type", - "value": "text/xml;charset=utf-8" + "value": "application/json;charset=utf-8" }, { - "name": "content-length", - "value": "6270" + "name": "cross-origin-opener-policy", + "value": "same-origin" }, { - "name": "date", - "value": "Sun, 15 Oct 2023 03:29:00 GMT" + "name": "cross-origin-resource-policy", + "value": "same-origin" }, { - "name": "x-forgerock-transactionid", - "value": "frodo-90e5fb14-79c4-4f02-93c1-29164373b487" + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" }, { - "name": "strict-transport-security", - "value": "max-age=31536000; includeSubDomains; preload;" + "name": "x-frame-options", + "value": "DENY" }, { - "name": "via", - "value": "1.1 google" + "name": "content-encoding", + "value": "gzip" }, { - "name": "alt-svc", - "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + "name": "transfer-encoding", + "value": "chunked" } ], - "headersSize": 593, + "headersSize": 2299, "httpVersion": "HTTP/1.1", "redirectURL": "", "status": 200, "statusText": "OK" }, - "startedDateTime": "2023-10-15T03:29:01.423Z", - "time": 39, + "startedDateTime": "2025-05-06T22:21:01.133Z", + "time": 18, "timings": { "blocked": -1, "connect": -1, @@ -552,11 +590,11 @@ "receive": 0, "send": 0, "ssl": -1, - "wait": 39 + "wait": 18 } }, { - "_id": "479848461a59bc6e745d07bcc9f0335f", + "_id": "b184093074ffea48d93b8e1ac0d9ef4a", "_order": 0, "cache": {}, "request": { @@ -567,121 +605,128 @@ "name": "accept", "value": "application/json, text/plain, */*" }, + { + "name": "content-type", + "value": "application/json" + }, { "name": "user-agent", - "value": "@rockcarver/frodo-lib/2.0.0-39" + "value": "@rockcarver/frodo-lib/3.0.4-0" }, { "name": "x-forgerock-transactionid", - "value": "frodo-90e5fb14-79c4-4f02-93c1-29164373b487" + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" }, { - "name": "content-type", - "value": "application/json" + "name": "x-openidm-username", + "value": "openidm-admin" }, { - "name": "accept-api-version", - "value": "protocol=2.1,resource=1.0" + "name": "x-openidm-password", + "value": "openidm-admin" }, { - "name": "authorization", - "value": "Bearer " + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" }, { "name": "host", - "value": "openam-frodo-dev.forgeblocks.com" + "value": "openidm-frodo-dev.classic.com:9080" } ], - "headersSize": 1598, + "headersSize": 427, "httpVersion": "HTTP/1.1", "method": "GET", - "queryString": [ - { - "name": "entityid", - "value": "iSPAzure" - }, - { - "name": "realm", - "value": "alpha" - } - ], - "url": "https://openam-frodo-dev.forgeblocks.com/am/saml2/jsp/exportmetadata.jsp?entityid=iSPAzure&realm=alpha" + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/access" }, "response": { - "bodySize": 6528, + "bodySize": 1551, "content": { - "mimeType": "text/xml;charset=utf-8", - "size": 6528, - "text": "\n\n \n \n \n \n \nMIIDXzCCAkegAwIBAgIEDvqo1zANBgkqhkiG9w0BAQsFADBgMQswCQYDVQQGEwJVSzEQMA4GA1UE\nCBMHQnJpc3RvbDEQMA4GA1UEBxMHQnJpc3RvbDESMBAGA1UEChMJRm9yZ2VSb2NrMRkwFwYDVQQD\nExByc2Fqd3RzaWduaW5na2V5MB4XDTIyMDgxMTAxMzIyOVoXDTMyMDgwODAxMzIyOVowYDELMAkG\nA1UEBhMCVUsxEDAOBgNVBAgTB0JyaXN0b2wxEDAOBgNVBAcTB0JyaXN0b2wxEjAQBgNVBAoTCUZv\ncmdlUm9jazEZMBcGA1UEAxMQcnNhand0c2lnbmluZ2tleTCCASIwDQYJKoZIhvcNAQEBBQADggEP\nADCCAQoCggEBAKz4i7AfLdKa2fOueSyaX3rviRZXzY3w8J01B6VZZk+ujatitD8h9uSE7RjK2NS6\nBYSf/wMsg2/Xy/vVbqEMrAl8ptdjXd9rsyL4sz33IRDgs9PqW2X2Ml5et0ASCwwQJWv8aGJJqkOG\nZorLVGqCS8PvkiN8MoYXGvkMpLPeWuSBqTTC2iBubhenRqcRkvCoeZ0JbrRWfEHKoFM1gkTj/xcn\nL8yrXb5S3e2iAPkRw8+UPf8d4i9syS/jDyUZgrfqOsypbHh0dNMkS5dYpiqnOmJDWkjy1UDdUGmA\nSKglu7c6gKaPaxcqh9VNGnTerQFbpKMV34guBoyBFrVFD1Sq6eUCAwEAAaMhMB8wHQYDVR0OBBYE\nFCRENQBDfGf/R6qys11dPZM1+i5zMA0GCSqGSIb3DQEBCwUAA4IBAQACttnaeWl6CLVhffIlVz28\nCgxJbLB+pY9mL/jy7G0+5AxK7h9Njoe9ZK9k59uMcwD5BfVPl58kxFLJcnFc68R9m2Cdii1aCm/A\nBLlHPhpxHni5INeH9J4P7MLdVwxMa/Inp9tw3gZQ60txgG/mv535kL1mtlUSqbPDf57AtG0tNWKT\n2EBe/aSLndIWAhGf1qjS5Sc3uz+O5QEG7fnkLS4uOh5//coh14wfY3EAnMl/DpkgViliQOu7voX8\n7geBJd5jJhs6Ne2BJUp0q4iylD6WJrcfOLc3mcrgVaey5rLzVvX8vsp+p/m88KKhPzK+C8soYHz4\nT7PNNC7YVB2EQVSm\n \n \n \n \n \n \n \n \nMIIDRzCCAi+gAwIBAgIEK9RtfDANBgkqhkiG9w0BAQsFADBUMQswCQYDVQQGEwJVSzEQMA4GA1UE\nCBMHQnJpc3RvbDEQMA4GA1UEBxMHQnJpc3RvbDESMBAGA1UEChMJRm9yZ2VSb2NrMQ0wCwYDVQQD\nEwR0ZXN0MB4XDTIyMDgxMTAxMzIzMFoXDTMyMDgwODAxMzIzMFowVDELMAkGA1UEBhMCVUsxEDAO\nBgNVBAgTB0JyaXN0b2wxEDAOBgNVBAcTB0JyaXN0b2wxEjAQBgNVBAoTCUZvcmdlUm9jazENMAsG\nA1UEAxMEdGVzdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAIjkMGOu0kbOsvdp45J6\nFYW5wIn5TsKEPQUlNbYiFITg9o18Ja+6vWouK0fbIkzp8Ejj3U5OPHXqCtXCiDWiNX+bbFZoELW2\nKUigC26QdqbhmA/hTBheyQaUg/I4D64fqebUare9r0zxtMYE8FnR3YRgGeEG2qSlxgmIFvTMnzd4\nUwrUuw8C/uZTRbppDQITpkLDrOKb9608qnRvbXSR7UVP/JTm8Pq6uP2pvXz2F/QSK/wMKOnsjf+B\nXfnqNZ9b+PP+fJvUKIcxjFwgDkmGP+Kr9YV7aFaur5Hgh7Q+q4bSDJMbNDhk5Lqu6qr3oGulyiTX\nhtoEkLMcbMA7JrVFCl0CAwEAAaMhMB8wHQYDVR0OBBYEFPoZt1jm2z/0gX/TnN/Sn+T31BU1MA0G\nCSqGSIb3DQEBCwUAA4IBAQAY2Hy1f+lKClRzJFHNVyYZ0ahRCkbGB0FppwI8ZhIt6Aj3p9LBXOdu\nIckDfAjg0/mckuEteA7l1LRqYcQIxpxrJU4FTxeyV1gTgudW43rw9Vd3AxdVocXqdpVxAvECtI+X\n/jdbkk54k0mYTCI9ruNRdof1BpOWkI9Jtdj0GRe7L9nydNb3V/kJzSVMDNsx+Vc0GnmysL7edZDo\nmK3zry+aIWav0yj1Pmh2lOgD6rEnOlGZDqrmIqWd0d2jp8Am4iawP0sr9e7etjK/YGCFW4byuCOx\n328SOTHshVUBtIGbq11vuQleknlVL7A/aYUeUIyOvdYhWD7YoVnBV+QwcrAH\n \n \n \n \n \n \n \n 128\n \n \n \n \n \n \n \n \n urn:oasis:names:tc:SAML:2.0:nameid-format:persistent\n urn:oasis:names:tc:SAML:2.0:nameid-format:transient\n urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress\n urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified\n urn:oasis:names:tc:SAML:1.1:nameid-format:WindowsDomainQualifiedName\n urn:oasis:names:tc:SAML:2.0:nameid-format:kerberos\n urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName\n \n \n \n \n\n\n" + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1551, + "text": "[\"H4sIAAAAAAAA/w==\",\"xVhLb9s4EP4rhg+VNytH9wI5GGkD5NA2m3pPQVDQ4siemiJVkrLrFv3vOxTl1JIl2bKd7sUPipzvm+E89XP4Bfnw7ZDFMRgzDIexkgnOzfDt009atKgk/R7SgxTsQnH3RwPjtJAxa0FLWlgAE3ZBS1oJcDuuhr/C3eNX3edRJiq66jgv1BxlSJ8qt3uiQr+vIpHldgHSYszKR22SV0wgZxYqUhsE5hZFtN38Tw56c4eCnp2utDd0lGNEVFPwfy8mbtxlTvcszo1V6YTs9MOdXkC8vE8mcnMHzOYa3ks2E8BHT4GGORqrC0MG4SDImDFrpfkjGLDB819H0TIgEgN6hTFEyxm7vZiynJnFTDHNd4ShdNuYiNxCpDKQyNOxcwml8QfwTqxv7m73vTPxZjFdTkpmetC4QgHzYmOnQ2Xbnadb4UVEZ+yYfJaifYRvOWpyDGnNURG0e2O0lJqJ5HRtHL3cV8UjD/k3K6OyDWbPhdF82DxolZBFRvtOGe7fa+Y3dxqvR6QExDo4EA01JS/ls/s4xDJlFc3OAvDrDTakQDR0xX1xmk2aofMaMLbh/iqoR+jFU5QNKsH3WOQcHrwoLzxTofuIqipfXQCxIjAmNSyEhTPmhXeHHATQF8HEiwbjmo2xkB5ziy3a/gY3scbMXk66pVsK3YfP5KFXzqfl3NeKUOAKPm9kHO4U44N19mydq67F0TAh1PpWpSmTfFJsrblX9aadK/yv4CfqHnuQPRLah9Q14z51M/HANCMCoM11eeieD25ubgaB98dxyrIM5XwsUC5NcOjGCs5uaw/azVFRRICPhgoCUWRz4B2GyQSzidLpmHL6Cg1RJP41pJYqUBV0CkRbzO2qVibQfFvVuqvQuchtNTZTAuPNBezYr9j0V+DkenOaAkdW5bOFF33UWWYi5fkUUrf1YCqF76V0uh0UZ8FeNIP/QX8+t4/6PWecgUFSe5ivdXLtiTpDSX2GdF97NUGt5Ttm2ScpNk2tchl9vhr0bYPa+GzTegeTwZs3A0W/3lOlcj31B5/3P82+QkyTFUFoi2BGQU4BRaPo03NxxNv3PqEd1IJY4BNrNc5yC7cLJuf1aaDsvXzT1XABr+dNFLuZIpHRHCz5vnvhAoYiwanzeuPrLqplZmlWCOvT4ahlyEq/2J+/piS/Zu4GC6+VXibUF0WODkpjmYy7CuBRJqiNFEz6CbKB0U4H/qdpoZm4hhD4VH22TDundl5QI+gbh2Zupd9s6Z2VlXhHJ1oH5JCgLBrI/hapN6SGwpMC2gXgVN0hCG5GTy/vleqvlNr7QRc3R7CJKW0cvBlKRI8gipxrFpiV2WYzCr4QE0bJJmHCwIG59AXfMXPnLus97RylspiUJcMQWavzBq5NGf2F1K6IV6V9q4QAPwo9Bcgz4rs1cl2RhpeLDT1hT3doZe6t83GXwZ3SU6YpcfYbq2xxppipRtRCWOrErg3EuUa7ud7iFwhuAsuUpII/+HsQRAF9HjiA/GB+3TViL3M8//oPgcmj2Q8YAAA=\"]" }, "cookies": [ { "httpOnly": true, - "name": "JSESSIONID", - "path": "/am", - "secure": true, - "value": "894D7D30BB29EB7C113185F94DC998A4" + "name": "session-jwt", + "path": "/", + "value": "" } ], "headers": [ { - "name": "x-frame-options", - "value": "SAMEORIGIN" + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" }, { - "name": "content-security-policy-report-only", - "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + "name": "vary", + "value": "Accept-Encoding, Origin" }, { - "name": "x-content-type-options", - "value": "nosniff" + "name": "cache-control", + "value": "no-store" }, { - "_fromType": "array", - "name": "set-cookie", - "value": "JSESSIONID=894D7D30BB29EB7C113185F94DC998A4; Path=/am; Secure; HttpOnly" + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" }, { - "name": "pragma", - "value": "no-cache" + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" }, { "name": "content-type", - "value": "text/xml;charset=utf-8" + "value": "application/json;charset=utf-8" }, { - "name": "content-length", - "value": "6528" + "name": "cross-origin-opener-policy", + "value": "same-origin" }, { - "name": "date", - "value": "Sun, 15 Oct 2023 03:29:00 GMT" + "name": "cross-origin-resource-policy", + "value": "same-origin" }, { - "name": "x-forgerock-transactionid", - "value": "frodo-90e5fb14-79c4-4f02-93c1-29164373b487" + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" }, { - "name": "strict-transport-security", - "value": "max-age=31536000; includeSubDomains; preload;" + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" }, { - "name": "via", - "value": "1.1 google" + "name": "content-encoding", + "value": "gzip" }, { - "name": "alt-svc", - "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + "name": "transfer-encoding", + "value": "chunked" } ], - "headersSize": 593, + "headersSize": 2299, "httpVersion": "HTTP/1.1", "redirectURL": "", "status": 200, "statusText": "OK" }, - "startedDateTime": "2023-10-15T03:29:01.532Z", - "time": 48, + "startedDateTime": "2025-05-06T22:21:01.178Z", + "time": 45, "timings": { "blocked": -1, "connect": -1, @@ -689,11 +734,11 @@ "receive": 0, "send": 0, "ssl": -1, - "wait": 48 + "wait": 45 } }, { - "_id": "0dc3a05189e2726e15b256ff2d916027", + "_id": "81d93bfd62ed9b30d11aef04d6706d33", "_order": 0, "cache": {}, "request": { @@ -704,121 +749,123 @@ "name": "accept", "value": "application/json, text/plain, */*" }, + { + "name": "content-type", + "value": "application/json" + }, { "name": "user-agent", - "value": "@rockcarver/frodo-lib/2.0.0-39" + "value": "@rockcarver/frodo-lib/3.0.4-0" }, { "name": "x-forgerock-transactionid", - "value": "frodo-90e5fb14-79c4-4f02-93c1-29164373b487" + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" }, { - "name": "content-type", - "value": "application/json" + "name": "x-openidm-username", + "value": "openidm-admin" }, { - "name": "accept-api-version", - "value": "protocol=2.1,resource=1.0" + "name": "x-openidm-password", + "value": "openidm-admin" }, { - "name": "authorization", - "value": "Bearer " + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" }, { "name": "host", - "value": "openam-frodo-dev.forgeblocks.com" + "value": "openidm-frodo-dev.classic.com:9080" } ], - "headersSize": 1602, + "headersSize": 431, "httpVersion": "HTTP/1.1", "method": "GET", - "queryString": [ - { - "name": "entityid", - "value": "benefits-IDP" - }, - { - "name": "realm", - "value": "alpha" - } - ], - "url": "https://openam-frodo-dev.forgeblocks.com/am/saml2/jsp/exportmetadata.jsp?entityid=benefits-IDP&realm=alpha" + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/apiVersion" }, "response": { - "bodySize": 6280, + "bodySize": 659, "content": { - "mimeType": "text/xml;charset=utf-8", - "size": 6280, - "text": "\n\n \n \n \n \n \n \n \n \nMIIDXzCCAkegAwIBAgIEDvqo1zANBgkqhkiG9w0BAQsFADBgMQswCQYDVQQGEwJVSzEQMA4GA1UE\nCBMHQnJpc3RvbDEQMA4GA1UEBxMHQnJpc3RvbDESMBAGA1UEChMJRm9yZ2VSb2NrMRkwFwYDVQQD\nExByc2Fqd3RzaWduaW5na2V5MB4XDTIyMDgxMTAxMzIyOVoXDTMyMDgwODAxMzIyOVowYDELMAkG\nA1UEBhMCVUsxEDAOBgNVBAgTB0JyaXN0b2wxEDAOBgNVBAcTB0JyaXN0b2wxEjAQBgNVBAoTCUZv\ncmdlUm9jazEZMBcGA1UEAxMQcnNhand0c2lnbmluZ2tleTCCASIwDQYJKoZIhvcNAQEBBQADggEP\nADCCAQoCggEBAKz4i7AfLdKa2fOueSyaX3rviRZXzY3w8J01B6VZZk+ujatitD8h9uSE7RjK2NS6\nBYSf/wMsg2/Xy/vVbqEMrAl8ptdjXd9rsyL4sz33IRDgs9PqW2X2Ml5et0ASCwwQJWv8aGJJqkOG\nZorLVGqCS8PvkiN8MoYXGvkMpLPeWuSBqTTC2iBubhenRqcRkvCoeZ0JbrRWfEHKoFM1gkTj/xcn\nL8yrXb5S3e2iAPkRw8+UPf8d4i9syS/jDyUZgrfqOsypbHh0dNMkS5dYpiqnOmJDWkjy1UDdUGmA\nSKglu7c6gKaPaxcqh9VNGnTerQFbpKMV34guBoyBFrVFD1Sq6eUCAwEAAaMhMB8wHQYDVR0OBBYE\nFCRENQBDfGf/R6qys11dPZM1+i5zMA0GCSqGSIb3DQEBCwUAA4IBAQACttnaeWl6CLVhffIlVz28\nCgxJbLB+pY9mL/jy7G0+5AxK7h9Njoe9ZK9k59uMcwD5BfVPl58kxFLJcnFc68R9m2Cdii1aCm/A\nBLlHPhpxHni5INeH9J4P7MLdVwxMa/Inp9tw3gZQ60txgG/mv535kL1mtlUSqbPDf57AtG0tNWKT\n2EBe/aSLndIWAhGf1qjS5Sc3uz+O5QEG7fnkLS4uOh5//coh14wfY3EAnMl/DpkgViliQOu7voX8\n7geBJd5jJhs6Ne2BJUp0q4iylD6WJrcfOLc3mcrgVaey5rLzVvX8vsp+p/m88KKhPzK+C8soYHz4\nT7PNNC7YVB2EQVSm\n \n \n \n \n \n \n \n \nMIIDRzCCAi+gAwIBAgIEK9RtfDANBgkqhkiG9w0BAQsFADBUMQswCQYDVQQGEwJVSzEQMA4GA1UE\nCBMHQnJpc3RvbDEQMA4GA1UEBxMHQnJpc3RvbDESMBAGA1UEChMJRm9yZ2VSb2NrMQ0wCwYDVQQD\nEwR0ZXN0MB4XDTIyMDgxMTAxMzIzMFoXDTMyMDgwODAxMzIzMFowVDELMAkGA1UEBhMCVUsxEDAO\nBgNVBAgTB0JyaXN0b2wxEDAOBgNVBAcTB0JyaXN0b2wxEjAQBgNVBAoTCUZvcmdlUm9jazENMAsG\nA1UEAxMEdGVzdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAIjkMGOu0kbOsvdp45J6\nFYW5wIn5TsKEPQUlNbYiFITg9o18Ja+6vWouK0fbIkzp8Ejj3U5OPHXqCtXCiDWiNX+bbFZoELW2\nKUigC26QdqbhmA/hTBheyQaUg/I4D64fqebUare9r0zxtMYE8FnR3YRgGeEG2qSlxgmIFvTMnzd4\nUwrUuw8C/uZTRbppDQITpkLDrOKb9608qnRvbXSR7UVP/JTm8Pq6uP2pvXz2F/QSK/wMKOnsjf+B\nXfnqNZ9b+PP+fJvUKIcxjFwgDkmGP+Kr9YV7aFaur5Hgh7Q+q4bSDJMbNDhk5Lqu6qr3oGulyiTX\nhtoEkLMcbMA7JrVFCl0CAwEAAaMhMB8wHQYDVR0OBBYEFPoZt1jm2z/0gX/TnN/Sn+T31BU1MA0G\nCSqGSIb3DQEBCwUAA4IBAQAY2Hy1f+lKClRzJFHNVyYZ0ahRCkbGB0FppwI8ZhIt6Aj3p9LBXOdu\nIckDfAjg0/mckuEteA7l1LRqYcQIxpxrJU4FTxeyV1gTgudW43rw9Vd3AxdVocXqdpVxAvECtI+X\n/jdbkk54k0mYTCI9ruNRdof1BpOWkI9Jtdj0GRe7L9nydNb3V/kJzSVMDNsx+Vc0GnmysL7edZDo\nmK3zry+aIWav0yj1Pmh2lOgD6rEnOlGZDqrmIqWd0d2jp8Am4iawP0sr9e7etjK/YGCFW4byuCOx\n328SOTHshVUBtIGbq11vuQleknlVL7A/aYUeUIyOvdYhWD7YoVnBV+QwcrAH\n \n \n \n \n \n \n \n \n 128\n \n \n \n \n \n urn:oasis:names:tc:SAML:2.0:nameid-format:persistent\n urn:oasis:names:tc:SAML:2.0:nameid-format:transient\n urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress\n urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified\n urn:oasis:names:tc:SAML:1.1:nameid-format:WindowsDomainQualifiedName\n urn:oasis:names:tc:SAML:2.0:nameid-format:kerberos\n urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName\n \n \n \n \n \n\n\n" + "mimeType": "application/json;charset=utf-8", + "size": 659, + "text": "{\"_id\":\"apiVersion\",\"warning\":{\"enabled\":{\"$bool\":\"&{openidm.apiVersion.warning.enabled|false}\"},\"includeScripts\":{\"$bool\":\"&{openidm.apiVersion.warning.includeScripts|false}\"},\"logFilterResourcePaths\":[\"audit\",\"authentication\",\"cluster\",\"config\",\"consent\",\"csv\",\"external/rest\",\"identityProviders\",\"info\",\"internal\",\"internal/role\",\"internal/user\",\"internal/usermeta\",\"managed\",\"managed/assignment\",\"managed/organization\",\"managed/role\",\"managed/user\",\"notification\",\"policy\",\"privilege\",\"profile\",\"recon\",\"recon/assoc\",\"repo\",\"selfservice/kba\",\"selfservice/terms\",\"scheduler/job\",\"scheduler/trigger\",\"schema\",\"sync\",\"sync/mappings\",\"system\",\"taskscanner\"]}}" }, "cookies": [ { "httpOnly": true, - "name": "JSESSIONID", - "path": "/am", - "secure": true, - "value": "6935619F90B1EE9756B59ED773C8329C" + "name": "session-jwt", + "path": "/", + "value": "" } ], "headers": [ { - "name": "x-frame-options", - "value": "SAMEORIGIN" + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" }, { - "name": "content-security-policy-report-only", - "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + "name": "vary", + "value": "Accept-Encoding, Origin" }, { - "name": "x-content-type-options", - "value": "nosniff" + "name": "cache-control", + "value": "no-store" }, { - "_fromType": "array", - "name": "set-cookie", - "value": "JSESSIONID=6935619F90B1EE9756B59ED773C8329C; Path=/am; Secure; HttpOnly" + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" }, { - "name": "pragma", - "value": "no-cache" + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" }, { "name": "content-type", - "value": "text/xml;charset=utf-8" + "value": "application/json;charset=utf-8" }, { - "name": "content-length", - "value": "6280" + "name": "cross-origin-opener-policy", + "value": "same-origin" }, { - "name": "date", - "value": "Sun, 15 Oct 2023 03:29:01 GMT" + "name": "cross-origin-resource-policy", + "value": "same-origin" }, { - "name": "x-forgerock-transactionid", - "value": "frodo-90e5fb14-79c4-4f02-93c1-29164373b487" + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" }, { - "name": "strict-transport-security", - "value": "max-age=31536000; includeSubDomains; preload;" + "name": "x-content-type-options", + "value": "nosniff" }, { - "name": "via", - "value": "1.1 google" + "name": "x-frame-options", + "value": "DENY" }, { - "name": "alt-svc", - "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + "name": "content-length", + "value": "659" } ], - "headersSize": 593, + "headersSize": 2268, "httpVersion": "HTTP/1.1", "redirectURL": "", "status": 200, "statusText": "OK" }, - "startedDateTime": "2023-10-15T03:29:01.650Z", - "time": 42, + "startedDateTime": "2025-05-06T22:21:01.179Z", + "time": 53, "timings": { "blocked": -1, "connect": -1, @@ -826,11 +873,11 @@ "receive": 0, "send": 0, "ssl": -1, - "wait": 42 + "wait": 53 } }, { - "_id": "20687543d548c8ab96008a28d69e4ba1", + "_id": "37717db1403fe0fca4c76faa7b01295c", "_order": 0, "cache": {}, "request": { @@ -841,121 +888,7663 @@ "name": "accept", "value": "application/json, text/plain, */*" }, + { + "name": "content-type", + "value": "application/json" + }, { "name": "user-agent", - "value": "@rockcarver/frodo-lib/2.0.0-39" + "value": "@rockcarver/frodo-lib/3.0.4-0" }, { "name": "x-forgerock-transactionid", - "value": "frodo-90e5fb14-79c4-4f02-93c1-29164373b487" + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" }, { - "name": "content-type", - "value": "application/json" + "name": "x-openidm-username", + "value": "openidm-admin" }, { - "name": "accept-api-version", - "value": "protocol=2.1,resource=1.0" + "name": "x-openidm-password", + "value": "openidm-admin" }, { - "name": "authorization", - "value": "Bearer " + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" }, { "name": "host", - "value": "openam-frodo-dev.forgeblocks.com" + "value": "openidm-frodo-dev.classic.com:9080" } ], - "headersSize": 1624, + "headersSize": 426, "httpVersion": "HTTP/1.1", "method": "GET", - "queryString": [ - { - "name": "entityid", - "value": "urn:federation:MicrosoftOnline" - }, - { - "name": "realm", - "value": "alpha" - } - ], - "url": "https://openam-frodo-dev.forgeblocks.com/am/saml2/jsp/exportmetadata.jsp?entityid=urn%3Afederation%3AMicrosoftOnline&realm=alpha" + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/audit" }, "response": { - "bodySize": 9468, + "bodySize": 1806, "content": { - "mimeType": "text/xml;charset=utf-8", - "size": 9468, - "text": "\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \nMIIC/TCCAeWgAwIBAgIQbgDHfi3t1JNGVqwD5/7lmjANBgkqhkiG9w0BAQsFADApMScwJQYDVQQD\nEx5MaXZlIElEIFNUUyBTaWduaW5nIFB1YmxpYyBLZXkwHhcNMjAxMjIxMDAwMDAwWhcNMjUxMjIx\nMDAwMDAwWjApMScwJQYDVQQDEx5MaXZlIElEIFNUUyBTaWduaW5nIFB1YmxpYyBLZXkwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDFT0/0/2qQurnYa0LbJHF9YYozhEH6r9mCxVDBYbew\nSG4tGgrWpsewQ/96pcczGMQctMvU+h2eX38Hx/f9JAIDbuRQzQlsPhQS7DDZ6WlTXU+t8d/g2C7f\npSoLs4KVdJih4xyjLUWj+BK/ijsRjBt4Riw9VbJH/DdWKyoSMbECEiE+s1RtLP/eYoMmNfxyQGqW\nirCNqVNBTlqzYQp4dgF0foYy4ktoxwmQOVoTcIMFYp1I4pFPI7CxuMLkfK0X7aTbM7YGphvMfJxJ\nkjrQdyI7G5d1t4DNi3zkEbBT7FGAr6qPt3Kn9ralpqJKHdpEBA9N0vNwQo5XTYIhUbPQ16IRAgMB\nAAGjITAfMB0GA1UdDgQWBBRs7tPmfkksSr67KtElHjYZbeaCTjANBgkqhkiG9w0BAQsFAAOCAQEA\nJqwMZSjQJ36x+1sty6EeLKQLQewQwPaEC47Zut+8bXed6Q8jMZ0bfa/MM7XquEcabaMZLQuKLft4\n4YXwXXQOfQrI2qjQr3eToJFlDT9hR0rfp9wQqttDxd6Aa6RWwDTgo5oKUQCTKLHhEy8uWzScK0eG\nt2d7TWTaDXjRSwNq6tM7fRhZs07tKBV3xfi9EQy/mlavAMFRBVm86NSo7AsOG1IOMq03U3ooCWAX\nh9PdvvHNfHhH19futAnC/HeOjwRF1Qc527aBMphYFQLdiThfmfmiE/AhQqCwZ2oE7uCJhBtR+Kb1\nZGhjI35pHfsSqGiFa7Kr+5ave822PDcke89Mvg==\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \nMIIC/TCCAeWgAwIBAgIQN/GPegnT8blP2EcSdMMbBzANBgkqhkiG9w0BAQsFADApMScwJQYDVQQD\nEx5MaXZlIElEIFNUUyBTaWduaW5nIFB1YmxpYyBLZXkwHhcNMjEwMjE4MDAwMDAwWhcNMjYwMjE4\nMDAwMDAwWjApMScwJQYDVQQDEx5MaXZlIElEIFNUUyBTaWduaW5nIFB1YmxpYyBLZXkwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDXdLGU2Ll5RPdDUnKQ+f/HS5qiTay2cCh9U2AS6oDM\n6SOxVhYGtoeJ1VPebcLnpgLfhPxzrwWoVzXSEF+VRQbnYID2Jb4khjgyEeoThk3VqrThwhahpSbB\ng2vo06vIOp1TS2R1BiwHKTLoB1i1IJnaIFSC3BN6pY4flXWyLQt/5ABXElv2XZLqXM9Eefj6Ji40\nnLIsiW4dWw3BDa/ywWW0MsiW5ojGq4vovcAgENe/4NUbju70gHP/WS5D9bW5p+OIQi7/unrlWe/h\n3A6jtBbbRlXYXlN+Z22uTTyyCD/W8zeXaACLvHagwEMrQePDXBZqc/iX2kI+ooZr1sC/H39RAgMB\nAAGjITAfMB0GA1UdDgQWBBSrX2dm3LwT9jb/p+bAAdYQpE+/NjANBgkqhkiG9w0BAQsFAAOCAQEA\neqJfYHnsA9qhGttXFfFpPW4DQLh5w6JCce7vGvWINr5fr1DnQdcOr+wwjQ/tqbckAL2v6z1AqjhS\n78kbfegnAQDwioJZ1olYYvLOxKoa6HF+b1/p0Mlub8Zukk2n1b2lKPBBOibOasSY7gQDwlIZi7tl\n9nMTxUfdYK+E5Axv7DVnmUCwcnnpV5/1SFdNyW2kWO4C68rrjMOvECfwrKkbfVJM8f9krEUBuoBF\n8dTDv7D2ZM4Q2buC70NbfaNWUX0yFvKI0IuTqk8RBfGTRQ4fZAbhMPaykEpBu6dNjTi5YOa0lNqF\nGS7Ax7leCh5x9lV8elcLkXs8ySo8AOQJk0hgIw==\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \nMIIC/TCCAeWgAwIBAgIQN/GPegnT8blP2EcSdMMbBzANBgkqhkiG9w0BAQsFADApMScwJQYDVQQD\nEx5MaXZlIElEIFNUUyBTaWduaW5nIFB1YmxpYyBLZXkwHhcNMjEwMjE4MDAwMDAwWhcNMjYwMjE4\nMDAwMDAwWjApMScwJQYDVQQDEx5MaXZlIElEIFNUUyBTaWduaW5nIFB1YmxpYyBLZXkwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDXdLGU2Ll5RPdDUnKQ+f/HS5qiTay2cCh9U2AS6oDM\n6SOxVhYGtoeJ1VPebcLnpgLfhPxzrwWoVzXSEF+VRQbnYID2Jb4khjgyEeoThk3VqrThwhahpSbB\ng2vo06vIOp1TS2R1BiwHKTLoB1i1IJnaIFSC3BN6pY4flXWyLQt/5ABXElv2XZLqXM9Eefj6Ji40\nnLIsiW4dWw3BDa/ywWW0MsiW5ojGq4vovcAgENe/4NUbju70gHP/WS5D9bW5p+OIQi7/unrlWe/h\n3A6jtBbbRlXYXlN+Z22uTTyyCD/W8zeXaACLvHagwEMrQePDXBZqc/iX2kI+ooZr1sC/H39RAgMB\nAAGjITAfMB0GA1UdDgQWBBSrX2dm3LwT9jb/p+bAAdYQpE+/NjANBgkqhkiG9w0BAQsFAAOCAQEA\neqJfYHnsA9qhGttXFfFpPW4DQLh5w6JCce7vGvWINr5fr1DnQdcOr+wwjQ/tqbckAL2v6z1AqjhS\n78kbfegnAQDwioJZ1olYYvLOxKoa6HF+b1/p0Mlub8Zukk2n1b2lKPBBOibOasSY7gQDwlIZi7tl\n9nMTxUfdYK+E5Axv7DVnmUCwcnnpV5/1SFdNyW2kWO4C68rrjMOvECfwrKkbfVJM8f9krEUBuoBF\n8dTDv7D2ZM4Q2buC70NbfaNWUX0yFvKI0IuTqk8RBfGTRQ4fZAbhMPaykEpBu6dNjTi5YOa0lNqF\nGS7Ax7leCh5x9lV8elcLkXs8ySo8AOQJk0hgIw==\n \n \n \n \n \n urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress\n urn:mace:shibboleth:1.0:nameIdentifier\n urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified\n urn:oasis:names:tc:SAML:2.0:nameid-format:transient\n urn:oasis:names:tc:SAML:2.0:nameid-format:persistent\n \n \n \n \n\n\n" + "mimeType": "application/json;charset=utf-8", + "size": 1806, + "text": "{\"_id\":\"audit\",\"auditServiceConfig\":{\"availableAuditEventHandlers\":[\"org.forgerock.audit.handlers.csv.CsvAuditEventHandler\",\"org.forgerock.audit.handlers.jms.JmsAuditEventHandler\",\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RouterAuditEventHandler\",\"org.forgerock.audit.handlers.syslog.SyslogAuditEventHandler\"],\"caseInsensitiveFields\":[\"/access/http/request/headers\",\"/access/http/response/headers\"],\"filterPolicies\":{\"field\":{\"excludeIf\":[],\"includeIf\":[]}},\"handlerForQueries\":\"json\"},\"eventHandlers\":[{\"class\":\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"config\":{\"buffering\":{\"maxSize\":100000,\"writeInterval\":\"100 millis\"},\"enabled\":{\"$bool\":\"&{openidm.audit.handler.json.enabled|true}\"},\"logDirectory\":\"&{idm.data.dir}/audit\",\"name\":\"json\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.stdout.enabled|false}\"},\"name\":\"stdout\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.repo.enabled|false}\"},\"name\":\"repo\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}}],\"eventTopics\":{\"activity\":{\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]},\"passwordFields\":[\"password\"],\"watchedFields\":[]},\"config\":{\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]}}},\"exceptionFormatter\":{\"file\":\"bin/defaults/script/audit/stacktraceFormatter.js\",\"type\":\"text/javascript\"}}" }, "cookies": [ { "httpOnly": true, - "name": "JSESSIONID", - "path": "/am", - "secure": true, - "value": "58597FB89016A24B65E5BCC560E76FF2" + "name": "session-jwt", + "path": "/", + "value": "" } ], "headers": [ { - "name": "x-frame-options", - "value": "SAMEORIGIN" + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" }, { - "name": "content-security-policy-report-only", - "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + "name": "vary", + "value": "Accept-Encoding, Origin" }, { - "name": "x-content-type-options", - "value": "nosniff" + "name": "cache-control", + "value": "no-store" }, { - "_fromType": "array", - "name": "set-cookie", - "value": "JSESSIONID=58597FB89016A24B65E5BCC560E76FF2; Path=/am; Secure; HttpOnly" + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" }, { - "name": "pragma", - "value": "no-cache" + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" }, { "name": "content-type", - "value": "text/xml;charset=utf-8" + "value": "application/json;charset=utf-8" }, { - "name": "transfer-encoding", - "value": "chunked" + "name": "cross-origin-opener-policy", + "value": "same-origin" }, { - "name": "date", - "value": "Sun, 15 Oct 2023 03:29:01 GMT" + "name": "cross-origin-resource-policy", + "value": "same-origin" }, { - "name": "x-forgerock-transactionid", - "value": "frodo-90e5fb14-79c4-4f02-93c1-29164373b487" + "name": "expires", + "value": "0" }, { - "name": "strict-transport-security", - "value": "max-age=31536000; includeSubDomains; preload;" + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1806" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.180Z", + "time": 103, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 103 + } + }, + { + "_id": "653fe2843bcc7fd80db785216049a251", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/authentication" + }, + "response": { + "bodySize": 1574, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1574, + "text": "{\"_id\":\"authentication\",\"serverAuthContext\":{\"authModules\":[{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"defaultUserRoles\":[\"internal/role/openidm-reg\"],\"password\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"fzE1J3P9LZOmuCuecCDnaQ==\",\"iv\":\"nhI8UHymNRChGIyOC+5Sag==\",\"keySize\":32,\"mac\":\"XfF7VE/o5Shv6AqW1Xe3TQ==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"v0NHakffrjBJNL3zjhEOtg==\",\"stableId\":\"openidm-sym-default\"}}},\"queryOnResource\":\"internal/user\",\"username\":\"anonymous\"}},{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"defaultUserRoles\":[\"internal/role/openidm-authorized\",\"internal/role/openidm-admin\"],\"password\":\"&{openidm.admin.password}\",\"queryOnResource\":\"internal/user\",\"username\":\"openidm-admin\"}},{\"enabled\":true,\"name\":\"MANAGED_USER\",\"properties\":{\"augmentSecurityContext\":{\"source\":\"var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield);\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-authorized\"],\"propertyMapping\":{\"additionalUserFields\":[\"adminOfOrg\",\"ownerOfOrg\"],\"authenticationId\":\"username\",\"userCredential\":\"password\",\"userRoles\":\"authzRoles\"},\"queryId\":\"credential-query\",\"queryOnResource\":\"managed/user\"}}],\"sessionModule\":{\"name\":\"JWT_SESSION\",\"properties\":{\"enableDynamicRoles\":false,\"isHttpOnly\":true,\"maxTokenLifeMinutes\":120,\"sessionOnly\":true,\"tokenIdleTimeMinutes\":30}}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1574" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.181Z", + "time": 52, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 52 + } + }, + { + "_id": "aec85c9f6664d9880169fcf8d9d733db", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/cluster" + }, + "response": { + "bodySize": 179, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 179, + "text": "{\"_id\":\"cluster\",\"enabled\":true,\"instanceCheckInInterval\":5000,\"instanceCheckInOffset\":0,\"instanceId\":\"&{openidm.node.id}\",\"instanceRecoveryTimeout\":30000,\"instanceTimeout\":30000}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "179" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.182Z", + "time": 49, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 49 + } + }, + { + "_id": "8b83418cf28acd1b939879c72c951589", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 452, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/forgottenUsername" + }, + "response": { + "bodySize": 743, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 743, + "text": "{\"_id\":\"emailTemplate/forgottenUsername\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

\",\"fr\":\"{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Account Information - username\",\"fr\":\"Informations sur le compte - nom d'utilisateur\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "743" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.183Z", + "time": 52, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 52 + } + }, + { + "_id": "ba8f08c2397259b7af7094fa4d11c519", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/registration" + }, + "response": { + "bodySize": 431, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 431, + "text": "{\"_id\":\"emailTemplate/registration\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

This is your registration email.

Email verification link

\",\"fr\":\"

Ceci est votre mail d'inscription.

Lien de vérification email

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Register new account\",\"fr\":\"Créer un nouveau compte\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "431" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.184Z", + "time": 52, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 52 + } + }, + { + "_id": "71086d44381b7d81178ecc45f4989855", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/resetPassword" + }, + "response": { + "bodySize": 455, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 455, + "text": "{\"_id\":\"emailTemplate/resetPassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Click to reset your password

Password reset link

\",\"fr\":\"

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Reset your password\",\"fr\":\"Réinitialisez votre mot de passe\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "455" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.185Z", + "time": 85, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 85 + } + }, + { + "_id": "82e1f6e62e8145e19f78445f80160a4f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/updatePassword" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 273, + "text": "{\"_id\":\"emailTemplate/updatePassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Verify email to update password

Update password link

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Update your password\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "273" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.186Z", + "time": 61, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 61 + } + }, + { + "_id": "76be78f43255ef6c7f0ec368787fd6fa", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/welcome" + }, + "response": { + "bodySize": 420, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 420, + "text": "{\"_id\":\"emailTemplate/welcome\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Welcome to OpenIDM. Your username is '{{object.userName}}'.

\",\"fr\":\"

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Your account has been created\",\"fr\":\"Votre compte vient d’être créé !\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "420" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.187Z", + "time": 55, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 55 + } + }, + { + "_id": "8996c88e14b7ecbba49105dae49641fe", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 455, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getavailableuserstoassign" + }, + "response": { + "bodySize": 116, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 116, + "text": "{\"_id\":\"endpoint/getavailableuserstoassign\",\"file\":\"workflow/getavailableuserstoassign.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "116" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.188Z", + "time": 42, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 42 + } + }, + { + "_id": "e504a45bf842a314f67c6419cf0b82f3", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getprocessesforuser" + }, + "response": { + "bodySize": 104, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 104, + "text": "{\"_id\":\"endpoint/getprocessesforuser\",\"file\":\"workflow/getprocessesforuser.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "104" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.189Z", + "time": 72, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 72 + } + }, + { + "_id": "050b4885370dd0fec91299f44157fa98", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 444, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/mappingDetails" + }, + "response": { + "bodySize": 121, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 121, + "text": "{\"_id\":\"endpoint/mappingDetails\",\"context\":\"endpoint/mappingDetails\",\"file\":\"mappingDetails.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "121" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.190Z", + "time": 52, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 52 + } + }, + { + "_id": "340e7202bcebc2ae1e41e59ead8e6dbc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/gettasksview" + }, + "response": { + "bodySize": 90, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 90, + "text": "{\"_id\":\"endpoint/gettasksview\",\"file\":\"workflow/gettasksview.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "90" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.190Z", + "time": 95, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 95 + } + }, + { + "_id": "20416931a8bfbbe57c7d8022c7cdc8d8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 440, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/oauthproxy" + }, + "response": { + "bodySize": 109, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 109, + "text": "{\"_id\":\"endpoint/oauthproxy\",\"context\":\"endpoint/oauthproxy\",\"file\":\"oauthProxy.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "109" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.191Z", + "time": 66, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 66 + } + }, + { + "_id": "950d0219de4cf4b9516ef30be6bb5836", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 461, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/removeRepoPathFromRelationships" + }, + "response": { + "bodySize": 126, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 126, + "text": "{\"_id\":\"endpoint/removeRepoPathFromRelationships\",\"file\":\"update/removeRepoPathFromRelationships.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "126" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.192Z", + "time": 62, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 62 + } + }, + { + "_id": "4e2d4c5a497442e856fc60f741d3d798", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 444, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/repairMetadata" + }, + "response": { + "bodySize": 91, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 91, + "text": "{\"_id\":\"endpoint/repairMetadata\",\"file\":\"meta/metadataScanner.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "91" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.193Z", + "time": 59, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 59 + } + }, + { + "_id": "acd8e0a1115f4a5814282f28fd6a895e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 470, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/updateInternalUserAndInternalRoleEntries" + }, + "response": { + "bodySize": 144, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 144, + "text": "{\"_id\":\"endpoint/updateInternalUserAndInternalRoleEntries\",\"file\":\"update/updateInternalUserAndInternalRoleEntries.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "144" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.193Z", + "time": 192, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 192 + } + }, + { + "_id": "0a16240221eeea51a0aa371b1b13ad9b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/validateQueryFilter" + }, + "response": { + "bodySize": 326, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 326, + "text": "{\"_id\":\"endpoint/validateQueryFilter\",\"context\":\"util/validateQueryFilter\",\"source\":\"try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } };\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "326" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.194Z", + "time": 35, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 35 + } + }, + { + "_id": "b90c49fb8e97c6a49c1b99e8b28c3228", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 429, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/internal" + }, + "response": { + "bodySize": 353, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 353, + "text": "{\"_id\":\"internal\",\"objects\":[{\"name\":\"role\",\"properties\":{\"authzMembers\":{\"items\":{\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}]}}}},{\"name\":\"notification\",\"properties\":{\"target\":{\"reversePropertyName\":\"_notifications\"}}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "353" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.195Z", + "time": 36, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 36 + } + }, + { + "_id": "663ad29a28f7c57cd35b8178c4fdb1a5", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 434, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/external.rest" + }, + "response": { + "bodySize": 86, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 86, + "text": "{\"_id\":\"external.rest\",\"hostnameVerifier\":\"&{openidm.external.rest.hostnameVerifier}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "86" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.195Z", + "time": 60, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 60 + } + }, + { + "_id": "a691ccd864d3d6bd4cec893c7df77b9c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/managed" + }, + "response": { + "bodySize": 4987, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 4987, + "text": "[\"H4sIAAAAAAAA/w==\",\"7R1rc9y28a9gWM/ETu+kpJ3MtNcPHVmyO5rElmO7aWcsxQMdcTpEPJAGQcmKqv/exYsECJDHO1GW7PhDkhOeu4t9Y8FcJ+9pmsySFWb4jKTJJMlPfyNzUSazd9dJhkvx5orNk9l1QhYLaKcXZK8s6RlbESbKVzwvCBdXsECsG1azKzgj60VvJsmKCCwXL5ru96ptknBS5hWfk/08y+TKOYNOygThDGe7VUm4GSg4np+T1OxAiQQ9mXOCBTmAfwwQ+0vMJIInsCvDKwKLyTWgl+WCLugcyy3KNjB+J8wt8lIckIzAwjBUgwgDOflQUU4ef9P0T2laTOcZwawqvnmyw8kqvwBsGANsSHqYFgAdfpxn6ZGi+ARZjF8CePKvDxUpxZN/xJZ2were46UzauBmkp5XhcRIkI9i9zd8gcs5p4WQuJfzJVmp83pkfyZLIYrZ7u5vJQCiG3dyfrabcrwQ0+/+umsGThI6Vye4wFNDd8V3FWczOVcPm8HU2QL+RXg+P5/BMTCarmaGOWe4oLN/68krLKZmxYLkRSaPOecp9MHhS5aeqOOV2MHPApflJXTDzzNgUWaaS6ZWohn8JyUaT8lnkwTP53nFxBuBRSXZWADZi2XOyMtqdaoAkIeBs700BULKEXMKDGOb9/NUrq/W4LIZGgUBDr2gbC57eJ4ROQt7wqLxlKvjSix/f20GcVLkXA2ohcx2rZE6+Hl+ig/ZIpegcbIgnAAACl6gOYwm6QtcFJSdybb8khF+tDjiZxKEdEWZ/WNFJNqRvw4PFBoKBiNtlDl/nkysOCnBvNbq5toj9yyRh4oOD+Tk8hXhwA84S2YLnJVEkjSjcy3WIJuY45VaCNjklKYpYSDZXMn8rhJuNfzqUDLXHDMQlCmgKjAFOYGBABqsn9wAXCXBHJpOgXfsVob1S8GBIoqF4DwOPFANYz1LqfCmXlBy6TTctHlI4bzAVSZgEU2gFtfNkprdhlOBkzPysYC5vz7Wi/7Pkv/Jo8Snhh76AgsQtZACgleSAFTIPxpIRqGIXPvG45KAA/ZUHzIsBGcLAg7NKfwtqBLWtTRpML3AGU2n9dyuwza4+luPinAjQoAwFUSfmVLeV29Itmgw8WUEJFX+14cFFpQdr7yhUeGSjS+1jdOq0JiQtIPRb27qFm39VUvMACuf4JTAESSAFWb0d2w0pkbK8lGBxbLxKnZzfyzYGtCKUoYpyVIlu8okn5iu5zQTUpMncjGpPUH9/Uiu5MCTG3manFwALxDrVBhcFbm1wlTdr0mm7faSFjWDazS52zXRDKP40pycw1lqOwF26unVgRVgQ8UepnKpU6JDtCdho6VQ2t0AgTnHV8OZydHwofh46n97yzrzDVJE5mouHmeTmV5v4gmF4aGoTPh4v65NGsLIPVS04PkK2szeyPB1wPkxmWop5apQ5hdJdxOYBKNLKpaUIbEkqMVHLZDPOGbirdqwveq/ZBdSfZNapLzGENCY5fShN2hqUxqRccOcyhEpYQHoQMqVQIfyGFCLFhtoBbCxwMFUsgrwYj6niizPpXxLQ2x7HWQblk0CfYHdvs20RY9+0G7LOgVhrULDo5o4yWDl0aUuIkvHlMEt7E3jNYYaAvpybjQSsv7jbYTYdVHvSlHUe9R64vPXCqOJceRI70GOD01IrgBoRLmO1LluHk2KFU+82EiUu+g0okhHpWtE0VbhZcA2+zroHB4ugBPyE2Fn8oS+96MD6Z6sqtU00903E28a/min/eWHH1oT8Udv4klDFQPeNi61PsGQDEHUGtLEDkFOZBvTT+UvlIsqprHqRMJKr9CEy/GY1u3sgqcvtNkyjvG5vLVPSPQB5LX4Bki8qAnRDUAzZou9b9wgpYfwLWybUw6V3FZ+e5R7tpDjNpI2KWBTQhE2sbmiByvNNYQjCrRHhDZNDryc3EOjS7ck+HCPSK1oui8g2zM7Cu2tjeYaJai3rHWgxSW6WNt8NiKnbDkI0YKe6fSU8cRM3vl5bfy/TZSFt92u/a4HvYvmSU8m7/y/T2Ki7p9IF0kGSXYoxa08bM8J9DnIG9A+6rQMoHqUrIaqG5FtI5cmJFiTdQ9o9ZzyUiCTkXfJZLIAD1PEPahHlHAveR7Q6tD03kuetL35mJlSe0sRYPzj0z1k7i9C3ggdNszKS5Vim1elyFc/y0utOueofgLigf9mZoUxs10tCA9by4fWXPWjD83+wRIOQMF0u3BXBOi4So6BtrTq1hMjOjLu1bAP/E/Qg2QXklxVCrwq4mxZn1rHLVYzPTixWxrCWxq5jazKjYtIAOJbh0QbiOk6lijnuRpQcHqhpbVHsOMH5mM9XNWr+9TwKGQzaq5L1yn6NvZEzp9iPX9q9N4d6fY2rCOqd3vDGwmw7NVvTH9/zXk1Qaai0y0yXDZvZQoJWplnU5sQyVY55QStGoKNU1jNhX5P9qpHYBtmiaevNrHEXqYrxrHOzX/XJWbffc3neIdpxe4+LjGHXVLcyy2myNHlks6X6BA9JVnu5lw2u8ps1Y9ItlobCwH1EU3BwFKgNw/VchgFLYA4gjCX1/Ta3UGp5jQwKbCPhGx9iOrJR09E1SfN7WqazWhq7a5TvPO12ODu5VSR+0GK6SE6umTbimZdKReY61dNDR2IA7+qc3ZFxYu8lFvRdLVjF9hxBt105D+ApEIVKg4P9v+2QbDPqtU+LsogQ4AFjAefd/rf6RwXQJGsDGe+rFa9M1ml9bQ/MaUlzrL8kqTPhzgOveVqObhVtlRtE3feOagxPFerX/yCxzBW1h3o+4eXxakv6RwQR/TpnZLPUGhUHzL1oA8tg11zjAflmKRxSk5D2nj1qH35gaqQ+lJXyPJziIIBriAl0HSFgQthKQQtqCzInAKiOcTtHOIkaAUsLujcjSBO81zWU0ulZfftXJCRS71MA2F7lTA075FcjyLDAvBB52ADjvCGBeCCoOt1HZDcUSGHAeBrFUcY0fpHcOsCjgcQ3jZl7AOKM2Lodwa2G9dlBPw9YkkGj9/9hMV1ya3qrPjdllhxr7rqaxXmH6wK0y/asmpi7JqtjSovu+iyiVZo+tVpviUr4B7ppDE4CHCuRfmMgXDMm9BjnSaJivWI2qSM3CKpxPzndjPqAj2iK+m/oAr1g+zedV5YPVRfOwB0RBq1X6mFt012AKrfsUX4SqbNuBz+6/Hxn//5+N13078fH0/R8fHj4+MnJ0++fRTcVd0TLSPojEjN2iMKyCgNJxsmlu17rMpO9Qlwu8dsk4ck/w5xRjuMVnVgt69qrh9PfHAiwVSwwbV9FWxsX89b19qrUi9dnZevf0raL/oS990rjJmfT8sPFeZka5/QGGzn/WtTC/WeMvWC238Haw7Df+DaWGT/xY/rI4jQag58zymB1O5PT7TbYSMiDyn77vhfGNey44Z/eyL/YV4pjXw3m4Y1FCOEs5/+tZCNuwZ4rJ2ID3dZNWO5mzi3S+Yiqt9BjQtCy0ONFdQbeQ8zusgJJ9BC0Q2B3ABL0RIZNUnL/WbQgMuufVe/rJX83urgt5KzpaJxmicIbEOqoExpWWT4CpnriXIn2b5kt+MGMyKHSvM1r1PG0ENmry8od/ZQI3L38O4oFrd810rT9V5ofpqalOHqLiTT/YbmLZlbp/JY1KevtQlTH0TpVSNdLn7F6Idq3TudtW5PHcyF3lekQhUpPFG+QHaCVNt2hkIBN8o6pHZ3LW1acc2ygc9X94T3CbZnTYmit3gTzhkEHJS7izC3sJj+QcS262MfbZRaeFjfwuXFmJa4TiCq5vS0EuSZe3te82PieTHjRB97mqO9lZtw5JxcbR2FeO6YE4tcFOy9XndQEFI/3aqJo75eQ9n5zxVoDlvpY3VTE7S4YcoloWdLMTAykWLe0GPEGKVBIL5n3Y8kjFi+MMsZOr3S3lQD0k4SrWuv+4/UbI15xeLthtigfKvIa8XYnFCxNDTKnZUD4xtXplGy3XQBHOZXnGH922sUgwV+Uc3DK+cdbPeag9pU9bTZdN0Gd+me+zJ/v066c5j34Kq3tEn4VMOhohyLPtSDZcUjeHewNPiOLbJCnyeqdfpbLtHs12aihnU7Jgxgis5XupLYUiCVNwC/zcAAdGjOpFcs8h5nxkyeko+0FOu+F9X99nd46OTIyGgBVLPm1zDqk4VR4UH+0YIpP6e60ddmtg+shn50ZpRQydEmAwKm20dDHcUWNulV11mMpi78uojPX1mMnuUdp2KhVYfQK7qjf0lmUymNoD6egLZZeavybRMLRUVW91nfwI84hnu0PW7jf/TmFvR3CbO3sqzK1KVc/7Veb4wYdabjkbYJqFvvAEYKqRly10XS3yYM7OoEXS5B3dXf1QUlwEkt8hDnudPA1dQfK9zxIvLTimapVoBOTJ3mK0yZG1JHCVU/SKg/g9iEy/pFi4ybl7AD/LbD9IMTNVX/1CP3mj7dcNQeYV7HtCJLO23Qix41GtH0Dt/ynKx/v2Ootd3THUUnafq4j8eGT3cMDF3Pdj7b53Utfyz+rG48h2yzD4Xajxnf/v1Oh/KsZa3n8m4db1GZmBR5zFkb+N0wC0QY98oe5D0dch2oL4IB7+DZmK92b8mItV5+AI/I4vywnUJrpYS2/1LSkCf1TT7hC3v0+GnD2Q1fKI+nPrfg1c4IdphStGHtxmHpIIasvalBXpAafe9ekHEet/OClHN4ey/IwPDVC/pEcuz93x4eqhekeGtbOTfmNXyio9pR1DvoRsALg78IzryLz19s7R/FWSPOus6ZbPcFlTgHdH1NZZvvprQC6UG2wKpQmaPR81EdzN+BbcDtKL+GdoDFMLK1ncUYgOiGxqPJSgyitNlUf1Tk4XxM5FZE7cJpK0oebeTERM6zTkfdAWWDfFUN7T0wbhvRjci9ppoorp8iuU4AmQlSCqOs6xuGJunpWUCZj3UTj/Iq4RSX/sMCPciAIv8ARX3zf9h7AK8wbgAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.196Z", + "time": 53, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 53 + } + }, + { + "_id": "06e43b06c5889436306de832c9ef5b8e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/metrics" + }, + "response": { + "bodySize": 33, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 33, + "text": "{\"_id\":\"metrics\",\"enabled\":false}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "33" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.196Z", + "time": 88, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 88 + } + }, + { + "_id": "b383c6f86886873c85a44fc34ee9c862", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/passwordUpdate" + }, + "response": { + "bodySize": 415, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 415, + "text": "{\"_id\":\"notification/passwordUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"password\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.passwordUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your password has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "415" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.197Z", + "time": 77, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 77 + } + }, + { + "_id": "fe870654434ff77b9195e8510c2343c5", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 440, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notificationFactory" + }, + "response": { + "bodySize": 180, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 180, + "text": "{\"_id\":\"notificationFactory\",\"enabled\":{\"$bool\":\"&{openidm.notifications|false}\"},\"threadPool\":{\"maxPoolThreads\":2,\"maxQueueSize\":20000,\"steadyPoolThreads\":1,\"threadKeepAlive\":60}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "180" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.198Z", + "time": 48, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 48 + } + }, + { + "_id": "01b649998d9398654a57902d252545ba", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/profileUpdate" + }, + "response": { + "bodySize": 560, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 560, + "text": "{\"_id\":\"notification/profileUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"userName\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"preferences\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.profileUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your profile has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "560" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.198Z", + "time": 50, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 50 + } + }, + { + "_id": "00725d753c390a655105f030d582ccaa", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 427, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/policy" + }, + "response": { + "bodySize": 735, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 735, + "text": "[\"H4sIAAAAAAAA/w==\",\"zZVNb9swDIb/iy79gF1fh1wLFBiwQ7Edh2BgZcZlIEsuJbszgvz3UbabxF7mtOk29GTDpF4+/BC9UT8oVwtVOUO6VYmCPKdAzoK5I4NeLb4vE7WS153TzdqLH6N3NevOY6M0GF0bCJjfs6uQA0XDRvU+cpTxqSbGywuPZvUNuSGN91FOHC+ubgoMX7EgHxhi8L3I5ZXECm0VNQL+DNkaGvCaqQpqu6cQaxT2vXDGB1ri9pf4PIb3g4lIR1QdcEgBLZTRNzYj6ev8YqmAoexgV44fKM/R3j4CR6PK1HI7uLefYxs1WOtCqp0NQDbV4gg6oHhvlzHqEKYC758dz8QqyX5BW4RHtfg0DiEWKusyNb1ZdJejdMlKPBmfrJaks+uZZLvHlGAfaGhJ3ivsv8cEsaxC2xvmynN9Zn2C6DsGc+tsHCNJyc+ANmAoT1/ORPHdoZGqGPq7dVLrqUZuU7l1gjbpHFMjl7HA34F2hYhT2eUPzNBOSzDQxskd1++/NGnHJiUiW8zBjQdWRu3DjEpypGW7xqQd64getOxJf2egmBujs0v5qjZPLQdMqXtYow5T5jipr+c9A2vUYOSSvH9TyH9dokOmEexwMU9fwGHIE2VrY94afroEjh7vEktJlo+fWcXsDM6u4o+28MZ5lGChwPx0Gv0gn0bHBm1I+7/1kboJ94qKbAirovVPf/pfNQjUdkAJAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.199Z", + "time": 57, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 57 + } + }, + { + "_id": "47768b99c96433fcc0faa9554a4e372e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 431, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privileges" + }, + "response": { + "bodySize": 919, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 919, + "text": "[\"H4sIAAAAAAAA/w==\",\"7VhNj9owEP0raU6tBErP3KKFSkjtstrtx6G7ikw8CVYdO7UdEIv4750EliwsaWarVkKVTxDr+WViP7+Z8SZMBA9HYWnEUkjIwYaD5w+j75uQpSlY+0GyfP/snBHzygHOU6wAnGGA8ZmS63CUMWlhOzhGcbCpEaUTWvWD9UqBsUc4Z6oXMMYLoWw/XQHF/JTvLLBkBpTrx6ULITlCqYzTMfFjKMAdZUyFN2tJ5511wh8GKIN6/2oJ4EMmpAODE6OnVwTwM7gPNxvU03Z7HwbaBNEx6wkCX9KoZx/lcClgNaxKzhwMOUjAH23yRo/MLeqdZIrlwCMcZUo8sr2cSjCFsHYfW/h1OvmGo19uxvHnCf4ZTz5O8M9D88VeyV7JnUrezQxKc6rMFCn+UI1Xt5OYor7KgrkmKbBk1q604f3IXCxB0UgtQQMFE/IvHxBcEV0pd+eYqwi6dugK5UIruK7qk0BYK20dkzFHkVsCfyrcmkp6pTlhXZvPMwRSpHRwY/RSqJTAa7QEimM0GiUsFKvc4vGWRmqg1MYRgJBlgCdtCUTiAz7G85OrAg8jYZZk1t2tVdqP/DFnU5Vpwg4byAC9IKVEneJJx0iBf2JlKVRONvJZNjM5YWtqhyRiG7t6iT1nk89ieKVNHs/cJfUkQRvEvJ6UkqWw0JKDSRJSjt9lvyFTfNgmuBOPrd2xM9PvE/wh5Xuv9V7rvdZ77X/mtdF7rEwDtMkgasNsB9+8jdqIcPBdRxF7aDZIFkstXy+qeereAt87/ave6Sn07luA+DyilWlD4W8BvJAv7RJgJ0x/CeALU1+Y+sL0kgrTTo+8zDuAzgzvG3/vr95fvb96f/1d348tfhtn3eL3Nf5HhesrPfZQsz5sfwGv8MZVJCAAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.200Z", + "time": 70, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 70 + } + }, + { + "_id": "3b7ebd7cf01869d6ce8cf4a5c9da9642", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 441, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privilegeAssignments" + }, + "response": { + "bodySize": 493, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 493, + "text": "{\"_id\":\"privilegeAssignments\",\"privilegeAssignments\":[{\"name\":\"ownerPrivileges\",\"privileges\":[\"owner-view-update-delete-orgs\",\"owner-create-orgs\",\"owner-view-update-delete-admins-and-members\",\"owner-create-admins\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"ownerOfOrg\"},{\"name\":\"adminPrivileges\",\"privileges\":[\"admin-view-update-delete-orgs\",\"admin-create-orgs\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"adminOfOrg\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "493" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.200Z", + "time": 186, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 186 + } + }, + { + "_id": "bc1b98e58c7b710a4bc8518787bef019", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.ds" + }, + "response": { + "bodySize": 4251, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 4251, + "text": "[\"H4sIAAAAAAAA/w==\",\"7Vxtc9s2Ev4rGU7nPtyJcS5tOklm/CGWnCZNnLiW3bu5NJOBSEhCTIEMCNpWPP7v3cULCUkgRUqyfHPXfIlMLJ5d7BsWL+Rt8IXFwctA0Cx9HOdBL4jS2Yxw+PnyNohpQiUNZyTLGJ+ECeOX6vmXbwUV89cskVRA5wNsOJ9n9BH99uiP4Idb0+HujwAA04wKIlnKgXJw/P74/Di461loScSEypDFeThORShohHSrHFTD29gyMH/WMwAOdDaicUxhdGOS5LQXJDHJ+innNELi1ySSqWBUDWjEeIz/R2XzaZomQ/adBi+fPek5z4c0KgSTc+CVg/Dy/P0QRJhS+HlEiXzLQeArkgxRQFTiz0+c1nM2o2khT1iSsJLin0/gXy/IBJsRMX8PQg4Bggpo+nQbTNNccjIDOXCcPP4ajkUap2FMrx5HCclzFj0Gk4EMWSpk8PLpj89f3H3uBbmCXwH8DIoRaSpxsKSQU8oli4zyboOczbKEWoUMUKEFiw9JPGMcOODDU2B5nQqlrR8iMc9kij8lWB+ob0INEVKu2hC3F4A+CoUasWyq7PnqeHjQP+ofnL7rD5+dkjgGbwHCmEgCrcmvB0c/n7+gL/qDd2/6H56f31wOfpocHgIFu4L241hQ8f36+OLi8s0vz54/jd4Prp9dq/ZLOtdW+/FpL5iRCHnJ+Yvxvy9k8lNGb35J3nyM/tE/0mhZIbI0R8FZPAM18jGbPF4QPScJ6Co4ens+fJfwU3r+7DKJiuP/jPjku+YIXjBK6NvYGAiAwnw+A/uMSQF97/AfyM1h4Ey+FmCql9rd8PGM3FQe+UpKOsskmOkZGInmaSEieqJDSUejgnSf8HPokRCp3KM4nFAOXKJeHB0aWexP12/wmXEd9RNEwnC5yRIWMRc+Sooc3JnGKtx0qDKTGZY415B2lwTCefQV9NHHxxicn9AFP6pn0DgWIWpYcQlLpueK31sQ7TMGEiYEaSJbpbfbgOVn9FvBBKYDKQqTDUDjgo0KNQjgAvjGj00g9IJrMBoZsURHfCQgiOlHnsxRYyYJIfwy2IKYHmDoLUuZ1/WvKEuYrzl4p3KsONdue0Bs999ttC3YKOKHNnQfAQWDUEtF3oPHur9P8ZCUo/EkzEy/8Mr2w1DVbSXXUAW5j3Zzk0S8o0WiKY0uh8UoBww+8WrWyK0ow7wi9ViIcoxsr30NiqXwdP5KrohSZUN3pAmV//sQZkRGU6cXauwE4p8pA9cqzWCr3pV5vAwYL3X1nvKJnDbICsSVusJEk/vcmubyjOJsQxfmivXWNowQABxfI5T+tMpqwfmjKREwn1MxpHJfrl/yDHOoYB7W8UmSpNcXXOfSMaNx3wqXd1K+wgkLB6gaptdJlxXfxUUXFPjfGICM953hNQFhdCwMxwO44LAxU1M+1Gf7cteK40MnaZLTIeU5k+yKmgGa+rO1nyIGqNmA2HHoks3jo7ucFSo9wuqEdpLaMcGYJd6c/PAu/78yJWh5jsBR4n2FmGYZjogr5sME2UP7EbmxCl7vRuSmUla9F4G3tYcEz1wLueAtlvo0xUUQXV3juC5jibo5TIa95k7pvLD8ts179BGznrTDGoKLkgkdQhKc1Zeb7ZOdRq/Gn2v8MNcMmr3m1YS2dRnA9IHZ9qUKuqX0FXpTBW2p3jAc3LyfFlw2iF2CTjV9GKkOHuAqZ3SsqbzpqcnxBc3QJ5YKxn1kS8vZqTD/3yqTh8/S/ZTnNCpQ1iqrth4sxmFUIbRLtfCQJQT3UPc6OVds/5qgF2bTARuPqaA86pYhF+bYuMJoNn7B2beC7j/ZaL5/pZoH9LcLj+k7eduKDdf5Wk7FgI4Zp/HvTMiCJAu1wLLbGZpHJVE7r0MuWOwgm/BKYyxUDYZutWmf+0O287nq1GVHqNzgVfw8psVsOuBdCxXsFcb+9TqoHGpheUSn5IrpGqguBAxpOLK0za7fetgNwTA2h5Ldxmt6efAmIi0yrcCavoqiRlkLodl6eM3BCgGUNZXfut1fthY7WDpoGG9wMzxf5SQ5EGmyGsVpcYjP8x78sJQ7OYIy5zEWM1Tc9xm/sFb8foIn2jZvevRrhJl/0MfFqs8ZqiOojhNPCZZ4UPlxWDbFKkVWopgtljNq53IdjDGzU1PNMVVF49svo3kkWFYH4TZ7euuj71rOqtm3MBPsiiV0Quu1VYNY9lw+bMN9rFkGS9gEa2YpCDhDZ3QLoapmi+E51SvdXBnI4+b4fPdu7jlpLV1eSbLP49Vyn6/e/KtbgZUK8U6KT3PqEst9aUsx3aeSxkzksvEMGkUKLZknVLD9NyhM8LTHO9W6ON9KwhokW180gdQVEvrKyvrBlHTeGSJJo0vvFQXVcG+GB/C9Gp6nMW1WFUgUIpXv+sGdvb5wAINKI5+6VANmGEW3id4gOTM+GUKak3RizrnqLjkobvqnK2+UMMrlgH9QUDjuuqm5QtnCDC0kcutAzvIpXulad4NDQ2l6yfwzFstfQZad52ztfRCNxnJi6b07O+UlnvVQltgXkqpoODPFQz9NEn1VqR2w7mVLj6jqXXsdZlNOuncbTjioYmT5KGWDh+lj2HUOWzS7pmWvKim8uKNl0/BVv0q45TA8KCVpfQdK9dPddpt9sOhsbwAlQUhqrUtmIzYp0iLXN7X0UFrcfXLBLYS2tdYQi/03d24iWltx1uBXfe49OttOucsiYr/GGXhXYT+jeU78JzA1otke9WADKglLukPGup+vyJ+SvIuMmt4D1PIinwPVMC3kTBako+9VfWpzsA2ZLqiLHR80vUPUyqJLuJsOtTPFBvpY6viwk5AlM4t134ThzFNnaSFVYH+6hSRPx+wG+pQTS1W3uZNJeUneTCt3ePc7n/Po4FtBPTdEodRTDVjzIdl9lcqIrSXYZ72Mt5Lpjfd0dlmu0NKu7ABoyAGRTWnHwVHkMam5frk2WVdIDbma02uj4TZAQJ1aeywNbu2KwkGpWVZYBzijV61wKmofVBJ3GBhQ1w1MdInnCrFdYrNULTVnyWvmDtnWtTSlDwJIXrUfJP6qK9tUeWpeKVh9K+Dg774MYho3yR1oLt/mokYMlTU11W/4btCxqoTk/AQvOoNoZ0WiymuY499OeCror5ZSUfQ1TJmM2mQqyxpog8/mYIJ5X7zQLRu9dzFm/o1sfL4RIJvpN4FWIXXLFqB+m28Da/c5eSqhqq3eRFrm4bZvu+1Z42gui229raWDLYx6ZTbU9QT+WtrZ/+L222J3f2WneUbx/Sv/bjO23ZPm96Nsk8l0NLfXtdLJVirGcZnLbz7lOs0bxZAVxRubpnErYHw+4TPKvUmlau1tw6/WOQxiWPHZk7+sMl51mzanY47gjQdls47HeyXsVud76rx0pzzV2eiakLC0qZgQzr7Xpn23/X7dy+W0ZwdbUMKKi6mXb9tbCKk/jj+KyVaHvlOWxPBXW64ZEVRdZK3huDDCRs4dg0CTbz3eNafMXh+pO3pOr3mHASjqreU3+u84gtJq5tXzd3ReLq07GtIb3E1XNO43mJHDtkF8orHOdDbrEs/+yyFu7ux4a2BhWIs5uL3pnGnMZ7jOoSe2u1niOkrTJYf7dRR1eW83jnKhB9zFUWquVNgqfMkKzlcs1o3I1KzrnWO1+vf7xtKKY0P/VbItr106CLmwXPIL6sx/Gwq5kCLtly92mCF7u8gETk2pw3a3qcC5OraNqRWMyhNLN+eWhFXX4eqMvlxOuhlLMfNdxewSKwakiwKXk9tKFt2dB25g3hYu6JQduxBSwe1aRnu56/gmY/r7PnV3LbLrZaJ1ZwOCkhhPBgYsj4iI/wWN4OsO0/ckl/0p4SBrA1eXYmOW+Okl0ZAKlkve0l/vac3XJmjs5N/e4LVhXN6BgHFOoHNeboKv1I0rVBttawia6MlnyjLvRbEFgh0WHS7utkXHmYPVsupw2avtbHwRMwY23tqrbNxIx2Vv/67UduAF86MWbDO4DE/ovJ5gmjaANUe88il+futjVpZNs6socl0DSi698sPkcKHYneoXgV+qI0sIG11ky0LwD0WSvE7FCQNWfHLqVI06ciE0TwDf+fMUqjqkvqInaczGc6dpWIykoHSgvsNmZkx9CdN83+xWHU2od/TORZFLXecK/dWD4G+3+MksxiEOk+RxzMTdge16IJEctzQx4r0g9hWvFmAKJ9NvKnix9JXT4Nd3+CE26TRg5DF1kPUnYFalveZOAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.201Z", + "time": 79, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 79 + } + }, + { + "_id": "f72fc2cc21d104762b3c16db0f0db1bc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/process/access" + }, + "response": { + "bodySize": 246, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 246, + "text": "{\"_id\":\"process/access\",\"workflowAccess\":[{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-authorized\"}},{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-admin\"}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "246" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.201Z", + "time": 80, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 80 + } + }, + { + "_id": "bd5d9cbc1b0e2e075e3f77bb51e59736", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 430, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.init" + }, + "response": { + "bodySize": 789, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 789, + "text": "{\"_id\":\"repo.init\",\"insert\":{\"internal/role\":[{\"description\":\"Administrative access\",\"id\":\"openidm-admin\",\"name\":\"openidm-admin\"},{\"description\":\"Basic minimum user\",\"id\":\"openidm-authorized\",\"name\":\"openidm-authorized\"},{\"description\":\"Anonymous access\",\"id\":\"openidm-reg\",\"name\":\"openidm-reg\"},{\"description\":\"Authenticated via certificate\",\"id\":\"openidm-cert\",\"name\":\"openidm-cert\"},{\"description\":\"Allowed to reassign workflow tasks\",\"id\":\"openidm-tasks-manager\",\"name\":\"openidm-tasks-manager\"},{\"description\":\"Platform provisioning access\",\"id\":\"platform-provisioning\",\"name\":\"platform-provisioning\"}],\"internal/user\":[{\"id\":\"openidm-admin\",\"password\":\"&{openidm.admin.password}\"},{\"id\":\"anonymous\",\"password\":\"anonymous\"},{\"id\":\"idm-provisioning\"},{\"id\":\"connector-server-client\"}]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "789" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.202Z", + "time": 49, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 49 + } + }, + { + "_id": "9f231197089ead48083fbb1440010a11", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 427, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/router" + }, + "response": { + "bodySize": 619, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 619, + "text": "{\"_id\":\"router\",\"filters\":[{\"methods\":[\"create\",\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"},{\"methods\":[\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^config/managed$\"},{\"condition\":{\"source\":\"(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0)\",\"type\":\"text/javascript\"},\"onResponse\":{\"source\":\"require('relationshipFilter').filterResponse()\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "619" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.203Z", + "time": 58, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 58 + } + }, + { + "_id": "ab8521e6a907278952a8693cbcfb761e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_activate" + }, + "response": { + "bodySize": 838, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 838, + "text": "{\"_id\":\"schedule/taskscan_activate\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/activeDate le \\\"${Time.nowWithOffset}\\\") AND (!(/inactiveDate pr) or /inactiveDate ge \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/activateAccount/task-completed\",\"started\":\"/activateAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"active\\\" }];\\n\\nlogger.debug(\\\"Performing Activate Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "838" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.206Z", + "time": 63, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 63 + } + }, + { + "_id": "42626b5d9ae06814ca0230b793cb2d1f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_expire" + }, + "response": { + "bodySize": 830, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 830, + "text": "{\"_id\":\"schedule/taskscan_expire\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/inactiveDate lt \\\"${Time.nowWithOffset}\\\") AND (!(/activeDate pr) or /activeDate le \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/expireAccount/task-completed\",\"started\":\"/expireAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"inactive\\\" }];\\n\\nlogger.debug(\\\"Performing Expire Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "830" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.206Z", + "time": 67, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 67 + } + }, + { + "_id": "0b8355f1ac5870bd599a7d814921a98f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 427, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/script" + }, + "response": { + "bodySize": 939, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 939, + "text": "{\"_id\":\"script\",\"ECMAScript\":{\"javascript.optimization.level\":9,\"javascript.recompile.minimumInterval\":60000},\"Groovy\":{\"#groovy.disabled.global.ast.transformations\":\"\",\"#groovy.errors.tolerance\":10,\"#groovy.output.debug\":false,\"#groovy.output.verbose\":false,\"#groovy.script.base\":\"#any class extends groovy.lang.Script\",\"#groovy.script.extension\":\".groovy\",\"#groovy.target.bytecode\":\"1.8\",\"#groovy.target.directory\":\"&{idm.data.dir}/classes\",\"#groovy.target.indy\":true,\"#groovy.warnings\":\"likely errors #othere values [none,likely,possible,paranoia]\",\"groovy.classpath\":\"&{idm.install.dir}/lib\",\"groovy.recompile\":true,\"groovy.recompile.minimumInterval\":60000,\"groovy.source.encoding\":\"UTF-8\"},\"properties\":{},\"sources\":{\"default\":{\"directory\":\"&{idm.install.dir}/bin/defaults/script\"},\"install\":{\"directory\":\"&{idm.install.dir}\"},\"project\":{\"directory\":\"&{idm.instance.dir}\"},\"project-script\":{\"directory\":\"&{idm.instance.dir}/script\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "939" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.207Z", + "time": 31, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 31 + } + }, + { + "_id": "5fb111d428ad18346dc15d5fa8e1e840", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 430, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/scheduler" + }, + "response": { + "bodySize": 156, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 156, + "text": "{\"_id\":\"scheduler\",\"scheduler\":{\"executePersistentSchedules\":{\"$bool\":\"&{openidm.scheduler.execute.persistent.schedules}\"}},\"threadPool\":{\"threadCount\":10}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "156" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.207Z", + "time": 41, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 41 + } + }, + { + "_id": "372152e7418e4bbb7f1bb2fd5327ca2f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/secrets" + }, + "response": { + "bodySize": 1829, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1829, + "text": "{\"_id\":\"secrets\",\"stores\":[{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}\",\"mappings\":[{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.default\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.config.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.password.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"],\"secretId\":\"idm.jwt.session.module.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}\"],\"secretId\":\"idm.jwt.session.module.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"selfservice\"],\"secretId\":\"idm.selfservice.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}\"],\"secretId\":\"idm.selfservice.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.assignment.attribute.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]}],\"providerName\":\"&{openidm.keystore.provider|SunJCE}\",\"storePassword\":\"&{openidm.keystore.password|changeit}\",\"storetype\":\"&{openidm.keystore.type|JCEKS}\"},\"name\":\"mainKeyStore\"},{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.truststore.location|&{idm.install.dir}/security/truststore}\",\"mappings\":[],\"providerName\":\"&{openidm.truststore.provider|SUN}\",\"storePassword\":\"&{openidm.truststore.password|changeit}\",\"storetype\":\"&{openidm.truststore.type|JKS}\"},\"name\":\"mainTrustStore\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1829" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.208Z", + "time": 36, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 36 + } + }, + { + "_id": "31ff64d3e984c38b0c14569db37889ad", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 436, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.kba" + }, + "response": { + "bodySize": 290, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 290, + "text": "{\"_id\":\"selfservice.kba\",\"kbaPropertyName\":\"kbaInfo\",\"minimumAnswersToDefine\":2,\"minimumAnswersToVerify\":1,\"questions\":{\"1\":{\"en\":\"What's your favorite color?\",\"en_GB\":\"What is your favourite colour?\",\"fr\":\"Quelle est votre couleur préférée?\"},\"2\":{\"en\":\"Who was your first employer?\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "290" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.208Z", + "time": 68, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 68 + } + }, + { + "_id": "84ee2e3e3f7cef3023dd7241ced2b77a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 438, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.terms" + }, + "response": { + "bodySize": 730, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 730, + "text": "{\"_id\":\"selfservice.terms\",\"active\":\"0.0\",\"uiConfig\":{\"buttonText\":\"Accept\",\"displayName\":\"We've updated our terms\",\"purpose\":\"You must accept the updated terms in order to proceed.\"},\"versions\":[{\"createDate\":\"2019-10-28T04:20:11.320Z\",\"termsTranslations\":{\"en\":\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"},\"version\":\"0.0\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "730" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.209Z", + "time": 34, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 34 + } + }, + { + "_id": "b45a1aa28d4bff434764448f028e4059", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 444, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.propertymap" + }, + "response": { + "bodySize": 713, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 713, + "text": "{\"_id\":\"selfservice.propertymap\",\"properties\":[{\"source\":\"givenName\",\"target\":\"givenName\"},{\"source\":\"familyName\",\"target\":\"sn\"},{\"source\":\"email\",\"target\":\"mail\"},{\"condition\":\"/object/postalAddress pr\",\"source\":\"postalAddress\",\"target\":\"postalAddress\"},{\"condition\":\"/object/addressLocality pr\",\"source\":\"addressLocality\",\"target\":\"city\"},{\"condition\":\"/object/addressRegion pr\",\"source\":\"addressRegion\",\"target\":\"stateProvince\"},{\"condition\":\"/object/postalCode pr\",\"source\":\"postalCode\",\"target\":\"postalCode\"},{\"condition\":\"/object/country pr\",\"source\":\"country\",\"target\":\"country\"},{\"condition\":\"/object/phone pr\",\"source\":\"phone\",\"target\":\"telephoneNumber\"},{\"source\":\"username\",\"target\":\"userName\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "713" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.209Z", + "time": 71, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 71 + } + }, + { + "_id": "6cbf25336f75bed9003dbd20bd94c130", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 439, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/cors" + }, + "response": { + "bodySize": 402, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 402, + "text": "{\"_id\":\"servletfilter/cors\",\"filterClass\":\"org.eclipse.jetty.ee10.servlets.CrossOriginFilter\",\"initParams\":{\"allowCredentials\":true,\"allowedHeaders\":\"accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with\",\"allowedMethods\":\"GET,POST,PUT,DELETE,PATCH\",\"allowedOrigins\":\"https://localhost:&{openidm.port.https}\",\"chainPreflight\":false},\"urlPatterns\":[\"/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "402" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.210Z", + "time": 58, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 58 + } + }, + { + "_id": "4734d7816408991b39320106367532a9", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/payload" + }, + "response": { + "bodySize": 191, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 191, + "text": "{\"_id\":\"servletfilter/payload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":5},\"urlPatterns\":[\"&{openidm.servlet.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "191" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.210Z", + "time": 75, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 75 + } + }, + { + "_id": "479d6a831987c6fbbdfccaa366e89114", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 441, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/upload" + }, + "response": { + "bodySize": 198, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 198, + "text": "{\"_id\":\"servletfilter/upload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":50},\"urlPatterns\":[\"&{openidm.servlet.upload.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "198" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.211Z", + "time": 56, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 56 + } + }, + { + "_id": "05bacc81732e6f86cfe0b782cdde4f67", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/api" + }, + "response": { + "bodySize": 205, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 205, + "text": "{\"_id\":\"ui.context/api\",\"authEnabled\":true,\"cacheEnabled\":false,\"defaultDir\":\"&{idm.install.dir}/ui/api/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/api/extension\",\"urlContextRoot\":\"/api\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "205" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.212Z", + "time": 28, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 28 + } + }, + { + "_id": "c6aed7f604cb532801a9b95de9922a3c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 437, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/admin" + }, + "response": { + "bodySize": 244, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 244, + "text": "{\"_id\":\"ui.context/admin\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/admin/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/admin/extension\",\"responseHeaders\":{\"X-Frame-Options\":\"SAMEORIGIN\"},\"urlContextRoot\":\"/admin\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "244" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.212Z", + "time": 33, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 33 + } + }, + { + "_id": "17421c1d759655006a294261cc77fd75", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 439, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/enduser" + }, + "response": { + "bodySize": 174, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 174, + "text": "{\"_id\":\"ui.context/enduser\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/enduser\",\"enabled\":true,\"responseHeaders\":{\"X-Frame-Options\":\"DENY\"},\"urlContextRoot\":\"/\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "174" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.213Z", + "time": 172, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 172 + } + }, + { + "_id": "61e2740b542f064697798e2a02431f03", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 437, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/oauth" + }, + "response": { + "bodySize": 199, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 199, + "text": "{\"_id\":\"ui.context/oauth\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/oauth/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/oauth/extension\",\"urlContextRoot\":\"/oauthReturn\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "199" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.214Z", + "time": 61, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 61 + } + }, + { + "_id": "eadbb4ad948866a207831ff04c796efb", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 437, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/configuration" + }, + "response": { + "bodySize": 588, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 588, + "text": "{\"_id\":\"ui/configuration\",\"configuration\":{\"defaultNotificationType\":\"info\",\"forgotUsername\":false,\"lang\":\"en\",\"notificationTypes\":{\"error\":{\"iconPath\":\"images/notifications/error.png\",\"name\":\"common.notification.types.error\"},\"info\":{\"iconPath\":\"images/notifications/info.png\",\"name\":\"common.notification.types.info\"},\"warning\":{\"iconPath\":\"images/notifications/warning.png\",\"name\":\"common.notification.types.warning\"}},\"passwordReset\":false,\"passwordResetLink\":\"\",\"roles\":{\"internal/role/openidm-admin\":\"ui-admin\",\"internal/role/openidm-authorized\":\"ui-user\"},\"selfRegistration\":false}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "588" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.214Z", + "time": 62, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 62 + } + }, + { + "_id": "fb55717b678608c3e9704a46f637ba00", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 431, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/profile" + }, + "response": { + "bodySize": 891, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 891, + "text": "{\"_id\":\"ui/profile\",\"tabs\":[{\"name\":\"personalInfoTab\",\"view\":\"org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab\"},{\"name\":\"signInAndSecurity\",\"view\":\"org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab\"},{\"name\":\"preference\",\"view\":\"org/forgerock/openidm/ui/user/profile/PreferencesTab\"},{\"name\":\"trustedDevice\",\"view\":\"org/forgerock/openidm/ui/user/profile/TrustedDevicesTab\"},{\"name\":\"oauthApplication\",\"view\":\"org/forgerock/openidm/ui/user/profile/OauthApplicationsTab\"},{\"name\":\"privacyAndConsent\",\"view\":\"org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab\"},{\"name\":\"sharing\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/SharingTab\"},{\"name\":\"auditHistory\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/ActivityTab\"},{\"name\":\"accountControls\",\"view\":\"org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "891" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.215Z", + "time": 43, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 43 + } + }, + { + "_id": "dccde179c43e59ffe92f719da481c2cf", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 433, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/dashboard" + }, + "response": { + "bodySize": 1031, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1031, + "text": "[\"H4sIAAAAAAAA/w==\",\"rVbbbtpAEP0VtHk1spNQpeWtTVq1UlKlSao+RFE17A72ivWus5eQi/j3ztqAMRBIqyKBzM6eM7czAy/stxRsyIJMBbhiZMAKljAQpdRniwPHhrcvTLozHENQng29DZgwDSUS9EeQfNK79mA9IadS5OgbBF9iC4tjunrAjdbIvbEuBSFSui/piCxj6AvwMAKHbMn8UYje6QLBZknLU0JVSZ1vkpCB3naCtqU5tQgeexcNpsNj0ZlgOaYlaMhRpNYoTJV0vkvLC+STvrsPYLFvWuqLGta7IpRbC7Dh2wiQclTouzme4YPk2ME7VGOHNp6ngR4s5hSUBS+N7hLmCKu5Gj2WebAU0wriVeoKnJsaK6gO6N/GezmHkAPC7K5mjHxLNePxRg1/0qFbC9R7apjbBW7jun5yHsveJYHRouaxIXcJc/I53lNg86gs/1TFr/dRs41kZ3fR54q4x6Bcq+457YXRkkQY9dPVuMIctbgCTfTDF1Ya7QsyvMuy5Ch+0DujMKaIEzo+zJLjLPlAtpMseX8YLU+xztFCr2RQf9bPDZ7As4SV8Dj3wA6OBoOjY05R0IQuD0eZGPA4uNvThSBk06rtdq4CZWmpID64HfdcXYyvCMoXX4JS9dURWF7ESsb2qHp+t6MVOH+FsZF7an411xFJrDIbW4X0SwsB49YC7uUDNspZen3suxIotjY7EzRl1+TVguOou886zqP4e3Tjermd3ux/a2UWg3NOo7KvOJ+Ckxqd216c3EJV3DSsNCyVxH7TnIRV1jxIEUs1vGWxZpEwXYwzu3s9ASdz/U27pasb6VU9G3Tej4YY8JpnUsXS82u8i+1Tb5JN+u6m2epFUSn+Q4Iap6vrcjOU7zjtdW+sNHOFTpb4bHS9CQrqKEXCspNmVoPH+msWlxfmEOXT/JLO2kIbLkGdm1zqdb01pn+WK23kAGo9yb0ku6XoEOia86v/HDqT+iaxU19aAircfoZfqLihCAg8+wMKiFQxwQgAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.215Z", + "time": 57, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 57 + } + }, + { + "_id": "3467e6eff41c0252746cc812803f797c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 430, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver" + }, + "response": { + "bodySize": 169, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 169, + "text": "{\"_id\":\"webserver\",\"gzip\":{\"enabled\":true,\"includedMethods\":[\"GET\"]},\"maxThreads\":{\"$int\":\"&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "169" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.216Z", + "time": 65, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 65 + } + }, + { + "_id": "2cf6006aa7d3908fe4bd8d43fcbca10d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/themeconfig" + }, + "response": { + "bodySize": 421, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 421, + "text": "{\"_id\":\"ui/themeconfig\",\"icon\":\"favicon.ico\",\"path\":\"\",\"settings\":{\"footer\":{\"mailto\":\"info@pingidentity.com\"},\"loginLogo\":{\"alt\":\"Ping Identity\",\"height\":\"120px\",\"src\":\"images/login-logo-dark.png\",\"title\":\"Ping Identity\",\"width\":\"120px\"},\"logo\":{\"alt\":\"Ping Identity\",\"src\":\"images/logo-horizontal-white.png\",\"title\":\"Ping Identity\"}},\"stylesheets\":[\"css/bootstrap-3.4.1-custom.css\",\"css/structure.css\",\"css/theme.css\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "421" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.216Z", + "time": 169, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 169 + } + }, + { + "_id": "8c44f974db12734398c806d9a1cbcd18", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/https" + }, + "response": { + "bodySize": 217, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 217, + "text": "{\"_id\":\"webserver.listener/https\",\"enabled\":{\"$bool\":\"&{openidm.https.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.https|8443}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "217" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.217Z", + "time": 50, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 50 + } + }, + { + "_id": "7415ea0af3a4981f3e3feddab0df5329", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" }, { - "name": "via", - "value": "1.1 google" + "name": "x-openidm-username", + "value": "openidm-admin" }, { - "name": "alt-svc", - "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 444, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/http" + }, + "response": { + "bodySize": 128, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 128, + "text": "{\"_id\":\"webserver.listener/http\",\"enabled\":{\"$bool\":\"&{openidm.http.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.http|8080}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "128" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.217Z", + "time": 65, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 65 + } + }, + { + "_id": "b400d9fa8acbf142278ba15f3b31ee91", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 450, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/mutualAuth" + }, + "response": { + "bodySize": 250, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 250, + "text": "{\"_id\":\"webserver.listener/mutualAuth\",\"enabled\":{\"$bool\":\"&{openidm.mutualauth.enabled|true}\"},\"mutualAuth\":true,\"port\":{\"$int\":\"&{openidm.port.mutualauth|8444}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "250" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:21:01.218Z", + "time": 56, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 56 + } + }, + { + "_id": "1c44d5ed6a798188a1711859e5a9fceb", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ba166336-d64b-40e2-83a0-3dd7d628f7c2" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 534, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "1000" + }, + { + "name": "_fields", + "value": "condition,description,name,privileges,temporalConstraints" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role?_queryFilter=true&_pageSize=1000&_fields=condition%2Cdescription%2Cname%2Cprivileges%2CtemporalConstraints" + }, + "response": { + "bodySize": 1363, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1363, + "text": "{\"result\":[{\"_id\":\"openidm-admin\",\"_rev\":\"d58a3526-b2f3-40b9-8d59-b1e1515ff88c-13257\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-admin\",\"description\":\"Administrative access\",\"temporalConstraints\":[]},{\"_id\":\"openidm-authorized\",\"_rev\":\"d58a3526-b2f3-40b9-8d59-b1e1515ff88c-13258\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-authorized\",\"description\":\"Basic minimum user\",\"temporalConstraints\":[]},{\"_id\":\"openidm-reg\",\"_rev\":\"d58a3526-b2f3-40b9-8d59-b1e1515ff88c-13260\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-reg\",\"description\":\"Anonymous access\",\"temporalConstraints\":[]},{\"_id\":\"openidm-cert\",\"_rev\":\"d58a3526-b2f3-40b9-8d59-b1e1515ff88c-13259\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-cert\",\"description\":\"Authenticated via certificate\",\"temporalConstraints\":[]},{\"_id\":\"openidm-tasks-manager\",\"_rev\":\"d58a3526-b2f3-40b9-8d59-b1e1515ff88c-13261\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-tasks-manager\",\"description\":\"Allowed to reassign workflow tasks\",\"temporalConstraints\":[]},{\"_id\":\"platform-provisioning\",\"_rev\":\"d58a3526-b2f3-40b9-8d59-b1e1515ff88c-13262\",\"privileges\":[],\"condition\":null,\"name\":\"platform-provisioning\",\"description\":\"Platform provisioning access\",\"temporalConstraints\":[]}],\"resultCount\":6,\"pagedResultsCookie\":null,\"totalPagedResultsPolicy\":\"NONE\",\"totalPagedResults\":-1,\"remainingPagedResults\":-1}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:21:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1363" } ], - "headersSize": 599, + "headersSize": 2221, "httpVersion": "HTTP/1.1", "redirectURL": "", "status": 200, "statusText": "OK" }, - "startedDateTime": "2023-10-15T03:29:01.762Z", - "time": 38, + "startedDateTime": "2025-05-06T22:21:01.391Z", + "time": 49, "timings": { "blocked": -1, "connect": -1, @@ -963,7 +8552,7 @@ "receive": 0, "send": 0, "ssl": -1, - "wait": 38 + "wait": 49 } } ], diff --git a/test/e2e/mocks/email_2324124615/template-export_3631781680/0_AD_m_4209801721/openidm_3290118515/recording.har b/test/e2e/mocks/email_2324124615/template-export_3631781680/0_AD_m_4209801721/openidm_3290118515/recording.har new file mode 100644 index 000000000..43d5334c3 --- /dev/null +++ b/test/e2e/mocks/email_2324124615/template-export_3631781680/0_AD_m_4209801721/openidm_3290118515/recording.har @@ -0,0 +1,354 @@ +{ + "log": { + "_recordingName": "email/template-export/0_AD_m/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "de3566e649dc89e93a6365b0fdaecd4e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e630dccb-dae7-46b8-89c9-3af12ac877ff" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 393, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/serverinfo/*" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:04:48 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:04:48.381Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "3f3b03432a833cfcbe27438276bb566b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e630dccb-dae7-46b8-89c9-3af12ac877ff" + }, + { + "name": "accept-api-version", + "value": "resource=2.0, protocol=1.0" + }, + { + "name": "x-openam-username", + "value": "openidm-admin" + }, + { + "name": "x-openam-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 507, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/realms/root/authenticate" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:04:48 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:04:48.396Z", + "time": 2, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 2 + } + }, + { + "_id": "778b519855abd745b38438bc349de829", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e630dccb-dae7-46b8-89c9-3af12ac877ff" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 461, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "_id sw 'emailTemplat'" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=_id%20sw%20%27emailTemplat%27" + }, + "response": { + "bodySize": 1099, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1099, + "text": "[\"H4sIAAAAAAAA/w==\",\"rVZtbhMxEL2KMT/yJ02ECn+isFIJ/RGpQBXaAqIIObuzianXXvyxJV2txDU4ASrXyE04CWPvJk1pA2kUKVJT2zNv5r1nT0qqwThhae9jST/zhPYoZIyLE8hywSx0U6UnylqQpwa0ZBnQNk0gZRhzpGImwEdIXATJxgIwgdUO2jTVKsMt3MjAGDbBc6U/2KP9qc1E1B+rZBaV5WOeEjX+ArHtOER4jQhV1c+jD8pp4hpMwg1pleWdc61Ov5tjEhAG/xumZKYc0RADLyAhdophoRvCJQGtlW6TXAAzQBJuNEyYTjpl2eUpQk6fRn1GphrS5+d0ieXZyeB0NKyqcxoNBI8vyBQ0EKuIUBMu+10W9bs+uBs6wu++PeoZ2LjZM2UxpVQZSVrOcsENUo/9g7Eb9P2Wk0I5Q1gBV9j9/KcjMVgCe6H1nGnfO6ZrkwIcFwJPScB1JEcSVJZrEqsst/BQLr46TMVjTnIvVqghVlLiWdDreKnQEDyDk1nunWPhmw0byJdxAWbpk4M4Vk5aMpTowYxZriTZW1piQfDKriEGyxDQdIOH7zBKq6p9v8/RDdxYHRLtwOL70Yl3H35mnpvV7LUlUUE8tBHTh0HHAjRPeVynEFxeLBm+8dp+NACUw9umCJYKkUmLSxNrnvvQB+AecfRHAqSYX69Ah+pvsDfXcxQ4AI3muySsFndR+kDPr3HHSZTMFcBco+G/9DJgj5kxl0onOxGsvtx4r0PqWre8AdictEVJTZb1QjXXJ1wd7J5LbjlDn4JeaKesZ9+XAJvjv1qJQvRawdX8QcXt9LtDy6Kh0Wr9V/fUv15Hlyf4Z6dCnvmbMmteftSzhthCy9PbgX+JuTlzTZ7b1K1l5BIEmn+3cxZnzLs6rSfkTQ5y+PJVhzxgyP5/vCHGC/RbAdJBeImXMNuNt60HR+iqeWDIFMfcGPAaxBoQdWnZuqZmUhRYN5r19/cf819hGS/M/Jo8QpE+tZtfSIPwXvWetWmOLCejsGgGSl1wLEg6IdrUKsvE8cr2scJHZYZwh+8PBif0nhMho/YOkFxObu/sPan+ALjZrOmgCQAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:04:48 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:04:48.405Z", + "time": 4, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 4 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/email_2324124615/template-export_3631781680/0_aD_m_3016648281/openidm_3290118515/recording.har b/test/e2e/mocks/email_2324124615/template-export_3631781680/0_aD_m_3016648281/openidm_3290118515/recording.har new file mode 100644 index 000000000..a953d9648 --- /dev/null +++ b/test/e2e/mocks/email_2324124615/template-export_3631781680/0_aD_m_3016648281/openidm_3290118515/recording.har @@ -0,0 +1,354 @@ +{ + "log": { + "_recordingName": "email/template-export/0_aD_m/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "de3566e649dc89e93a6365b0fdaecd4e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-816b6b4e-7d7e-4e9d-a232-e5d73a60444d" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 393, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/serverinfo/*" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:05:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:05:04.629Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "3f3b03432a833cfcbe27438276bb566b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-816b6b4e-7d7e-4e9d-a232-e5d73a60444d" + }, + { + "name": "accept-api-version", + "value": "resource=2.0, protocol=1.0" + }, + { + "name": "x-openam-username", + "value": "openidm-admin" + }, + { + "name": "x-openam-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 507, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/realms/root/authenticate" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:05:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:05:04.648Z", + "time": 3, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 3 + } + }, + { + "_id": "778b519855abd745b38438bc349de829", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-816b6b4e-7d7e-4e9d-a232-e5d73a60444d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 461, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "_id sw 'emailTemplat'" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=_id%20sw%20%27emailTemplat%27" + }, + "response": { + "bodySize": 1099, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1099, + "text": "[\"H4sIAAAAAAAA/w==\",\"rVZtbhMxEL2KMT/yJ02ECn+isFIJ/RGpQBXaAqIIObuzianXXvyxJV2txDU4ASrXyE04CWPvJk1pA2kUKVJT2zNv5r1nT0qqwThhae9jST/zhPYoZIyLE8hywSx0U6UnylqQpwa0ZBnQNk0gZRhzpGImwEdIXATJxgIwgdUO2jTVKsMt3MjAGDbBc6U/2KP9qc1E1B+rZBaV5WOeEjX+ArHtOER4jQhV1c+jD8pp4hpMwg1pleWdc61Ov5tjEhAG/xumZKYc0RADLyAhdophoRvCJQGtlW6TXAAzQBJuNEyYTjpl2eUpQk6fRn1GphrS5+d0ieXZyeB0NKyqcxoNBI8vyBQ0EKuIUBMu+10W9bs+uBs6wu++PeoZ2LjZM2UxpVQZSVrOcsENUo/9g7Eb9P2Wk0I5Q1gBV9j9/KcjMVgCe6H1nGnfO6ZrkwIcFwJPScB1JEcSVJZrEqsst/BQLr46TMVjTnIvVqghVlLiWdDreKnQEDyDk1nunWPhmw0byJdxAWbpk4M4Vk5aMpTowYxZriTZW1piQfDKriEGyxDQdIOH7zBKq6p9v8/RDdxYHRLtwOL70Yl3H35mnpvV7LUlUUE8tBHTh0HHAjRPeVynEFxeLBm+8dp+NACUw9umCJYKkUmLSxNrnvvQB+AecfRHAqSYX69Ah+pvsDfXcxQ4AI3muySsFndR+kDPr3HHSZTMFcBco+G/9DJgj5kxl0onOxGsvtx4r0PqWre8AdictEVJTZb1QjXXJ1wd7J5LbjlDn4JeaKesZ9+XAJvjv1qJQvRawdX8QcXt9LtDy6Kh0Wr9V/fUv15Hlyf4Z6dCnvmbMmteftSzhthCy9PbgX+JuTlzTZ7b1K1l5BIEmn+3cxZnzLs6rSfkTQ5y+PJVhzxgyP5/vCHGC/RbAdJBeImXMNuNt60HR+iqeWDIFMfcGPAaxBoQdWnZuqZmUhRYN5r19/cf819hGS/M/Jo8QpE+tZtfSIPwXvWetWmOLCejsGgGSl1wLEg6IdrUKsvE8cr2scJHZYZwh+8PBif0nhMho/YOkFxObu/sPan+ALjZrOmgCQAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:05:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:05:04.660Z", + "time": 3, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 3 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/email_2324124615/template-import_729844655/0_AD_m_4209801721/openidm_3290118515/recording.har b/test/e2e/mocks/email_2324124615/template-import_729844655/0_AD_m_4209801721/openidm_3290118515/recording.har new file mode 100644 index 000000000..243a5d869 --- /dev/null +++ b/test/e2e/mocks/email_2324124615/template-import_729844655/0_AD_m_4209801721/openidm_3290118515/recording.har @@ -0,0 +1,205 @@ +{ + "log": { + "_recordingName": "email/template-import/0_AD_m/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "de3566e649dc89e93a6365b0fdaecd4e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c2d4077e-8357-479d-958e-69245f95aa6c" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 393, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/serverinfo/*" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:36:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:36:22.408Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "3f3b03432a833cfcbe27438276bb566b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c2d4077e-8357-479d-958e-69245f95aa6c" + }, + { + "name": "accept-api-version", + "value": "resource=2.0, protocol=1.0" + }, + { + "name": "x-openam-username", + "value": "openidm-admin" + }, + { + "name": "x-openam-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 507, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/realms/root/authenticate" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:36:22 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:36:22.425Z", + "time": 4, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 4 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/email_2324124615/template-import_729844655/0_af_m_950605143/openidm_3290118515/recording.har b/test/e2e/mocks/email_2324124615/template-import_729844655/0_af_m_950605143/openidm_3290118515/recording.har new file mode 100644 index 000000000..69ba8f813 --- /dev/null +++ b/test/e2e/mocks/email_2324124615/template-import_729844655/0_af_m_950605143/openidm_3290118515/recording.har @@ -0,0 +1,945 @@ +{ + "log": { + "_recordingName": "email/template-import/0_af_m/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "de3566e649dc89e93a6365b0fdaecd4e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-2c2834c5-6433-4a09-899c-a722b0f01a06" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 393, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/serverinfo/*" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:36:06 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:36:06.135Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "3f3b03432a833cfcbe27438276bb566b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-2c2834c5-6433-4a09-899c-a722b0f01a06" + }, + { + "name": "accept-api-version", + "value": "resource=2.0, protocol=1.0" + }, + { + "name": "x-openam-username", + "value": "openidm-admin" + }, + { + "name": "x-openam-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 507, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/realms/root/authenticate" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:36:06 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:36:06.155Z", + "time": 2, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 2 + } + }, + { + "_id": "047f43a49dff3686ec2e9da2c2dd2a16", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 743, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-2c2834c5-6433-4a09-899c-a722b0f01a06" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "743" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 471, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/forgottenUsername\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

\",\"fr\":\"{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Account Information - username\",\"fr\":\"Informations sur le compte - nom d'utilisateur\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/forgottenUsername" + }, + "response": { + "bodySize": 743, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 743, + "text": "{\"_id\":\"emailTemplate/forgottenUsername\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

\",\"fr\":\"{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Account Information - username\",\"fr\":\"Informations sur le compte - nom d'utilisateur\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:36:06 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "743" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:36:06.165Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "63b37e07e202b68dc9889582625abf16", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 431, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-2c2834c5-6433-4a09-899c-a722b0f01a06" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "431" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 466, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/registration\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

This is your registration email.

Email verification link

\",\"fr\":\"

Ceci est votre mail d'inscription.

Lien de vérification email

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Register new account\",\"fr\":\"Créer un nouveau compte\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/registration" + }, + "response": { + "bodySize": 431, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 431, + "text": "{\"_id\":\"emailTemplate/registration\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

This is your registration email.

Email verification link

\",\"fr\":\"

Ceci est votre mail d'inscription.

Lien de vérification email

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Register new account\",\"fr\":\"Créer un nouveau compte\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:36:06 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "431" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:36:06.181Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "6f03115777dabeb2ee464972baac6d91", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 455, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-2c2834c5-6433-4a09-899c-a722b0f01a06" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "455" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 467, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/resetPassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Click to reset your password

Password reset link

\",\"fr\":\"

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Reset your password\",\"fr\":\"Réinitialisez votre mot de passe\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/resetPassword" + }, + "response": { + "bodySize": 455, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 455, + "text": "{\"_id\":\"emailTemplate/resetPassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Click to reset your password

Password reset link

\",\"fr\":\"

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Reset your password\",\"fr\":\"Réinitialisez votre mot de passe\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:36:06 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "455" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:36:06.196Z", + "time": 16, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 16 + } + }, + { + "_id": "45e0b48dbb5854c86c7df3d75efcda80", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 273, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-2c2834c5-6433-4a09-899c-a722b0f01a06" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/updatePassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Verify email to update password

Update password link

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Update your password\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/updatePassword" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 273, + "text": "{\"_id\":\"emailTemplate/updatePassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Verify email to update password

Update password link

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Update your password\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:36:06 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "273" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:36:06.219Z", + "time": 17, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 17 + } + }, + { + "_id": "fbc9263fd25ddd47ab77bcc419cd03de", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 420, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-2c2834c5-6433-4a09-899c-a722b0f01a06" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "420" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 461, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/welcome\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Welcome to OpenIDM. Your username is '{{object.userName}}'.

\",\"fr\":\"

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Your account has been created\",\"fr\":\"Votre compte vient d’être créé !\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/welcome" + }, + "response": { + "bodySize": 420, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 420, + "text": "{\"_id\":\"emailTemplate/welcome\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Welcome to OpenIDM. Your username is '{{object.userName}}'.

\",\"fr\":\"

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Your account has been created\",\"fr\":\"Votre compte vient d’être créé !\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:36:06 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "420" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:36:06.241Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/idm_2060434423/export_4211608755/0_AD_m_4209801721/openidm_3290118515/recording.har b/test/e2e/mocks/idm_2060434423/export_4211608755/0_AD_m_4209801721/openidm_3290118515/recording.har new file mode 100644 index 000000000..053bddf56 --- /dev/null +++ b/test/e2e/mocks/idm_2060434423/export_4211608755/0_AD_m_4209801721/openidm_3290118515/recording.har @@ -0,0 +1,8878 @@ +{ + "log": { + "_recordingName": "idm/export/0_AD_m/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "de3566e649dc89e93a6365b0fdaecd4e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 393, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/serverinfo/*" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:10 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:03:10.982Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "3f3b03432a833cfcbe27438276bb566b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "accept-api-version", + "value": "resource=2.0, protocol=1.0" + }, + { + "name": "x-openam-username", + "value": "openidm-admin" + }, + { + "name": "x-openam-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 507, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/realms/root/authenticate" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:03:10.999Z", + "time": 3, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 3 + } + }, + { + "_id": "4f7c200a37e236805c35afa89036bda0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 436, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=true" + }, + "response": { + "bodySize": 21810, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 21810, + "text": "[\"H4sIAAAAAAAA/w==\",\"7b2LduM2sij6K9xK1tid0cP9SHbiSWcftezuOPErlp1MdndvL5qEJMYUyebDbrVba53fOF9w1pzfyJ/cL7lVeBEgQYqSZXfPjGft3bEIoFAoVBWqCgXgphWTJPPT1vbrm9a557a2W7bjkCRptVtOGIy8cUKLbCf1wgD+bkHBlKST0MUfMbFd+BDZaUriAD5MiO2nE/gUhz7BGl+15m21+Vf17b1gFPa+qmnvh2MvaMO/YZaWQLVZPQ2inaUTEqSeY/OiKshXtu+5dko0qAaAWer5PVH5l4zEs5eeD2WrD5oRupd5PUB1StjPtYHr1JETy5wsScNpH+j0AVtPiHO5N+oHs5fETrOY7Ab2hU/czdcbMRl7SRpTQm60rY3ITpLrMHZPSELSjbePGqGVEH+UkPjKc0jv8sIerG2wrp1MLkI7dhVgXoDVbL+HH3phRALPnXaQJcLY+0Dc2r7e4dyWuXPEyJLUMSmQ6Tj2rjyfjGnFWoaKRM3VqSBB1MpOkl1MvfSEvMu8GBgjSJNGEqTOGHyaJv3AhWlzPQb3TvsDDjmLuFRWdVNiYS85mB3H4QgosllmynZ5XiNWuZZ4S0jKBmC9sUAaCoNcF8+W+wEsp7Y2slt1wL4baAiCmMAUL9uPmaSRh1xDktQwf1qvDcblTr3AMCTy3vEzlxwzUAx4FLbxn54+5K/W0KMG0IFhpKRNmTGj3N12iU/gP9CNMzEQN5klKZk2mcWK0eadJ07sRen6oKcwS238h2nyNhscU8sZWyvavndFhrPAaSuL8cJ19tZj1lnL9RLb98PrQTid2oHbp1UL7KXPNLLCJ+18xbE7rJMSEjETqa7tMtVt+8d2bAMCJE66vNGeaz1//tzaYPzYmdpR5AXjju8Fl8nGohmjOGPVJdA2SwWVACYNWg+Aoj0mbg1hIt9OR2E87YBOv/ISQBHwL/RUsQrogFbpokrm1KFxBZqJVa1+Fbptz1VrbBT6njNbAx2XW2yWH8DK681qA2i4Kt8aOLWjbkUmGLx7SqZYdaEqJe85dJgdz79Vt2vV4PfIz7e1o3I/4xZ9ANQlyFfpuS7Z64UXgJ0R4H9Ka0J4HezYqX0U+DOTqcylj60Gy5pBVfgItV6DifWXv1gh/LULKxXa1AdM7x9d/EEc8Kygizj1SLK5kYFAgSv6+i1twui7N4IaYIKkxO2naexdZCkZTOxgXPQGuO3FjC7DBNwdN4HsRiGA7I1JCryPAReSgCTgcO7OfVV7Te3kMrnyyPXq3YHJEHG+KPtfpwC/QG4Dha/D+HIEdlEP0fGCJLUDp24BbESCgkthB8yDNGCkWOD3jZaX9NEgJO5pOEztGJkauaCAIDMczLhxvhHo3UoruTWWaLFDl4y8gBqQy1OkaJAmIJ4g0CiAp+FLj/husvlaxpWKIaVqexDlpgE2DqiNhTMDiuiE+FTnJhMv4tpmtrlxDpjYoGxGtp+QBX6p7B8xw3br5Z5qHIMw9UZ8yUgA2TTODLiaNLpESgVxp2gPQt8nzBV6veG5EeAriFwciCG4aLAJl2SHSswZdQ5VDF6G8akdg+Jczq1KaRvqU22CCZGCJdZNiJPFXjrriv5pD+iBRWEAC771V2ujtwH/LmjguQv1q0rEpcjxFgnC9wMi71cYCoNwbcfURtu+gdWERrvwzy8vwtCHqn+54bC6eaMub9Ll9T9S8ZkDxQENGoIZ0ohE0hiQ3kyB54djFoo/IUmYxQ4GdyYA9zWYUjA3gH7JpAJICYvdy6h77lg4yRUNFAliwSzDb89FCClGGK/g7xjNeAwM0/+wqsqflMTqb77ElxQETiVj3/yvHihCbxxMGTriYxiP7YAzgfKZd6TKAPwscACzk/EPJejMHU9kEAzciP9i76FDf9FASNk5Mnk06AO6mQ8C+Ed4of0GXT8eU6SYn4h/zAKH/6fHYw0UBnUc4A9qpcAKHkCzt3OFJ+V8wn+HDAO+kwBcZF+Bl4PM1sfi3Ssg34924Po4V8AMQL8u2FqASuhcdimI7oSXd2HOu4PkqtQSOqtt98c06f40TZZvlwBn/wT/rNYySd0wSymAIf1zMRgpWRScBzZc9wQmOPHSMJ6t1hz6JfHSA4BZBontDul/yq3fggDaCdlDaQTkvCvCDAScwh7bpOxN0jTqcQXcm8CiwMSxUJxEKNKyHACPqJo4RmHwCNU8I4RN1RqLC++NoJ+3Ukexn8CBLY4+rAe490dbt3AqUAGRAquBweODEOHKtzIPOJKtL7LRCHpk2ndqvx+Cqm5tP97C/4FmhhUCiAXDurJRhcJ3a+r5vpdQzGqVtYoOw0YoazQfhG7d8UAtIJPQxtgQDGe763rxvCcEMoCFTxAExDeMPIcpYLGpjIvUFWjPXPjLOpmNmMl7cwI2EoWcmktQhEMuL2B8tKz8Lse7tMyuNE7U89Wj5KvAbcf4lovJKYdzI+DAX+Ba2JnPxgIfkPmErGIx37qAv8Z+eAH4wZ+AH1vrAcNeLyF2kLJlOp1F+G0ch+HVrDXPx8G7myt4L+5a2oavc59MOo6qMU0dFG6JvVU7lSQS3k2uzcQX1EzXCILkhQijQM27IRRamr0/YOnkjVWK6f3PVfa6Y7rxjubCNKnqUfKowxCkfLigMq2DwwSVTyLsGZT6lNrOtyZdbqgUBAHNJVwr08mAWfeUSvDzIEQria0aUmY1fIen/dO9wfnZcPeEGW08CsYgjNFKHHJPQYF9i2G0BfnOAOsT5ju8rnAeYjJG9pWsjOrGiWdRGuKfvIf3nQR1F+mQgJYxksB6lRGs5XjRBGnf6u8Oe4MXg97xz4Ph18foWAVomeNyA6WjD7uPf3p6/N3+fx9Ns0FGnMFOYP/y/Dla1Vfo9Ez2vj37cTY9PBlMXu3NjgZ//Xpoj2n5JZmxVfPpE7SUgUVafx+9/M9fd3vh18PJ1Tf9d789/jt5esqgRVkMOhYRR13JWLGroZ7YmDrVuto6/NG+HI3iP178dLj/9MMfk92jlPWY0PjlHvKCIFUym3Y4YYFVgMrUkT0KhNdSDB+gyCT4kwljEAazaZgljM2WZ5Xmc6o4hO2qKnQjT5t4dXnB0q4omreWHGpht7B6uAf9w/6r3Z1lRUPicGXHFq/2Oype67kVs6yVzQ0kQk/x+DcegT+eliPMyaZw0x/9TW8Mq3ieDATNmVOXfzoNcS42Y06TtiUAta18JPA1o9HvA+YmYZkAgKlYeQfqr770H/G7OsRHf1uT4CtM8laSfsaxpPSXcRGElq96dFaPRkcxinZ4DS4e+/G2uOBR4ZFswThkEBPqhlNTV/IeK+MIUygf2A8hZBSUI9t2RAipzJaaG02tlgSDrWHA9DQOjDPfT7+dng93h8O9o8MS7zF23ZlBVc/heFHDCuQp+RG8E9zuEMwMJv1peEmCfW9EDrwAeQrM+ydbsmu1coo198BsO/Wmee2nW/O5svrk0Y2C3Iig8YDm2wS52/A19SUKxUcj8PJBYpSSPV3Qg9AlXY9KuKhxAksxrHQzxA+tY8BNg61/z3GmW5RiY7OHJnAIK3Jwls8/58390LFxImBs5QGO4nDa4mk3SQIzyWYDPn0/Saf+D99fhO7sh5ubL7yRFVK56uJMH0IP8/n30Q+/Ax9YgucsL7E2bm5K9Ta63/ciAELQUp7vjaxZmIHicAj4qq6VTqAZHY3lBRaJ4zAGofUJ+LSW6yWwYNqx27256Xkj6HLy7IfvbWsSk9HzNy3ZFybnTsnZyd58/qb1wwDc1UsLlkhipaFFM2G/79k/fN/Dxj06Ivgbh9dCCjQe7K9hCiCDcGq5G5jd6iVAehg/WAcNxj30rCtYjiz7inyA0f/5fzPLIamFySMw9AhUK4wdwLWtK5KBQwq1AgLfgTiBBTPrxRaGPlOyLC1AaD9Y4MBbEU4WxQHW6ADVclxFF1AEU2C8U0XxYQEu1Ey9Sj7pO06YBam1F4yoVQjyZ3UsRQ1RAiulCWjo2PIJHw1ULlFUtQx1PldTa9fA4k9/OEXug/+bIW1U6IwlYQahUiNK79J5BFGWcUQLc3wkhXNee/rDgMB0INtcUZaiLd0NEHm6sGAQt3m/+x7wh0usqz//oXRNsc/7bj6fJ5QGJAbmu7ZsNrkC9UH85z+gJAtgyrIrYmd8DuvmC42AfN25/YQx4Qa5pqDZvImFrTnRBEocSvVEcfGhogOjpzt6NvApicXchSlSH1Egzfs/UFpB72wGVfh0FlebvxJZxIBOVPw/GPCvnkfmi651In9FSZlxzQ/zybpYYS7P9IaFyWxOOQ5HJ10lRa6JD8y/3nUW1pjfGFgkyBEYDXs7B11riUV28fIGfbwAfgNHPyNUE8tuVlveVl446Ki4grEmsMxdEBADFv2QLMtw4ivFlYe7fu7/97//z5//j34GgfnzH9Z/aJOk5G7I/Q3EGRwT5lC0aNyFqDv2lXW7fyR15r+pU0OaiqG7Yq0VOlIzUww9yOJlQfP9pR2giefz803ME6ypwxHQvy/bc4ieCFDm/czcq1bOe6TfjvHbsr3FZAqGN4aHcfvzJQiouueuDIoppkX1l+8+sr34AChFwzU5CTEJYso/D9me3rKwGcZ73A9Fl6AfuOInule7QUq3ZIpjbNpwWYTMx8DyKa45KyY9zTSeWTeWOd5P/dLuMMVdH6V50gWzOiGbIvWAdhik3fN3eZ1HXQx0R+km2js6dMSKgwY/nVX/1aObCZuP2laQ+f6jv1lzy8GwrLVJHgF+6SQOr+G/Gw64ehvWtvUMnDlrg2t9/EC6/Ae0nNdGFyQZ+c56l++sT8IkxaWArqAejQTmLqZWuVusOlfAKrvwTLezoKoIEbNt8mKMKJ18OCDTC7pvd9PyUjKlf4igTJ6qwrb1xPEn2+/jJrnHI/NsUQR9SzAucaZswUvHPQIhK8YXeABC7kPS+IhYkKB0DA5lwP9OaLhNmWjKQhnaOG+5889HWtz610bMElPYEMG2T4jIITpkjfX8G4xTKikheaKCSmDfTtIhj7uT0QjJdaVGoEQPOPOG4lZbQlBqSqD5noAhs4EOKcpbFbHHxIck3WH7DWrkT0bq8vKO50YdB/z0IIs2HnWZehxwx9LdcyNMU90MfZ6N2rYEjyDl2haXSSUIqIBW0aruQ008athZbTCPp1tgSF782cKt8e1eD3dOO+xjF/RDz43tUdrZetqTKRoe3XZpjeyOyFyh4bg42Ma2rNo2NN2W+mWbi+w2Z5NtO/K2uSyAq9zhECMSRlQUwRxFLn5Nmaut8r1i6BdEACHRTHaXSN+SbiBRs2uY2mlGNTmQPZqEATnMULZbjA9AaF035oec+aYc/TwA3Ub1N8CgcUH4mBKa6KNmWEI/GtuyccZ835OHHFnaTEwrSHYXRQv4H3cqLuw9llQUgZNAYgIIcKMFs5OIe5CnyyjB07YeVp1SlWb4tbcjN27JDtuN8wLl59uivqCCf6ORmyk4a28HGyfHoERQH8oAZySzK0A3RJgSxxItwvjCc10SDCY2y8fp0Q0/lpnEArRgHIRpB1c12wM5gYo2BnVAkGkc1o7h0wWu77wrzvoJXScpC8F87GiocsYSCeWyKVqSyod5kYfyDZMW38UlBa7bbkl2a06FmIzJ+wja/s8mA/pRkP/Rly2dGqzqAd0XLlOAR4O9lJo7OeOvgyI0+UPjkhIH9GmZxVmIxcLgM5o7qUeFdSFN8pFSQ6kj21ZNNh+r3vVaB5yLkGoLsHV8SPxRPhJdRkBSld1OjgsAxIJjrapRuPCjWH6pKuRLiFvB6Lh3yL+wdZh+qTBZhFFypGcP1honhUxDg5FCl2SzPYImbpz+TGYsjQFn02xqUHIzhUmLVfdDMjgbZqwWtfMrG8TMKZxFu0thnXox2xECzKlYw1QqdRJrz+ojbh7fROFI2HFsz5ozk6Lhy+Kjqf/VV9ZtfUEyyJzk4vV0ss3gtTWh4DxklAl93CdySbNsS51UCwNK8I33zbcrSvJtlKmCUs4iuvxawue0rr104gXgyRCrwEcFlMexHaQs0lOE+gqLLFqW2/naxzKippVTx54Pky2lBhnnzHmsnJKzqClh7eE0WAVaLKEVzI7MS5YMmZcqg+2rKckFfaGlKy+nLWr0w5T7ZfUKQqwKOY8y4rQaK48qdWEAbVIGt1hvcquxrCHUlH9L2I+3EWLVRL0rRSH7kHrin18rrE2MDVP6CeRYRL8oArkoF88trE2KtRBLM1GuotMaRdooXWsUbUeml6rNB8zpbO4ugBGyT4IxztBj3TtA82SaTTs+K8YYjdLMfi+aPfn660JD+73W8G1OFY7eKiY1m8EyGUpea5kmooqleLYm/ZT86sVpZtJYMpDAw/W5u2z2adXCKnzqXJsV/Ridywv9lInegLzTPNtKH8SBJEQ1AnmdFfqeq05KDeELo81nuazkVrLbjdyzghwXBymCAiIkZGATESv6bKVZYrhGgdaIUKTJjhaT+9zoUi0JOt5rpJYx3Fci266oZfUXenO5EuQJfUIHirEYgRWXz1zk6Fqen6CTIUced86zNr9q0RVeFKvrt6z02hgnfdt+rf9+axJ1fUaqSNJIsstSXIjD1sxAnYG8BO2NRksDqhvJyqm6FNmWMmnKBMuj7iVavfTiJLV4RF4lE48CfJ4irmG9RgnXguclWu3x0k8SJy12vs5IqdilKI345xd9i+9flHmjbLDZQXLNts5pov0vuKklY44JTwIv2W+8VdlnFtBK7mEBfHk1p+XWu7z/EggFoVJzAbjKA1RMJWWBFrSq1hNrNGTUTVod+X0osbDIQq5KUnsamdlSzlrFLlbevDRjt1wIb7nILbWqzNWBlFA8VUi0hJguYonECWkFPMDBpLVGsM0Tpo+6uaqn+6nlqaBZjPl26SJFXxw9zS3s2Kx9h+u9O9LtRVzXqN7FDq/BwRJbvyb9/RDzyp1MSqdbRLgKSTV3mUZTFcLKN/Rrolc1Apszizl8tcxKrEW6TByr7PxXbWLW7df8M+5hCrH7FJuYzTYpPskuZhpa1xPPmVh71gvih2rMZbmtzEL+CLLVQl8IqG+xG3MwTa+slste0MjHI9iBymsMdrVTyjgNlhToBzFb7KJq8lHjUdVJczGbZjmainVXSd55SDa4ezml5P4sxXTPOroOVhVN9dy9vlwrZ1uUo+vIANrpdgFAPd8+r4h/yMPPzZ39b5dw9oNsOrCjpBQhsNMOnp5MO3/vOHYEFPGTcsvDbFrbMsiYntYbivu5lYs36gyH2nS1EMwqkaq2jDmvTNQ6LFehX/SEx7KvzAqsx59fFEdu0ikortGmV1I+y0JDyyyeD/q5RbAlx2hYrpM0SsppmTZaPmpdfICdumAZsvEleMHBuBwSyIvKjgsJXHBarCQijgcDDfH+K/CT4Cu/dU5ZdvFuI2JTpSX6rQQYkGsGJsewCKXsmtdIrkaRZg54o3kQDkd5h4VexWWdSIfkjhI5OAIPWRxlj1afglsncHwG7m2ext4gOcM0/ErHdum8jBJ/rzElIzbv/ZST61q3yrOK7zbFKtayqx6yMP/NsjD1pK3CFbCfJvOyii7LaIW8nM4mHkoPYzTSAry+wgvSZBcv3HBy12ORJjGK9Rq1SWLYRaKB+X+2nVEV6TWakvoJqrJ+wOKecsLqc7W1S4iukUbFU2rl3SZRwZLn2Ax8JW/9/p83b/76X5uvtzrfvXnTsd682Xzz5tHbR199Wdqr+kS0NAxnjdSUFlGJjModUsvuY8l7f3QC3O4wW/tzkn+FOGubjEJ2YLWtyrcf3+roGJypUgfFc91hMGD3jG5XX31pJ+6I/r+b0P/m/Sx3eFY5rx+P1aO0X7TUc7P0UcNO8i6zY7KyTXkibneX52fzXKpz9rJP4RytvC1NTWrLV3T9xJBqY6TlVbfheVBEkplPNd5yxRpjOIhZlyPAXwSqyhBYncj/Nqec1ry365ZzMNbgDt//aSPhtzWweCsH3tzkZYylX9Aid6f4Rla9gWsWhIKFa0rI5/JejghbijtisaucLZAbdqGheM4iGeSVGmyWDVT9slDya7OLT5GzUdEon9t4jZRLsXS9JPLtmcW3N5Jua/WU34odUIMcUs2Xn25Zhx7iff0Lxd4+V49enbw78uU/+dUwa1B3ZTJ9Wte+IHOLVF5g9AmkNgnohSq1aqTKRcgCvExxgX290OyRzmDZ+jJkuFp0nFY4skQDVNuiBR2CnSvrMrWrc3Fd/mpz2eaTJeX9iExeXVqb4qgBz91BPgBlyNVJnCusmPpEmLqrYx+2KBXGIWwLlRdNWuKmZYsLwnfV3fd5/riCasWs6mwUV3DK0Rrk3B25JLOVvRDNHFN8kasoOGdwGzkh8uiXJA69/cYLLn/JQHOITCGhm3KnRXVTrok3nqQNPRMU85wea/RR8gGY+5TlFuKIV0BaYWBdzJg1laPUbRnz4mX5EW3NRp4F5u+c2Ow9hRJdTG3KiiWnUahALi2+ZmVqJNu8CuFyfEapVt+9fDJCB/Ar/dw8814ZbX6P/9Kqp8imizq4S/Ncl/lPa6Qrk/kJTPWCNikf9VCoiHWtd7Iyv4WZvk1aJCuUaaIqw+cIIu+vyEQ561Y0aMAUlad8kdj0Cl20BiZ47TatWEIdPvtoFadhjTHDG3fIey9JF903VX12uLnrpMjI2hyoHOaDG3VvblR5Iv/dnCk9prrUbTWrO1ZNL61Zi6ukaJMGDtPtvaGKZA0R9JJ5GmtTF3pexT+/slh7lHc9GQ+FPIZa0V37TTTLSqlh6OsT0CIrr5T+zX0ho8iyMmEb6B5Hc4u2xmz8jXUuUH/dCsSuLt4kjY3rtwVrfUSjMW32tMWrYfo5giYbgo3ewguDE3zlfSkw4vXJtXn2gaUOz0KznwTQa9u6noDWldcDgy6i768w3gJ3U20GFi+7c7GrBQYuMs/nL+0prr0bTm0vUD1743zJcxXyNsfca2cHc9B9n0APMX1HglZj52ZoU/Ynq9nPy9iHo2INfsin4OCKZo0OJtHalufe4ZGkt4uPIXFqrXYCidKJPqChj2PJE0gch6rTR/+0pwQLZqH5dOD67MLl7jsVdzLf/hhShQ6Xslazh7iIt9ijUaHJZmx4/ZlAoux+Y4mlnYBS7bh/CQa8g9Nvutq9JSNKvfwZnIUz88NqCq0QmVr9wqcmNwMYHo341zi7eb9e9ZIHrdenPlfg1UpHuplSFN710t5xI4aU1lQjK4jW/uRWEDceV7OCqHF4eyuI4/BgBd2THGuPVnyuVhDlrVXlnC+v5ZNG9LtltA6qB6B54/8SnHkXt3isbB+ZWcPMusqcrHYRjJkDqi6FWeX6l4Ij3WgtECoUQ0WsvSWd+TtYG+yily+xbbBicNlabcVoMNAlF488KtGI0rxTdjfK53Mnyq2IWjWmlSh5tJQRY5hPGY66A8qW4lUS20/AuMWBLkXuBUlNZv1kCLmKwCdX1nKjIw96aisghoXVwCPuaFzYiX6+gVXiqOCPwgt0NDwsHuzkUVd+6fRJcbHie1PynLPaRu0tMFXQNsptR3iViw6X1MaSEw8YWsR0D17svTo7OhvSkz2ig1Z/+PvhoKVXHR6dnQx2zw/2hsO9w1da/QanXTSklMi00oEJshGTl0dnhzvn/f2T3f7O7+f7e4c/7+4sbnV2+MtZf3/v5V6zyn1A5tVhk7qIwPnR4f7vi6ue9k9e7Z6eA+CjkyagOc0b1+/v75+/OjrcXVxzcHT4cu/koAlQSu4Gfb8Y7h6e0pwN1ayj11cIhjCenhCvQZrNrbLY5QJfuO99geiV2xnEr1zJKIK1FFjfLC0hnuuf0NXEbAlpaCzwy4pBjapai1guox00tXN3skEwYYy+7ijeSOdGjaihvv7ZExdusdfZW4WcP/58cY7pQehiopjLXJkuV99tResrlU/DAZ45ZPYGv1Xq7dyg+yWmN60v8eqblvrirvaGalfH9yMbGn0WnaSTkAcLxFgifK1QOqriDVroRb4Sz55Jl2/by3fSGQhXbk7ztizdqeXhldJzY/ii95UyV/nDvcVaNzdQEqGy6sGkzOfqG+v6/MQhTsIdT8/CI7H3/cKpevXTrVlGJeG6OIbB/PwY5iWooJCStDmFFJqkk5jY7jGtTk9145+n9CMQ6glyw/tfMpKRofcBcHyyBf/D2YPymVb1sYD1MyFR38f3Sre/2VKQZrmeyEquyK0DrhW6UHA2rcSeQ5c5BSwlz/adzEeS63Gk8pPKCfFHQ3ZP1zFfwDcedYHcJ2TMdhah8xzI5qNak1mZHwTMLwDrxQosqozXgl9C0tsjBkDYYX11uZE+E/fP7+SRXMU1U55QvvUtjW9ZqEwOV74VxsWperA8NleVcyydUAoh/44DJNMonS2+duGrFeljOm616DII0aajnLjSoarnVOph0XBEh6XxF2Yu9q5AGMekjJAkBHIlC6ZRt79AAo4tcq5Ov3uZJIkbj73UIKczLLDaZ8MqbcOUyYnpUFw17GF5hvXqpW+P69hoZVI2muZiiYJTRwRvdJzFdnszfFdAS5tgEk+9JFmqy7smkYqThiwXzMUCKDdpWc7jct0XlYCxOR1YhwU/q1Uxpm7WquLPTeHp41BzfmuHwRh5MeoEjOq0w1ZrA90cGgju8W7VNzrKK700oIT861cuGD+rGGOk9lhT6vkPEVbuYIi2w2zajgu2PfwH/E2ZJtlxaDKr/s3Qhu1ndOzA7eR5mBoEueNB/zDBUO6KoVV4Q+2kbSHE3dL2dVUdgxBqBl+JBB+ohoH2bW2IK2l5aqQ5qkT6RtP29Lc445evpmiJHwX+TAkGqLV0525BZeXuclGPbffp1ZT31GvBqbf71VZU8sRq62n7og0gsj2UBoNpUrGUOlxfXdnEaQL3qLL627ZcQIUDxfaae6ILi7yz3rRubqj7+KaFSds9HWqhRqut6Yw=\",\"GrGo3yRXVzWQsV/3dn+Dr2fHO/3TXfhjZ3d/F/54y+JnD5z8wMlVnMz3GqO4yJm6Ql6KGwcnu/0m3KdEyBZOhXR1F9RUQ20LqiYNeIAH6tYpIMUw34Lq5SjgIloVgoSL5IHFEBsB5SHGRRBlBHLRBBQClAuq5/fZLJiy/K7r+omQT9k36Ft5H6q2YuEd0ub1+4Wja7Wt5FN/C2uKZxwXz7B20/3CKS4++t1QkedZgfVTo5+jWLzglOua1GThlaMl1KTeki3q5+egBmFdP4982yGT0HdJfH7eaI032vDmxE3zSs8XeLnkP+jaB137oGsfdO2/mK7tbYFlSp9z6eVo5h//Y7OXYwQfH1UYsdLZaKRim5qvn5XzVD0FD77TXflOAvXqKEDfXCNn00XBsX+/KMADI38WQQBTVPYhCPBgmD4Ypg+G6ac1TCt15OcZA2iwlfXg+D/o1wf9+qBfH/Rr2e8HFz/HE138RY6/MS9gWc9fSxIIUbn2mI6FNqAiL0d+eN1nH2hqisxj4dnfmOabOhPMJWh1MRmZ1wAi6KeuE3pLXjHJh2cUd1B4wtj7gOkriNGd9YM0a2mn8FAWu/SwpxNOgWpuws76saWLXySLl+uys+X6WeweFmCaNlskv7zhDZjrm1//vC2WM3qzCwXNsrY7npt0RmHciYnDcsWLPdCCPVd0wH9Wd4Dp7cALrqscYPJdOxqEQcAOsLMsb55SfIHvLm3TW0p5MWZiswTtr7fayvchcbLYoxQHVRunp/tDQGFC4M8XwIN7SPAr2x8igkjEb7aU0lNvSsIsPfB835M1HrME8Cj2pnY82wckMZWZ3mABvDaBRULEuGD63D86ozh0Q7AqrrqOj8dbnC5MGfICKNPW9pOn337HbvpF8CWA9LRqGNI8eWQ3UDhKhn7iTSPkG0aQHSRo5rnPGb+06Uf5tjnmxNNr8EPleoL3HQaio7w9r9zx7XjRhM5nf3fYG7wY9I5/Hgy/Psb0dZpxh8dHURP/1Hvxzel35LvBzs8/Dg6/PX1/ufNs/Pw51PCuoHwXluH4w/Xu2dnlj6++/vaJs79z/fU1Lb8kMzZrT2mivYN9pbPvRn8/S/1nEXn/yv/xyPnr4AWDxm84RUFxp12WQdbVUE9sPM7berF3OvzZD47J6deXvpPt/vdFMP7AekzowVyapybkK5lNYX7YUeA5/g/wDmDgXvoyhqnaZuyGn6f2+5wj+ylm52Gq2dcoyCyz7UC9KpqCVL8E+ASCbzOlnT0fE1CSntN2neccF/Gnyjf4jbMO/RNQQnF5H2H2nQre8bME2Jm4VNyYqHpcMxR6rqi6PCZtng84wM8sowxY8EicQx7FHaQw7aUjOz2l/e251a+beUl+npFfOQxy0VcNZ6o/xSFzJgig/WM8eO35TOLZMkNXN3pcgCohBF8EpqFpADwX51X2GDlr2+c1JRi8WrJFGctNeOKjXJR/lTfqq3PkBM+F6Fq/sjsnwjhpw2fW3kR4UMrOaNwRjkLnSrRDUWVlstcOFXJT3dWnxAmWnBH6Pt8wu2ApvEbKcrz5S355VcMMKad/KqCIGobGmG9KSVnTHOt0KP+bINClXmmFFDsA+ffoBFcSjcOmrfPpMXbgBZJW4txIJa5oZUlyiXMkJrYmSXrCrlLR1orFs807QgAdfhmL21Gc1EJXGvPLRP8hOwJ2H6wv++wkYMF8Wsa3fbBQzwKmS/H04iA/+bAM8SmcTqYAUs9QGKa7SPhlWFQj4OcogF4wUIZXB2iqHjbB4RgAagzrenTJt9nVR/fBrnmPn1pJ2wkZkiDx0EPnA+T2Z2M+RRhAZg5EjEO73ETl0XWuCjkdX3o+WQprZQro4czPkuX/VZYEhs8LYBT3vkSMddnBC3DcTyxkn5qP7PeCwIvZyH6fE6uai/DUSWOQwJkLQWrcImofyyNINSwjKi3HMPK0tlhrNfdbFN8jj3B/UgxrCCxqj8kQb3qqNjebKzsGPR9/wuCzG/HNBmnONf0xacoyeKWAAZgoL1jQDbHPoddZ0KLWjx4ObjbAIH0N2hLohNXv0Ki+CXCuM5a0qYzqqY7xYxIhTxQMxvvQlqJnxcL8d7NMPr2WxrOjxMkQ11yrNh4syqGTQ2imauGj59sYQ73XxTnv9mGB1lbTHW/EN6mWm3t1jXVzGPWTzx7YvX9lw/p9UDWfkN/ODFO/FLeV5nARryUk3iEjLyAuv3dUswWKbMfrKM97NuI67AWNHeymc8VgaFYDr1cuus/4kGgsHhtsHhGSAd5Uf3ZQTi1q051gWUMFW3Vcs78OJAdbOH1BJvaVx2ygKhHgVTsXom496zcedo0wiB3s5cYrr58owRvHYRYxAla0pTUqiKWJZuPh1QsrCFBUZ36zcrPZmq3BdbgqPP6rCLe2oW3aiKIJLW34Q9RcyxYU348RMDu09/uUX0yrOVAeKDHRVyQDiMeJ9FQctp14bMyLkPeV8yvQxVo+L1yWV7FN5RheG87jZfoTLqUpNz7cIluLFzYqeg5ssyep3u7QUE45RNmyuNnWNt63siR04/Urhl097T4uE5vj9/WzuWGnVbI8xeQ+t1dlnK96+suhwJyEmJNiohxNYrkratFO75NIIy9O0to9aESpI6oZREV7XXsRHPmydhUkYV/UAakyJFjKyuLByHrGFcIPnUtjigItuLOJB+D3OvFB6JJ6UgFGHaxlSj+Yi/QFvCA3dEzkogWoYWi9VegGytkLxkO80pGM+T5XVZID7Y39qeLr+B4J0h1MPuaX/lctzTmUW0xDA4xUOzDwkgmmdC3K4GCgWP3UM69YXtIHLTtLvIX5IAyal9iivjGyI5N4FoOalp5+z0WSGg0nhtdfmgBmrYTp4eStK9NhVu2JtW7SEw4quzjJL0K9Af8gZduwixg2q2dN5TIylrjDcCM8cVu0y5ErimFPYtI4B4q2Y83Wq33mbXkTd4MJoBh07MrZtacX3jgLs4RlarGhNMh9UoELEGyuGYX0N1dyj++9Qyotzgr4eZs7l86mS24RRWxXuwKvS+zlTc2NURMtqoHtkBTPfSwN0mXtTEb+BF8aaQ6Q1TcAapjIp4CqWRaU6+obg8vbVOpgITLLQNUbflL1nrCTOUsgL69FN68UK9Cj0PDTLkKiGnfWTQuGsk6dhFlKBZuePiAj7z20kQtLbrepi4lMkufLCr2LNJkFTu8d3j5usvloAdp8WO2uTGWEzTC4T3sZs5LJe+PubBGvjqhbigAwkDv8DfrFcGh1fi3+Cso6h1SjqwNyzSncBBDUlm86FQa30KNQoFS4FYIBTshVIzh5bRMo311iYFC7amCmxwsbQGym2ESthpQT1SvWjrQpa7GaJhBQpd98kPhXldlGzVN+pKB8KqD3lUmD8MJVdAdOlym4yCB26GyyWr/g2aBdagmlswNMdAbUTjJ64gk3xfbGQRiTn0RNWmPAwEhl1ERTia6hLr0H2pFvzZWGTUtWOncx8syBbPy+EkBvyk4ClUGyklsANc/5bcCKOGfxrZBiH2r5bcOeFYymdnFbbmvIYNqoS6th/qJJIbJ/rj09snp0vxRpnpLUroo2Y9kdUf5+iM01GZPm5rSmNLkViXFcPPnNRFyleCUZEqgYZZMX3gqwnb+hZY4T8tL2bfqrZA4OsZP3c0/8Uu64zDZNdscUxGs3yqZLbu8VzravuL/HLgBYZ590b3SBSBjvFDIwl1p+t+yl9nTPDKYRocRi/M6spjOkH/JfddNX3JfVsFflHi5jj2HF89jlnpcUguIFCCuOd8Eus5FHqrae+VVoDQdQuGlhRfzz9+mXGYGcNX70/Gcyk671khNpFO66FI27FWbs4bZCfMBgnTBttow8m5NDVN25ZNaANixdBzefOmUZM03c0qIX3y6zRGWUuiSHu2UUmry3HkY5YwNehlEqUiqEFV6YBeUWi0Uj4jbrYuYoW/9m3ih4HCvyL8Wt6LssgaTmLpkRVda/FZHUVKS4+WKNGrK9Dk2g2JRMbNerCpTUsdtMNQVD9UQhc66ArBPUTHrRnFQ1Fr+V6nayIq+2ak7AonIradH1ceAK09uABRWzYx1IUnDrxlEkd+2+jzx2v09VrkV0Xay0aG9AXFK14yWOHbu/QSFJ1E737SQdTOwAcK3pVa2xcpfiGrSmJq9yFdud+HxNhEYs/s0nvFKMZQ4EjHOM1+vJIHjJbizVWimsob4YZkwU0yqs0ehQ4d7W6DhRYDW0OtTuaTgbD2K60I3R9pKFK9FYtjZHpW4HPPPMUDNvNXD0mk4jJ/CiFcDyLd70CV6/dRRJs2l65Tgqa4DJld+xx57XPmYHgemFgCmIDTOy0ywODjPffxnGB3iFXTBWH0VmkguieQDwlZ/H/MK7K0KfNZ8pRcPsIo0J2aH3sMkrAzEJk99vxt5Gp2f0TuMsSZmdG7NbD1p/ucErs7wAr7D0u64Xz3uiaS/F6hjSRIk3AhFHvBoAo3AidlLBCIulnLZ++hkvYkuVgtY221yZF6658wIPxQK6I2yfpHCo4PWNnrTeond387epr4glrwb01Eu/hKmoXNam3LXXLsKEYXiOxd9ltrjO1gHmtwGWoSo3BZZA94MwmE3DLKnANCbjMkT8aACVn1EnrnXl2ZaDLEeNcFKEi0VlwPSrATLeNAMw09AC5qcGqSWuWrRSO7ksoU0/KuZaoR+9uNzhMYj1KIyn+O78lYd3QIIMFSgU8TodtU7elbkYb9sr5OsDBxl5I09pV96Rp4VdUTSnqNPWtphHvWX+WdZkBxdUnEQJv7gwxEtp8A7ADktbxGQQRSrCjJ1NYoeU2MWD4A1OQpcuJiyPoSVUJbqsYYApGqDghJ5oiZfm2Z2N7L15vtobnlqP7BQpBoX/s8lNhI+CiI82v/y42ev+9dEjOg4FkTvpX3849kvapxbXl1mdmzwxpOuAmoI+4E+KsPX8+XMLFesj6y9/sTax13BkicryRAmttpEF/LDghvXxo8UW6e4lmSWbpQbdKTcG8udWH3XZGWsKa6v+OXukURLh8WxtFPyK0M0N/elUpNrGoy5jAdFws76HprOoXDQqln5Q8HaAF7u06L46KHsMRu6+p0fJke7chZOH9+RvbpDj68woeFfhJRnkyT0cOfhr7IcX0Ab+lJlu0H+PdmxN7MRymPVupRMvsVi7rrVP0g34RYjljSwvtbAo9XyfKieYiq71TvvfkI/n8ZughlRzgel+ON4Hi9ynHi69Qph9xxs6PYogb4JHZpMRzJM0B/BHP3CP8YJauibA6p/AqpRb7mggg4wjwSS92C0L/GaKLfFbXFNKP4kpETRl95oqRC7GuEtzSXWvYwfnmEpyxXTFMpNamsUgY1706QQtI3YjJnZA42P61bCbmz3aK03LsnxC74dF7LtBeP2bl06ORqOEpPM3rUdW/3DH2vyPzZ4XKE3wkmF8wkX7OK6D80ha3GW3i88BtZ9Sdt0rVHq8NWX5hcnlULg3YCdGaHshJXuCcH12kTmlaCevwSelpq4on/NumsjClR1bEaoY67n1+gYGLG/SfdOytuE3MAvec/+m1YYfI3xdmRf0tAvXWTk9tcnLGSXhx/zt394EbwI/HMOq3HXJRTbefNMCsxTXUVyA+3wwFh+NdQrIW2Fg3cytzZv5I4TtBVGWdvHa+LbF6L6384jCFWsoHcWmKGtblG/Z2B79jarmv9VL57XtpWBaDxjFc16dlwVUMHsgrpQuCqEuYN9+82yL3fDbXIwIRjPuWYg09vfTJmJkEKKmongHIsSI1kSADDU/L/ERc9FEgGjk60F8fApOC2kQKjLoA9MugNy8lHriX16Eoa8Z4rJxl7fsRrKpLEzmjEeoTB1TEDf8F19kH2/NVeT4ar47OOgPJUPl5OuG4KBMeSQUjDtqG3zXVmugPEwjsP+63F3MqfMNkgbQeRWH4RUVmC/G9E9wohOqHrqMd7t2knbBgQ0S5BuxjYO3p4sGJI7DOOmm4AJDNZyqx1t5KcggMhHlP6lxCoUgsxf0Nu1CMR/GBT2t0frCDmYWDZdYaD8HbmLxej6YY92hIFihNa2bMFeuy4qUSix9q3sxS4FWLnbzuPttudwFSUFnaCZjDnjjOAs4ODx4VmrkBa6Mm4iiazsO2F2SLd+7JP7MYuSzvgjBYQZxpNKcWK/BVyNtVqUdheDmwpy0IxsoHHr22xa9/QEB0t75owWGaIjvXeR1JT8IrIrfK/hEVmQaDC86D+nF69uts9OXnW/ZwXllK1IqO/4YALvRHP8s0VHD9sILerx20su9BV5nMQCOiMj9rqgMPFqs3clV9oJGEi1VVgk4unRXncacmBvMLskAVz4ed0F0QAmHzmVXqgzWRFwd/zOZ4S16oO3w85BHwPK04ZEId4n26Pdhra4fsm3Nj3WhMFn7D4dcgiKSZwj4M0C+Z/Pwb94Dx4zd1N+lVT4a7qmfo1PNRrPHIwpdMeFM9VK4u4eDk9+PT1v4MBH7iz1ItOaeTTfx3zcOIuKyBiwmaRol+VxjRKyAC06/j089mDD54xqWH0KfLelOQ1yE1k4Z6EL0MJnaDqBaQDCvgOUdqNAQUwzs5SdXKBLDvVeH8PvX3ZO9l7+XUEyIP0q4tVDuQSldOxFU2MnEjolbpoNSp4oIGphlR78W1s3397vy+qYlqMUyUq48l78kZlRYosbHYRb8NNidC615bApx5q146UcWe/FS2Y5bd4Y2WPIRuvh5OM9z9fARsUCoWxayu1NFnW9pNFPVef2Cmq4jrtJJTt6zw3raqo2aU1dpxehbpi7dY+H0VQN4CntfXmDCEPx7rO9R5w9kcUukHyTXYEufhuw+ttb2k3LRrySmO1SP2y0a2RVbZo/ZGX0A+9vExuDcDGwSa2RfhbiFbjmhH8b/1UJ/+PzVC14Lw3ayWibrZbTiCD3eXzLig4cK/VhXYRpjOagraBHFf/5j9Oc/4F/yX0iRJ0r3oXVtC8B4o4qFu4XhjABY3ZDISSR274EFWrp59VqJyaov7ImjCMpHBC3rjuyp58+KlZNAr0X4K3uyAv1diG23eszn62nv21nsZVgJqvj4nQSpF1TBtln5Pi5xIBpF6IViFT59Rm8B2BMyhu8VQFmhRibtebx6cuDLfGZa8Df7CoSgX6tA8gf8ivDyd/3yUfNPlcjhw4UlvPCjCqX4xKHGHBhoCQoMJB+OrBJ28CWmOP0sNAGFW90t3BPyBlJtwkKThsEpjT+18ME06smBKxr5ttANv5GNK2KxnRzXQlESgPPXmH4PM2sK2oduz0WpBT6VbEFrW15ggaIjMe4fRiwi3qU30KHHzp53u9GO67aebD3+rvN4q/Pk29OtZ9tPtrYfP+4+fbL130gDBHmKzrGfJzhSkd8H7Te1vCjJppaLisZKPMBqStK2xS6+TXFn3rJdL/ISB+MxBLi4bSWAqRtaxMsSMIQsdu8XYO14rudinCZLLd++APAWSRloYk3tcWBbIAbvMrtrnYF6AQ0JsNk2sQXawLOnbetdBtotAJaLMxd8aBKDnFC8rcz37akTMshYyUs87ImC9CKobBHbwhfeQkCODgC6SrvWDoK0wUywvDgDTNhYgcgxiWIyAS8dX6/CD1ehn0UoRIAOjBQUaAK60/N9QSEYUGaNsrEHWhjjSLYF7i78yOKutUvv2EAtm3hAg9BxbAKLqeVkEV5dii1gFDCfsPQFSEWkFHTqZH5k47itcDTyHM+2XAJsiaXT0Ec0bCSQ51J9TkefTVV+4Nyqs3Z85ZOU7XeBeMaJ3AAdKKYEcXyYfnC5SJrOuoQ83urylkl3EINHfxR7Yy94Ka53xOSCY/DvpyzpG3e5B2BJ4iY6jSAyj91mu98/Etul+60txujt9x1h4om1XPkEU85sa+WbkOQ23TwMUnq5VjukOEG1mG2SErdz7dGLmXnHB2JPtfVq97R9fDSEf85O2+z1vPZx/3TwY16ZjRArU0dmu9eT7sp2blFgEhvzdNDqAAvEC45jMvK98STNo4FZ7B+zTUNqfva+alVOSWTP/NB2jbNSNvDY/OyjNjtmDYcMWsXMTO33fAcZ34vbCw7I2MbwEYbJy3gqQUIGlRnk8zr8s+gTob/VBH+GnXkY7BFULbaQl4iN8iMlg/N8qh2W4C+Z5pc48ICgvhAshuPRxyDZHmTQtFEkX3DAkIg8CV+3G8y3oav3uZU7XVr9gxd7r86OzoYt9hTzWjrQ8g3Whurw6OxksHt+sDcc7h2+WhlfHm3FMBuIfP9WEFT0THi1+sPfDwctveLLo7PDnfP+/sluf+f38/29w593dxa3Ojv85ay/v/dyr1nl/hA98yZ1EYHzo8P93xdXPe2fgII9B8BHJ01A8xlrXL+/v3/+6uhwd3HNwdHhy72TgyZAKbkb9P1iuHt42poXDrCghyuZoSLdm15SMaJbj1hd8VGUZGFdIdWpnSFnOP5T3gNyaz1UBXg5xVQFxaipakm9PnYwa7F74pzV5HkJsWusWZaVtxqNuhb5X0YNafrtlkK4cF01SWli5Guz2PZlSFKA5efllpLRSijVAlnZZEk7wU7cEf7/okVtWfNAwNVhr2oimKEtu4A3wuc2YvGJVv41zMKDzXBvNoN2SnEpZdVefjU26TeajlRQZ7nOExeyNVNg5XYGlVWu9GAiPJgI92ki3KvMtRes0SaZ1GwYs6lh7Ow2VkcTgNUGSJPWD2L+IOb3KeZmy/3TS3y7tARWr8tKwDLzuvzsTE+ctHJsZ0J2RYY0C7rzjIkdD/d/DZv3mcea9/LEJ6JDkEmIi2Hk+Yr0ICg9TSPD/Tetv3dexqAmOvJoaGvYP9g9Otl7tXfYYvFbnsl9EoY4+F5+kLA86MhrsUsbCiPWqSB0XAMyRN5tiQAQVBIYxgNIG0dDApcngq84iTmAAuaN5mFn9/B38wyY0Q2R7qsjS5vfktgMRj25aZ0TeoxYG0ePJb1ksQgL6L/zvM9D5fIVfuSWn2DC3YwwPRN7yvLyDZumlhJ6KLbQmO2wYsosPX8LfYprP6Yg4ol200vSoxW7kXoUk+5hBl21Hk1kSVgeM0s3BewaQMd6TYFTmDTfneb/NgHPqzbtQUCeK5dRnJCEpJKu2td9+soR5nHnlzqop5l7+hFUnHF5GrWiYn60mNbmXhBNBcB8CnYMGlmD7elpzOTayeQitOmLTLSbHfGB2TZesiOyiBl/c3r8knnOpTXEQxjQ8tpzx5iIS/fwZdtJTEZQ9Qt5pDXBHJCeNL5aI7uDm8gX7JZ/DrnvutZAtKCcL+DwJaYMBArg/+NL9ZTxgKYSWOIaZBWOuPBC2J+MnD4QSgcL6sG57CTvMjsmnTAHzU6rW+y6HR1BbpQXEUxRRaT6GHcIzZhU2yvJG3TNjJXZ0wGOia2OlWsAwEmd7yrQgh9j5MdmcOULr4yza6mJmBuoyTW8TkPUQUkB0RQvzk/qGud4DWdJSqbWsbyeJKH2VALSAPV8NETy6NA75FnGsswYUZibiyrvgIM9CAMPmJB59iqP48newD3BnD26twuaG9TJ66+3ttpP8B/4/y1A45oQkPXXj7faT7fa30HZf261v32MJTOkM5Zglj89L9N+zE7NYHtoTC9Les97aH3x5NmzJ0/pHq8XyI8XW+4zh56UMg7XzlyPTZW5nF+WzY401dRLKDFgCfbTyUvwl2jVCzvGZ11TOj0+lV9za99OwGvDiVxAc/FyArAYvQ5bpzjwL6bu0OP0NJ2JcY7s9X0nmeJRBeXVngy1JRtX3pgq3V35VuiSrVnXUjs17t9IGSE4+yAqi4jzIku8ADP9jMQZx3Y04Us8CEvksTd32U2RLC2VJhWIFb8n81LfVg8A7f09euEb6+rUS2mK7RC+d7AAES70DFwhe66Cq62GZfC6pjH24gMp1jDAgFyr6rKMyiG5tvQaymQq4Lwp+YDJfKAJJjCjaJNu/SeT1YwmeLS2MO8uIGObJeLhSjrPCR06nu3vh2PuLSj8xopWZlfQyJntFwe5EEg9KwqHT7UcNEltxOwwLzkAINxiCL8RH4wwol+EARYMMABN/ka/84IBELd/AFeEYC5hZvOpjeexrjxy3aIZPT2Z0SPsKLTL6dLFAfbU5r3jAixEQRCECko/ABea38SzZEclAL1h8Uuhyyi/jmvJvpSVsgCTJpgTl5slS4I9VRsXIVNPph9Ffn4T5FLAjwrti/Dx+g3bmQG5BixKuDxRCgCKMwy6hhkBS4HNpnZvyJoWANKl+UcvocfdVoBKz+CX2YIfUh7k11AtBbnQvNfXf9POtCBOL52QKXHEg+vSXLvCv7rwT4veODJh/o6w7OhxDXBy2ZlfzHJPQ+6b/i+01WkqKQyuy6/78lEzgnoMWX4mmhzHmLe7x+sB6AlhSYutx0+2ovfYV+zk7h0F0IF/Q3A34kvu2KViwSnAAk1EMWagWP81XRd7CjvUGQOa2X7neuLhoeSa/ujzhukMjJIJYfqv5SRJ7wLogzo76jztPus+7jggXuG069B0fqyAucROmuHhNPmNzgb9rczSNblgFwlBpfEHL2KZ0lrIwgvAFHSVHNPXmGTa4jaovIzgpvWlh8elldxECbwLFbvsUHXyEcrjcTeMkmd/dCP4DrW6eTUO7+OTra35XL3qKwfm0yPcwJmYndrS3oMvHwLHOl1e4yNdWdm+ObsprISyzHr9+O3Wt1tNEEiaYJCsgkLy8dtnz57OW+IWNyJmJEn8AYnTPuZ6GrpqeDCxdmTTLAXboM9CYbXDYzVRB5fHqEARl1/WjjqHhUN/dndDf0uDh2C+8DP+32yhKsJIOP2aDMLw0iPyvpwQpPVYKZZ3+Oz+vT/Aw3alGgxkjKd2MPyjF3Uez/9/NrLyhd59AQA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.009Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "b184093074ffea48d93b8e1ac0d9ef4a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 425, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/access" + }, + "response": { + "bodySize": 1551, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1551, + "text": "[\"H4sIAAAAAAAA/w==\",\"xVhLb9s4EP4rhg+VNytH9wI5GGkD5NA2m3pPQVDQ4siemiJVkrLrFv3vOxTl1JIl2bKd7sUPipzvm+E89XP4Bfnw7ZDFMRgzDIexkgnOzfDt009atKgk/R7SgxTsQnH3RwPjtJAxa0FLWlgAE3ZBS1oJcDuuhr/C3eNX3edRJiq66jgv1BxlSJ8qt3uiQr+vIpHldgHSYszKR22SV0wgZxYqUhsE5hZFtN38Tw56c4eCnp2utDd0lGNEVFPwfy8mbtxlTvcszo1V6YTs9MOdXkC8vE8mcnMHzOYa3ks2E8BHT4GGORqrC0MG4SDImDFrpfkjGLDB819H0TIgEgN6hTFEyxm7vZiynJnFTDHNd4ShdNuYiNxCpDKQyNOxcwml8QfwTqxv7m73vTPxZjFdTkpmetC4QgHzYmOnQ2Xbnadb4UVEZ+yYfJaifYRvOWpyDGnNURG0e2O0lJqJ5HRtHL3cV8UjD/k3K6OyDWbPhdF82DxolZBFRvtOGe7fa+Y3dxqvR6QExDo4EA01JS/ls/s4xDJlFc3OAvDrDTakQDR0xX1xmk2aofMaMLbh/iqoR+jFU5QNKsH3WOQcHrwoLzxTofuIqipfXQCxIjAmNSyEhTPmhXeHHATQF8HEiwbjmo2xkB5ziy3a/gY3scbMXk66pVsK3YfP5KFXzqfl3NeKUOAKPm9kHO4U44N19mydq67F0TAh1PpWpSmTfFJsrblX9aadK/yv4CfqHnuQPRLah9Q14z51M/HANCMCoM11eeieD25ubgaB98dxyrIM5XwsUC5NcOjGCs5uaw/azVFRRICPhgoCUWRz4B2GyQSzidLpmHL6Cg1RJP41pJYqUBV0CkRbzO2qVibQfFvVuqvQuchtNTZTAuPNBezYr9j0V+DkenOaAkdW5bOFF33UWWYi5fkUUrf1YCqF76V0uh0UZ8FeNIP/QX8+t4/6PWecgUFSe5ivdXLtiTpDSX2GdF97NUGt5Ttm2ScpNk2tchl9vhr0bYPa+GzTegeTwZs3A0W/3lOlcj31B5/3P82+QkyTFUFoi2BGQU4BRaPo03NxxNv3PqEd1IJY4BNrNc5yC7cLJuf1aaDsvXzT1XABr+dNFLuZIpHRHCz5vnvhAoYiwanzeuPrLqplZmlWCOvT4ahlyEq/2J+/piS/Zu4GC6+VXibUF0WODkpjmYy7CuBRJqiNFEz6CbKB0U4H/qdpoZm4hhD4VH22TDundl5QI+gbh2Zupd9s6Z2VlXhHJ1oH5JCgLBrI/hapN6SGwpMC2gXgVN0hCG5GTy/vleqvlNr7QRc3R7CJKW0cvBlKRI8gipxrFpiV2WYzCr4QE0bJJmHCwIG59AXfMXPnLus97RylspiUJcMQWavzBq5NGf2F1K6IV6V9q4QAPwo9Bcgz4rs1cl2RhpeLDT1hT3doZe6t83GXwZ3SU6YpcfYbq2xxppipRtRCWOrErg3EuUa7ud7iFwhuAsuUpII/+HsQRAF9HjiA/GB+3TViL3M8//oPgcmj2Q8YAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.066Z", + "time": 64, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 64 + } + }, + { + "_id": "81d93bfd62ed9b30d11aef04d6706d33", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 429, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/apiVersion" + }, + "response": { + "bodySize": 659, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 659, + "text": "{\"_id\":\"apiVersion\",\"warning\":{\"enabled\":{\"$bool\":\"&{openidm.apiVersion.warning.enabled|false}\"},\"includeScripts\":{\"$bool\":\"&{openidm.apiVersion.warning.includeScripts|false}\"},\"logFilterResourcePaths\":[\"audit\",\"authentication\",\"cluster\",\"config\",\"consent\",\"csv\",\"external/rest\",\"identityProviders\",\"info\",\"internal\",\"internal/role\",\"internal/user\",\"internal/usermeta\",\"managed\",\"managed/assignment\",\"managed/organization\",\"managed/role\",\"managed/user\",\"notification\",\"policy\",\"privilege\",\"profile\",\"recon\",\"recon/assoc\",\"repo\",\"selfservice/kba\",\"selfservice/terms\",\"scheduler/job\",\"scheduler/trigger\",\"schema\",\"sync\",\"sync/mappings\",\"system\",\"taskscanner\"]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "659" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.068Z", + "time": 85, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 85 + } + }, + { + "_id": "37717db1403fe0fca4c76faa7b01295c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 424, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/audit" + }, + "response": { + "bodySize": 859, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 859, + "text": "[\"H4sIAAAAAAAA/w==\",\"tVVLc9MwEP4rjIbhlLHhmhtT6NCegHBjOowirZMtsmW0spMQ/N/ZlZVH26ElgeZgr7XP79tdZau+oVVTpTuLUU3G9wxCjwYufFPhQk23SvcanZ47eCvq9z008YNurINAavpV+bAoKn5A8OZ7kUIUy6wvDPXFBfUPPDnZo363NRXXNZ3uR74prvlxnidF67uYAsyS+HQY30KDts7hsG5d8RlaTxh92JznznkhnAyANuT8opil10Pvm4kymuCqIWi4OOzhEsHZ1MJSGwNE5TLGtgzwowOK5RK0lRZP7qup9Rxkr+fAFTqu+KN3aBBIZqaS2CLA2rjOwlXFedgSm6PPYZioXP6lD586CMlbSSsU6+DeqG2VcZrE4vwZMPuxnndVxRmb9FHr9Qx/gpq+eS2/iVoFjEwWw+q144x8/qJG55BSZY3sQwL4cu69GLza3m1lLmesJtv/iqGDQQJwi95hACNDkpzF0eqoC4thKHcL2egadoRMVPQtmtSwsSGysYY7iXHDIm0ak3Y4LhkxGh0xeWXEwvYpBP7VKhzYPIGRHHnHSaUdjaRktKP+OfGevLNn4Qwc8s8oRfsfMN7kNfmS42x3cViyUOnOjVj4QIZvt6uiJhOwjSItnJ9zfSxyfeS7YKTCsiTQvAGUerFp5WwRvO83ajjgyOmGo7qfTi2mfIkIbBNAR+AMXWtHwYKDJLQ6mmUmhGHfHCfdU9Ryg1c+2MNttjuRm2klIeCglBj32HweoiKsY3nLf53Z+Zixu/mH4/F6Zt5yIj7gu+cR7PsZNWOBaQ6fME42ApOvfGglM1/qtY659H+h7jcGIE0gqAgAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.070Z", + "time": 72, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 72 + } + }, + { + "_id": "653fe2843bcc7fd80db785216049a251", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 433, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/authentication" + }, + "response": { + "bodySize": 1661, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1661, + "text": "{\"_id\":\"authentication\",\"serverAuthContext\":{\"authModules\":[{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"augmentSecurityContext\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-reg\"],\"password\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"fzE1J3P9LZOmuCuecCDnaQ==\",\"iv\":\"nhI8UHymNRChGIyOC+5Sag==\",\"keySize\":32,\"mac\":\"XfF7VE/o5Shv6AqW1Xe3TQ==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"v0NHakffrjBJNL3zjhEOtg==\",\"stableId\":\"openidm-sym-default\"}}},\"queryOnResource\":\"internal/user\",\"username\":\"anonymous\"}},{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"defaultUserRoles\":[\"internal/role/openidm-authorized\",\"internal/role/openidm-admin\"],\"password\":\"&{openidm.admin.password}\",\"queryOnResource\":\"internal/user\",\"username\":\"openidm-admin\"}},{\"enabled\":true,\"name\":\"MANAGED_USER\",\"properties\":{\"augmentSecurityContext\":{\"source\":\"var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield);\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-authorized\"],\"propertyMapping\":{\"additionalUserFields\":[\"adminOfOrg\",\"ownerOfOrg\"],\"authenticationId\":\"username\",\"userCredential\":\"password\",\"userRoles\":\"authzRoles\"},\"queryId\":\"credential-query\",\"queryOnResource\":\"managed/user\"}}],\"sessionModule\":{\"name\":\"JWT_SESSION\",\"properties\":{\"enableDynamicRoles\":false,\"isHttpOnly\":true,\"maxTokenLifeMinutes\":120,\"sessionOnly\":true,\"tokenIdleTimeMinutes\":30}}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1661" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.071Z", + "time": 60, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 60 + } + }, + { + "_id": "aec85c9f6664d9880169fcf8d9d733db", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/cluster" + }, + "response": { + "bodySize": 179, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 179, + "text": "{\"_id\":\"cluster\",\"enabled\":true,\"instanceCheckInInterval\":5000,\"instanceCheckInOffset\":0,\"instanceId\":\"&{openidm.node.id}\",\"instanceRecoveryTimeout\":30000,\"instanceTimeout\":30000}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "179" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.072Z", + "time": 68, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 68 + } + }, + { + "_id": "8b83418cf28acd1b939879c72c951589", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 450, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/forgottenUsername" + }, + "response": { + "bodySize": 743, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 743, + "text": "{\"_id\":\"emailTemplate/forgottenUsername\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

\",\"fr\":\"{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Account Information - username\",\"fr\":\"Informations sur le compte - nom d'utilisateur\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "743" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.073Z", + "time": 58, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 58 + } + }, + { + "_id": "ba8f08c2397259b7af7094fa4d11c519", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/registration" + }, + "response": { + "bodySize": 431, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 431, + "text": "{\"_id\":\"emailTemplate/registration\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

This is your registration email.

Email verification link

\",\"fr\":\"

Ceci est votre mail d'inscription.

Lien de vérification email

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Register new account\",\"fr\":\"Créer un nouveau compte\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "431" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.074Z", + "time": 58, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 58 + } + }, + { + "_id": "71086d44381b7d81178ecc45f4989855", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/resetPassword" + }, + "response": { + "bodySize": 455, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 455, + "text": "{\"_id\":\"emailTemplate/resetPassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Click to reset your password

Password reset link

\",\"fr\":\"

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Reset your password\",\"fr\":\"Réinitialisez votre mot de passe\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "455" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.075Z", + "time": 57, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 57 + } + }, + { + "_id": "82e1f6e62e8145e19f78445f80160a4f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/updatePassword" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 273, + "text": "{\"_id\":\"emailTemplate/updatePassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Verify email to update password

Update password link

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Update your password\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "273" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.076Z", + "time": 65, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 65 + } + }, + { + "_id": "76be78f43255ef6c7f0ec368787fd6fa", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 440, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/welcome" + }, + "response": { + "bodySize": 420, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 420, + "text": "{\"_id\":\"emailTemplate/welcome\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Welcome to OpenIDM. Your username is '{{object.userName}}'.

\",\"fr\":\"

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Your account has been created\",\"fr\":\"Votre compte vient d’être créé !\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "420" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.077Z", + "time": 56, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 56 + } + }, + { + "_id": "8996c88e14b7ecbba49105dae49641fe", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getavailableuserstoassign" + }, + "response": { + "bodySize": 116, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 116, + "text": "{\"_id\":\"endpoint/getavailableuserstoassign\",\"file\":\"workflow/getavailableuserstoassign.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "116" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.078Z", + "time": 55, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 55 + } + }, + { + "_id": "e504a45bf842a314f67c6419cf0b82f3", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getprocessesforuser" + }, + "response": { + "bodySize": 104, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 104, + "text": "{\"_id\":\"endpoint/getprocessesforuser\",\"file\":\"workflow/getprocessesforuser.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "104" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.078Z", + "time": 63, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 63 + } + }, + { + "_id": "340e7202bcebc2ae1e41e59ead8e6dbc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 440, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/gettasksview" + }, + "response": { + "bodySize": 90, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 90, + "text": "{\"_id\":\"endpoint/gettasksview\",\"file\":\"workflow/gettasksview.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "90" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.079Z", + "time": 55, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 55 + } + }, + { + "_id": "050b4885370dd0fec91299f44157fa98", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/mappingDetails" + }, + "response": { + "bodySize": 121, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 121, + "text": "{\"_id\":\"endpoint/mappingDetails\",\"context\":\"endpoint/mappingDetails\",\"file\":\"mappingDetails.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "121" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.081Z", + "time": 53, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 53 + } + }, + { + "_id": "20416931a8bfbbe57c7d8022c7cdc8d8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 438, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/oauthproxy" + }, + "response": { + "bodySize": 109, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 109, + "text": "{\"_id\":\"endpoint/oauthproxy\",\"context\":\"endpoint/oauthproxy\",\"file\":\"oauthProxy.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "109" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.082Z", + "time": 62, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 62 + } + }, + { + "_id": "950d0219de4cf4b9516ef30be6bb5836", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/removeRepoPathFromRelationships" + }, + "response": { + "bodySize": 126, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 126, + "text": "{\"_id\":\"endpoint/removeRepoPathFromRelationships\",\"file\":\"update/removeRepoPathFromRelationships.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "126" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.083Z", + "time": 52, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 52 + } + }, + { + "_id": "acd8e0a1115f4a5814282f28fd6a895e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/updateInternalUserAndInternalRoleEntries" + }, + "response": { + "bodySize": 144, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 144, + "text": "{\"_id\":\"endpoint/updateInternalUserAndInternalRoleEntries\",\"file\":\"update/updateInternalUserAndInternalRoleEntries.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "144" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.084Z", + "time": 58, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 58 + } + }, + { + "_id": "4e2d4c5a497442e856fc60f741d3d798", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/repairMetadata" + }, + "response": { + "bodySize": 91, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 91, + "text": "{\"_id\":\"endpoint/repairMetadata\",\"file\":\"meta/metadataScanner.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "91" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.084Z", + "time": 63, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 63 + } + }, + { + "_id": "0a16240221eeea51a0aa371b1b13ad9b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/validateQueryFilter" + }, + "response": { + "bodySize": 326, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 326, + "text": "{\"_id\":\"endpoint/validateQueryFilter\",\"context\":\"util/validateQueryFilter\",\"source\":\"try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } };\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "326" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.085Z", + "time": 63, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 63 + } + }, + { + "_id": "663ad29a28f7c57cd35b8178c4fdb1a5", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 432, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/external.rest" + }, + "response": { + "bodySize": 86, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 86, + "text": "{\"_id\":\"external.rest\",\"hostnameVerifier\":\"&{openidm.external.rest.hostnameVerifier}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "86" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.086Z", + "time": 57, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 57 + } + }, + { + "_id": "b90c49fb8e97c6a49c1b99e8b28c3228", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 427, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/internal" + }, + "response": { + "bodySize": 353, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 353, + "text": "{\"_id\":\"internal\",\"objects\":[{\"name\":\"role\",\"properties\":{\"authzMembers\":{\"items\":{\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}]}}}},{\"name\":\"notification\",\"properties\":{\"target\":{\"reversePropertyName\":\"_notifications\"}}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "353" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.087Z", + "time": 56, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 56 + } + }, + { + "_id": "a691ccd864d3d6bd4cec893c7df77b9c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/managed" + }, + "response": { + "bodySize": 5007, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 5007, + "text": "[\"H4sIAAAAAAAA/w==\",\"7R1rc9y28a9wWM/ETu+kpJ3MtNcPHUWyO5rEluO4aWcsxQMdcTrEPJAGQckX9f57Fy8SIEAeeUdZsuMPjXV47i72jQV7G78lSTyLV4iiK5zEkzi7/A3PeRHP3tzGKSr4z2s6j2e3MV4soJ1c46OiIFd0hSkvXrIsx4yvYYFQN6xmVrBGVotuJjFFKwxNZYEZDKYZJwsyR5xktBB75vWst24nzM2zgp/gFHMshhZZyeZiLYbfl4Thx1/V/VOS5NN5ihEt86+eHDC8yq7xcUYpQIyT0yQ/QRw9ztLkTOI+iRhWy70A8MSv9yUu+JN/hJa2wWrf44U1qudmQA++zgVGHH/gh7+ha1TMGcm5wL2YL/EKCbwfmT/jJef57PDwtwIAUY0HGbs6TBha8Ok3fz3UAycxmWcUxi/QVNNdckDJ6EzMVcNmMHW2gP9gls3fzeAYKElWM80mM5ST2b/V5BXiU71ijrM8xYKHWAJ9szeSuSbyeAV28GeOiuIGuuHPK2AWqpsLKlciKfyTYIUnkAp+ofk8Kyn/mSNeCobiQPZ8mVH8olxdSgDEYaD0KEmAkGLEnADDmObjLBHryzWYaIZGjoEbrwmdix6WpVjMQg7bKjzF6qjky99f6UEM5xmTAyp2N11b+B/+fHeJTukiE6AxvMAMAwASXqA5jMbJc5TnhF6JtuyGYna2OGNXAoRkRaj5scIC7cCv0xOJhoQBWEzgRqj182JixIlgKVxS8G8dcs9icajR6YmYXLzEDPgBpfFsgdICC5KmZC5ng27IEUMruRCwySVJEkyPl4iJzvgwvtjo4etTwVxzREFQpoAqRwTkBAYCaLB+vAG4CowYNF0C75itNOsXnAFFJAvBeZw4oGrGepoQ7ky9JvjGatg0eUjivEBlymERRaAG183iit36U4HhK/whh7m/PlaL/s+Q/8mj2KWGGvoccRA1nwKclYIAhIsfNSSjUESsvXG4xOOAI9kXaRaCswUBh+YEfnMihXUrTWpMr1FKkmk1t+2wNa7u1qMiXIsQIEw4Vmcmlff6Z5wuakxcGQFJFf+6sMCCouOlMzQoXKLxhbJxShVqE5K0MPpmU7UoOyxbjIU4ztJUKBmBu7TOlxiOIAasECW/I60xFVKGj3LEl7V9P8zcsWBrQCsKGSY4TaTsSpN8obuekZQLTR6LxYT2BPX3A16LgRcbcZoMXwMvYGPeNa6S3Ephyu5XOFV2e0nyisEVmszumiiGkXypT87iLLkdBzv1/frECLCmYgdT2dQpotPoSMBGCi61uwYCMYbW/ZnJ0vC++Djqf3fLOnMNUkDmKi4eZ5OZWm/iCIXmoaBMuHi/qkxahCL7UKMFy1bQpveONF97nB+SqYZSLnNpfqMV5giYBEU3hC8JjfgSRw0+aoB8xRDlr+WGzVX/Jboi2TepRMpp9AENWU4Xeo2mMqUBGdfMKR2RAhaAjki6EtGpOIaoQYsBWgFsLHAwEawCvJjNiSTLMyHfwhCbXgvZmmVjT18gu2+YtujQD8pt2aYgjFWoeVQRJ+6tPNrURWDpkDLYw97UXqOvIaAvY1ojRcZ/3EeIbRf1rhRFtUelJz59rTCaGAeO9B7k+BSCCAbDJQC1KBPdfMhU82hSLHni+SBRbqPTiCIdlK4RRVuGlx7bHKugs3+4AE7Ij5heiRP61o0OhHuyKlfTVHVvJs409MFM+8t33zUmog/OxIuaKhq8XVxqdYI+Gbyo1aeJGRJZkW1IPxW/EMbLkMaqEgkrtUIdLodjWruzDZ6u0GbHOMbl8sY+PtF7kNfg6yHxvCJEOwD1mB323thBSgfhG9jWp+wruZ389iD37CDHTSRNUsCkhAJsYnJFD1aaKwhHFGiHCE2anDg5uYdGl3ZJcOEekVrBdJ9HtqdmVHS0NZqrlaDastKBBpfgYk3zWYuctOUgRAtypdJT2hPTeednlfH/OpYW3nTb9rsa9CaYJ72YvHF/X4RE3T2RNpL0kmxfiht52I4T6HKQB9A+6LT0oHqQrJqqg8g2yKXxCVZn3T1aPSOs4JHOyNtk0lmAhyniDtQjSriTPPdodap77yVP2tx8zEypuaXwMP7h+6NI31/4vOE7bIgWNzLFNi8Lnq1+EpdaVc5R/gmIe/6bnuXHzGY1LzxsLO9bc9kfva/395awAPKmm4XbIkDLVbIMtKFVu54Y0ZGxL2ld4H+Enkh0RYKrCo5WeZgtq1NrucWqp3sntqch3NPIDbIqGxsRD8TXFokGiOk2lijmmRyQM3KtpLVDsMMH5mLdX9XL+1T/KERzVF+XblP0TeyxmD9Fav5U67070u1NWEdU7+aGNxBgmavfkP7+kvOqg0xJpz0yXCZvpQsJGplnXZsQyFZZ5QSNGoLBKaz6Qr8je9UhsDWzhNNXQyyxk+kKcax18992idl1X/Mp3mEasbuPS8x+lxT3covJs+hmSebL6DT6HqeZnXMZdpXZqB8RbLU1FgLqRyQBA0uA3sxXy34UtADicExtXlNrtwelitPApMA+ArLtIaojHx0RVZc0N6tphtHU2F2reOdLscHdy6kk94MU09Po7IbuKppVpZxnrl/WNXQgDmxd5ezykuVZIbYiyerALHBgDdq05D+ApFwWKvYP9v82INin5eoY5YWXIUAcxoPPO/3vdI5yoEha+DNflKvOmbRUetqdmJACpWl2g5NnfRyHznK1DNwqU6o2xJ23DmoMz9XoF7fg0Y+VVUf07cPL4lSXdBaII/r0VsmnLzSyL9L1oA8tg11xjAPlmKSxSk592jj1qF35gTIX+lJVyLJ3EAUDXF5KoO7yAxdMEwhaoiLHcwKIZhC3M4iToBWwuCZzO4K4zDJRTy2Ultm3dUGKb9QyNYTNVfzQvENyHYr0C8B7nYMJOPwbFoALgq5XVUByR4UcGoAvVRx+ROsewd4FHA8gvK3L2HsUZ4TQbw1sB9dlePw9YkkGC9/9+MV18V51VuxuS6yYU131pQrzD1aF6RZtGTUxds3WoMrLNroM0Qp1vzzN13gF3COcNAoHAc41L55SEI55HXps0yRBsR5RmxSBWySZmP/UbkZtoEd0Jd0XVL5+EN2H1gurh+pre4COSKPmKzX/tskMiKp3bAG+EmkzJob/en7+538+fvPN9O/n59Po/Pzx+fmTiydfP/Luqu6JlgF0RqRm5RF5ZBSGk/YTy+Y9VmmmugTY7zHb5CHJv0Wc0Q6jUR3Y7qvq68cLF5xAMOVtcGteBWvbl9FjhnURxlWaXYok0exWKCLz5PfwEBXJQv4vKeS/9T7DHs9Wbpp8Oms9pf1TbL+bhab5u2nxvkQM7+xTaoNvvZ+ta6neEirfYrvvaPVhug9ka4vuvhiyfQzuW92e70EFkMp96oiWW2xM4CFmV43Ac+2atlQI7E7kP8wrp5HvdhO/BmOEcPjjvzYycVsPj7cV8f4ur2IsexPrdkpfZHU7uGFBaHi4oYJ8Le9+RjiywpFoIekWgdwAS5Ei0mqWFMf1oB6XZce2ftkq+Z3Vxa8FZwtFYzVPIrAtiYQyIUWeonWkrzeKg3j3kt+WG9CAHErNV79uGUMP6b0+o9zbQ43o7cO7o1je8F0jzdd5Ifpxalr6qzufTPcb2jdkbpvKo8GYoNImVH5QpVONtIUIJSXvy23vfLa6PVUw6HtfgQrXSOIZZYvITBBq28yQKKBaWfvUbq/FTUqmWNbz+aoe/z7C9GwpcXQWr8NBjYCFcnsR5w4W0z2I0HZd7KOMUgMP41vYvBjSErcxROWMXJYcP7Vv3yt+jB0vZtdgo2nBJUc7K9fhyDu83jkKcdwxKxa5zulbtW6vIKR6+lURR379htB3P5WgOUylkNFNddBihyk3mFwtec/IRIh5TY8RY5QagfCeVX8kYETihVpGo8u18qZqkA7iYF181X8mZyvMSxpu18QG5VsGXjuG5viKpaZRZq3sGd+wMg2SbdMGsJ+fsYZ1b69Q9Bb4RTb3r7y3sD2qD2qo6mmy6bYN7tI9d2X+fp106zDvwVVvaBP/qYdFRTE2el8NFhWT4N3B0uA7NsgKfY6oVulzsUS9X5OJatZtmdCDKVpf+QpiC4GU3gD8rQd6oENzKrxinnU4M3ryFH8gBd/2van2t8P9QydLRkYLoOo1v4RRHy2M8g/yjxZMuTnVQV+r2T2w6vvRmlFCJUub9AiY9o+GWoo1TNKrqtMYTV24dRWfvrIYPcs7TsVDo46hU3RH/xLNUCkNoD6egDZZeafybx0LBUVW9RnfwI04+nu0HW7jf9TmBvQ3MTW3urRM5aVe97VgZ4wYdKbDkbYOqBvvCPpcCAJyFBxza93ARWBGX2GUDFvmimXZ9Xqfa0Qv72OjFwm3H1PYdRLdLEHrVp8HBl3EcKV5INy0p4HHq765eOAkBi5LkiZKD1uhfZKtEKF2ZB88r+pdRfU1xzpqVw9zRPi+hB3gbzNMvZuRU9WfauRR3acazpoj9COfRoBrpvV6mCRHRyS5wydJF9ufIWlq7fYCSdJJWGDm4jHwBZKGoe310Sf7SrDhFoZfB47nFw773qn5JvP+z5BadHglax13iNt4i4j8KM9CPmPPz58ZIPzwW/REzgso24/7LBjwDl6/uWp3T0as9PIDeAsX5ofdFFojM7X7B5/6fBmgTmt8Zm83P25UPfCh9XjqcwdebQ2k+ylFE10Pjo57MWTlTfXyguToe/eCtPO4mxckncP9vSANwxcv6CPJsfN/WvFQvSDJW7vKuTav/ksj2R4FvYN2BJxo/LPgzLv4isfO/lGYNcKsa53Jbh+CCXNA20dhdvn8SyOQ7mULjAoVqSI1P6qC+TuwDagZ5VfQ9rAYWrZ2sxg9EB1oPOqsRC9K603Vt1EezjdR9iJqG047UfJskBMTOM8qHXUHlPXyVRW098C4TUQHkXtLUVNYPwVSribxqZV1ddFRJz0dCyjSwnbiUdxoXKLCfd+gBmlQxA9Q1Jv/A+C8+9WBbgAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.088Z", + "time": 61, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 61 + } + }, + { + "_id": "b1499bec9ed3b8c0b1488ce7644d09ac", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/mapping/seantestmapping" + }, + "response": { + "bodySize": 795, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 795, + "text": "{\"_id\":\"mapping/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"target\":\"managed/organization\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "795" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.089Z", + "time": 60, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 60 + } + }, + { + "_id": "74a7cfaea67f19b6a547ebb768e76ebe", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 438, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/mapping/mappingtest" + }, + "response": { + "bodySize": 886, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 886, + "text": "{\"_id\":\"mapping/mappingtest\",\"consentRequired\":false,\"displayName\":\"mappingtest\",\"icon\":null,\"name\":\"mappingtest\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"target\":\"managed/organization\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "886" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.089Z", + "time": 67, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 67 + } + }, + { + "_id": "06e43b06c5889436306de832c9ef5b8e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/metrics" + }, + "response": { + "bodySize": 33, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 33, + "text": "{\"_id\":\"metrics\",\"enabled\":false}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "33" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.090Z", + "time": 65, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 65 + } + }, + { + "_id": "b383c6f86886873c85a44fc34ee9c862", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/passwordUpdate" + }, + "response": { + "bodySize": 415, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 415, + "text": "{\"_id\":\"notification/passwordUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"password\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.passwordUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your password has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "415" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.091Z", + "time": 51, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 51 + } + }, + { + "_id": "01b649998d9398654a57902d252545ba", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/profileUpdate" + }, + "response": { + "bodySize": 560, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 560, + "text": "{\"_id\":\"notification/profileUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"userName\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"preferences\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.profileUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your profile has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "560" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.092Z", + "time": 43, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 43 + } + }, + { + "_id": "fe870654434ff77b9195e8510c2343c5", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 438, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notificationFactory" + }, + "response": { + "bodySize": 180, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 180, + "text": "{\"_id\":\"notificationFactory\",\"enabled\":{\"$bool\":\"&{openidm.notifications|false}\"},\"threadPool\":{\"maxPoolThreads\":2,\"maxQueueSize\":20000,\"steadyPoolThreads\":1,\"threadKeepAlive\":60}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "180" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.092Z", + "time": 44, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 44 + } + }, + { + "_id": "00725d753c390a655105f030d582ccaa", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 425, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/policy" + }, + "response": { + "bodySize": 735, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 735, + "text": "[\"H4sIAAAAAAAA/w==\",\"zZVNb9swDIb/iy79gF1fh1wLFBiwQ7Edh2BgZcZlIEsuJbszgvz3UbabxF7mtOk29GTDpF4+/BC9UT8oVwtVOUO6VYmCPKdAzoK5I4NeLb4vE7WS153TzdqLH6N3NevOY6M0GF0bCJjfs6uQA0XDRvU+cpTxqSbGywuPZvUNuSGN91FOHC+ubgoMX7EgHxhi8L3I5ZXECm0VNQL+DNkaGvCaqQpqu6cQaxT2vXDGB1ri9pf4PIb3g4lIR1QdcEgBLZTRNzYj6ev8YqmAoexgV44fKM/R3j4CR6PK1HI7uLefYxs1WOtCqp0NQDbV4gg6oHhvlzHqEKYC758dz8QqyX5BW4RHtfg0DiEWKusyNb1ZdJejdMlKPBmfrJaks+uZZLvHlGAfaGhJ3ivsv8cEsaxC2xvmynN9Zn2C6DsGc+tsHCNJyc+ANmAoT1/ORPHdoZGqGPq7dVLrqUZuU7l1gjbpHFMjl7HA34F2hYhT2eUPzNBOSzDQxskd1++/NGnHJiUiW8zBjQdWRu3DjEpypGW7xqQd64getOxJf2egmBujs0v5qjZPLQdMqXtYow5T5jipr+c9A2vUYOSSvH9TyH9dokOmEexwMU9fwGHIE2VrY94afroEjh7vEktJlo+fWcXsDM6u4o+28MZ5lGChwPx0Gv0gn0bHBm1I+7/1kboJ94qKbAirovVPf/pfNQjUdkAJAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.093Z", + "time": 57, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 57 + } + }, + { + "_id": "3b7ebd7cf01869d6ce8cf4a5c9da9642", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 439, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privilegeAssignments" + }, + "response": { + "bodySize": 493, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 493, + "text": "{\"_id\":\"privilegeAssignments\",\"privilegeAssignments\":[{\"name\":\"ownerPrivileges\",\"privileges\":[\"owner-view-update-delete-orgs\",\"owner-create-orgs\",\"owner-view-update-delete-admins-and-members\",\"owner-create-admins\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"ownerOfOrg\"},{\"name\":\"adminPrivileges\",\"privileges\":[\"admin-view-update-delete-orgs\",\"admin-create-orgs\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"adminOfOrg\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "493" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.094Z", + "time": 60, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 60 + } + }, + { + "_id": "47768b99c96433fcc0faa9554a4e372e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 429, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privileges" + }, + "response": { + "bodySize": 919, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 919, + "text": "[\"H4sIAAAAAAAA/w==\",\"7VhNj9owEP0raU6tBErP3KKFSkjtstrtx6G7ikw8CVYdO7UdEIv4750EliwsaWarVkKVTxDr+WViP7+Z8SZMBA9HYWnEUkjIwYaD5w+j75uQpSlY+0GyfP/snBHzygHOU6wAnGGA8ZmS63CUMWlhOzhGcbCpEaUTWvWD9UqBsUc4Z6oXMMYLoWw/XQHF/JTvLLBkBpTrx6ULITlCqYzTMfFjKMAdZUyFN2tJ5511wh8GKIN6/2oJ4EMmpAODE6OnVwTwM7gPNxvU03Z7HwbaBNEx6wkCX9KoZx/lcClgNaxKzhwMOUjAH23yRo/MLeqdZIrlwCMcZUo8sr2cSjCFsHYfW/h1OvmGo19uxvHnCf4ZTz5O8M9D88VeyV7JnUrezQxKc6rMFCn+UI1Xt5OYor7KgrkmKbBk1q604f3IXCxB0UgtQQMFE/IvHxBcEV0pd+eYqwi6dugK5UIruK7qk0BYK20dkzFHkVsCfyrcmkp6pTlhXZvPMwRSpHRwY/RSqJTAa7QEimM0GiUsFKvc4vGWRmqg1MYRgJBlgCdtCUTiAz7G85OrAg8jYZZk1t2tVdqP/DFnU5Vpwg4byAC9IKVEneJJx0iBf2JlKVRONvJZNjM5YWtqhyRiG7t6iT1nk89ieKVNHs/cJfUkQRvEvJ6UkqWw0JKDSRJSjt9lvyFTfNgmuBOPrd2xM9PvE/wh5Xuv9V7rvdZ77X/mtdF7rEwDtMkgasNsB9+8jdqIcPBdRxF7aDZIFkstXy+qeereAt87/ave6Sn07luA+DyilWlD4W8BvJAv7RJgJ0x/CeALU1+Y+sL0kgrTTo+8zDuAzgzvG3/vr95fvb96f/1d348tfhtn3eL3Nf5HhesrPfZQsz5sfwGv8MZVJCAAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.095Z", + "time": 51, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 51 + } + }, + { + "_id": "f72fc2cc21d104762b3c16db0f0db1bc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 433, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/process/access" + }, + "response": { + "bodySize": 246, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 246, + "text": "{\"_id\":\"process/access\",\"workflowAccess\":[{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-authorized\"}},{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-admin\"}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "246" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.096Z", + "time": 56, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 56 + } + }, + { + "_id": "bc1b98e58c7b710a4bc8518787bef019", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.ds" + }, + "response": { + "bodySize": 4251, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 4251, + "text": "[\"H4sIAAAAAAAA/w==\",\"7Vxtc9s2Ev4rGU7nPtyJcS5tOklm/CGWnCZNnLiW3bu5NJOBSEhCTIEMCNpWPP7v3cULCUkgRUqyfHPXfIlMLJ5d7BsWL+Rt8IXFwctA0Cx9HOdBL4jS2Yxw+PnyNohpQiUNZyTLGJ+ECeOX6vmXbwUV89cskVRA5wNsOJ9n9BH99uiP4Idb0+HujwAA04wKIlnKgXJw/P74/Di461loScSEypDFeThORShohHSrHFTD29gyMH/WMwAOdDaicUxhdGOS5LQXJDHJ+innNELi1ySSqWBUDWjEeIz/R2XzaZomQ/adBi+fPek5z4c0KgSTc+CVg/Dy/P0QRJhS+HlEiXzLQeArkgxRQFTiz0+c1nM2o2khT1iSsJLin0/gXy/IBJsRMX8PQg4Bggpo+nQbTNNccjIDOXCcPP4ajkUap2FMrx5HCclzFj0Gk4EMWSpk8PLpj89f3H3uBbmCXwH8DIoRaSpxsKSQU8oli4zyboOczbKEWoUMUKEFiw9JPGMcOODDU2B5nQqlrR8iMc9kij8lWB+ob0INEVKu2hC3F4A+CoUasWyq7PnqeHjQP+ofnL7rD5+dkjgGbwHCmEgCrcmvB0c/n7+gL/qDd2/6H56f31wOfpocHgIFu4L241hQ8f36+OLi8s0vz54/jd4Prp9dq/ZLOtdW+/FpL5iRCHnJ+Yvxvy9k8lNGb35J3nyM/tE/0mhZIbI0R8FZPAM18jGbPF4QPScJ6Co4ens+fJfwU3r+7DKJiuP/jPjku+YIXjBK6NvYGAiAwnw+A/uMSQF97/AfyM1h4Ey+FmCql9rd8PGM3FQe+UpKOsskmOkZGInmaSEieqJDSUejgnSf8HPokRCp3KM4nFAOXKJeHB0aWexP12/wmXEd9RNEwnC5yRIWMRc+Sooc3JnGKtx0qDKTGZY415B2lwTCefQV9NHHxxicn9AFP6pn0DgWIWpYcQlLpueK31sQ7TMGEiYEaSJbpbfbgOVn9FvBBKYDKQqTDUDjgo0KNQjgAvjGj00g9IJrMBoZsURHfCQgiOlHnsxRYyYJIfwy2IKYHmDoLUuZ1/WvKEuYrzl4p3KsONdue0Bs999ttC3YKOKHNnQfAQWDUEtF3oPHur9P8ZCUo/EkzEy/8Mr2w1DVbSXXUAW5j3Zzk0S8o0WiKY0uh8UoBww+8WrWyK0ow7wi9ViIcoxsr30NiqXwdP5KrohSZUN3pAmV//sQZkRGU6cXauwE4p8pA9cqzWCr3pV5vAwYL3X1nvKJnDbICsSVusJEk/vcmubyjOJsQxfmivXWNowQABxfI5T+tMpqwfmjKREwn1MxpHJfrl/yDHOoYB7W8UmSpNcXXOfSMaNx3wqXd1K+wgkLB6gaptdJlxXfxUUXFPjfGICM953hNQFhdCwMxwO44LAxU1M+1Gf7cteK40MnaZLTIeU5k+yKmgGa+rO1nyIGqNmA2HHoks3jo7ucFSo9wuqEdpLaMcGYJd6c/PAu/78yJWh5jsBR4n2FmGYZjogr5sME2UP7EbmxCl7vRuSmUla9F4G3tYcEz1wLueAtlvo0xUUQXV3juC5jibo5TIa95k7pvLD8ts179BGznrTDGoKLkgkdQhKc1Zeb7ZOdRq/Gn2v8MNcMmr3m1YS2dRnA9IHZ9qUKuqX0FXpTBW2p3jAc3LyfFlw2iF2CTjV9GKkOHuAqZ3SsqbzpqcnxBc3QJ5YKxn1kS8vZqTD/3yqTh8/S/ZTnNCpQ1iqrth4sxmFUIbRLtfCQJQT3UPc6OVds/5qgF2bTARuPqaA86pYhF+bYuMJoNn7B2beC7j/ZaL5/pZoH9LcLj+k7eduKDdf5Wk7FgI4Zp/HvTMiCJAu1wLLbGZpHJVE7r0MuWOwgm/BKYyxUDYZutWmf+0O287nq1GVHqNzgVfw8psVsOuBdCxXsFcb+9TqoHGpheUSn5IrpGqguBAxpOLK0za7fetgNwTA2h5Ldxmt6efAmIi0yrcCavoqiRlkLodl6eM3BCgGUNZXfut1fthY7WDpoGG9wMzxf5SQ5EGmyGsVpcYjP8x78sJQ7OYIy5zEWM1Tc9xm/sFb8foIn2jZvevRrhJl/0MfFqs8ZqiOojhNPCZZ4UPlxWDbFKkVWopgtljNq53IdjDGzU1PNMVVF49svo3kkWFYH4TZ7euuj71rOqtm3MBPsiiV0Quu1VYNY9lw+bMN9rFkGS9gEa2YpCDhDZ3QLoapmi+E51SvdXBnI4+b4fPdu7jlpLV1eSbLP49Vyn6/e/KtbgZUK8U6KT3PqEst9aUsx3aeSxkzksvEMGkUKLZknVLD9NyhM8LTHO9W6ON9KwhokW180gdQVEvrKyvrBlHTeGSJJo0vvFQXVcG+GB/C9Gp6nMW1WFUgUIpXv+sGdvb5wAINKI5+6VANmGEW3id4gOTM+GUKak3RizrnqLjkobvqnK2+UMMrlgH9QUDjuuqm5QtnCDC0kcutAzvIpXulad4NDQ2l6yfwzFstfQZad52ztfRCNxnJi6b07O+UlnvVQltgXkqpoODPFQz9NEn1VqR2w7mVLj6jqXXsdZlNOuncbTjioYmT5KGWDh+lj2HUOWzS7pmWvKim8uKNl0/BVv0q45TA8KCVpfQdK9dPddpt9sOhsbwAlQUhqrUtmIzYp0iLXN7X0UFrcfXLBLYS2tdYQi/03d24iWltx1uBXfe49OttOucsiYr/GGXhXYT+jeU78JzA1otke9WADKglLukPGup+vyJ+SvIuMmt4D1PIinwPVMC3kTBako+9VfWpzsA2ZLqiLHR80vUPUyqJLuJsOtTPFBvpY6viwk5AlM4t134ThzFNnaSFVYH+6hSRPx+wG+pQTS1W3uZNJeUneTCt3ePc7n/Po4FtBPTdEodRTDVjzIdl9lcqIrSXYZ72Mt5Lpjfd0dlmu0NKu7ABoyAGRTWnHwVHkMam5frk2WVdIDbma02uj4TZAQJ1aeywNbu2KwkGpWVZYBzijV61wKmofVBJ3GBhQ1w1MdInnCrFdYrNULTVnyWvmDtnWtTSlDwJIXrUfJP6qK9tUeWpeKVh9K+Dg774MYho3yR1oLt/mokYMlTU11W/4btCxqoTk/AQvOoNoZ0WiymuY499OeCror5ZSUfQ1TJmM2mQqyxpog8/mYIJ5X7zQLRu9dzFm/o1sfL4RIJvpN4FWIXXLFqB+m28Da/c5eSqhqq3eRFrm4bZvu+1Z42gui229raWDLYx6ZTbU9QT+WtrZ/+L222J3f2WneUbx/Sv/bjO23ZPm96Nsk8l0NLfXtdLJVirGcZnLbz7lOs0bxZAVxRubpnErYHw+4TPKvUmlau1tw6/WOQxiWPHZk7+sMl51mzanY47gjQdls47HeyXsVud76rx0pzzV2eiakLC0qZgQzr7Xpn23/X7dy+W0ZwdbUMKKi6mXb9tbCKk/jj+KyVaHvlOWxPBXW64ZEVRdZK3huDDCRs4dg0CTbz3eNafMXh+pO3pOr3mHASjqreU3+u84gtJq5tXzd3ReLq07GtIb3E1XNO43mJHDtkF8orHOdDbrEs/+yyFu7ux4a2BhWIs5uL3pnGnMZ7jOoSe2u1niOkrTJYf7dRR1eW83jnKhB9zFUWquVNgqfMkKzlcs1o3I1KzrnWO1+vf7xtKKY0P/VbItr106CLmwXPIL6sx/Gwq5kCLtly92mCF7u8gETk2pw3a3qcC5OraNqRWMyhNLN+eWhFXX4eqMvlxOuhlLMfNdxewSKwakiwKXk9tKFt2dB25g3hYu6JQduxBSwe1aRnu56/gmY/r7PnV3LbLrZaJ1ZwOCkhhPBgYsj4iI/wWN4OsO0/ckl/0p4SBrA1eXYmOW+Okl0ZAKlkve0l/vac3XJmjs5N/e4LVhXN6BgHFOoHNeboKv1I0rVBttawia6MlnyjLvRbEFgh0WHS7utkXHmYPVsupw2avtbHwRMwY23tqrbNxIx2Vv/67UduAF86MWbDO4DE/ovJ5gmjaANUe88il+futjVpZNs6socl0DSi698sPkcKHYneoXgV+qI0sIG11ky0LwD0WSvE7FCQNWfHLqVI06ciE0TwDf+fMUqjqkvqInaczGc6dpWIykoHSgvsNmZkx9CdN83+xWHU2od/TORZFLXecK/dWD4G+3+MksxiEOk+RxzMTdge16IJEctzQx4r0g9hWvFmAKJ9NvKnix9JXT4Nd3+CE26TRg5DF1kPUnYFalveZOAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.097Z", + "time": 49, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 49 + } + }, + { + "_id": "bd5d9cbc1b0e2e075e3f77bb51e59736", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.init" + }, + "response": { + "bodySize": 789, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 789, + "text": "{\"_id\":\"repo.init\",\"insert\":{\"internal/role\":[{\"description\":\"Administrative access\",\"id\":\"openidm-admin\",\"name\":\"openidm-admin\"},{\"description\":\"Basic minimum user\",\"id\":\"openidm-authorized\",\"name\":\"openidm-authorized\"},{\"description\":\"Anonymous access\",\"id\":\"openidm-reg\",\"name\":\"openidm-reg\"},{\"description\":\"Authenticated via certificate\",\"id\":\"openidm-cert\",\"name\":\"openidm-cert\"},{\"description\":\"Allowed to reassign workflow tasks\",\"id\":\"openidm-tasks-manager\",\"name\":\"openidm-tasks-manager\"},{\"description\":\"Platform provisioning access\",\"id\":\"platform-provisioning\",\"name\":\"platform-provisioning\"}],\"internal/user\":[{\"id\":\"openidm-admin\",\"password\":\"&{openidm.admin.password}\"},{\"id\":\"anonymous\",\"password\":\"anonymous\"},{\"id\":\"idm-provisioning\"},{\"id\":\"connector-server-client\"}]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "789" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.098Z", + "time": 56, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 56 + } + }, + { + "_id": "9f231197089ead48083fbb1440010a11", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 425, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/router" + }, + "response": { + "bodySize": 619, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 619, + "text": "{\"_id\":\"router\",\"filters\":[{\"methods\":[\"create\",\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"},{\"methods\":[\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^config/managed$\"},{\"condition\":{\"source\":\"(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0)\",\"type\":\"text/javascript\"},\"onResponse\":{\"source\":\"require('relationshipFilter').filterResponse()\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "619" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.099Z", + "time": 54, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 54 + } + }, + { + "_id": "ccd397735c0fb9e3c00c0ecdebadad2e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 436, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/seantest" + }, + "response": { + "bodySize": 459, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 459, + "text": "{\"_id\":\"schedule/seantest\",\"concurrentExecution\":false,\"enabled\":false,\"endTime\":null,\"invokeContext\":{\"script\":{\"globals\":{},\"source\":\"//sean has changed this script. Let's see if it is still working. qqqqqqqqqqqqqqSchedule1\\n\",\"type\":\"text/javascript\"}},\"invokeLogLevel\":\"info\",\"invokeService\":\"script\",\"misfirePolicy\":\"fireAndProceed\",\"persisted\":true,\"recoverable\":false,\"repeatCount\":0,\"repeatInterval\":0,\"schedule\":null,\"startTime\":null,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "459" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.100Z", + "time": 43, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 43 + } + }, + { + "_id": "ab8521e6a907278952a8693cbcfb761e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_activate" + }, + "response": { + "bodySize": 838, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 838, + "text": "{\"_id\":\"schedule/taskscan_activate\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/activeDate le \\\"${Time.nowWithOffset}\\\") AND (!(/inactiveDate pr) or /inactiveDate ge \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/activateAccount/task-completed\",\"started\":\"/activateAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"active\\\" }];\\n\\nlogger.debug(\\\"Performing Activate Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "838" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.100Z", + "time": 54, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 54 + } + }, + { + "_id": "42626b5d9ae06814ca0230b793cb2d1f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 443, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_expire" + }, + "response": { + "bodySize": 830, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 830, + "text": "{\"_id\":\"schedule/taskscan_expire\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/inactiveDate lt \\\"${Time.nowWithOffset}\\\") AND (!(/activeDate pr) or /activeDate le \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/expireAccount/task-completed\",\"started\":\"/expireAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"inactive\\\" }];\\n\\nlogger.debug(\\\"Performing Expire Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "830" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.101Z", + "time": 52, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 52 + } + }, + { + "_id": "5fb111d428ad18346dc15d5fa8e1e840", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/scheduler" + }, + "response": { + "bodySize": 156, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 156, + "text": "{\"_id\":\"scheduler\",\"scheduler\":{\"executePersistentSchedules\":{\"$bool\":\"&{openidm.scheduler.execute.persistent.schedules}\"}},\"threadPool\":{\"threadCount\":10}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "156" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.102Z", + "time": 42, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 42 + } + }, + { + "_id": "0b8355f1ac5870bd599a7d814921a98f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 425, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/script" + }, + "response": { + "bodySize": 939, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 939, + "text": "{\"_id\":\"script\",\"ECMAScript\":{\"javascript.optimization.level\":9,\"javascript.recompile.minimumInterval\":60000},\"Groovy\":{\"#groovy.disabled.global.ast.transformations\":\"\",\"#groovy.errors.tolerance\":10,\"#groovy.output.debug\":false,\"#groovy.output.verbose\":false,\"#groovy.script.base\":\"#any class extends groovy.lang.Script\",\"#groovy.script.extension\":\".groovy\",\"#groovy.target.bytecode\":\"1.8\",\"#groovy.target.directory\":\"&{idm.data.dir}/classes\",\"#groovy.target.indy\":true,\"#groovy.warnings\":\"likely errors #othere values [none,likely,possible,paranoia]\",\"groovy.classpath\":\"&{idm.install.dir}/lib\",\"groovy.recompile\":true,\"groovy.recompile.minimumInterval\":60000,\"groovy.source.encoding\":\"UTF-8\"},\"properties\":{},\"sources\":{\"default\":{\"directory\":\"&{idm.install.dir}/bin/defaults/script\"},\"install\":{\"directory\":\"&{idm.install.dir}\"},\"project\":{\"directory\":\"&{idm.instance.dir}\"},\"project-script\":{\"directory\":\"&{idm.instance.dir}/script\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "939" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.103Z", + "time": 44, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 44 + } + }, + { + "_id": "372152e7418e4bbb7f1bb2fd5327ca2f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/secrets" + }, + "response": { + "bodySize": 1829, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1829, + "text": "{\"_id\":\"secrets\",\"stores\":[{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}\",\"mappings\":[{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.default\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.config.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.password.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"],\"secretId\":\"idm.jwt.session.module.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}\"],\"secretId\":\"idm.jwt.session.module.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"selfservice\"],\"secretId\":\"idm.selfservice.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}\"],\"secretId\":\"idm.selfservice.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.assignment.attribute.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]}],\"providerName\":\"&{openidm.keystore.provider|SunJCE}\",\"storePassword\":\"&{openidm.keystore.password|changeit}\",\"storetype\":\"&{openidm.keystore.type|JCEKS}\"},\"name\":\"mainKeyStore\"},{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.truststore.location|&{idm.install.dir}/security/truststore}\",\"mappings\":[],\"providerName\":\"&{openidm.truststore.provider|SUN}\",\"storePassword\":\"&{openidm.truststore.password|changeit}\",\"storetype\":\"&{openidm.truststore.type|JKS}\"},\"name\":\"mainTrustStore\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1829" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.104Z", + "time": 41, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 41 + } + }, + { + "_id": "31ff64d3e984c38b0c14569db37889ad", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 434, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.kba" + }, + "response": { + "bodySize": 290, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 290, + "text": "{\"_id\":\"selfservice.kba\",\"kbaPropertyName\":\"kbaInfo\",\"minimumAnswersToDefine\":2,\"minimumAnswersToVerify\":1,\"questions\":{\"1\":{\"en\":\"What's your favorite color?\",\"en_GB\":\"What is your favourite colour?\",\"fr\":\"Quelle est votre couleur préférée?\"},\"2\":{\"en\":\"Who was your first employer?\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "290" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.105Z", + "time": 36, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 36 + } + }, + { + "_id": "b45a1aa28d4bff434764448f028e4059", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.propertymap" + }, + "response": { + "bodySize": 713, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 713, + "text": "{\"_id\":\"selfservice.propertymap\",\"properties\":[{\"source\":\"givenName\",\"target\":\"givenName\"},{\"source\":\"familyName\",\"target\":\"sn\"},{\"source\":\"email\",\"target\":\"mail\"},{\"condition\":\"/object/postalAddress pr\",\"source\":\"postalAddress\",\"target\":\"postalAddress\"},{\"condition\":\"/object/addressLocality pr\",\"source\":\"addressLocality\",\"target\":\"city\"},{\"condition\":\"/object/addressRegion pr\",\"source\":\"addressRegion\",\"target\":\"stateProvince\"},{\"condition\":\"/object/postalCode pr\",\"source\":\"postalCode\",\"target\":\"postalCode\"},{\"condition\":\"/object/country pr\",\"source\":\"country\",\"target\":\"country\"},{\"condition\":\"/object/phone pr\",\"source\":\"phone\",\"target\":\"telephoneNumber\"},{\"source\":\"username\",\"target\":\"userName\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "713" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.106Z", + "time": 41, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 41 + } + }, + { + "_id": "84ee2e3e3f7cef3023dd7241ced2b77a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 436, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.terms" + }, + "response": { + "bodySize": 730, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 730, + "text": "{\"_id\":\"selfservice.terms\",\"active\":\"0.0\",\"uiConfig\":{\"buttonText\":\"Accept\",\"displayName\":\"We've updated our terms\",\"purpose\":\"You must accept the updated terms in order to proceed.\"},\"versions\":[{\"createDate\":\"2019-10-28T04:20:11.320Z\",\"termsTranslations\":{\"en\":\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"},\"version\":\"0.0\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "730" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.107Z", + "time": 29, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 29 + } + }, + { + "_id": "4734d7816408991b39320106367532a9", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 440, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/payload" + }, + "response": { + "bodySize": 191, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 191, + "text": "{\"_id\":\"servletfilter/payload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":5},\"urlPatterns\":[\"&{openidm.servlet.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "191" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.109Z", + "time": 36, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 36 + } + }, + { + "_id": "6cbf25336f75bed9003dbd20bd94c130", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 437, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/cors" + }, + "response": { + "bodySize": 402, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 402, + "text": "{\"_id\":\"servletfilter/cors\",\"filterClass\":\"org.eclipse.jetty.ee10.servlets.CrossOriginFilter\",\"initParams\":{\"allowCredentials\":true,\"allowedHeaders\":\"accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with\",\"allowedMethods\":\"GET,POST,PUT,DELETE,PATCH\",\"allowedOrigins\":\"https://localhost:&{openidm.port.https}\",\"chainPreflight\":false},\"urlPatterns\":[\"/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "402" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.109Z", + "time": 43, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 43 + } + }, + { + "_id": "479d6a831987c6fbbdfccaa366e89114", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 439, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/upload" + }, + "response": { + "bodySize": 198, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 198, + "text": "{\"_id\":\"servletfilter/upload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":50},\"urlPatterns\":[\"&{openidm.servlet.upload.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "198" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.110Z", + "time": 37, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 37 + } + }, + { + "_id": "4c1fef66c916c8940b0315dddc564b06", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 423, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 811, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 811, + "text": "[\"H4sIAAAAAAAA/w==\",\"7VfRjqIwFP2XPpP47ltHkZDFkgV5MBtDOlBJJ9iytE7GMf77tqOzq2sZihLmxQcThXNPr3jPucc9SGkOxkDsWAYcsMFVRVkhwPjX/uzOaIMZLkge1gVm9B1Lyll6uhbxkqjKjDNBmIzI7y2tiSpc41IQB+RUVCXeIbwhiqydhyoiMGbbsnQAsy2qeEkzSo5t40wjwHgPipI/qy7U24MDBN/WmaYbjQTBTBIhVaXcVfqaJG9y9IJfschqWkmg8VRu8ZEJwPmT7yVhEqsbvR2gvmhOe281DpNo4qZzP4595N3cb1Fz/rrT5BUXEt7FcN6eqS8A4yWagEvgLEzQNIVB5MLpMg189MOdtlcl6GcCA3/m24GhasZDNljdQBqiYNkOXcDIcxepIg4jG+rTL2aNh0GQeiFy25GTEM38aG5D+vG4Lc5+il20AIeVmouaV6SWR9WtzobhJM0RP9OrplE+AteS1Ee4xHVB5Bm81lLWDdjZTnwauNNH/vxCMtmHDzURdzOmJhajU335qPsbB7OLDTQ5t+m5g+ysnaWr3r5w1F7038WGLvztThG27lWTSoVxrs2yhULQgm2UGj9pE6FO7qjRRpZmQTaWdMwJWORr/Wpbal3jwSfvJfetEcHM1nWBW/Vzjyy+afP38Cs8MsNgmQH/VW5Xs3K6b2OTv221UfxnZ/887+PPkbWBXdcZLOsa9IgIj4gwZEQYVHNOy442afIiw5ijhvGwe1KHDWFzALGpfsj8IfMhZW5O7t+veOdqBTbv5dXhD+46tPKwFAAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.111Z", + "time": 37, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 37 + } + }, + { + "_id": "c6aed7f604cb532801a9b95de9922a3c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/admin" + }, + "response": { + "bodySize": 244, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 244, + "text": "{\"_id\":\"ui.context/admin\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/admin/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/admin/extension\",\"responseHeaders\":{\"X-Frame-Options\":\"SAMEORIGIN\"},\"urlContextRoot\":\"/admin\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "244" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.113Z", + "time": 31, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 31 + } + }, + { + "_id": "05bacc81732e6f86cfe0b782cdde4f67", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 433, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/api" + }, + "response": { + "bodySize": 205, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 205, + "text": "{\"_id\":\"ui.context/api\",\"authEnabled\":true,\"cacheEnabled\":false,\"defaultDir\":\"&{idm.install.dir}/ui/api/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/api/extension\",\"urlContextRoot\":\"/api\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "205" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.114Z", + "time": 36, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 36 + } + }, + { + "_id": "17421c1d759655006a294261cc77fd75", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 437, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/enduser" + }, + "response": { + "bodySize": 174, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 174, + "text": "{\"_id\":\"ui.context/enduser\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/enduser\",\"enabled\":true,\"responseHeaders\":{\"X-Frame-Options\":\"DENY\"},\"urlContextRoot\":\"/\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "174" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.115Z", + "time": 29, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 29 + } + }, + { + "_id": "61e2740b542f064697798e2a02431f03", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/oauth" + }, + "response": { + "bodySize": 199, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 199, + "text": "{\"_id\":\"ui.context/oauth\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/oauth/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/oauth/extension\",\"urlContextRoot\":\"/oauthReturn\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "199" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.115Z", + "time": 30, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 30 + } + }, + { + "_id": "eadbb4ad948866a207831ff04c796efb", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/configuration" + }, + "response": { + "bodySize": 588, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 588, + "text": "{\"_id\":\"ui/configuration\",\"configuration\":{\"defaultNotificationType\":\"info\",\"forgotUsername\":false,\"lang\":\"en\",\"notificationTypes\":{\"error\":{\"iconPath\":\"images/notifications/error.png\",\"name\":\"common.notification.types.error\"},\"info\":{\"iconPath\":\"images/notifications/info.png\",\"name\":\"common.notification.types.info\"},\"warning\":{\"iconPath\":\"images/notifications/warning.png\",\"name\":\"common.notification.types.warning\"}},\"passwordReset\":false,\"passwordResetLink\":\"\",\"roles\":{\"internal/role/openidm-admin\":\"ui-admin\",\"internal/role/openidm-authorized\":\"ui-user\"},\"selfRegistration\":false}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "588" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.116Z", + "time": 35, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 35 + } + }, + { + "_id": "dccde179c43e59ffe92f719da481c2cf", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 431, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/dashboard" + }, + "response": { + "bodySize": 1031, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1031, + "text": "[\"H4sIAAAAAAAA/w==\",\"rVbbbtpAEP0VtHk1spNQpeWtTVq1UlKlSao+RFE17A72ivWus5eQi/j3ztqAMRBIqyKBzM6eM7czAy/stxRsyIJMBbhiZMAKljAQpdRniwPHhrcvTLozHENQng29DZgwDSUS9EeQfNK79mA9IadS5OgbBF9iC4tjunrAjdbIvbEuBSFSui/piCxj6AvwMAKHbMn8UYje6QLBZknLU0JVSZ1vkpCB3naCtqU5tQgeexcNpsNj0ZlgOaYlaMhRpNYoTJV0vkvLC+STvrsPYLFvWuqLGta7IpRbC7Dh2wiQclTouzme4YPk2ME7VGOHNp6ngR4s5hSUBS+N7hLmCKu5Gj2WebAU0wriVeoKnJsaK6gO6N/GezmHkAPC7K5mjHxLNePxRg1/0qFbC9R7apjbBW7jun5yHsveJYHRouaxIXcJc/I53lNg86gs/1TFr/dRs41kZ3fR54q4x6Bcq+457YXRkkQY9dPVuMIctbgCTfTDF1Ya7QsyvMuy5Ch+0DujMKaIEzo+zJLjLPlAtpMseX8YLU+xztFCr2RQf9bPDZ7As4SV8Dj3wA6OBoOjY05R0IQuD0eZGPA4uNvThSBk06rtdq4CZWmpID64HfdcXYyvCMoXX4JS9dURWF7ESsb2qHp+t6MVOH+FsZF7an411xFJrDIbW4X0SwsB49YC7uUDNspZen3suxIotjY7EzRl1+TVguOou886zqP4e3Tjermd3ux/a2UWg3NOo7KvOJ+Ckxqd216c3EJV3DSsNCyVxH7TnIRV1jxIEUs1vGWxZpEwXYwzu3s9ASdz/U27pasb6VU9G3Tej4YY8JpnUsXS82u8i+1Tb5JN+u6m2epFUSn+Q4Iap6vrcjOU7zjtdW+sNHOFTpb4bHS9CQrqKEXCspNmVoPH+msWlxfmEOXT/JLO2kIbLkGdm1zqdb01pn+WK23kAGo9yb0ku6XoEOia86v/HDqT+iaxU19aAircfoZfqLihCAg8+wMKiFQxwQgAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.117Z", + "time": 28, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 28 + } + }, + { + "_id": "fb55717b678608c3e9704a46f637ba00", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 429, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/profile" + }, + "response": { + "bodySize": 891, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 891, + "text": "{\"_id\":\"ui/profile\",\"tabs\":[{\"name\":\"personalInfoTab\",\"view\":\"org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab\"},{\"name\":\"signInAndSecurity\",\"view\":\"org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab\"},{\"name\":\"preference\",\"view\":\"org/forgerock/openidm/ui/user/profile/PreferencesTab\"},{\"name\":\"trustedDevice\",\"view\":\"org/forgerock/openidm/ui/user/profile/TrustedDevicesTab\"},{\"name\":\"oauthApplication\",\"view\":\"org/forgerock/openidm/ui/user/profile/OauthApplicationsTab\"},{\"name\":\"privacyAndConsent\",\"view\":\"org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab\"},{\"name\":\"sharing\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/SharingTab\"},{\"name\":\"auditHistory\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/ActivityTab\"},{\"name\":\"accountControls\",\"view\":\"org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "891" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.118Z", + "time": 38, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 38 + } + }, + { + "_id": "2cf6006aa7d3908fe4bd8d43fcbca10d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 433, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/themeconfig" + }, + "response": { + "bodySize": 421, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 421, + "text": "{\"_id\":\"ui/themeconfig\",\"icon\":\"favicon.ico\",\"path\":\"\",\"settings\":{\"footer\":{\"mailto\":\"info@pingidentity.com\"},\"loginLogo\":{\"alt\":\"Ping Identity\",\"height\":\"120px\",\"src\":\"images/login-logo-dark.png\",\"title\":\"Ping Identity\",\"width\":\"120px\"},\"logo\":{\"alt\":\"Ping Identity\",\"src\":\"images/logo-horizontal-white.png\",\"title\":\"Ping Identity\"}},\"stylesheets\":[\"css/bootstrap-3.4.1-custom.css\",\"css/structure.css\",\"css/theme.css\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "421" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.119Z", + "time": 37, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 37 + } + }, + { + "_id": "3467e6eff41c0252746cc812803f797c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver" + }, + "response": { + "bodySize": 169, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 169, + "text": "{\"_id\":\"webserver\",\"gzip\":{\"enabled\":true,\"includedMethods\":[\"GET\"]},\"maxThreads\":{\"$int\":\"&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "169" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.121Z", + "time": 34, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 34 + } + }, + { + "_id": "7415ea0af3a4981f3e3feddab0df5329", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/http" + }, + "response": { + "bodySize": 128, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 128, + "text": "{\"_id\":\"webserver.listener/http\",\"enabled\":{\"$bool\":\"&{openidm.http.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.http|8080}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "128" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.122Z", + "time": 26, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 26 + } + }, + { + "_id": "8c44f974db12734398c806d9a1cbcd18", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 443, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/https" + }, + "response": { + "bodySize": 217, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 217, + "text": "{\"_id\":\"webserver.listener/https\",\"enabled\":{\"$bool\":\"&{openidm.https.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.https|8443}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "217" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.123Z", + "time": 29, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 29 + } + }, + { + "_id": "b400d9fa8acbf142278ba15f3b31ee91", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/mutualAuth" + }, + "response": { + "bodySize": 250, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 250, + "text": "{\"_id\":\"webserver.listener/mutualAuth\",\"enabled\":{\"$bool\":\"&{openidm.mutualauth.enabled|true}\"},\"mutualAuth\":true,\"port\":{\"$int\":\"&{openidm.port.mutualauth|8444}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "250" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.124Z", + "time": 16, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 16 + } + }, + { + "_id": "1ceecf5b22f885965481b5cccc3f85f9", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-806d14ce-35a1-4425-a5e3-cdce7247729c" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "POST", + "queryString": [ + { + "name": "_action", + "value": "testConnectorServers" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/system?_action=testConnectorServers" + }, + "response": { + "bodySize": 14, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 14, + "text": "{\"openicf\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:11 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "14" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:11.183Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/idm_2060434423/export_4211608755/0_aD_m_3016648281/openidm_3290118515/recording.har b/test/e2e/mocks/idm_2060434423/export_4211608755/0_aD_m_3016648281/openidm_3290118515/recording.har new file mode 100644 index 000000000..5441e2ccf --- /dev/null +++ b/test/e2e/mocks/idm_2060434423/export_4211608755/0_aD_m_3016648281/openidm_3290118515/recording.har @@ -0,0 +1,8878 @@ +{ + "log": { + "_recordingName": "idm/export/0_aD_m/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "de3566e649dc89e93a6365b0fdaecd4e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 393, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/serverinfo/*" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:03:27.221Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "3f3b03432a833cfcbe27438276bb566b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "accept-api-version", + "value": "resource=2.0, protocol=1.0" + }, + { + "name": "x-openam-username", + "value": "openidm-admin" + }, + { + "name": "x-openam-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 507, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/realms/root/authenticate" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:03:27.236Z", + "time": 3, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 3 + } + }, + { + "_id": "4f7c200a37e236805c35afa89036bda0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 436, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=true" + }, + "response": { + "bodySize": 21810, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 21810, + "text": "[\"H4sIAAAAAAAA/w==\",\"7b2LduM2sij6K9xK1tid0cP9SHbiSWcftezuOPErlp1MdndvL5qEJMYUyebDbrVba53fOF9w1pzfyJ/cL7lVeBEgQYqSZXfPjGft3bEIoFAoVBWqCgXgphWTJPPT1vbrm9a557a2W7bjkCRptVtOGIy8cUKLbCf1wgD+bkHBlKST0MUfMbFd+BDZaUriAD5MiO2nE/gUhz7BGl+15m21+Vf17b1gFPa+qmnvh2MvaMO/YZaWQLVZPQ2inaUTEqSeY/OiKshXtu+5dko0qAaAWer5PVH5l4zEs5eeD2WrD5oRupd5PUB1StjPtYHr1JETy5wsScNpH+j0AVtPiHO5N+oHs5fETrOY7Ab2hU/czdcbMRl7SRpTQm60rY3ITpLrMHZPSELSjbePGqGVEH+UkPjKc0jv8sIerG2wrp1MLkI7dhVgXoDVbL+HH3phRALPnXaQJcLY+0Dc2r7e4dyWuXPEyJLUMSmQ6Tj2rjyfjGnFWoaKRM3VqSBB1MpOkl1MvfSEvMu8GBgjSJNGEqTOGHyaJv3AhWlzPQb3TvsDDjmLuFRWdVNiYS85mB3H4QgosllmynZ5XiNWuZZ4S0jKBmC9sUAaCoNcF8+W+wEsp7Y2slt1wL4baAiCmMAUL9uPmaSRh1xDktQwf1qvDcblTr3AMCTy3vEzlxwzUAx4FLbxn54+5K/W0KMG0IFhpKRNmTGj3N12iU/gP9CNMzEQN5klKZk2mcWK0eadJ07sRen6oKcwS238h2nyNhscU8sZWyvavndFhrPAaSuL8cJ19tZj1lnL9RLb98PrQTid2oHbp1UL7KXPNLLCJ+18xbE7rJMSEjETqa7tMtVt+8d2bAMCJE66vNGeaz1//tzaYPzYmdpR5AXjju8Fl8nGohmjOGPVJdA2SwWVACYNWg+Aoj0mbg1hIt9OR2E87YBOv/ISQBHwL/RUsQrogFbpokrm1KFxBZqJVa1+Fbptz1VrbBT6njNbAx2XW2yWH8DK681qA2i4Kt8aOLWjbkUmGLx7SqZYdaEqJe85dJgdz79Vt2vV4PfIz7e1o3I/4xZ9ANQlyFfpuS7Z64UXgJ0R4H9Ka0J4HezYqX0U+DOTqcylj60Gy5pBVfgItV6DifWXv1gh/LULKxXa1AdM7x9d/EEc8Kygizj1SLK5kYFAgSv6+i1twui7N4IaYIKkxO2naexdZCkZTOxgXPQGuO3FjC7DBNwdN4HsRiGA7I1JCryPAReSgCTgcO7OfVV7Te3kMrnyyPXq3YHJEHG+KPtfpwC/QG4Dha/D+HIEdlEP0fGCJLUDp24BbESCgkthB8yDNGCkWOD3jZaX9NEgJO5pOEztGJkauaCAIDMczLhxvhHo3UoruTWWaLFDl4y8gBqQy1OkaJAmIJ4g0CiAp+FLj/husvlaxpWKIaVqexDlpgE2DqiNhTMDiuiE+FTnJhMv4tpmtrlxDpjYoGxGtp+QBX6p7B8xw3br5Z5qHIMw9UZ8yUgA2TTODLiaNLpESgVxp2gPQt8nzBV6veG5EeAriFwciCG4aLAJl2SHSswZdQ5VDF6G8akdg+Jczq1KaRvqU22CCZGCJdZNiJPFXjrriv5pD+iBRWEAC771V2ujtwH/LmjguQv1q0rEpcjxFgnC9wMi71cYCoNwbcfURtu+gdWERrvwzy8vwtCHqn+54bC6eaMub9Ll9T9S8ZkDxQENGoIZ0ohE0hiQ3kyB54djFoo/IUmYxQ4GdyYA9zWYUjA3gH7JpAJICYvdy6h77lg4yRUNFAliwSzDb89FCClGGK/g7xjNeAwM0/+wqsqflMTqb77ElxQETiVj3/yvHihCbxxMGTriYxiP7YAzgfKZd6TKAPwscACzk/EPJejMHU9kEAzciP9i76FDf9FASNk5Mnk06AO6mQ8C+Ed4of0GXT8eU6SYn4h/zAKH/6fHYw0UBnUc4A9qpcAKHkCzt3OFJ+V8wn+HDAO+kwBcZF+Bl4PM1sfi3Ssg34924Po4V8AMQL8u2FqASuhcdimI7oSXd2HOu4PkqtQSOqtt98c06f40TZZvlwBn/wT/rNYySd0wSymAIf1zMRgpWRScBzZc9wQmOPHSMJ6t1hz6JfHSA4BZBontDul/yq3fggDaCdlDaQTkvCvCDAScwh7bpOxN0jTqcQXcm8CiwMSxUJxEKNKyHACPqJo4RmHwCNU8I4RN1RqLC++NoJ+3Ukexn8CBLY4+rAe490dbt3AqUAGRAquBweODEOHKtzIPOJKtL7LRCHpk2ndqvx+Cqm5tP97C/4FmhhUCiAXDurJRhcJ3a+r5vpdQzGqVtYoOw0YoazQfhG7d8UAtIJPQxtgQDGe763rxvCcEMoCFTxAExDeMPIcpYLGpjIvUFWjPXPjLOpmNmMl7cwI2EoWcmktQhEMuL2B8tKz8Lse7tMyuNE7U89Wj5KvAbcf4lovJKYdzI+DAX+Ba2JnPxgIfkPmErGIx37qAv8Z+eAH4wZ+AH1vrAcNeLyF2kLJlOp1F+G0ch+HVrDXPx8G7myt4L+5a2oavc59MOo6qMU0dFG6JvVU7lSQS3k2uzcQX1EzXCILkhQijQM27IRRamr0/YOnkjVWK6f3PVfa6Y7rxjubCNKnqUfKowxCkfLigMq2DwwSVTyLsGZT6lNrOtyZdbqgUBAHNJVwr08mAWfeUSvDzIEQria0aUmY1fIen/dO9wfnZcPeEGW08CsYgjNFKHHJPQYF9i2G0BfnOAOsT5ju8rnAeYjJG9pWsjOrGiWdRGuKfvIf3nQR1F+mQgJYxksB6lRGs5XjRBGnf6u8Oe4MXg97xz4Ph18foWAVomeNyA6WjD7uPf3p6/N3+fx9Ns0FGnMFOYP/y/Dla1Vfo9Ez2vj37cTY9PBlMXu3NjgZ//Xpoj2n5JZmxVfPpE7SUgUVafx+9/M9fd3vh18PJ1Tf9d789/jt5esqgRVkMOhYRR13JWLGroZ7YmDrVuto6/NG+HI3iP178dLj/9MMfk92jlPWY0PjlHvKCIFUym3Y4YYFVgMrUkT0KhNdSDB+gyCT4kwljEAazaZgljM2WZ5Xmc6o4hO2qKnQjT5t4dXnB0q4omreWHGpht7B6uAf9w/6r3Z1lRUPicGXHFq/2Oype67kVs6yVzQ0kQk/x+DcegT+eliPMyaZw0x/9TW8Mq3ieDATNmVOXfzoNcS42Y06TtiUAta18JPA1o9HvA+YmYZkAgKlYeQfqr770H/G7OsRHf1uT4CtM8laSfsaxpPSXcRGElq96dFaPRkcxinZ4DS4e+/G2uOBR4ZFswThkEBPqhlNTV/IeK+MIUygf2A8hZBSUI9t2RAipzJaaG02tlgSDrWHA9DQOjDPfT7+dng93h8O9o8MS7zF23ZlBVc/heFHDCuQp+RG8E9zuEMwMJv1peEmCfW9EDrwAeQrM+ydbsmu1coo198BsO/Wmee2nW/O5svrk0Y2C3Iig8YDm2wS52/A19SUKxUcj8PJBYpSSPV3Qg9AlXY9KuKhxAksxrHQzxA+tY8BNg61/z3GmW5RiY7OHJnAIK3Jwls8/58390LFxImBs5QGO4nDa4mk3SQIzyWYDPn0/Saf+D99fhO7sh5ubL7yRFVK56uJMH0IP8/n30Q+/Ax9YgucsL7E2bm5K9Ta63/ciAELQUp7vjaxZmIHicAj4qq6VTqAZHY3lBRaJ4zAGofUJ+LSW6yWwYNqx27256Xkj6HLy7IfvbWsSk9HzNy3ZFybnTsnZyd58/qb1wwDc1UsLlkhipaFFM2G/79k/fN/Dxj06Ivgbh9dCCjQe7K9hCiCDcGq5G5jd6iVAehg/WAcNxj30rCtYjiz7inyA0f/5fzPLIamFySMw9AhUK4wdwLWtK5KBQwq1AgLfgTiBBTPrxRaGPlOyLC1AaD9Y4MBbEU4WxQHW6ADVclxFF1AEU2C8U0XxYQEu1Ey9Sj7pO06YBam1F4yoVQjyZ3UsRQ1RAiulCWjo2PIJHw1ULlFUtQx1PldTa9fA4k9/OEXug/+bIW1U6IwlYQahUiNK79J5BFGWcUQLc3wkhXNee/rDgMB0INtcUZaiLd0NEHm6sGAQt3m/+x7wh0usqz//oXRNsc/7bj6fJ5QGJAbmu7ZsNrkC9UH85z+gJAtgyrIrYmd8DuvmC42AfN25/YQx4Qa5pqDZvImFrTnRBEocSvVEcfGhogOjpzt6NvApicXchSlSH1Egzfs/UFpB72wGVfh0FlebvxJZxIBOVPw/GPCvnkfmi651In9FSZlxzQ/zybpYYS7P9IaFyWxOOQ5HJ10lRa6JD8y/3nUW1pjfGFgkyBEYDXs7B11riUV28fIGfbwAfgNHPyNUE8tuVlveVl446Ki4grEmsMxdEBADFv2QLMtw4ivFlYe7fu7/97//z5//j34GgfnzH9Z/aJOk5G7I/Q3EGRwT5lC0aNyFqDv2lXW7fyR15r+pU0OaiqG7Yq0VOlIzUww9yOJlQfP9pR2giefz803ME6ypwxHQvy/bc4ieCFDm/czcq1bOe6TfjvHbsr3FZAqGN4aHcfvzJQiouueuDIoppkX1l+8+sr34AChFwzU5CTEJYso/D9me3rKwGcZ73A9Fl6AfuOInule7QUq3ZIpjbNpwWYTMx8DyKa45KyY9zTSeWTeWOd5P/dLuMMVdH6V50gWzOiGbIvWAdhik3fN3eZ1HXQx0R+km2js6dMSKgwY/nVX/1aObCZuP2laQ+f6jv1lzy8GwrLVJHgF+6SQOr+G/Gw64ehvWtvUMnDlrg2t9/EC6/Ae0nNdGFyQZ+c56l++sT8IkxaWArqAejQTmLqZWuVusOlfAKrvwTLezoKoIEbNt8mKMKJ18OCDTC7pvd9PyUjKlf4igTJ6qwrb1xPEn2+/jJrnHI/NsUQR9SzAucaZswUvHPQIhK8YXeABC7kPS+IhYkKB0DA5lwP9OaLhNmWjKQhnaOG+5889HWtz610bMElPYEMG2T4jIITpkjfX8G4xTKikheaKCSmDfTtIhj7uT0QjJdaVGoEQPOPOG4lZbQlBqSqD5noAhs4EOKcpbFbHHxIck3WH7DWrkT0bq8vKO50YdB/z0IIs2HnWZehxwx9LdcyNMU90MfZ6N2rYEjyDl2haXSSUIqIBW0aruQ008athZbTCPp1tgSF782cKt8e1eD3dOO+xjF/RDz43tUdrZetqTKRoe3XZpjeyOyFyh4bg42Ma2rNo2NN2W+mWbi+w2Z5NtO/K2uSyAq9zhECMSRlQUwRxFLn5Nmaut8r1i6BdEACHRTHaXSN+SbiBRs2uY2mlGNTmQPZqEATnMULZbjA9AaF035oec+aYc/TwA3Ub1N8CgcUH4mBKa6KNmWEI/GtuyccZ835OHHFnaTEwrSHYXRQv4H3cqLuw9llQUgZNAYgIIcKMFs5OIe5CnyyjB07YeVp1SlWb4tbcjN27JDtuN8wLl59uivqCCf6ORmyk4a28HGyfHoERQH8oAZySzK0A3RJgSxxItwvjCc10SDCY2y8fp0Q0/lpnEArRgHIRpB1c12wM5gYo2BnVAkGkc1o7h0wWu77wrzvoJXScpC8F87GiocsYSCeWyKVqSyod5kYfyDZMW38UlBa7bbkl2a06FmIzJ+wja/s8mA/pRkP/Rly2dGqzqAd0XLlOAR4O9lJo7OeOvgyI0+UPjkhIH9GmZxVmIxcLgM5o7qUeFdSFN8pFSQ6kj21ZNNh+r3vVaB5yLkGoLsHV8SPxRPhJdRkBSld1OjgsAxIJjrapRuPCjWH6pKuRLiFvB6Lh3yL+wdZh+qTBZhFFypGcP1honhUxDg5FCl2SzPYImbpz+TGYsjQFn02xqUHIzhUmLVfdDMjgbZqwWtfMrG8TMKZxFu0thnXox2xECzKlYw1QqdRJrz+ojbh7fROFI2HFsz5ozk6Lhy+Kjqf/VV9ZtfUEyyJzk4vV0ss3gtTWh4DxklAl93CdySbNsS51UCwNK8I33zbcrSvJtlKmCUs4iuvxawue0rr104gXgyRCrwEcFlMexHaQs0lOE+gqLLFqW2/naxzKippVTx54Pky2lBhnnzHmsnJKzqClh7eE0WAVaLKEVzI7MS5YMmZcqg+2rKckFfaGlKy+nLWr0w5T7ZfUKQqwKOY8y4rQaK48qdWEAbVIGt1hvcquxrCHUlH9L2I+3EWLVRL0rRSH7kHrin18rrE2MDVP6CeRYRL8oArkoF88trE2KtRBLM1GuotMaRdooXWsUbUeml6rNB8zpbO4ugBGyT4IxztBj3TtA82SaTTs+K8YYjdLMfi+aPfn660JD+73W8G1OFY7eKiY1m8EyGUpea5kmooqleLYm/ZT86sVpZtJYMpDAw/W5u2z2adXCKnzqXJsV/Ridywv9lInegLzTPNtKH8SBJEQ1AnmdFfqeq05KDeELo81nuazkVrLbjdyzghwXBymCAiIkZGATESv6bKVZYrhGgdaIUKTJjhaT+9zoUi0JOt5rpJYx3Fci266oZfUXenO5EuQJfUIHirEYgRWXz1zk6Fqen6CTIUced86zNr9q0RVeFKvrt6z02hgnfdt+rf9+axJ1fUaqSNJIsstSXIjD1sxAnYG8BO2NRksDqhvJyqm6FNmWMmnKBMuj7iVavfTiJLV4RF4lE48CfJ4irmG9RgnXguclWu3x0k8SJy12vs5IqdilKI345xd9i+9flHmjbLDZQXLNts5pov0vuKklY44JTwIv2W+8VdlnFtBK7mEBfHk1p+XWu7z/EggFoVJzAbjKA1RMJWWBFrSq1hNrNGTUTVod+X0osbDIQq5KUnsamdlSzlrFLlbevDRjt1wIb7nILbWqzNWBlFA8VUi0hJguYonECWkFPMDBpLVGsM0Tpo+6uaqn+6nlqaBZjPl26SJFXxw9zS3s2Kx9h+u9O9LtRVzXqN7FDq/BwRJbvyb9/RDzyp1MSqdbRLgKSTV3mUZTFcLKN/Rrolc1Apszizl8tcxKrEW6TByr7PxXbWLW7df8M+5hCrH7FJuYzTYpPskuZhpa1xPPmVh71gvih2rMZbmtzEL+CLLVQl8IqG+xG3MwTa+slste0MjHI9iBymsMdrVTyjgNlhToBzFb7KJq8lHjUdVJczGbZjmainVXSd55SDa4ezml5P4sxXTPOroOVhVN9dy9vlwrZ1uUo+vIANrpdgFAPd8+r4h/yMPPzZ39b5dw9oNsOrCjpBQhsNMOnp5MO3/vOHYEFPGTcsvDbFrbMsiYntYbivu5lYs36gyH2nS1EMwqkaq2jDmvTNQ6LFehX/SEx7KvzAqsx59fFEdu0ikortGmV1I+y0JDyyyeD/q5RbAlx2hYrpM0SsppmTZaPmpdfICdumAZsvEleMHBuBwSyIvKjgsJXHBarCQijgcDDfH+K/CT4Cu/dU5ZdvFuI2JTpSX6rQQYkGsGJsewCKXsmtdIrkaRZg54o3kQDkd5h4VexWWdSIfkjhI5OAIPWRxlj1afglsncHwG7m2ext4gOcM0/ErHdum8jBJ/rzElIzbv/ZST61q3yrOK7zbFKtayqx6yMP/NsjD1pK3CFbCfJvOyii7LaIW8nM4mHkoPYzTSAry+wgvSZBcv3HBy12ORJjGK9Rq1SWLYRaKB+X+2nVEV6TWakvoJqrJ+wOKecsLqc7W1S4iukUbFU2rl3SZRwZLn2Ax8JW/9/p83b/76X5uvtzrfvXnTsd682Xzz5tHbR199Wdqr+kS0NAxnjdSUFlGJjModUsvuY8l7f3QC3O4wW/tzkn+FOGubjEJ2YLWtyrcf3+roGJypUgfFc91hMGD3jG5XX31pJ+6I/r+b0P/m/Sx3eFY5rx+P1aO0X7TUc7P0UcNO8i6zY7KyTXkibneX52fzXKpz9rJP4RytvC1NTWrLV3T9xJBqY6TlVbfheVBEkplPNd5yxRpjOIhZlyPAXwSqyhBYncj/Nqec1ry365ZzMNbgDt//aSPhtzWweCsH3tzkZYylX9Aid6f4Rla9gWsWhIKFa0rI5/JejghbijtisaucLZAbdqGheM4iGeSVGmyWDVT9slDya7OLT5GzUdEon9t4jZRLsXS9JPLtmcW3N5Jua/WU34odUIMcUs2Xn25Zhx7iff0Lxd4+V49enbw78uU/+dUwa1B3ZTJ9Wte+IHOLVF5g9AmkNgnohSq1aqTKRcgCvExxgX290OyRzmDZ+jJkuFp0nFY4skQDVNuiBR2CnSvrMrWrc3Fd/mpz2eaTJeX9iExeXVqb4qgBz91BPgBlyNVJnCusmPpEmLqrYx+2KBXGIWwLlRdNWuKmZYsLwnfV3fd5/riCasWs6mwUV3DK0Rrk3B25JLOVvRDNHFN8kasoOGdwGzkh8uiXJA69/cYLLn/JQHOITCGhm3KnRXVTrok3nqQNPRMU85wea/RR8gGY+5TlFuKIV0BaYWBdzJg1laPUbRnz4mX5EW3NRp4F5u+c2Ow9hRJdTG3KiiWnUahALi2+ZmVqJNu8CuFyfEapVt+9fDJCB/Ar/dw8814ZbX6P/9Kqp8imizq4S/Ncl/lPa6Qrk/kJTPWCNikf9VCoiHWtd7Iyv4WZvk1aJCuUaaIqw+cIIu+vyEQ561Y0aMAUlad8kdj0Cl20BiZ47TatWEIdPvtoFadhjTHDG3fIey9JF903VX12uLnrpMjI2hyoHOaDG3VvblR5Iv/dnCk9prrUbTWrO1ZNL61Zi6ukaJMGDtPtvaGKZA0R9JJ5GmtTF3pexT+/slh7lHc9GQ+FPIZa0V37TTTLSqlh6OsT0CIrr5T+zX0ho8iyMmEb6B5Hc4u2xmz8jXUuUH/dCsSuLt4kjY3rtwVrfUSjMW32tMWrYfo5giYbgo3ewguDE3zlfSkw4vXJtXn2gaUOz0KznwTQa9u6noDWldcDgy6i768w3gJ3U20GFi+7c7GrBQYuMs/nL+0prr0bTm0vUD1743zJcxXyNsfca2cHc9B9n0APMX1HglZj52ZoU/Ynq9nPy9iHo2INfsin4OCKZo0OJtHalufe4ZGkt4uPIXFqrXYCidKJPqChj2PJE0gch6rTR/+0pwQLZqH5dOD67MLl7jsVdzLf/hhShQ6Xslazh7iIt9ijUaHJZmx4/ZlAoux+Y4mlnYBS7bh/CQa8g9Nvutq9JSNKvfwZnIUz88NqCq0QmVr9wqcmNwMYHo341zi7eb9e9ZIHrdenPlfg1UpHuplSFN710t5xI4aU1lQjK4jW/uRWEDceV7OCqHF4eyuI4/BgBd2THGuPVnyuVhDlrVXlnC+v5ZNG9LtltA6qB6B54/8SnHkXt3isbB+ZWcPMusqcrHYRjJkDqi6FWeX6l4Ij3WgtECoUQ0WsvSWd+TtYG+yily+xbbBicNlabcVoMNAlF488KtGI0rxTdjfK53Mnyq2IWjWmlSh5tJQRY5hPGY66A8qW4lUS20/AuMWBLkXuBUlNZv1kCLmKwCdX1nKjIw96aisghoXVwCPuaFzYiX6+gVXiqOCPwgt0NDwsHuzkUVd+6fRJcbHie1PynLPaRu0tMFXQNsptR3iViw6X1MaSEw8YWsR0D17svTo7OhvSkz2ig1Z/+PvhoKVXHR6dnQx2zw/2hsO9w1da/QanXTSklMi00oEJshGTl0dnhzvn/f2T3f7O7+f7e4c/7+4sbnV2+MtZf3/v5V6zyn1A5tVhk7qIwPnR4f7vi6ue9k9e7Z6eA+CjkyagOc0b1+/v75+/OjrcXVxzcHT4cu/koAlQSu4Gfb8Y7h6e0pwN1ayj11cIhjCenhCvQZrNrbLY5QJfuO99geiV2xnEr1zJKIK1FFjfLC0hnuuf0NXEbAlpaCzwy4pBjapai1guox00tXN3skEwYYy+7ijeSOdGjaihvv7ZExdusdfZW4WcP/58cY7pQehiopjLXJkuV99tResrlU/DAZ45ZPYGv1Xq7dyg+yWmN60v8eqblvrirvaGalfH9yMbGn0WnaSTkAcLxFgifK1QOqriDVroRb4Sz55Jl2/by3fSGQhXbk7ztizdqeXhldJzY/ii95UyV/nDvcVaNzdQEqGy6sGkzOfqG+v6/MQhTsIdT8/CI7H3/cKpevXTrVlGJeG6OIbB/PwY5iWooJCStDmFFJqkk5jY7jGtTk9145+n9CMQ6glyw/tfMpKRofcBcHyyBf/D2YPymVb1sYD1MyFR38f3Sre/2VKQZrmeyEquyK0DrhW6UHA2rcSeQ5c5BSwlz/adzEeS63Gk8pPKCfFHQ3ZP1zFfwDcedYHcJ2TMdhah8xzI5qNak1mZHwTMLwDrxQosqozXgl9C0tsjBkDYYX11uZE+E/fP7+SRXMU1U55QvvUtjW9ZqEwOV74VxsWperA8NleVcyydUAoh/44DJNMonS2+duGrFeljOm616DII0aajnLjSoarnVOph0XBEh6XxF2Yu9q5AGMekjJAkBHIlC6ZRt79AAo4tcq5Ov3uZJIkbj73UIKczLLDaZ8MqbcOUyYnpUFw17GF5hvXqpW+P69hoZVI2muZiiYJTRwRvdJzFdnszfFdAS5tgEk+9JFmqy7smkYqThiwXzMUCKDdpWc7jct0XlYCxOR1YhwU/q1Uxpm7WquLPTeHp41BzfmuHwRh5MeoEjOq0w1ZrA90cGgju8W7VNzrKK700oIT861cuGD+rGGOk9lhT6vkPEVbuYIi2w2zajgu2PfwH/E2ZJtlxaDKr/s3Qhu1ndOzA7eR5mBoEueNB/zDBUO6KoVV4Q+2kbSHE3dL2dVUdgxBqBl+JBB+ohoH2bW2IK2l5aqQ5qkT6RtP29Lc445evpmiJHwX+TAkGqLV0525BZeXuclGPbffp1ZT31GvBqbf71VZU8sRq62n7og0gsj2UBoNpUrGUOlxfXdnEaQL3qLL627ZcQIUDxfaae6ILi7yz3rRubqj7+KaFSds9HWqhRqut6Yw=\",\"GrGo3yRXVzWQsV/3dn+Dr2fHO/3TXfhjZ3d/F/54y+JnD5z8wMlVnMz3GqO4yJm6Ql6KGwcnu/0m3KdEyBZOhXR1F9RUQ20LqiYNeIAH6tYpIMUw34Lq5SjgIloVgoSL5IHFEBsB5SHGRRBlBHLRBBQClAuq5/fZLJiy/K7r+omQT9k36Ft5H6q2YuEd0ub1+4Wja7Wt5FN/C2uKZxwXz7B20/3CKS4++t1QkedZgfVTo5+jWLzglOua1GThlaMl1KTeki3q5+egBmFdP4982yGT0HdJfH7eaI032vDmxE3zSs8XeLnkP+jaB137oGsfdO2/mK7tbYFlSp9z6eVo5h//Y7OXYwQfH1UYsdLZaKRim5qvn5XzVD0FD77TXflOAvXqKEDfXCNn00XBsX+/KMADI38WQQBTVPYhCPBgmD4Ypg+G6ac1TCt15OcZA2iwlfXg+D/o1wf9+qBfH/Rr2e8HFz/HE138RY6/MS9gWc9fSxIIUbn2mI6FNqAiL0d+eN1nH2hqisxj4dnfmOabOhPMJWh1MRmZ1wAi6KeuE3pLXjHJh2cUd1B4wtj7gOkriNGd9YM0a2mn8FAWu/SwpxNOgWpuws76saWLXySLl+uys+X6WeweFmCaNlskv7zhDZjrm1//vC2WM3qzCwXNsrY7npt0RmHciYnDcsWLPdCCPVd0wH9Wd4Dp7cALrqscYPJdOxqEQcAOsLMsb55SfIHvLm3TW0p5MWZiswTtr7fayvchcbLYoxQHVRunp/tDQGFC4M8XwIN7SPAr2x8igkjEb7aU0lNvSsIsPfB835M1HrME8Cj2pnY82wckMZWZ3mABvDaBRULEuGD63D86ozh0Q7AqrrqOj8dbnC5MGfICKNPW9pOn337HbvpF8CWA9LRqGNI8eWQ3UDhKhn7iTSPkG0aQHSRo5rnPGb+06Uf5tjnmxNNr8EPleoL3HQaio7w9r9zx7XjRhM5nf3fYG7wY9I5/Hgy/Psb0dZpxh8dHURP/1Hvxzel35LvBzs8/Dg6/PX1/ufNs/Pw51PCuoHwXluH4w/Xu2dnlj6++/vaJs79z/fU1Lb8kMzZrT2mivYN9pbPvRn8/S/1nEXn/yv/xyPnr4AWDxm84RUFxp12WQdbVUE9sPM7berF3OvzZD47J6deXvpPt/vdFMP7AekzowVyapybkK5lNYX7YUeA5/g/wDmDgXvoyhqnaZuyGn6f2+5wj+ylm52Gq2dcoyCyz7UC9KpqCVL8E+ASCbzOlnT0fE1CSntN2neccF/Gnyjf4jbMO/RNQQnF5H2H2nQre8bME2Jm4VNyYqHpcMxR6rqi6PCZtng84wM8sowxY8EicQx7FHaQw7aUjOz2l/e251a+beUl+npFfOQxy0VcNZ6o/xSFzJgig/WM8eO35TOLZMkNXN3pcgCohBF8EpqFpADwX51X2GDlr2+c1JRi8WrJFGctNeOKjXJR/lTfqq3PkBM+F6Fq/sjsnwjhpw2fW3kR4UMrOaNwRjkLnSrRDUWVlstcOFXJT3dWnxAmWnBH6Pt8wu2ApvEbKcrz5S355VcMMKad/KqCIGobGmG9KSVnTHOt0KP+bINClXmmFFDsA+ffoBFcSjcOmrfPpMXbgBZJW4txIJa5oZUlyiXMkJrYmSXrCrlLR1orFs807QgAdfhmL21Gc1EJXGvPLRP8hOwJ2H6wv++wkYMF8Wsa3fbBQzwKmS/H04iA/+bAM8SmcTqYAUs9QGKa7SPhlWFQj4OcogF4wUIZXB2iqHjbB4RgAagzrenTJt9nVR/fBrnmPn1pJ2wkZkiDx0EPnA+T2Z2M+RRhAZg5EjEO73ETl0XWuCjkdX3o+WQprZQro4czPkuX/VZYEhs8LYBT3vkSMddnBC3DcTyxkn5qP7PeCwIvZyH6fE6uai/DUSWOQwJkLQWrcImofyyNINSwjKi3HMPK0tlhrNfdbFN8jj3B/UgxrCCxqj8kQb3qqNjebKzsGPR9/wuCzG/HNBmnONf0xacoyeKWAAZgoL1jQDbHPoddZ0KLWjx4ObjbAIH0N2hLohNXv0Ki+CXCuM5a0qYzqqY7xYxIhTxQMxvvQlqJnxcL8d7NMPr2WxrOjxMkQ11yrNh4syqGTQ2imauGj59sYQ73XxTnv9mGB1lbTHW/EN6mWm3t1jXVzGPWTzx7YvX9lw/p9UDWfkN/ODFO/FLeV5nARryUk3iEjLyAuv3dUswWKbMfrKM97NuI67AWNHeymc8VgaFYDr1cuus/4kGgsHhtsHhGSAd5Uf3ZQTi1q051gWUMFW3Vcs78OJAdbOH1BJvaVx2ygKhHgVTsXom496zcedo0wiB3s5cYrr58owRvHYRYxAla0pTUqiKWJZuPh1QsrCFBUZ36zcrPZmq3BdbgqPP6rCLe2oW3aiKIJLW34Q9RcyxYU348RMDu09/uUX0yrOVAeKDHRVyQDiMeJ9FQctp14bMyLkPeV8yvQxVo+L1yWV7FN5RheG87jZfoTLqUpNz7cIluLFzYqeg5ssyep3u7QUE45RNmyuNnWNt63siR04/Urhl097T4uE5vj9/WzuWGnVbI8xeQ+t1dlnK96+suhwJyEmJNiohxNYrkratFO75NIIy9O0to9aESpI6oZREV7XXsRHPmydhUkYV/UAakyJFjKyuLByHrGFcIPnUtjigItuLOJB+D3OvFB6JJ6UgFGHaxlSj+Yi/QFvCA3dEzkogWoYWi9VegGytkLxkO80pGM+T5XVZID7Y39qeLr+B4J0h1MPuaX/lctzTmUW0xDA4xUOzDwkgmmdC3K4GCgWP3UM69YXtIHLTtLvIX5IAyal9iivjGyI5N4FoOalp5+z0WSGg0nhtdfmgBmrYTp4eStK9NhVu2JtW7SEw4quzjJL0K9Af8gZduwixg2q2dN5TIylrjDcCM8cVu0y5ErimFPYtI4B4q2Y83Wq33mbXkTd4MJoBh07MrZtacX3jgLs4RlarGhNMh9UoELEGyuGYX0N1dyj++9Qyotzgr4eZs7l86mS24RRWxXuwKvS+zlTc2NURMtqoHtkBTPfSwN0mXtTEb+BF8aaQ6Q1TcAapjIp4CqWRaU6+obg8vbVOpgITLLQNUbflL1nrCTOUsgL69FN68UK9Cj0PDTLkKiGnfWTQuGsk6dhFlKBZuePiAj7z20kQtLbrepi4lMkufLCr2LNJkFTu8d3j5usvloAdp8WO2uTGWEzTC4T3sZs5LJe+PubBGvjqhbigAwkDv8DfrFcGh1fi3+Cso6h1SjqwNyzSncBBDUlm86FQa30KNQoFS4FYIBTshVIzh5bRMo311iYFC7amCmxwsbQGym2ESthpQT1SvWjrQpa7GaJhBQpd98kPhXldlGzVN+pKB8KqD3lUmD8MJVdAdOlym4yCB26GyyWr/g2aBdagmlswNMdAbUTjJ64gk3xfbGQRiTn0RNWmPAwEhl1ERTia6hLr0H2pFvzZWGTUtWOncx8syBbPy+EkBvyk4ClUGyklsANc/5bcCKOGfxrZBiH2r5bcOeFYymdnFbbmvIYNqoS6th/qJJIbJ/rj09snp0vxRpnpLUroo2Y9kdUf5+iM01GZPm5rSmNLkViXFcPPnNRFyleCUZEqgYZZMX3gqwnb+hZY4T8tL2bfqrZA4OsZP3c0/8Uu64zDZNdscUxGs3yqZLbu8VzravuL/HLgBYZ590b3SBSBjvFDIwl1p+t+yl9nTPDKYRocRi/M6spjOkH/JfddNX3JfVsFflHi5jj2HF89jlnpcUguIFCCuOd8Eus5FHqrae+VVoDQdQuGlhRfzz9+mXGYGcNX70/Gcyk671khNpFO66FI27FWbs4bZCfMBgnTBttow8m5NDVN25ZNaANixdBzefOmUZM03c0qIX3y6zRGWUuiSHu2UUmry3HkY5YwNehlEqUiqEFV6YBeUWi0Uj4jbrYuYoW/9m3ih4HCvyL8Wt6LssgaTmLpkRVda/FZHUVKS4+WKNGrK9Dk2g2JRMbNerCpTUsdtMNQVD9UQhc66ArBPUTHrRnFQ1Fr+V6nayIq+2ak7AonIradH1ceAK09uABRWzYx1IUnDrxlEkd+2+jzx2v09VrkV0Xay0aG9AXFK14yWOHbu/QSFJ1E737SQdTOwAcK3pVa2xcpfiGrSmJq9yFdud+HxNhEYs/s0nvFKMZQ4EjHOM1+vJIHjJbizVWimsob4YZkwU0yqs0ehQ4d7W6DhRYDW0OtTuaTgbD2K60I3R9pKFK9FYtjZHpW4HPPPMUDNvNXD0mk4jJ/CiFcDyLd70CV6/dRRJs2l65Tgqa4DJld+xx57XPmYHgemFgCmIDTOy0ywODjPffxnGB3iFXTBWH0VmkguieQDwlZ/H/MK7K0KfNZ8pRcPsIo0J2aH3sMkrAzEJk99vxt5Gp2f0TuMsSZmdG7NbD1p/ucErs7wAr7D0u64Xz3uiaS/F6hjSRIk3AhFHvBoAo3AidlLBCIulnLZ++hkvYkuVgtY221yZF6658wIPxQK6I2yfpHCo4PWNnrTeond387epr4glrwb01Eu/hKmoXNam3LXXLsKEYXiOxd9ltrjO1gHmtwGWoSo3BZZA94MwmE3DLKnANCbjMkT8aACVn1EnrnXl2ZaDLEeNcFKEi0VlwPSrATLeNAMw09AC5qcGqSWuWrRSO7ksoU0/KuZaoR+9uNzhMYj1KIyn+O78lYd3QIIMFSgU8TodtU7elbkYb9sr5OsDBxl5I09pV96Rp4VdUTSnqNPWtphHvWX+WdZkBxdUnEQJv7gwxEtp8A7ADktbxGQQRSrCjJ1NYoeU2MWD4A1OQpcuJiyPoSVUJbqsYYApGqDghJ5oiZfm2Z2N7L15vtobnlqP7BQpBoX/s8lNhI+CiI82v/y42ev+9dEjOg4FkTvpX3849kvapxbXl1mdmzwxpOuAmoI+4E+KsPX8+XMLFesj6y9/sTax13BkicryRAmttpEF/LDghvXxo8UW6e4lmSWbpQbdKTcG8udWH3XZGWsKa6v+OXukURLh8WxtFPyK0M0N/elUpNrGoy5jAdFws76HprOoXDQqln5Q8HaAF7u06L46KHsMRu6+p0fJke7chZOH9+RvbpDj68woeFfhJRnkyT0cOfhr7IcX0Ab+lJlu0H+PdmxN7MRymPVupRMvsVi7rrVP0g34RYjljSwvtbAo9XyfKieYiq71TvvfkI/n8ZughlRzgel+ON4Hi9ynHi69Qph9xxs6PYogb4JHZpMRzJM0B/BHP3CP8YJauibA6p/AqpRb7mggg4wjwSS92C0L/GaKLfFbXFNKP4kpETRl95oqRC7GuEtzSXWvYwfnmEpyxXTFMpNamsUgY1706QQtI3YjJnZA42P61bCbmz3aK03LsnxC74dF7LtBeP2bl06ORqOEpPM3rUdW/3DH2vyPzZ4XKE3wkmF8wkX7OK6D80ha3GW3i88BtZ9Sdt0rVHq8NWX5hcnlULg3YCdGaHshJXuCcH12kTmlaCevwSelpq4on/NumsjClR1bEaoY67n1+gYGLG/SfdOytuE3MAvec/+m1YYfI3xdmRf0tAvXWTk9tcnLGSXhx/zt394EbwI/HMOq3HXJRTbefNMCsxTXUVyA+3wwFh+NdQrIW2Fg3cytzZv5I4TtBVGWdvHa+LbF6L6384jCFWsoHcWmKGtblG/Z2B79jarmv9VL57XtpWBaDxjFc16dlwVUMHsgrpQuCqEuYN9+82yL3fDbXIwIRjPuWYg09vfTJmJkEKKmongHIsSI1kSADDU/L/ERc9FEgGjk60F8fApOC2kQKjLoA9MugNy8lHriX16Eoa8Z4rJxl7fsRrKpLEzmjEeoTB1TEDf8F19kH2/NVeT4ar47OOgPJUPl5OuG4KBMeSQUjDtqG3zXVmugPEwjsP+63F3MqfMNkgbQeRWH4RUVmC/G9E9wohOqHrqMd7t2knbBgQ0S5BuxjYO3p4sGJI7DOOmm4AJDNZyqx1t5KcggMhHlP6lxCoUgsxf0Nu1CMR/GBT2t0frCDmYWDZdYaD8HbmLxej6YY92hIFihNa2bMFeuy4qUSix9q3sxS4FWLnbzuPttudwFSUFnaCZjDnjjOAs4ODx4VmrkBa6Mm4iiazsO2F2SLd+7JP7MYuSzvgjBYQZxpNKcWK/BVyNtVqUdheDmwpy0IxsoHHr22xa9/QEB0t75owWGaIjvXeR1JT8IrIrfK/hEVmQaDC86D+nF69uts9OXnW/ZwXllK1IqO/4YALvRHP8s0VHD9sILerx20su9BV5nMQCOiMj9rqgMPFqs3clV9oJGEi1VVgk4unRXncacmBvMLskAVz4ed0F0QAmHzmVXqgzWRFwd/zOZ4S16oO3w85BHwPK04ZEId4n26Pdhra4fsm3Nj3WhMFn7D4dcgiKSZwj4M0C+Z/Pwb94Dx4zd1N+lVT4a7qmfo1PNRrPHIwpdMeFM9VK4u4eDk9+PT1v4MBH7iz1ItOaeTTfx3zcOIuKyBiwmaRol+VxjRKyAC06/j089mDD54xqWH0KfLelOQ1yE1k4Z6EL0MJnaDqBaQDCvgOUdqNAQUwzs5SdXKBLDvVeH8PvX3ZO9l7+XUEyIP0q4tVDuQSldOxFU2MnEjolbpoNSp4oIGphlR78W1s3397vy+qYlqMUyUq48l78kZlRYosbHYRb8NNidC615bApx5q146UcWe/FS2Y5bd4Y2WPIRuvh5OM9z9fARsUCoWxayu1NFnW9pNFPVef2Cmq4jrtJJTt6zw3raqo2aU1dpxehbpi7dY+H0VQN4CntfXmDCEPx7rO9R5w9kcUukHyTXYEufhuw+ttb2k3LRrySmO1SP2y0a2RVbZo/ZGX0A+9vExuDcDGwSa2RfhbiFbjmhH8b/1UJ/+PzVC14Lw3ayWibrZbTiCD3eXzLig4cK/VhXYRpjOagraBHFf/5j9Oc/4F/yX0iRJ0r3oXVtC8B4o4qFu4XhjABY3ZDISSR274EFWrp59VqJyaov7ImjCMpHBC3rjuyp58+KlZNAr0X4K3uyAv1diG23eszn62nv21nsZVgJqvj4nQSpF1TBtln5Pi5xIBpF6IViFT59Rm8B2BMyhu8VQFmhRibtebx6cuDLfGZa8Df7CoSgX6tA8gf8ivDyd/3yUfNPlcjhw4UlvPCjCqX4xKHGHBhoCQoMJB+OrBJ28CWmOP0sNAGFW90t3BPyBlJtwkKThsEpjT+18ME06smBKxr5ttANv5GNK2KxnRzXQlESgPPXmH4PM2sK2oduz0WpBT6VbEFrW15ggaIjMe4fRiwi3qU30KHHzp53u9GO67aebD3+rvN4q/Pk29OtZ9tPtrYfP+4+fbL130gDBHmKzrGfJzhSkd8H7Te1vCjJppaLisZKPMBqStK2xS6+TXFn3rJdL/ISB+MxBLi4bSWAqRtaxMsSMIQsdu8XYO14rudinCZLLd++APAWSRloYk3tcWBbIAbvMrtrnYF6AQ0JsNk2sQXawLOnbetdBtotAJaLMxd8aBKDnFC8rcz37akTMshYyUs87ImC9CKobBHbwhfeQkCODgC6SrvWDoK0wUywvDgDTNhYgcgxiWIyAS8dX6/CD1ehn0UoRIAOjBQUaAK60/N9QSEYUGaNsrEHWhjjSLYF7i78yOKutUvv2EAtm3hAg9BxbAKLqeVkEV5dii1gFDCfsPQFSEWkFHTqZH5k47itcDTyHM+2XAJsiaXT0Ec0bCSQ51J9TkefTVV+4Nyqs3Z85ZOU7XeBeMaJ3AAdKKYEcXyYfnC5SJrOuoQ83urylkl3EINHfxR7Yy94Ka53xOSCY/DvpyzpG3e5B2BJ4iY6jSAyj91mu98/Etul+60txujt9x1h4om1XPkEU85sa+WbkOQ23TwMUnq5VjukOEG1mG2SErdz7dGLmXnHB2JPtfVq97R9fDSEf85O2+z1vPZx/3TwY16ZjRArU0dmu9eT7sp2blFgEhvzdNDqAAvEC45jMvK98STNo4FZ7B+zTUNqfva+alVOSWTP/NB2jbNSNvDY/OyjNjtmDYcMWsXMTO33fAcZ34vbCw7I2MbwEYbJy3gqQUIGlRnk8zr8s+gTob/VBH+GnXkY7BFULbaQl4iN8iMlg/N8qh2W4C+Z5pc48ICgvhAshuPRxyDZHmTQtFEkX3DAkIg8CV+3G8y3oav3uZU7XVr9gxd7r86OzoYt9hTzWjrQ8g3Whurw6OxksHt+sDcc7h2+WhlfHm3FMBuIfP9WEFT0THi1+sPfDwctveLLo7PDnfP+/sluf+f38/29w593dxa3Ojv85ay/v/dyr1nl/hA98yZ1EYHzo8P93xdXPe2fgII9B8BHJ01A8xlrXL+/v3/+6uhwd3HNwdHhy72TgyZAKbkb9P1iuHt42poXDrCghyuZoSLdm15SMaJbj1hd8VGUZGFdIdWpnSFnOP5T3gNyaz1UBXg5xVQFxaipakm9PnYwa7F74pzV5HkJsWusWZaVtxqNuhb5X0YNafrtlkK4cF01SWli5Guz2PZlSFKA5efllpLRSijVAlnZZEk7wU7cEf7/okVtWfNAwNVhr2oimKEtu4A3wuc2YvGJVv41zMKDzXBvNoN2SnEpZdVefjU26TeajlRQZ7nOExeyNVNg5XYGlVWu9GAiPJgI92ki3KvMtRes0SaZ1GwYs6lh7Ow2VkcTgNUGSJPWD2L+IOb3KeZmy/3TS3y7tARWr8tKwDLzuvzsTE+ctHJsZ0J2RYY0C7rzjIkdD/d/DZv3mcea9/LEJ6JDkEmIi2Hk+Yr0ICg9TSPD/Tetv3dexqAmOvJoaGvYP9g9Otl7tXfYYvFbnsl9EoY4+F5+kLA86MhrsUsbCiPWqSB0XAMyRN5tiQAQVBIYxgNIG0dDApcngq84iTmAAuaN5mFn9/B38wyY0Q2R7qsjS5vfktgMRj25aZ0TeoxYG0ePJb1ksQgL6L/zvM9D5fIVfuSWn2DC3YwwPRN7yvLyDZumlhJ6KLbQmO2wYsosPX8LfYprP6Yg4ol200vSoxW7kXoUk+5hBl21Hk1kSVgeM0s3BewaQMd6TYFTmDTfneb/NgHPqzbtQUCeK5dRnJCEpJKu2td9+soR5nHnlzqop5l7+hFUnHF5GrWiYn60mNbmXhBNBcB8CnYMGlmD7elpzOTayeQitOmLTLSbHfGB2TZesiOyiBl/c3r8knnOpTXEQxjQ8tpzx5iIS/fwZdtJTEZQ9Qt5pDXBHJCeNL5aI7uDm8gX7JZ/DrnvutZAtKCcL+DwJaYMBArg/+NL9ZTxgKYSWOIaZBWOuPBC2J+MnD4QSgcL6sG57CTvMjsmnTAHzU6rW+y6HR1BbpQXEUxRRaT6GHcIzZhU2yvJG3TNjJXZ0wGOia2OlWsAwEmd7yrQgh9j5MdmcOULr4yza6mJmBuoyTW8TkPUQUkB0RQvzk/qGud4DWdJSqbWsbyeJKH2VALSAPV8NETy6NA75FnGsswYUZibiyrvgIM9CAMPmJB59iqP48newD3BnD26twuaG9TJ66+3ttpP8B/4/y1A45oQkPXXj7faT7fa30HZf261v32MJTOkM5Zglj89L9N+zE7NYHtoTC9Les97aH3x5NmzJ0/pHq8XyI8XW+4zh56UMg7XzlyPTZW5nF+WzY401dRLKDFgCfbTyUvwl2jVCzvGZ11TOj0+lV9za99OwGvDiVxAc/FyArAYvQ5bpzjwL6bu0OP0NJ2JcY7s9X0nmeJRBeXVngy1JRtX3pgq3V35VuiSrVnXUjs17t9IGSE4+yAqi4jzIku8ADP9jMQZx3Y04Us8CEvksTd32U2RLC2VJhWIFb8n81LfVg8A7f09euEb6+rUS2mK7RC+d7AAES70DFwhe66Cq62GZfC6pjH24gMp1jDAgFyr6rKMyiG5tvQaymQq4Lwp+YDJfKAJJjCjaJNu/SeT1YwmeLS2MO8uIGObJeLhSjrPCR06nu3vh2PuLSj8xopWZlfQyJntFwe5EEg9KwqHT7UcNEltxOwwLzkAINxiCL8RH4wwol+EARYMMABN/ka/84IBELd/AFeEYC5hZvOpjeexrjxy3aIZPT2Z0SPsKLTL6dLFAfbU5r3jAixEQRCECko/ABea38SzZEclAL1h8Uuhyyi/jmvJvpSVsgCTJpgTl5slS4I9VRsXIVNPph9Ffn4T5FLAjwrti/Dx+g3bmQG5BixKuDxRCgCKMwy6hhkBS4HNpnZvyJoWANKl+UcvocfdVoBKz+CX2YIfUh7k11AtBbnQvNfXf9POtCBOL52QKXHEg+vSXLvCv7rwT4veODJh/o6w7OhxDXBy2ZlfzHJPQ+6b/i+01WkqKQyuy6/78lEzgnoMWX4mmhzHmLe7x+sB6AlhSYutx0+2ovfYV+zk7h0F0IF/Q3A34kvu2KViwSnAAk1EMWagWP81XRd7CjvUGQOa2X7neuLhoeSa/ujzhukMjJIJYfqv5SRJ7wLogzo76jztPus+7jggXuG069B0fqyAucROmuHhNPmNzgb9rczSNblgFwlBpfEHL2KZ0lrIwgvAFHSVHNPXmGTa4jaovIzgpvWlh8elldxECbwLFbvsUHXyEcrjcTeMkmd/dCP4DrW6eTUO7+OTra35XL3qKwfm0yPcwJmYndrS3oMvHwLHOl1e4yNdWdm+ObsprISyzHr9+O3Wt1tNEEiaYJCsgkLy8dtnz57OW+IWNyJmJEn8AYnTPuZ6GrpqeDCxdmTTLAXboM9CYbXDYzVRB5fHqEARl1/WjjqHhUN/dndDf0uDh2C+8DP+32yhKsJIOP2aDMLw0iPyvpwQpPVYKZZ3+Oz+vT/Aw3alGgxkjKd2MPyjF3Uez/9/NrLyhd59AQA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.247Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "b184093074ffea48d93b8e1ac0d9ef4a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 425, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/access" + }, + "response": { + "bodySize": 1551, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1551, + "text": "[\"H4sIAAAAAAAA/w==\",\"xVhLb9s4EP4rhg+VNytH9wI5GGkD5NA2m3pPQVDQ4siemiJVkrLrFv3vOxTl1JIl2bKd7sUPipzvm+E89XP4Bfnw7ZDFMRgzDIexkgnOzfDt009atKgk/R7SgxTsQnH3RwPjtJAxa0FLWlgAE3ZBS1oJcDuuhr/C3eNX3edRJiq66jgv1BxlSJ8qt3uiQr+vIpHldgHSYszKR22SV0wgZxYqUhsE5hZFtN38Tw56c4eCnp2utDd0lGNEVFPwfy8mbtxlTvcszo1V6YTs9MOdXkC8vE8mcnMHzOYa3ks2E8BHT4GGORqrC0MG4SDImDFrpfkjGLDB819H0TIgEgN6hTFEyxm7vZiynJnFTDHNd4ShdNuYiNxCpDKQyNOxcwml8QfwTqxv7m73vTPxZjFdTkpmetC4QgHzYmOnQ2Xbnadb4UVEZ+yYfJaifYRvOWpyDGnNURG0e2O0lJqJ5HRtHL3cV8UjD/k3K6OyDWbPhdF82DxolZBFRvtOGe7fa+Y3dxqvR6QExDo4EA01JS/ls/s4xDJlFc3OAvDrDTakQDR0xX1xmk2aofMaMLbh/iqoR+jFU5QNKsH3WOQcHrwoLzxTofuIqipfXQCxIjAmNSyEhTPmhXeHHATQF8HEiwbjmo2xkB5ziy3a/gY3scbMXk66pVsK3YfP5KFXzqfl3NeKUOAKPm9kHO4U44N19mydq67F0TAh1PpWpSmTfFJsrblX9aadK/yv4CfqHnuQPRLah9Q14z51M/HANCMCoM11eeieD25ubgaB98dxyrIM5XwsUC5NcOjGCs5uaw/azVFRRICPhgoCUWRz4B2GyQSzidLpmHL6Cg1RJP41pJYqUBV0CkRbzO2qVibQfFvVuqvQuchtNTZTAuPNBezYr9j0V+DkenOaAkdW5bOFF33UWWYi5fkUUrf1YCqF76V0uh0UZ8FeNIP/QX8+t4/6PWecgUFSe5ivdXLtiTpDSX2GdF97NUGt5Ttm2ScpNk2tchl9vhr0bYPa+GzTegeTwZs3A0W/3lOlcj31B5/3P82+QkyTFUFoi2BGQU4BRaPo03NxxNv3PqEd1IJY4BNrNc5yC7cLJuf1aaDsvXzT1XABr+dNFLuZIpHRHCz5vnvhAoYiwanzeuPrLqplZmlWCOvT4ahlyEq/2J+/piS/Zu4GC6+VXibUF0WODkpjmYy7CuBRJqiNFEz6CbKB0U4H/qdpoZm4hhD4VH22TDundl5QI+gbh2Zupd9s6Z2VlXhHJ1oH5JCgLBrI/hapN6SGwpMC2gXgVN0hCG5GTy/vleqvlNr7QRc3R7CJKW0cvBlKRI8gipxrFpiV2WYzCr4QE0bJJmHCwIG59AXfMXPnLus97RylspiUJcMQWavzBq5NGf2F1K6IV6V9q4QAPwo9Bcgz4rs1cl2RhpeLDT1hT3doZe6t83GXwZ3SU6YpcfYbq2xxppipRtRCWOrErg3EuUa7ud7iFwhuAsuUpII/+HsQRAF9HjiA/GB+3TViL3M8//oPgcmj2Q8YAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.296Z", + "time": 78, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 78 + } + }, + { + "_id": "81d93bfd62ed9b30d11aef04d6706d33", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 429, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/apiVersion" + }, + "response": { + "bodySize": 659, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 659, + "text": "{\"_id\":\"apiVersion\",\"warning\":{\"enabled\":{\"$bool\":\"&{openidm.apiVersion.warning.enabled|false}\"},\"includeScripts\":{\"$bool\":\"&{openidm.apiVersion.warning.includeScripts|false}\"},\"logFilterResourcePaths\":[\"audit\",\"authentication\",\"cluster\",\"config\",\"consent\",\"csv\",\"external/rest\",\"identityProviders\",\"info\",\"internal\",\"internal/role\",\"internal/user\",\"internal/usermeta\",\"managed\",\"managed/assignment\",\"managed/organization\",\"managed/role\",\"managed/user\",\"notification\",\"policy\",\"privilege\",\"profile\",\"recon\",\"recon/assoc\",\"repo\",\"selfservice/kba\",\"selfservice/terms\",\"scheduler/job\",\"scheduler/trigger\",\"schema\",\"sync\",\"sync/mappings\",\"system\",\"taskscanner\"]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "659" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.298Z", + "time": 78, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 78 + } + }, + { + "_id": "37717db1403fe0fca4c76faa7b01295c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 424, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/audit" + }, + "response": { + "bodySize": 859, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 859, + "text": "[\"H4sIAAAAAAAA/w==\",\"tVVLc9MwEP4rjIbhlLHhmhtT6NCegHBjOowirZMtsmW0spMQ/N/ZlZVH26ElgeZgr7XP79tdZau+oVVTpTuLUU3G9wxCjwYufFPhQk23SvcanZ47eCvq9z008YNurINAavpV+bAoKn5A8OZ7kUIUy6wvDPXFBfUPPDnZo363NRXXNZ3uR74prvlxnidF67uYAsyS+HQY30KDts7hsG5d8RlaTxh92JznznkhnAyANuT8opil10Pvm4kymuCqIWi4OOzhEsHZ1MJSGwNE5TLGtgzwowOK5RK0lRZP7qup9Rxkr+fAFTqu+KN3aBBIZqaS2CLA2rjOwlXFedgSm6PPYZioXP6lD586CMlbSSsU6+DeqG2VcZrE4vwZMPuxnndVxRmb9FHr9Qx/gpq+eS2/iVoFjEwWw+q144x8/qJG55BSZY3sQwL4cu69GLza3m1lLmesJtv/iqGDQQJwi95hACNDkpzF0eqoC4thKHcL2egadoRMVPQtmtSwsSGysYY7iXHDIm0ak3Y4LhkxGh0xeWXEwvYpBP7VKhzYPIGRHHnHSaUdjaRktKP+OfGevLNn4Qwc8s8oRfsfMN7kNfmS42x3cViyUOnOjVj4QIZvt6uiJhOwjSItnJ9zfSxyfeS7YKTCsiTQvAGUerFp5WwRvO83ajjgyOmGo7qfTi2mfIkIbBNAR+AMXWtHwYKDJLQ6mmUmhGHfHCfdU9Ryg1c+2MNttjuRm2klIeCglBj32HweoiKsY3nLf53Z+Zixu/mH4/F6Zt5yIj7gu+cR7PsZNWOBaQ6fME42ApOvfGglM1/qtY659H+h7jcGIE0gqAgAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.299Z", + "time": 77, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 77 + } + }, + { + "_id": "653fe2843bcc7fd80db785216049a251", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 433, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/authentication" + }, + "response": { + "bodySize": 1661, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1661, + "text": "{\"_id\":\"authentication\",\"serverAuthContext\":{\"authModules\":[{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"augmentSecurityContext\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-reg\"],\"password\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"fzE1J3P9LZOmuCuecCDnaQ==\",\"iv\":\"nhI8UHymNRChGIyOC+5Sag==\",\"keySize\":32,\"mac\":\"XfF7VE/o5Shv6AqW1Xe3TQ==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"v0NHakffrjBJNL3zjhEOtg==\",\"stableId\":\"openidm-sym-default\"}}},\"queryOnResource\":\"internal/user\",\"username\":\"anonymous\"}},{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"defaultUserRoles\":[\"internal/role/openidm-authorized\",\"internal/role/openidm-admin\"],\"password\":\"&{openidm.admin.password}\",\"queryOnResource\":\"internal/user\",\"username\":\"openidm-admin\"}},{\"enabled\":true,\"name\":\"MANAGED_USER\",\"properties\":{\"augmentSecurityContext\":{\"source\":\"var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield);\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-authorized\"],\"propertyMapping\":{\"additionalUserFields\":[\"adminOfOrg\",\"ownerOfOrg\"],\"authenticationId\":\"username\",\"userCredential\":\"password\",\"userRoles\":\"authzRoles\"},\"queryId\":\"credential-query\",\"queryOnResource\":\"managed/user\"}}],\"sessionModule\":{\"name\":\"JWT_SESSION\",\"properties\":{\"enableDynamicRoles\":false,\"isHttpOnly\":true,\"maxTokenLifeMinutes\":120,\"sessionOnly\":true,\"tokenIdleTimeMinutes\":30}}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1661" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.300Z", + "time": 77, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 77 + } + }, + { + "_id": "aec85c9f6664d9880169fcf8d9d733db", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/cluster" + }, + "response": { + "bodySize": 179, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 179, + "text": "{\"_id\":\"cluster\",\"enabled\":true,\"instanceCheckInInterval\":5000,\"instanceCheckInOffset\":0,\"instanceId\":\"&{openidm.node.id}\",\"instanceRecoveryTimeout\":30000,\"instanceTimeout\":30000}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "179" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.301Z", + "time": 76, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 76 + } + }, + { + "_id": "8b83418cf28acd1b939879c72c951589", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 450, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/forgottenUsername" + }, + "response": { + "bodySize": 743, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 743, + "text": "{\"_id\":\"emailTemplate/forgottenUsername\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

\",\"fr\":\"{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Account Information - username\",\"fr\":\"Informations sur le compte - nom d'utilisateur\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "743" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.301Z", + "time": 77, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 77 + } + }, + { + "_id": "ba8f08c2397259b7af7094fa4d11c519", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/registration" + }, + "response": { + "bodySize": 431, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 431, + "text": "{\"_id\":\"emailTemplate/registration\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

This is your registration email.

Email verification link

\",\"fr\":\"

Ceci est votre mail d'inscription.

Lien de vérification email

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Register new account\",\"fr\":\"Créer un nouveau compte\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "431" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.303Z", + "time": 76, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 76 + } + }, + { + "_id": "71086d44381b7d81178ecc45f4989855", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/resetPassword" + }, + "response": { + "bodySize": 455, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 455, + "text": "{\"_id\":\"emailTemplate/resetPassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Click to reset your password

Password reset link

\",\"fr\":\"

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Reset your password\",\"fr\":\"Réinitialisez votre mot de passe\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "455" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.304Z", + "time": 75, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 75 + } + }, + { + "_id": "82e1f6e62e8145e19f78445f80160a4f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/updatePassword" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 273, + "text": "{\"_id\":\"emailTemplate/updatePassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Verify email to update password

Update password link

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Update your password\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "273" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.304Z", + "time": 76, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 76 + } + }, + { + "_id": "76be78f43255ef6c7f0ec368787fd6fa", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 440, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/welcome" + }, + "response": { + "bodySize": 420, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 420, + "text": "{\"_id\":\"emailTemplate/welcome\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Welcome to OpenIDM. Your username is '{{object.userName}}'.

\",\"fr\":\"

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Your account has been created\",\"fr\":\"Votre compte vient d’être créé !\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "420" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.305Z", + "time": 75, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 75 + } + }, + { + "_id": "8996c88e14b7ecbba49105dae49641fe", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getavailableuserstoassign" + }, + "response": { + "bodySize": 116, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 116, + "text": "{\"_id\":\"endpoint/getavailableuserstoassign\",\"file\":\"workflow/getavailableuserstoassign.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "116" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.306Z", + "time": 75, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 75 + } + }, + { + "_id": "e504a45bf842a314f67c6419cf0b82f3", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getprocessesforuser" + }, + "response": { + "bodySize": 104, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 104, + "text": "{\"_id\":\"endpoint/getprocessesforuser\",\"file\":\"workflow/getprocessesforuser.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "104" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.307Z", + "time": 74, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 74 + } + }, + { + "_id": "340e7202bcebc2ae1e41e59ead8e6dbc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 440, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/gettasksview" + }, + "response": { + "bodySize": 90, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 90, + "text": "{\"_id\":\"endpoint/gettasksview\",\"file\":\"workflow/gettasksview.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "90" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.308Z", + "time": 73, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 73 + } + }, + { + "_id": "050b4885370dd0fec91299f44157fa98", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/mappingDetails" + }, + "response": { + "bodySize": 121, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 121, + "text": "{\"_id\":\"endpoint/mappingDetails\",\"context\":\"endpoint/mappingDetails\",\"file\":\"mappingDetails.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "121" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.308Z", + "time": 74, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 74 + } + }, + { + "_id": "20416931a8bfbbe57c7d8022c7cdc8d8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 438, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/oauthproxy" + }, + "response": { + "bodySize": 109, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 109, + "text": "{\"_id\":\"endpoint/oauthproxy\",\"context\":\"endpoint/oauthproxy\",\"file\":\"oauthProxy.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "109" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.309Z", + "time": 73, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 73 + } + }, + { + "_id": "950d0219de4cf4b9516ef30be6bb5836", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/removeRepoPathFromRelationships" + }, + "response": { + "bodySize": 126, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 126, + "text": "{\"_id\":\"endpoint/removeRepoPathFromRelationships\",\"file\":\"update/removeRepoPathFromRelationships.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "126" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.310Z", + "time": 73, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 73 + } + }, + { + "_id": "4e2d4c5a497442e856fc60f741d3d798", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/repairMetadata" + }, + "response": { + "bodySize": 91, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 91, + "text": "{\"_id\":\"endpoint/repairMetadata\",\"file\":\"meta/metadataScanner.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "91" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.310Z", + "time": 73, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 73 + } + }, + { + "_id": "acd8e0a1115f4a5814282f28fd6a895e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/updateInternalUserAndInternalRoleEntries" + }, + "response": { + "bodySize": 144, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 144, + "text": "{\"_id\":\"endpoint/updateInternalUserAndInternalRoleEntries\",\"file\":\"update/updateInternalUserAndInternalRoleEntries.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "144" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.311Z", + "time": 73, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 73 + } + }, + { + "_id": "0a16240221eeea51a0aa371b1b13ad9b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/validateQueryFilter" + }, + "response": { + "bodySize": 326, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 326, + "text": "{\"_id\":\"endpoint/validateQueryFilter\",\"context\":\"util/validateQueryFilter\",\"source\":\"try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } };\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "326" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.312Z", + "time": 72, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 72 + } + }, + { + "_id": "663ad29a28f7c57cd35b8178c4fdb1a5", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 432, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/external.rest" + }, + "response": { + "bodySize": 86, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 86, + "text": "{\"_id\":\"external.rest\",\"hostnameVerifier\":\"&{openidm.external.rest.hostnameVerifier}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "86" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.313Z", + "time": 71, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 71 + } + }, + { + "_id": "b90c49fb8e97c6a49c1b99e8b28c3228", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 427, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/internal" + }, + "response": { + "bodySize": 353, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 353, + "text": "{\"_id\":\"internal\",\"objects\":[{\"name\":\"role\",\"properties\":{\"authzMembers\":{\"items\":{\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}]}}}},{\"name\":\"notification\",\"properties\":{\"target\":{\"reversePropertyName\":\"_notifications\"}}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "353" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.313Z", + "time": 72, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 72 + } + }, + { + "_id": "a691ccd864d3d6bd4cec893c7df77b9c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/managed" + }, + "response": { + "bodySize": 5007, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 5007, + "text": "[\"H4sIAAAAAAAA/w==\",\"7R1rc9y28a9wWM/ETu+kpJ3MtNcPHUWyO5rEluO4aWcsxQMdcTrEPJAGQckX9f57Fy8SIEAeeUdZsuMPjXV47i72jQV7G78lSTyLV4iiK5zEkzi7/A3PeRHP3tzGKSr4z2s6j2e3MV4soJ1c46OiIFd0hSkvXrIsx4yvYYFQN6xmVrBGVotuJjFFKwxNZYEZDKYZJwsyR5xktBB75vWst24nzM2zgp/gFHMshhZZyeZiLYbfl4Thx1/V/VOS5NN5ihEt86+eHDC8yq7xcUYpQIyT0yQ/QRw9ztLkTOI+iRhWy70A8MSv9yUu+JN/hJa2wWrf44U1qudmQA++zgVGHH/gh7+ha1TMGcm5wL2YL/EKCbwfmT/jJef57PDwtwIAUY0HGbs6TBha8Ok3fz3UAycxmWcUxi/QVNNdckDJ6EzMVcNmMHW2gP9gls3fzeAYKElWM80mM5ST2b/V5BXiU71ijrM8xYKHWAJ9szeSuSbyeAV28GeOiuIGuuHPK2AWqpsLKlciKfyTYIUnkAp+ofk8Kyn/mSNeCobiQPZ8mVH8olxdSgDEYaD0KEmAkGLEnADDmObjLBHryzWYaIZGjoEbrwmdix6WpVjMQg7bKjzF6qjky99f6UEM5xmTAyp2N11b+B/+fHeJTukiE6AxvMAMAwASXqA5jMbJc5TnhF6JtuyGYna2OGNXAoRkRaj5scIC7cCv0xOJhoQBWEzgRqj182JixIlgKVxS8G8dcs9icajR6YmYXLzEDPgBpfFsgdICC5KmZC5ng27IEUMruRCwySVJEkyPl4iJzvgwvtjo4etTwVxzREFQpoAqRwTkBAYCaLB+vAG4CowYNF0C75itNOsXnAFFJAvBeZw4oGrGepoQ7ky9JvjGatg0eUjivEBlymERRaAG183iit36U4HhK/whh7m/PlaL/s+Q/8mj2KWGGvoccRA1nwKclYIAhIsfNSSjUESsvXG4xOOAI9kXaRaCswUBh+YEfnMihXUrTWpMr1FKkmk1t+2wNa7u1qMiXIsQIEw4Vmcmlff6Z5wuakxcGQFJFf+6sMCCouOlMzQoXKLxhbJxShVqE5K0MPpmU7UoOyxbjIU4ztJUKBmBu7TOlxiOIAasECW/I60xFVKGj3LEl7V9P8zcsWBrQCsKGSY4TaTsSpN8obuekZQLTR6LxYT2BPX3A16LgRcbcZoMXwMvYGPeNa6S3Ephyu5XOFV2e0nyisEVmszumiiGkXypT87iLLkdBzv1/frECLCmYgdT2dQpotPoSMBGCi61uwYCMYbW/ZnJ0vC++Djqf3fLOnMNUkDmKi4eZ5OZWm/iCIXmoaBMuHi/qkxahCL7UKMFy1bQpveONF97nB+SqYZSLnNpfqMV5giYBEU3hC8JjfgSRw0+aoB8xRDlr+WGzVX/Jboi2TepRMpp9AENWU4Xeo2mMqUBGdfMKR2RAhaAjki6EtGpOIaoQYsBWgFsLHAwEawCvJjNiSTLMyHfwhCbXgvZmmVjT18gu2+YtujQD8pt2aYgjFWoeVQRJ+6tPNrURWDpkDLYw97UXqOvIaAvY1ojRcZ/3EeIbRf1rhRFtUelJz59rTCaGAeO9B7k+BSCCAbDJQC1KBPdfMhU82hSLHni+SBRbqPTiCIdlK4RRVuGlx7bHKugs3+4AE7Ij5heiRP61o0OhHuyKlfTVHVvJs409MFM+8t33zUmog/OxIuaKhq8XVxqdYI+Gbyo1aeJGRJZkW1IPxW/EMbLkMaqEgkrtUIdLodjWruzDZ6u0GbHOMbl8sY+PtF7kNfg6yHxvCJEOwD1mB323thBSgfhG9jWp+wruZ389iD37CDHTSRNUsCkhAJsYnJFD1aaKwhHFGiHCE2anDg5uYdGl3ZJcOEekVrBdJ9HtqdmVHS0NZqrlaDastKBBpfgYk3zWYuctOUgRAtypdJT2hPTeednlfH/OpYW3nTb9rsa9CaYJ72YvHF/X4RE3T2RNpL0kmxfiht52I4T6HKQB9A+6LT0oHqQrJqqg8g2yKXxCVZn3T1aPSOs4JHOyNtk0lmAhyniDtQjSriTPPdodap77yVP2tx8zEypuaXwMP7h+6NI31/4vOE7bIgWNzLFNi8Lnq1+EpdaVc5R/gmIe/6bnuXHzGY1LzxsLO9bc9kfva/395awAPKmm4XbIkDLVbIMtKFVu54Y0ZGxL2ld4H+Enkh0RYKrCo5WeZgtq1NrucWqp3sntqch3NPIDbIqGxsRD8TXFokGiOk2lijmmRyQM3KtpLVDsMMH5mLdX9XL+1T/KERzVF+XblP0TeyxmD9Fav5U67070u1NWEdU7+aGNxBgmavfkP7+kvOqg0xJpz0yXCZvpQsJGplnXZsQyFZZ5QSNGoLBKaz6Qr8je9UhsDWzhNNXQyyxk+kKcax18992idl1X/Mp3mEasbuPS8x+lxT3covJs+hmSebL6DT6HqeZnXMZdpXZqB8RbLU1FgLqRyQBA0uA3sxXy34UtADicExtXlNrtwelitPApMA+ArLtIaojHx0RVZc0N6tphtHU2F2reOdLscHdy6kk94MU09Po7IbuKppVpZxnrl/WNXQgDmxd5ezykuVZIbYiyerALHBgDdq05D+ApFwWKvYP9v82INin5eoY5YWXIUAcxoPPO/3vdI5yoEha+DNflKvOmbRUetqdmJACpWl2g5NnfRyHznK1DNwqU6o2xJ23DmoMz9XoF7fg0Y+VVUf07cPL4lSXdBaII/r0VsmnLzSyL9L1oA8tg11xjAPlmKSxSk592jj1qF35gTIX+lJVyLJ3EAUDXF5KoO7yAxdMEwhaoiLHcwKIZhC3M4iToBWwuCZzO4K4zDJRTy2Ultm3dUGKb9QyNYTNVfzQvENyHYr0C8B7nYMJOPwbFoALgq5XVUByR4UcGoAvVRx+ROsewd4FHA8gvK3L2HsUZ4TQbw1sB9dlePw9YkkGC9/9+MV18V51VuxuS6yYU131pQrzD1aF6RZtGTUxds3WoMrLNroM0Qp1vzzN13gF3COcNAoHAc41L55SEI55HXps0yRBsR5RmxSBWySZmP/UbkZtoEd0Jd0XVL5+EN2H1gurh+pre4COSKPmKzX/tskMiKp3bAG+EmkzJob/en7+538+fvPN9O/n59Po/Pzx+fmTiydfP/Luqu6JlgF0RqRm5RF5ZBSGk/YTy+Y9VmmmugTY7zHb5CHJv0Wc0Q6jUR3Y7qvq68cLF5xAMOVtcGteBWvbl9FjhnURxlWaXYok0exWKCLz5PfwEBXJQv4vKeS/9T7DHs9Wbpp8Oms9pf1TbL+bhab5u2nxvkQM7+xTaoNvvZ+ta6neEirfYrvvaPVhug9ka4vuvhiyfQzuW92e70EFkMp96oiWW2xM4CFmV43Ac+2atlQI7E7kP8wrp5HvdhO/BmOEcPjjvzYycVsPj7cV8f4ur2IsexPrdkpfZHU7uGFBaHi4oYJ8Le9+RjiywpFoIekWgdwAS5Ei0mqWFMf1oB6XZce2ftkq+Z3Vxa8FZwtFYzVPIrAtiYQyIUWeonWkrzeKg3j3kt+WG9CAHErNV79uGUMP6b0+o9zbQ43o7cO7o1je8F0jzdd5Ifpxalr6qzufTPcb2jdkbpvKo8GYoNImVH5QpVONtIUIJSXvy23vfLa6PVUw6HtfgQrXSOIZZYvITBBq28yQKKBaWfvUbq/FTUqmWNbz+aoe/z7C9GwpcXQWr8NBjYCFcnsR5w4W0z2I0HZd7KOMUgMP41vYvBjSErcxROWMXJYcP7Vv3yt+jB0vZtdgo2nBJUc7K9fhyDu83jkKcdwxKxa5zulbtW6vIKR6+lURR379htB3P5WgOUylkNFNddBihyk3mFwtec/IRIh5TY8RY5QagfCeVX8kYETihVpGo8u18qZqkA7iYF181X8mZyvMSxpu18QG5VsGXjuG5viKpaZRZq3sGd+wMg2SbdMGsJ+fsYZ1b69Q9Bb4RTb3r7y3sD2qD2qo6mmy6bYN7tI9d2X+fp106zDvwVVvaBP/qYdFRTE2el8NFhWT4N3B0uA7NsgKfY6oVulzsUS9X5OJatZtmdCDKVpf+QpiC4GU3gD8rQd6oENzKrxinnU4M3ryFH8gBd/2van2t8P9QydLRkYLoOo1v4RRHy2M8g/yjxZMuTnVQV+r2T2w6vvRmlFCJUub9AiY9o+GWoo1TNKrqtMYTV24dRWfvrIYPcs7TsVDo46hU3RH/xLNUCkNoD6egDZZeafybx0LBUVW9RnfwI04+nu0HW7jf9TmBvQ3MTW3urRM5aVe97VgZ4wYdKbDkbYOqBvvCPpcCAJyFBxza93ARWBGX2GUDFvmimXZ9Xqfa0Qv72OjFwm3H1PYdRLdLEHrVp8HBl3EcKV5INy0p4HHq765eOAkBi5LkiZKD1uhfZKtEKF2ZB88r+pdRfU1xzpqVw9zRPi+hB3gbzNMvZuRU9WfauRR3acazpoj9COfRoBrpvV6mCRHRyS5wydJF9ufIWlq7fYCSdJJWGDm4jHwBZKGoe310Sf7SrDhFoZfB47nFw773qn5JvP+z5BadHglax13iNt4i4j8KM9CPmPPz58ZIPzwW/REzgso24/7LBjwDl6/uWp3T0as9PIDeAsX5ofdFFojM7X7B5/6fBmgTmt8Zm83P25UPfCh9XjqcwdebQ2k+ylFE10Pjo57MWTlTfXyguToe/eCtPO4mxckncP9vSANwxcv6CPJsfN/WvFQvSDJW7vKuTav/ksj2R4FvYN2BJxo/LPgzLv4isfO/lGYNcKsa53Jbh+CCXNA20dhdvn8SyOQ7mULjAoVqSI1P6qC+TuwDagZ5VfQ9rAYWrZ2sxg9EB1oPOqsRC9K603Vt1EezjdR9iJqG047UfJskBMTOM8qHXUHlPXyVRW098C4TUQHkXtLUVNYPwVSribxqZV1ddFRJz0dCyjSwnbiUdxoXKLCfd+gBmlQxA9Q1Jv/A+C8+9WBbgAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.314Z", + "time": 71, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 71 + } + }, + { + "_id": "74a7cfaea67f19b6a547ebb768e76ebe", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 438, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/mapping/mappingtest" + }, + "response": { + "bodySize": 886, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 886, + "text": "{\"_id\":\"mapping/mappingtest\",\"consentRequired\":false,\"displayName\":\"mappingtest\",\"icon\":null,\"name\":\"mappingtest\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"target\":\"managed/organization\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "886" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.315Z", + "time": 89, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 89 + } + }, + { + "_id": "b1499bec9ed3b8c0b1488ce7644d09ac", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/mapping/seantestmapping" + }, + "response": { + "bodySize": 795, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 795, + "text": "{\"_id\":\"mapping/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"target\":\"managed/organization\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "795" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.316Z", + "time": 70, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 70 + } + }, + { + "_id": "06e43b06c5889436306de832c9ef5b8e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/metrics" + }, + "response": { + "bodySize": 33, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 33, + "text": "{\"_id\":\"metrics\",\"enabled\":false}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "33" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.316Z", + "time": 70, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 70 + } + }, + { + "_id": "b383c6f86886873c85a44fc34ee9c862", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/passwordUpdate" + }, + "response": { + "bodySize": 415, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 415, + "text": "{\"_id\":\"notification/passwordUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"password\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.passwordUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your password has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "415" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.317Z", + "time": 69, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 69 + } + }, + { + "_id": "01b649998d9398654a57902d252545ba", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/profileUpdate" + }, + "response": { + "bodySize": 560, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 560, + "text": "{\"_id\":\"notification/profileUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"userName\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"preferences\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.profileUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your profile has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "560" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.318Z", + "time": 69, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 69 + } + }, + { + "_id": "fe870654434ff77b9195e8510c2343c5", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 438, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notificationFactory" + }, + "response": { + "bodySize": 180, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 180, + "text": "{\"_id\":\"notificationFactory\",\"enabled\":{\"$bool\":\"&{openidm.notifications|false}\"},\"threadPool\":{\"maxPoolThreads\":2,\"maxQueueSize\":20000,\"steadyPoolThreads\":1,\"threadKeepAlive\":60}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "180" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.318Z", + "time": 69, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 69 + } + }, + { + "_id": "3b7ebd7cf01869d6ce8cf4a5c9da9642", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 439, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privilegeAssignments" + }, + "response": { + "bodySize": 493, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 493, + "text": "{\"_id\":\"privilegeAssignments\",\"privilegeAssignments\":[{\"name\":\"ownerPrivileges\",\"privileges\":[\"owner-view-update-delete-orgs\",\"owner-create-orgs\",\"owner-view-update-delete-admins-and-members\",\"owner-create-admins\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"ownerOfOrg\"},{\"name\":\"adminPrivileges\",\"privileges\":[\"admin-view-update-delete-orgs\",\"admin-create-orgs\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"adminOfOrg\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "493" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.319Z", + "time": 68, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 68 + } + }, + { + "_id": "00725d753c390a655105f030d582ccaa", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 425, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/policy" + }, + "response": { + "bodySize": 735, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 735, + "text": "[\"H4sIAAAAAAAA/w==\",\"zZVNb9swDIb/iy79gF1fh1wLFBiwQ7Edh2BgZcZlIEsuJbszgvz3UbabxF7mtOk29GTDpF4+/BC9UT8oVwtVOUO6VYmCPKdAzoK5I4NeLb4vE7WS153TzdqLH6N3NevOY6M0GF0bCJjfs6uQA0XDRvU+cpTxqSbGywuPZvUNuSGN91FOHC+ubgoMX7EgHxhi8L3I5ZXECm0VNQL+DNkaGvCaqQpqu6cQaxT2vXDGB1ri9pf4PIb3g4lIR1QdcEgBLZTRNzYj6ev8YqmAoexgV44fKM/R3j4CR6PK1HI7uLefYxs1WOtCqp0NQDbV4gg6oHhvlzHqEKYC758dz8QqyX5BW4RHtfg0DiEWKusyNb1ZdJejdMlKPBmfrJaks+uZZLvHlGAfaGhJ3ivsv8cEsaxC2xvmynN9Zn2C6DsGc+tsHCNJyc+ANmAoT1/ORPHdoZGqGPq7dVLrqUZuU7l1gjbpHFMjl7HA34F2hYhT2eUPzNBOSzDQxskd1++/NGnHJiUiW8zBjQdWRu3DjEpypGW7xqQd64getOxJf2egmBujs0v5qjZPLQdMqXtYow5T5jipr+c9A2vUYOSSvH9TyH9dokOmEexwMU9fwGHIE2VrY94afroEjh7vEktJlo+fWcXsDM6u4o+28MZ5lGChwPx0Gv0gn0bHBm1I+7/1kboJ94qKbAirovVPf/pfNQjUdkAJAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.319Z", + "time": 84, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 84 + } + }, + { + "_id": "47768b99c96433fcc0faa9554a4e372e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 429, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privileges" + }, + "response": { + "bodySize": 919, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 919, + "text": "[\"H4sIAAAAAAAA/w==\",\"7VhNj9owEP0raU6tBErP3KKFSkjtstrtx6G7ikw8CVYdO7UdEIv4750EliwsaWarVkKVTxDr+WViP7+Z8SZMBA9HYWnEUkjIwYaD5w+j75uQpSlY+0GyfP/snBHzygHOU6wAnGGA8ZmS63CUMWlhOzhGcbCpEaUTWvWD9UqBsUc4Z6oXMMYLoWw/XQHF/JTvLLBkBpTrx6ULITlCqYzTMfFjKMAdZUyFN2tJ5511wh8GKIN6/2oJ4EMmpAODE6OnVwTwM7gPNxvU03Z7HwbaBNEx6wkCX9KoZx/lcClgNaxKzhwMOUjAH23yRo/MLeqdZIrlwCMcZUo8sr2cSjCFsHYfW/h1OvmGo19uxvHnCf4ZTz5O8M9D88VeyV7JnUrezQxKc6rMFCn+UI1Xt5OYor7KgrkmKbBk1q604f3IXCxB0UgtQQMFE/IvHxBcEV0pd+eYqwi6dugK5UIruK7qk0BYK20dkzFHkVsCfyrcmkp6pTlhXZvPMwRSpHRwY/RSqJTAa7QEimM0GiUsFKvc4vGWRmqg1MYRgJBlgCdtCUTiAz7G85OrAg8jYZZk1t2tVdqP/DFnU5Vpwg4byAC9IKVEneJJx0iBf2JlKVRONvJZNjM5YWtqhyRiG7t6iT1nk89ieKVNHs/cJfUkQRvEvJ6UkqWw0JKDSRJSjt9lvyFTfNgmuBOPrd2xM9PvE/wh5Xuv9V7rvdZ77X/mtdF7rEwDtMkgasNsB9+8jdqIcPBdRxF7aDZIFkstXy+qeereAt87/ave6Sn07luA+DyilWlD4W8BvJAv7RJgJ0x/CeALU1+Y+sL0kgrTTo+8zDuAzgzvG3/vr95fvb96f/1d348tfhtn3eL3Nf5HhesrPfZQsz5sfwGv8MZVJCAAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.320Z", + "time": 68, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 68 + } + }, + { + "_id": "f72fc2cc21d104762b3c16db0f0db1bc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 433, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/process/access" + }, + "response": { + "bodySize": 246, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 246, + "text": "{\"_id\":\"process/access\",\"workflowAccess\":[{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-authorized\"}},{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-admin\"}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "246" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.321Z", + "time": 68, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 68 + } + }, + { + "_id": "bc1b98e58c7b710a4bc8518787bef019", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.ds" + }, + "response": { + "bodySize": 4251, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 4251, + "text": "[\"H4sIAAAAAAAA/w==\",\"7Vxtc9s2Ev4rGU7nPtyJcS5tOklm/CGWnCZNnLiW3bu5NJOBSEhCTIEMCNpWPP7v3cULCUkgRUqyfHPXfIlMLJ5d7BsWL+Rt8IXFwctA0Cx9HOdBL4jS2Yxw+PnyNohpQiUNZyTLGJ+ECeOX6vmXbwUV89cskVRA5wNsOJ9n9BH99uiP4Idb0+HujwAA04wKIlnKgXJw/P74/Di461loScSEypDFeThORShohHSrHFTD29gyMH/WMwAOdDaicUxhdGOS5LQXJDHJ+innNELi1ySSqWBUDWjEeIz/R2XzaZomQ/adBi+fPek5z4c0KgSTc+CVg/Dy/P0QRJhS+HlEiXzLQeArkgxRQFTiz0+c1nM2o2khT1iSsJLin0/gXy/IBJsRMX8PQg4Bggpo+nQbTNNccjIDOXCcPP4ajkUap2FMrx5HCclzFj0Gk4EMWSpk8PLpj89f3H3uBbmCXwH8DIoRaSpxsKSQU8oli4zyboOczbKEWoUMUKEFiw9JPGMcOODDU2B5nQqlrR8iMc9kij8lWB+ob0INEVKu2hC3F4A+CoUasWyq7PnqeHjQP+ofnL7rD5+dkjgGbwHCmEgCrcmvB0c/n7+gL/qDd2/6H56f31wOfpocHgIFu4L241hQ8f36+OLi8s0vz54/jd4Prp9dq/ZLOtdW+/FpL5iRCHnJ+Yvxvy9k8lNGb35J3nyM/tE/0mhZIbI0R8FZPAM18jGbPF4QPScJ6Co4ens+fJfwU3r+7DKJiuP/jPjku+YIXjBK6NvYGAiAwnw+A/uMSQF97/AfyM1h4Ey+FmCql9rd8PGM3FQe+UpKOsskmOkZGInmaSEieqJDSUejgnSf8HPokRCp3KM4nFAOXKJeHB0aWexP12/wmXEd9RNEwnC5yRIWMRc+Sooc3JnGKtx0qDKTGZY415B2lwTCefQV9NHHxxicn9AFP6pn0DgWIWpYcQlLpueK31sQ7TMGEiYEaSJbpbfbgOVn9FvBBKYDKQqTDUDjgo0KNQjgAvjGj00g9IJrMBoZsURHfCQgiOlHnsxRYyYJIfwy2IKYHmDoLUuZ1/WvKEuYrzl4p3KsONdue0Bs999ttC3YKOKHNnQfAQWDUEtF3oPHur9P8ZCUo/EkzEy/8Mr2w1DVbSXXUAW5j3Zzk0S8o0WiKY0uh8UoBww+8WrWyK0ow7wi9ViIcoxsr30NiqXwdP5KrohSZUN3pAmV//sQZkRGU6cXauwE4p8pA9cqzWCr3pV5vAwYL3X1nvKJnDbICsSVusJEk/vcmubyjOJsQxfmivXWNowQABxfI5T+tMpqwfmjKREwn1MxpHJfrl/yDHOoYB7W8UmSpNcXXOfSMaNx3wqXd1K+wgkLB6gaptdJlxXfxUUXFPjfGICM953hNQFhdCwMxwO44LAxU1M+1Gf7cteK40MnaZLTIeU5k+yKmgGa+rO1nyIGqNmA2HHoks3jo7ucFSo9wuqEdpLaMcGYJd6c/PAu/78yJWh5jsBR4n2FmGYZjogr5sME2UP7EbmxCl7vRuSmUla9F4G3tYcEz1wLueAtlvo0xUUQXV3juC5jibo5TIa95k7pvLD8ts179BGznrTDGoKLkgkdQhKc1Zeb7ZOdRq/Gn2v8MNcMmr3m1YS2dRnA9IHZ9qUKuqX0FXpTBW2p3jAc3LyfFlw2iF2CTjV9GKkOHuAqZ3SsqbzpqcnxBc3QJ5YKxn1kS8vZqTD/3yqTh8/S/ZTnNCpQ1iqrth4sxmFUIbRLtfCQJQT3UPc6OVds/5qgF2bTARuPqaA86pYhF+bYuMJoNn7B2beC7j/ZaL5/pZoH9LcLj+k7eduKDdf5Wk7FgI4Zp/HvTMiCJAu1wLLbGZpHJVE7r0MuWOwgm/BKYyxUDYZutWmf+0O287nq1GVHqNzgVfw8psVsOuBdCxXsFcb+9TqoHGpheUSn5IrpGqguBAxpOLK0za7fetgNwTA2h5Ldxmt6efAmIi0yrcCavoqiRlkLodl6eM3BCgGUNZXfut1fthY7WDpoGG9wMzxf5SQ5EGmyGsVpcYjP8x78sJQ7OYIy5zEWM1Tc9xm/sFb8foIn2jZvevRrhJl/0MfFqs8ZqiOojhNPCZZ4UPlxWDbFKkVWopgtljNq53IdjDGzU1PNMVVF49svo3kkWFYH4TZ7euuj71rOqtm3MBPsiiV0Quu1VYNY9lw+bMN9rFkGS9gEa2YpCDhDZ3QLoapmi+E51SvdXBnI4+b4fPdu7jlpLV1eSbLP49Vyn6/e/KtbgZUK8U6KT3PqEst9aUsx3aeSxkzksvEMGkUKLZknVLD9NyhM8LTHO9W6ON9KwhokW180gdQVEvrKyvrBlHTeGSJJo0vvFQXVcG+GB/C9Gp6nMW1WFUgUIpXv+sGdvb5wAINKI5+6VANmGEW3id4gOTM+GUKak3RizrnqLjkobvqnK2+UMMrlgH9QUDjuuqm5QtnCDC0kcutAzvIpXulad4NDQ2l6yfwzFstfQZad52ztfRCNxnJi6b07O+UlnvVQltgXkqpoODPFQz9NEn1VqR2w7mVLj6jqXXsdZlNOuncbTjioYmT5KGWDh+lj2HUOWzS7pmWvKim8uKNl0/BVv0q45TA8KCVpfQdK9dPddpt9sOhsbwAlQUhqrUtmIzYp0iLXN7X0UFrcfXLBLYS2tdYQi/03d24iWltx1uBXfe49OttOucsiYr/GGXhXYT+jeU78JzA1otke9WADKglLukPGup+vyJ+SvIuMmt4D1PIinwPVMC3kTBako+9VfWpzsA2ZLqiLHR80vUPUyqJLuJsOtTPFBvpY6viwk5AlM4t134ThzFNnaSFVYH+6hSRPx+wG+pQTS1W3uZNJeUneTCt3ePc7n/Po4FtBPTdEodRTDVjzIdl9lcqIrSXYZ72Mt5Lpjfd0dlmu0NKu7ABoyAGRTWnHwVHkMam5frk2WVdIDbma02uj4TZAQJ1aeywNbu2KwkGpWVZYBzijV61wKmofVBJ3GBhQ1w1MdInnCrFdYrNULTVnyWvmDtnWtTSlDwJIXrUfJP6qK9tUeWpeKVh9K+Dg774MYho3yR1oLt/mokYMlTU11W/4btCxqoTk/AQvOoNoZ0WiymuY499OeCror5ZSUfQ1TJmM2mQqyxpog8/mYIJ5X7zQLRu9dzFm/o1sfL4RIJvpN4FWIXXLFqB+m28Da/c5eSqhqq3eRFrm4bZvu+1Z42gui229raWDLYx6ZTbU9QT+WtrZ/+L222J3f2WneUbx/Sv/bjO23ZPm96Nsk8l0NLfXtdLJVirGcZnLbz7lOs0bxZAVxRubpnErYHw+4TPKvUmlau1tw6/WOQxiWPHZk7+sMl51mzanY47gjQdls47HeyXsVud76rx0pzzV2eiakLC0qZgQzr7Xpn23/X7dy+W0ZwdbUMKKi6mXb9tbCKk/jj+KyVaHvlOWxPBXW64ZEVRdZK3huDDCRs4dg0CTbz3eNafMXh+pO3pOr3mHASjqreU3+u84gtJq5tXzd3ReLq07GtIb3E1XNO43mJHDtkF8orHOdDbrEs/+yyFu7ux4a2BhWIs5uL3pnGnMZ7jOoSe2u1niOkrTJYf7dRR1eW83jnKhB9zFUWquVNgqfMkKzlcs1o3I1KzrnWO1+vf7xtKKY0P/VbItr106CLmwXPIL6sx/Gwq5kCLtly92mCF7u8gETk2pw3a3qcC5OraNqRWMyhNLN+eWhFXX4eqMvlxOuhlLMfNdxewSKwakiwKXk9tKFt2dB25g3hYu6JQduxBSwe1aRnu56/gmY/r7PnV3LbLrZaJ1ZwOCkhhPBgYsj4iI/wWN4OsO0/ckl/0p4SBrA1eXYmOW+Okl0ZAKlkve0l/vac3XJmjs5N/e4LVhXN6BgHFOoHNeboKv1I0rVBttawia6MlnyjLvRbEFgh0WHS7utkXHmYPVsupw2avtbHwRMwY23tqrbNxIx2Vv/67UduAF86MWbDO4DE/ovJ5gmjaANUe88il+futjVpZNs6socl0DSi698sPkcKHYneoXgV+qI0sIG11ky0LwD0WSvE7FCQNWfHLqVI06ciE0TwDf+fMUqjqkvqInaczGc6dpWIykoHSgvsNmZkx9CdN83+xWHU2od/TORZFLXecK/dWD4G+3+MksxiEOk+RxzMTdge16IJEctzQx4r0g9hWvFmAKJ9NvKnix9JXT4Nd3+CE26TRg5DF1kPUnYFalveZOAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.321Z", + "time": 84, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 84 + } + }, + { + "_id": "bd5d9cbc1b0e2e075e3f77bb51e59736", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.init" + }, + "response": { + "bodySize": 789, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 789, + "text": "{\"_id\":\"repo.init\",\"insert\":{\"internal/role\":[{\"description\":\"Administrative access\",\"id\":\"openidm-admin\",\"name\":\"openidm-admin\"},{\"description\":\"Basic minimum user\",\"id\":\"openidm-authorized\",\"name\":\"openidm-authorized\"},{\"description\":\"Anonymous access\",\"id\":\"openidm-reg\",\"name\":\"openidm-reg\"},{\"description\":\"Authenticated via certificate\",\"id\":\"openidm-cert\",\"name\":\"openidm-cert\"},{\"description\":\"Allowed to reassign workflow tasks\",\"id\":\"openidm-tasks-manager\",\"name\":\"openidm-tasks-manager\"},{\"description\":\"Platform provisioning access\",\"id\":\"platform-provisioning\",\"name\":\"platform-provisioning\"}],\"internal/user\":[{\"id\":\"openidm-admin\",\"password\":\"&{openidm.admin.password}\"},{\"id\":\"anonymous\",\"password\":\"anonymous\"},{\"id\":\"idm-provisioning\"},{\"id\":\"connector-server-client\"}]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "789" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.322Z", + "time": 68, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 68 + } + }, + { + "_id": "9f231197089ead48083fbb1440010a11", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 425, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/router" + }, + "response": { + "bodySize": 619, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 619, + "text": "{\"_id\":\"router\",\"filters\":[{\"methods\":[\"create\",\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"},{\"methods\":[\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^config/managed$\"},{\"condition\":{\"source\":\"(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0)\",\"type\":\"text/javascript\"},\"onResponse\":{\"source\":\"require('relationshipFilter').filterResponse()\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "619" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.322Z", + "time": 68, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 68 + } + }, + { + "_id": "ccd397735c0fb9e3c00c0ecdebadad2e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 436, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/seantest" + }, + "response": { + "bodySize": 459, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 459, + "text": "{\"_id\":\"schedule/seantest\",\"concurrentExecution\":false,\"enabled\":false,\"endTime\":null,\"invokeContext\":{\"script\":{\"globals\":{},\"source\":\"//sean has changed this script. Let's see if it is still working. qqqqqqqqqqqqqqSchedule1\\n\",\"type\":\"text/javascript\"}},\"invokeLogLevel\":\"info\",\"invokeService\":\"script\",\"misfirePolicy\":\"fireAndProceed\",\"persisted\":true,\"recoverable\":false,\"repeatCount\":0,\"repeatInterval\":0,\"schedule\":null,\"startTime\":null,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "459" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.323Z", + "time": 68, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 68 + } + }, + { + "_id": "ab8521e6a907278952a8693cbcfb761e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_activate" + }, + "response": { + "bodySize": 838, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 838, + "text": "{\"_id\":\"schedule/taskscan_activate\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/activeDate le \\\"${Time.nowWithOffset}\\\") AND (!(/inactiveDate pr) or /inactiveDate ge \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/activateAccount/task-completed\",\"started\":\"/activateAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"active\\\" }];\\n\\nlogger.debug(\\\"Performing Activate Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "838" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.324Z", + "time": 80, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 80 + } + }, + { + "_id": "42626b5d9ae06814ca0230b793cb2d1f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 443, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_expire" + }, + "response": { + "bodySize": 830, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 830, + "text": "{\"_id\":\"schedule/taskscan_expire\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/inactiveDate lt \\\"${Time.nowWithOffset}\\\") AND (!(/activeDate pr) or /activeDate le \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/expireAccount/task-completed\",\"started\":\"/expireAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"inactive\\\" }];\\n\\nlogger.debug(\\\"Performing Expire Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "830" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.325Z", + "time": 78, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 78 + } + }, + { + "_id": "5fb111d428ad18346dc15d5fa8e1e840", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/scheduler" + }, + "response": { + "bodySize": 156, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 156, + "text": "{\"_id\":\"scheduler\",\"scheduler\":{\"executePersistentSchedules\":{\"$bool\":\"&{openidm.scheduler.execute.persistent.schedules}\"}},\"threadPool\":{\"threadCount\":10}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "156" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.326Z", + "time": 76, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 76 + } + }, + { + "_id": "0b8355f1ac5870bd599a7d814921a98f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 425, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/script" + }, + "response": { + "bodySize": 939, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 939, + "text": "{\"_id\":\"script\",\"ECMAScript\":{\"javascript.optimization.level\":9,\"javascript.recompile.minimumInterval\":60000},\"Groovy\":{\"#groovy.disabled.global.ast.transformations\":\"\",\"#groovy.errors.tolerance\":10,\"#groovy.output.debug\":false,\"#groovy.output.verbose\":false,\"#groovy.script.base\":\"#any class extends groovy.lang.Script\",\"#groovy.script.extension\":\".groovy\",\"#groovy.target.bytecode\":\"1.8\",\"#groovy.target.directory\":\"&{idm.data.dir}/classes\",\"#groovy.target.indy\":true,\"#groovy.warnings\":\"likely errors #othere values [none,likely,possible,paranoia]\",\"groovy.classpath\":\"&{idm.install.dir}/lib\",\"groovy.recompile\":true,\"groovy.recompile.minimumInterval\":60000,\"groovy.source.encoding\":\"UTF-8\"},\"properties\":{},\"sources\":{\"default\":{\"directory\":\"&{idm.install.dir}/bin/defaults/script\"},\"install\":{\"directory\":\"&{idm.install.dir}\"},\"project\":{\"directory\":\"&{idm.instance.dir}\"},\"project-script\":{\"directory\":\"&{idm.instance.dir}/script\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "939" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.329Z", + "time": 76, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 76 + } + }, + { + "_id": "372152e7418e4bbb7f1bb2fd5327ca2f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/secrets" + }, + "response": { + "bodySize": 1829, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1829, + "text": "{\"_id\":\"secrets\",\"stores\":[{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}\",\"mappings\":[{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.default\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.config.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.password.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"],\"secretId\":\"idm.jwt.session.module.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}\"],\"secretId\":\"idm.jwt.session.module.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"selfservice\"],\"secretId\":\"idm.selfservice.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}\"],\"secretId\":\"idm.selfservice.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.assignment.attribute.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]}],\"providerName\":\"&{openidm.keystore.provider|SunJCE}\",\"storePassword\":\"&{openidm.keystore.password|changeit}\",\"storetype\":\"&{openidm.keystore.type|JCEKS}\"},\"name\":\"mainKeyStore\"},{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.truststore.location|&{idm.install.dir}/security/truststore}\",\"mappings\":[],\"providerName\":\"&{openidm.truststore.provider|SUN}\",\"storePassword\":\"&{openidm.truststore.password|changeit}\",\"storetype\":\"&{openidm.truststore.type|JKS}\"},\"name\":\"mainTrustStore\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1829" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.331Z", + "time": 71, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 71 + } + }, + { + "_id": "31ff64d3e984c38b0c14569db37889ad", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 434, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.kba" + }, + "response": { + "bodySize": 290, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 290, + "text": "{\"_id\":\"selfservice.kba\",\"kbaPropertyName\":\"kbaInfo\",\"minimumAnswersToDefine\":2,\"minimumAnswersToVerify\":1,\"questions\":{\"1\":{\"en\":\"What's your favorite color?\",\"en_GB\":\"What is your favourite colour?\",\"fr\":\"Quelle est votre couleur préférée?\"},\"2\":{\"en\":\"Who was your first employer?\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "290" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.333Z", + "time": 58, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 58 + } + }, + { + "_id": "b45a1aa28d4bff434764448f028e4059", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.propertymap" + }, + "response": { + "bodySize": 713, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 713, + "text": "{\"_id\":\"selfservice.propertymap\",\"properties\":[{\"source\":\"givenName\",\"target\":\"givenName\"},{\"source\":\"familyName\",\"target\":\"sn\"},{\"source\":\"email\",\"target\":\"mail\"},{\"condition\":\"/object/postalAddress pr\",\"source\":\"postalAddress\",\"target\":\"postalAddress\"},{\"condition\":\"/object/addressLocality pr\",\"source\":\"addressLocality\",\"target\":\"city\"},{\"condition\":\"/object/addressRegion pr\",\"source\":\"addressRegion\",\"target\":\"stateProvince\"},{\"condition\":\"/object/postalCode pr\",\"source\":\"postalCode\",\"target\":\"postalCode\"},{\"condition\":\"/object/country pr\",\"source\":\"country\",\"target\":\"country\"},{\"condition\":\"/object/phone pr\",\"source\":\"phone\",\"target\":\"telephoneNumber\"},{\"source\":\"username\",\"target\":\"userName\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "713" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.335Z", + "time": 70, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 70 + } + }, + { + "_id": "84ee2e3e3f7cef3023dd7241ced2b77a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 436, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.terms" + }, + "response": { + "bodySize": 730, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 730, + "text": "{\"_id\":\"selfservice.terms\",\"active\":\"0.0\",\"uiConfig\":{\"buttonText\":\"Accept\",\"displayName\":\"We've updated our terms\",\"purpose\":\"You must accept the updated terms in order to proceed.\"},\"versions\":[{\"createDate\":\"2019-10-28T04:20:11.320Z\",\"termsTranslations\":{\"en\":\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"},\"version\":\"0.0\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "730" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.337Z", + "time": 67, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 67 + } + }, + { + "_id": "6cbf25336f75bed9003dbd20bd94c130", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 437, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/cors" + }, + "response": { + "bodySize": 402, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 402, + "text": "{\"_id\":\"servletfilter/cors\",\"filterClass\":\"org.eclipse.jetty.ee10.servlets.CrossOriginFilter\",\"initParams\":{\"allowCredentials\":true,\"allowedHeaders\":\"accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with\",\"allowedMethods\":\"GET,POST,PUT,DELETE,PATCH\",\"allowedOrigins\":\"https://localhost:&{openidm.port.https}\",\"chainPreflight\":false},\"urlPatterns\":[\"/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "402" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.339Z", + "time": 52, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 52 + } + }, + { + "_id": "4734d7816408991b39320106367532a9", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 440, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/payload" + }, + "response": { + "bodySize": 191, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 191, + "text": "{\"_id\":\"servletfilter/payload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":5},\"urlPatterns\":[\"&{openidm.servlet.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "191" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.341Z", + "time": 50, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 50 + } + }, + { + "_id": "479d6a831987c6fbbdfccaa366e89114", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 439, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/upload" + }, + "response": { + "bodySize": 198, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 198, + "text": "{\"_id\":\"servletfilter/upload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":50},\"urlPatterns\":[\"&{openidm.servlet.upload.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "198" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.343Z", + "time": 49, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 49 + } + }, + { + "_id": "4c1fef66c916c8940b0315dddc564b06", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 423, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 811, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 811, + "text": "[\"H4sIAAAAAAAA/w==\",\"7VfRjqIwFP2XPpP47ltHkZDFkgV5MBtDOlBJJ9iytE7GMf77tqOzq2sZihLmxQcThXNPr3jPucc9SGkOxkDsWAYcsMFVRVkhwPjX/uzOaIMZLkge1gVm9B1Lyll6uhbxkqjKjDNBmIzI7y2tiSpc41IQB+RUVCXeIbwhiqydhyoiMGbbsnQAsy2qeEkzSo5t40wjwHgPipI/qy7U24MDBN/WmaYbjQTBTBIhVaXcVfqaJG9y9IJfschqWkmg8VRu8ZEJwPmT7yVhEqsbvR2gvmhOe281DpNo4qZzP4595N3cb1Fz/rrT5BUXEt7FcN6eqS8A4yWagEvgLEzQNIVB5MLpMg189MOdtlcl6GcCA3/m24GhasZDNljdQBqiYNkOXcDIcxepIg4jG+rTL2aNh0GQeiFy25GTEM38aG5D+vG4Lc5+il20AIeVmouaV6SWR9WtzobhJM0RP9OrplE+AteS1Ee4xHVB5Bm81lLWDdjZTnwauNNH/vxCMtmHDzURdzOmJhajU335qPsbB7OLDTQ5t+m5g+ysnaWr3r5w1F7038WGLvztThG27lWTSoVxrs2yhULQgm2UGj9pE6FO7qjRRpZmQTaWdMwJWORr/Wpbal3jwSfvJfetEcHM1nWBW/Vzjyy+afP38Cs8MsNgmQH/VW5Xs3K6b2OTv221UfxnZ/887+PPkbWBXdcZLOsa9IgIj4gwZEQYVHNOy442afIiw5ijhvGwe1KHDWFzALGpfsj8IfMhZW5O7t+veOdqBTbv5dXhD+46tPKwFAAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.345Z", + "time": 61, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 61 + } + }, + { + "_id": "c6aed7f604cb532801a9b95de9922a3c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/admin" + }, + "response": { + "bodySize": 244, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 244, + "text": "{\"_id\":\"ui.context/admin\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/admin/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/admin/extension\",\"responseHeaders\":{\"X-Frame-Options\":\"SAMEORIGIN\"},\"urlContextRoot\":\"/admin\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "244" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.347Z", + "time": 45, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 45 + } + }, + { + "_id": "05bacc81732e6f86cfe0b782cdde4f67", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 433, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/api" + }, + "response": { + "bodySize": 205, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 205, + "text": "{\"_id\":\"ui.context/api\",\"authEnabled\":true,\"cacheEnabled\":false,\"defaultDir\":\"&{idm.install.dir}/ui/api/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/api/extension\",\"urlContextRoot\":\"/api\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "205" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.349Z", + "time": 43, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 43 + } + }, + { + "_id": "17421c1d759655006a294261cc77fd75", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 437, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/enduser" + }, + "response": { + "bodySize": 174, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 174, + "text": "{\"_id\":\"ui.context/enduser\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/enduser\",\"enabled\":true,\"responseHeaders\":{\"X-Frame-Options\":\"DENY\"},\"urlContextRoot\":\"/\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "174" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.351Z", + "time": 42, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 42 + } + }, + { + "_id": "61e2740b542f064697798e2a02431f03", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/oauth" + }, + "response": { + "bodySize": 199, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 199, + "text": "{\"_id\":\"ui.context/oauth\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/oauth/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/oauth/extension\",\"urlContextRoot\":\"/oauthReturn\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "199" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.352Z", + "time": 41, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 41 + } + }, + { + "_id": "eadbb4ad948866a207831ff04c796efb", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/configuration" + }, + "response": { + "bodySize": 588, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 588, + "text": "{\"_id\":\"ui/configuration\",\"configuration\":{\"defaultNotificationType\":\"info\",\"forgotUsername\":false,\"lang\":\"en\",\"notificationTypes\":{\"error\":{\"iconPath\":\"images/notifications/error.png\",\"name\":\"common.notification.types.error\"},\"info\":{\"iconPath\":\"images/notifications/info.png\",\"name\":\"common.notification.types.info\"},\"warning\":{\"iconPath\":\"images/notifications/warning.png\",\"name\":\"common.notification.types.warning\"}},\"passwordReset\":false,\"passwordResetLink\":\"\",\"roles\":{\"internal/role/openidm-admin\":\"ui-admin\",\"internal/role/openidm-authorized\":\"ui-user\"},\"selfRegistration\":false}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "588" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.354Z", + "time": 41, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 41 + } + }, + { + "_id": "dccde179c43e59ffe92f719da481c2cf", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 431, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/dashboard" + }, + "response": { + "bodySize": 1031, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1031, + "text": "[\"H4sIAAAAAAAA/w==\",\"rVbbbtpAEP0VtHk1spNQpeWtTVq1UlKlSao+RFE17A72ivWus5eQi/j3ztqAMRBIqyKBzM6eM7czAy/stxRsyIJMBbhiZMAKljAQpdRniwPHhrcvTLozHENQng29DZgwDSUS9EeQfNK79mA9IadS5OgbBF9iC4tjunrAjdbIvbEuBSFSui/piCxj6AvwMAKHbMn8UYje6QLBZknLU0JVSZ1vkpCB3naCtqU5tQgeexcNpsNj0ZlgOaYlaMhRpNYoTJV0vkvLC+STvrsPYLFvWuqLGta7IpRbC7Dh2wiQclTouzme4YPk2ME7VGOHNp6ngR4s5hSUBS+N7hLmCKu5Gj2WebAU0wriVeoKnJsaK6gO6N/GezmHkAPC7K5mjHxLNePxRg1/0qFbC9R7apjbBW7jun5yHsveJYHRouaxIXcJc/I53lNg86gs/1TFr/dRs41kZ3fR54q4x6Bcq+457YXRkkQY9dPVuMIctbgCTfTDF1Ya7QsyvMuy5Ch+0DujMKaIEzo+zJLjLPlAtpMseX8YLU+xztFCr2RQf9bPDZ7As4SV8Dj3wA6OBoOjY05R0IQuD0eZGPA4uNvThSBk06rtdq4CZWmpID64HfdcXYyvCMoXX4JS9dURWF7ESsb2qHp+t6MVOH+FsZF7an411xFJrDIbW4X0SwsB49YC7uUDNspZen3suxIotjY7EzRl1+TVguOou886zqP4e3Tjermd3ux/a2UWg3NOo7KvOJ+Ckxqd216c3EJV3DSsNCyVxH7TnIRV1jxIEUs1vGWxZpEwXYwzu3s9ASdz/U27pasb6VU9G3Tej4YY8JpnUsXS82u8i+1Tb5JN+u6m2epFUSn+Q4Iap6vrcjOU7zjtdW+sNHOFTpb4bHS9CQrqKEXCspNmVoPH+msWlxfmEOXT/JLO2kIbLkGdm1zqdb01pn+WK23kAGo9yb0ku6XoEOia86v/HDqT+iaxU19aAircfoZfqLihCAg8+wMKiFQxwQgAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.356Z", + "time": 45, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 45 + } + }, + { + "_id": "fb55717b678608c3e9704a46f637ba00", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 429, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/profile" + }, + "response": { + "bodySize": 891, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 891, + "text": "{\"_id\":\"ui/profile\",\"tabs\":[{\"name\":\"personalInfoTab\",\"view\":\"org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab\"},{\"name\":\"signInAndSecurity\",\"view\":\"org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab\"},{\"name\":\"preference\",\"view\":\"org/forgerock/openidm/ui/user/profile/PreferencesTab\"},{\"name\":\"trustedDevice\",\"view\":\"org/forgerock/openidm/ui/user/profile/TrustedDevicesTab\"},{\"name\":\"oauthApplication\",\"view\":\"org/forgerock/openidm/ui/user/profile/OauthApplicationsTab\"},{\"name\":\"privacyAndConsent\",\"view\":\"org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab\"},{\"name\":\"sharing\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/SharingTab\"},{\"name\":\"auditHistory\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/ActivityTab\"},{\"name\":\"accountControls\",\"view\":\"org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "891" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.359Z", + "time": 36, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 36 + } + }, + { + "_id": "2cf6006aa7d3908fe4bd8d43fcbca10d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 433, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/themeconfig" + }, + "response": { + "bodySize": 421, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 421, + "text": "{\"_id\":\"ui/themeconfig\",\"icon\":\"favicon.ico\",\"path\":\"\",\"settings\":{\"footer\":{\"mailto\":\"info@pingidentity.com\"},\"loginLogo\":{\"alt\":\"Ping Identity\",\"height\":\"120px\",\"src\":\"images/login-logo-dark.png\",\"title\":\"Ping Identity\",\"width\":\"120px\"},\"logo\":{\"alt\":\"Ping Identity\",\"src\":\"images/logo-horizontal-white.png\",\"title\":\"Ping Identity\"}},\"stylesheets\":[\"css/bootstrap-3.4.1-custom.css\",\"css/structure.css\",\"css/theme.css\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "421" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.360Z", + "time": 36, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 36 + } + }, + { + "_id": "3467e6eff41c0252746cc812803f797c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver" + }, + "response": { + "bodySize": 169, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 169, + "text": "{\"_id\":\"webserver\",\"gzip\":{\"enabled\":true,\"includedMethods\":[\"GET\"]},\"maxThreads\":{\"$int\":\"&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "169" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.361Z", + "time": 35, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 35 + } + }, + { + "_id": "7415ea0af3a4981f3e3feddab0df5329", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/http" + }, + "response": { + "bodySize": 128, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 128, + "text": "{\"_id\":\"webserver.listener/http\",\"enabled\":{\"$bool\":\"&{openidm.http.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.http|8080}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "128" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.362Z", + "time": 40, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 40 + } + }, + { + "_id": "8c44f974db12734398c806d9a1cbcd18", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 443, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/https" + }, + "response": { + "bodySize": 217, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 217, + "text": "{\"_id\":\"webserver.listener/https\",\"enabled\":{\"$bool\":\"&{openidm.https.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.https|8443}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "217" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.363Z", + "time": 34, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 34 + } + }, + { + "_id": "b400d9fa8acbf142278ba15f3b31ee91", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/mutualAuth" + }, + "response": { + "bodySize": 250, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 250, + "text": "{\"_id\":\"webserver.listener/mutualAuth\",\"enabled\":{\"$bool\":\"&{openidm.mutualauth.enabled|true}\"},\"mutualAuth\":true,\"port\":{\"$int\":\"&{openidm.port.mutualauth|8444}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "250" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.364Z", + "time": 37, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 37 + } + }, + { + "_id": "1ceecf5b22f885965481b5cccc3f85f9", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-69899ee1-92dd-4f69-befa-49377ead1273" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "POST", + "queryString": [ + { + "name": "_action", + "value": "testConnectorServers" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/system?_action=testConnectorServers" + }, + "response": { + "bodySize": 14, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 14, + "text": "{\"openicf\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:27 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "14" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:27.422Z", + "time": 3, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 3 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/idm_2060434423/import_288002260/0_AD_m_4209801721/openidm_3290118515/recording.har b/test/e2e/mocks/idm_2060434423/import_288002260/0_AD_m_4209801721/openidm_3290118515/recording.har new file mode 100644 index 000000000..bc0909a47 --- /dev/null +++ b/test/e2e/mocks/idm_2060434423/import_288002260/0_AD_m_4209801721/openidm_3290118515/recording.har @@ -0,0 +1,8049 @@ +{ + "log": { + "_recordingName": "idm/import/0_AD_m/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "de3566e649dc89e93a6365b0fdaecd4e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 393, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/serverinfo/*" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:35:17.429Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "3f3b03432a833cfcbe27438276bb566b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "accept-api-version", + "value": "resource=2.0, protocol=1.0" + }, + { + "name": "x-openam-username", + "value": "openidm-admin" + }, + { + "name": "x-openam-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 507, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/realms/root/authenticate" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:35:17.448Z", + "time": 3, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 3 + } + }, + { + "_id": "abfa18e0eca049db8b12c41b99dedee1", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 28, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "28" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 443, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"sync\",\"mappings\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 28, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 28, + "text": "{\"_id\":\"sync\",\"mappings\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "28" + } + ], + "headersSize": 2250, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.471Z", + "time": 56, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 56 + } + }, + { + "_id": "80df31f756ec3532329ed08ab69f20f3", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 28289, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "28289" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"managed\",\"objects\":[{\"lastSync\":{\"effectiveAssignmentsProperty\":\"effectiveAssignments\",\"lastSyncProperty\":\"lastSync\"},\"name\":\"user\",\"notifications\":{\"property\":\"_notifications\"},\"postDelete\":{\"source\":\"require('postDelete-idp-cleanup').removeConnectedIdpData(oldObject, resourceName, request);require('postDelete-notification-cleanup').removeConnectedNotificationData(oldObject, resourceName, request);\",\"type\":\"text/javascript\"},\"schema\":{\"$schema\":\"http://json-schema.org/draft-03/schema\",\"icon\":\"fa-user\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User\",\"mat-icon\":\"people\",\"order\":[\"_id\",\"userName\",\"password\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"roles\",\"assignments\",\"manager\",\"authzRoles\",\"reports\",\"effectiveRoles\",\"effectiveAssignments\",\"lastSync\",\"kbaInfo\",\"preferences\",\"consentedMappings\",\"ownerOfOrg\",\"adminOfOrg\",\"memberOfOrg\",\"memberOfOrgIDs\",\"activeDate\",\"inactiveDate\"],\"properties\":{\"_id\":{\"description\":\"User ID\",\"isPersonal\":false,\"policies\":[{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"}],\"searchable\":false,\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":false},\"accountStatus\":{\"default\":\"active\",\"description\":\"Status\",\"isPersonal\":false,\"policies\":[{\"params\":{\"regexp\":\"^(active|inactive)$\"},\"policyId\":\"regexpMatches\"}],\"searchable\":true,\"title\":\"Status\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"activeDate\":{\"description\":\"Active Date\",\"format\":\"datetime\",\"isPersonal\":false,\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":false,\"title\":\"Active Date\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"adminOfOrg\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"admins\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations I Administer\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"assignments\":{\"description\":\"Assignments\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Provisioning Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Assignment\",\"path\":\"managed/assignment\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"title\":\"Assignments Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Assignments\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"authzRoles\":{\"description\":\"Authorization Roles\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Authorization Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Internal Role\",\"path\":\"internal/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"authzMembers\",\"reverseRelationship\":true,\"title\":\"Authorization Roles Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Authorization Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"city\":{\"description\":\"City\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"City\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"consentedMappings\":{\"description\":\"Consented Mappings\",\"isPersonal\":false,\"isVirtual\":false,\"items\":{\"order\":[\"mapping\",\"consentDate\"],\"properties\":{\"consentDate\":{\"description\":\"Consent Date\",\"format\":\"datetime\",\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":true,\"title\":\"Consent Date\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"mapping\":{\"description\":\"Mapping\",\"searchable\":true,\"title\":\"Mapping\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true}},\"required\":[\"mapping\",\"consentDate\"],\"title\":\"Consented Mapping\",\"type\":\"object\"},\"returnByDefault\":false,\"searchable\":false,\"title\":\"Consented Mappings\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"country\":{\"description\":\"Country\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Country\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"description\":{\"description\":\"Description\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"effectiveAssignments\":{\"description\":\"Effective Assignments\",\"isPersonal\":false,\"isVirtual\":true,\"items\":{\"title\":\"Effective Assignments Items\",\"type\":\"object\"},\"queryConfig\":{\"referencedObjectFields\":[\"*\"],\"referencedRelationshipFields\":[[\"roles\",\"assignments\"],[\"assignments\"]]},\"returnByDefault\":true,\"title\":\"Effective Assignments\",\"type\":\"array\",\"usageDescription\":\"\",\"viewable\":false},\"effectiveRoles\":{\"description\":\"Effective Roles\",\"isPersonal\":false,\"isVirtual\":true,\"items\":{\"title\":\"Effective Roles Items\",\"type\":\"object\"},\"queryConfig\":{\"referencedRelationshipFields\":[\"roles\"]},\"returnByDefault\":true,\"title\":\"Effective Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"viewable\":false},\"givenName\":{\"description\":\"First Name\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"First Name\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"inactiveDate\":{\"description\":\"Inactive Date\",\"format\":\"datetime\",\"isPersonal\":false,\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":false,\"title\":\"Inactive Date\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"kbaInfo\":{\"description\":\"KBA Info\",\"isPersonal\":true,\"items\":{\"order\":[\"answer\",\"customQuestion\",\"questionId\"],\"properties\":{\"answer\":{\"description\":\"Answer\",\"type\":\"string\"},\"customQuestion\":{\"description\":\"Custom question\",\"type\":\"string\"},\"questionId\":{\"description\":\"Question ID\",\"type\":\"string\"}},\"required\":[],\"title\":\"KBA Info Items\",\"type\":\"object\"},\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"lastSync\":{\"description\":\"Last Sync timestamp\",\"isPersonal\":false,\"order\":[\"effectiveAssignments\",\"timestamp\"],\"properties\":{\"effectiveAssignments\":{\"description\":\"Effective Assignments\",\"items\":{\"title\":\"Effective Assignments Items\",\"type\":\"object\"},\"title\":\"Effective Assignments\",\"type\":\"array\"},\"timestamp\":{\"description\":\"Timestamp\",\"policies\":[{\"policyId\":\"valid-datetime\"}],\"type\":\"string\"}},\"required\":[],\"scope\":\"private\",\"searchable\":false,\"title\":\"Last Sync timestamp\",\"type\":\"object\",\"usageDescription\":\"\",\"viewable\":false},\"mail\":{\"description\":\"Email Address\",\"isPersonal\":true,\"policies\":[{\"policyId\":\"valid-email-address-format\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Email Address\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"manager\":{\"description\":\"Manager\",\"isPersonal\":false,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Manager _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"reports\",\"reverseRelationship\":true,\"searchable\":false,\"title\":\"Manager\",\"type\":\"relationship\",\"usageDescription\":\"\",\"userEditable\":false,\"validate\":true,\"viewable\":true},\"memberOfOrg\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":false,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations to which I Belong\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"memberOfOrgIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"org identifiers\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\",\"parentIDs\"],\"referencedRelationshipFields\":[\"memberOfOrg\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"MemberOfOrgIDs\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"ownerOfOrg\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"owners\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations I Own\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"password\":{\"description\":\"Password\",\"encryption\":{\"purpose\":\"idm.password.encryption\"},\"isPersonal\":false,\"isProtected\":true,\"policies\":[{\"params\":{\"minLength\":8},\"policyId\":\"minimum-length\"},{\"params\":{\"numCaps\":1},\"policyId\":\"at-least-X-capitals\"},{\"params\":{\"numNums\":1},\"policyId\":\"at-least-X-numbers\"},{\"params\":{\"disallowedFields\":[\"userName\",\"givenName\",\"sn\"]},\"policyId\":\"cannot-contain-others\"}],\"scope\":\"private\",\"searchable\":false,\"title\":\"Password\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"postalAddress\":{\"description\":\"Address 1\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Address 1\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"postalCode\":{\"description\":\"Postal Code\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Postal Code\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"preferences\":{\"description\":\"Preferences\",\"isPersonal\":false,\"order\":[\"updates\",\"marketing\"],\"properties\":{\"marketing\":{\"description\":\"Send me special offers and services\",\"type\":\"boolean\"},\"updates\":{\"description\":\"Send me news and updates\",\"type\":\"boolean\"}},\"required\":[],\"searchable\":false,\"title\":\"Preferences\",\"type\":\"object\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"reports\":{\"description\":\"Direct Reports\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Direct Reports Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"manager\",\"reverseRelationship\":true,\"title\":\"Direct Reports Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Direct Reports\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"roles\":{\"description\":\"Provisioning Roles\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:roles\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Provisioning Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Role\",\"path\":\"managed/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"title\":\"Provisioning Roles Items\",\"type\":\"relationship\",\"validate\":true},\"relationshipGrantTemporalConstraintsEnforced\":true,\"returnByDefault\":false,\"title\":\"Provisioning Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"sn\":{\"description\":\"Last Name\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Last Name\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"stateProvince\":{\"description\":\"State/Province\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"State/Province\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"telephoneNumber\":{\"description\":\"Telephone Number\",\"isPersonal\":true,\"pattern\":\"^\\\\+?([0-9\\\\- \\\\(\\\\)])*$\",\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Telephone Number\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"userName\":{\"description\":\"Username\",\"isPersonal\":true,\"policies\":[{\"policyId\":\"valid-username\"},{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"},{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Username\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true}},\"required\":[\"userName\",\"givenName\",\"sn\",\"mail\"],\"title\":\"User\",\"type\":\"object\",\"viewable\":true}},{\"name\":\"role\",\"onCreate\":{\"globals\":{},\"source\":\"//asdfasdfadsfasdf\",\"type\":\"text/javascript\"},\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"icon\":\"fa-check-square\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role\",\"mat-icon\":\"assignment_ind\",\"order\":[\"_id\",\"name\",\"description\",\"members\",\"assignments\",\"condition\",\"temporalConstraints\"],\"properties\":{\"_id\":{\"description\":\"Role ID\",\"searchable\":false,\"title\":\"Name\",\"type\":\"string\",\"viewable\":false},\"assignments\":{\"description\":\"Managed Assignments\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Managed Assignments Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Assignment\",\"path\":\"managed/assignment\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"roles\",\"reverseRelationship\":true,\"title\":\"Managed Assignments Items\",\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"members\"],\"returnByDefault\":false,\"title\":\"Managed Assignments\",\"type\":\"array\",\"viewable\":true},\"condition\":{\"description\":\"A conditional filter for this role\",\"isConditional\":true,\"searchable\":false,\"title\":\"Condition\",\"type\":\"string\",\"viewable\":false},\"description\":{\"description\":\"The role description, used for display purposes.\",\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"viewable\":true},\"members\":{\"description\":\"Role Members\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Role Members Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"roles\",\"reverseRelationship\":true,\"title\":\"Role Members Items\",\"type\":\"relationship\",\"validate\":true},\"relationshipGrantTemporalConstraintsEnforced\":true,\"returnByDefault\":false,\"title\":\"Role Members\",\"type\":\"array\",\"viewable\":true},\"name\":{\"description\":\"The role name, used for display purposes.\",\"policies\":[{\"policyId\":\"unique\"}],\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"viewable\":true},\"temporalConstraints\":{\"description\":\"An array of temporal constraints for a role\",\"isTemporalConstraint\":true,\"items\":{\"order\":[\"duration\"],\"properties\":{\"duration\":{\"description\":\"Duration\",\"type\":\"string\"}},\"required\":[\"duration\"],\"title\":\"Temporal Constraints Items\",\"type\":\"object\"},\"notifyRelationships\":[\"members\"],\"returnByDefault\":true,\"title\":\"Temporal Constraints\",\"type\":\"array\",\"viewable\":false}},\"required\":[\"name\"],\"title\":\"Role\",\"type\":\"object\"}},{\"attributeEncryption\":{},\"name\":\"assignment\",\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"description\":\"A role assignment\",\"icon\":\"fa-key\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment\",\"mat-icon\":\"vpn_key\",\"order\":[\"_id\",\"name\",\"description\",\"mapping\",\"attributes\",\"linkQualifiers\",\"roles\",\"members\",\"condition\",\"weight\"],\"properties\":{\"_id\":{\"description\":\"The assignment ID\",\"searchable\":false,\"title\":\"Name\",\"type\":\"string\",\"viewable\":false},\"attributes\":{\"description\":\"The attributes operated on by this assignment.\",\"items\":{\"order\":[\"assignmentOperation\",\"unassignmentOperation\",\"name\",\"value\"],\"properties\":{\"assignmentOperation\":{\"description\":\"Assignment operation\",\"type\":\"string\"},\"name\":{\"description\":\"Name\",\"type\":\"string\"},\"unassignmentOperation\":{\"description\":\"Unassignment operation\",\"type\":\"string\"},\"value\":{\"description\":\"Value\",\"type\":\"string\"}},\"required\":[],\"title\":\"Assignment Attributes Items\",\"type\":\"object\"},\"notifyRelationships\":[\"roles\",\"members\"],\"title\":\"Assignment Attributes\",\"type\":\"array\",\"viewable\":true},\"condition\":{\"description\":\"A conditional filter for this assignment\",\"isConditional\":true,\"searchable\":false,\"title\":\"Condition\",\"type\":\"string\",\"viewable\":false},\"description\":{\"description\":\"The assignment description, used for display purposes.\",\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"viewable\":true},\"linkQualifiers\":{\"description\":\"Conditional link qualifiers to restrict this assignment to.\",\"items\":{\"title\":\"Link Qualifiers Items\",\"type\":\"string\"},\"title\":\"Link Qualifiers\",\"type\":\"array\",\"viewable\":true},\"mapping\":{\"description\":\"The name of the mapping this assignment applies to\",\"policies\":[{\"policyId\":\"mapping-exists\"}],\"searchable\":true,\"title\":\"Mapping\",\"type\":\"string\",\"viewable\":true},\"members\":{\"description\":\"Assignment Members\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Assignment Members Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"assignments\",\"reverseRelationship\":true,\"title\":\"Assignment Members Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Assignment Members\",\"type\":\"array\",\"viewable\":true},\"name\":{\"description\":\"The assignment name, used for display purposes.\",\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"viewable\":true},\"roles\":{\"description\":\"Managed Roles\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Managed Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Role\",\"notify\":true,\"path\":\"managed/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"assignments\",\"reverseRelationship\":true,\"title\":\"Managed Roles Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Managed Roles\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"weight\":{\"description\":\"The weight of the assignment.\",\"notifyRelationships\":[\"roles\",\"members\"],\"searchable\":false,\"title\":\"Weight\",\"type\":[\"number\",\"null\"],\"viewable\":true}},\"required\":[\"name\",\"description\",\"mapping\"],\"title\":\"Assignment\",\"type\":\"object\"}},{\"name\":\"organization\",\"onCreate\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"onRead\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"description\":\"An organization or tenant, whose resources are managed by organizational admins.\",\"icon\":\"fa-building\",\"mat-icon\":\"domain\",\"order\":[\"name\",\"description\",\"owners\",\"admins\",\"members\",\"parent\",\"children\",\"adminIDs\",\"ownerIDs\",\"parentAdminIDs\",\"parentOwnerIDs\",\"parentIDs\"],\"properties\":{\"adminIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"admin ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\"],\"referencedRelationshipFields\":[\"admins\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"Admin user ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"admins\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":false,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"adminOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"children\"],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Administrators\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"children\":{\"description\":\"Child Organizations\",\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\",\"description\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"parent\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Child Organizations\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"description\":{\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"members\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"memberOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"searchable\":false,\"title\":\"Members\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"name\":{\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"ownerIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"owner ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\"],\"referencedRelationshipFields\":[\"owners\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"Owner user ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"owners\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":false,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"ownerOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"children\"],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Owner\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"parent\":{\"description\":\"Parent Organization\",\"notifyRelationships\":[\"children\",\"members\"],\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":false,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\",\"description\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"returnByDefault\":false,\"reversePropertyName\":\"children\",\"reverseRelationship\":true,\"searchable\":false,\"title\":\"Parent Organization\",\"type\":\"relationship\",\"userEditable\":false,\"validate\":true,\"viewable\":true},\"parentAdminIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"user ids of parent admins\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"adminIDs\",\"parentAdminIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"user ids of parent admins\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"parentIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"parent org ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\",\"parentIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"parent org ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"parentOwnerIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"user ids of parent owners\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"ownerIDs\",\"parentOwnerIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"user ids of parent owners\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false}},\"required\":[\"name\"],\"title\":\"Organization\",\"type\":\"object\"}},{\"name\":\"seantestmanagedobject\",\"schema\":{\"description\":null,\"icon\":\"fa-database\",\"mat-icon\":null,\"title\":null}}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/managed" + }, + "response": { + "bodySize": 28289, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 28289, + "text": "{\"_id\":\"managed\",\"objects\":[{\"lastSync\":{\"effectiveAssignmentsProperty\":\"effectiveAssignments\",\"lastSyncProperty\":\"lastSync\"},\"name\":\"user\",\"notifications\":{\"property\":\"_notifications\"},\"postDelete\":{\"source\":\"require('postDelete-idp-cleanup').removeConnectedIdpData(oldObject, resourceName, request);require('postDelete-notification-cleanup').removeConnectedNotificationData(oldObject, resourceName, request);\",\"type\":\"text/javascript\"},\"schema\":{\"$schema\":\"http://json-schema.org/draft-03/schema\",\"icon\":\"fa-user\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User\",\"mat-icon\":\"people\",\"order\":[\"_id\",\"userName\",\"password\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"roles\",\"assignments\",\"manager\",\"authzRoles\",\"reports\",\"effectiveRoles\",\"effectiveAssignments\",\"lastSync\",\"kbaInfo\",\"preferences\",\"consentedMappings\",\"ownerOfOrg\",\"adminOfOrg\",\"memberOfOrg\",\"memberOfOrgIDs\",\"activeDate\",\"inactiveDate\"],\"properties\":{\"_id\":{\"description\":\"User ID\",\"isPersonal\":false,\"policies\":[{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"}],\"searchable\":false,\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":false},\"accountStatus\":{\"default\":\"active\",\"description\":\"Status\",\"isPersonal\":false,\"policies\":[{\"params\":{\"regexp\":\"^(active|inactive)$\"},\"policyId\":\"regexpMatches\"}],\"searchable\":true,\"title\":\"Status\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"activeDate\":{\"description\":\"Active Date\",\"format\":\"datetime\",\"isPersonal\":false,\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":false,\"title\":\"Active Date\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"adminOfOrg\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"admins\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations I Administer\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"assignments\":{\"description\":\"Assignments\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Provisioning Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Assignment\",\"path\":\"managed/assignment\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"title\":\"Assignments Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Assignments\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"authzRoles\":{\"description\":\"Authorization Roles\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Authorization Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Internal Role\",\"path\":\"internal/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"authzMembers\",\"reverseRelationship\":true,\"title\":\"Authorization Roles Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Authorization Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"city\":{\"description\":\"City\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"City\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"consentedMappings\":{\"description\":\"Consented Mappings\",\"isPersonal\":false,\"isVirtual\":false,\"items\":{\"order\":[\"mapping\",\"consentDate\"],\"properties\":{\"consentDate\":{\"description\":\"Consent Date\",\"format\":\"datetime\",\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":true,\"title\":\"Consent Date\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"mapping\":{\"description\":\"Mapping\",\"searchable\":true,\"title\":\"Mapping\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true}},\"required\":[\"mapping\",\"consentDate\"],\"title\":\"Consented Mapping\",\"type\":\"object\"},\"returnByDefault\":false,\"searchable\":false,\"title\":\"Consented Mappings\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"country\":{\"description\":\"Country\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Country\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"description\":{\"description\":\"Description\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"effectiveAssignments\":{\"description\":\"Effective Assignments\",\"isPersonal\":false,\"isVirtual\":true,\"items\":{\"title\":\"Effective Assignments Items\",\"type\":\"object\"},\"queryConfig\":{\"referencedObjectFields\":[\"*\"],\"referencedRelationshipFields\":[[\"roles\",\"assignments\"],[\"assignments\"]]},\"returnByDefault\":true,\"title\":\"Effective Assignments\",\"type\":\"array\",\"usageDescription\":\"\",\"viewable\":false},\"effectiveRoles\":{\"description\":\"Effective Roles\",\"isPersonal\":false,\"isVirtual\":true,\"items\":{\"title\":\"Effective Roles Items\",\"type\":\"object\"},\"queryConfig\":{\"referencedRelationshipFields\":[\"roles\"]},\"returnByDefault\":true,\"title\":\"Effective Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"viewable\":false},\"givenName\":{\"description\":\"First Name\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"First Name\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"inactiveDate\":{\"description\":\"Inactive Date\",\"format\":\"datetime\",\"isPersonal\":false,\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":false,\"title\":\"Inactive Date\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"kbaInfo\":{\"description\":\"KBA Info\",\"isPersonal\":true,\"items\":{\"order\":[\"answer\",\"customQuestion\",\"questionId\"],\"properties\":{\"answer\":{\"description\":\"Answer\",\"type\":\"string\"},\"customQuestion\":{\"description\":\"Custom question\",\"type\":\"string\"},\"questionId\":{\"description\":\"Question ID\",\"type\":\"string\"}},\"required\":[],\"title\":\"KBA Info Items\",\"type\":\"object\"},\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"lastSync\":{\"description\":\"Last Sync timestamp\",\"isPersonal\":false,\"order\":[\"effectiveAssignments\",\"timestamp\"],\"properties\":{\"effectiveAssignments\":{\"description\":\"Effective Assignments\",\"items\":{\"title\":\"Effective Assignments Items\",\"type\":\"object\"},\"title\":\"Effective Assignments\",\"type\":\"array\"},\"timestamp\":{\"description\":\"Timestamp\",\"policies\":[{\"policyId\":\"valid-datetime\"}],\"type\":\"string\"}},\"required\":[],\"scope\":\"private\",\"searchable\":false,\"title\":\"Last Sync timestamp\",\"type\":\"object\",\"usageDescription\":\"\",\"viewable\":false},\"mail\":{\"description\":\"Email Address\",\"isPersonal\":true,\"policies\":[{\"policyId\":\"valid-email-address-format\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Email Address\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"manager\":{\"description\":\"Manager\",\"isPersonal\":false,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Manager _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"reports\",\"reverseRelationship\":true,\"searchable\":false,\"title\":\"Manager\",\"type\":\"relationship\",\"usageDescription\":\"\",\"userEditable\":false,\"validate\":true,\"viewable\":true},\"memberOfOrg\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":false,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations to which I Belong\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"memberOfOrgIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"org identifiers\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\",\"parentIDs\"],\"referencedRelationshipFields\":[\"memberOfOrg\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"MemberOfOrgIDs\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"ownerOfOrg\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"owners\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations I Own\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"password\":{\"description\":\"Password\",\"encryption\":{\"purpose\":\"idm.password.encryption\"},\"isPersonal\":false,\"isProtected\":true,\"policies\":[{\"params\":{\"minLength\":8},\"policyId\":\"minimum-length\"},{\"params\":{\"numCaps\":1},\"policyId\":\"at-least-X-capitals\"},{\"params\":{\"numNums\":1},\"policyId\":\"at-least-X-numbers\"},{\"params\":{\"disallowedFields\":[\"userName\",\"givenName\",\"sn\"]},\"policyId\":\"cannot-contain-others\"}],\"scope\":\"private\",\"searchable\":false,\"title\":\"Password\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"postalAddress\":{\"description\":\"Address 1\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Address 1\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"postalCode\":{\"description\":\"Postal Code\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Postal Code\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"preferences\":{\"description\":\"Preferences\",\"isPersonal\":false,\"order\":[\"updates\",\"marketing\"],\"properties\":{\"marketing\":{\"description\":\"Send me special offers and services\",\"type\":\"boolean\"},\"updates\":{\"description\":\"Send me news and updates\",\"type\":\"boolean\"}},\"required\":[],\"searchable\":false,\"title\":\"Preferences\",\"type\":\"object\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"reports\":{\"description\":\"Direct Reports\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Direct Reports Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"manager\",\"reverseRelationship\":true,\"title\":\"Direct Reports Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Direct Reports\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"roles\":{\"description\":\"Provisioning Roles\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:roles\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Provisioning Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Role\",\"path\":\"managed/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"title\":\"Provisioning Roles Items\",\"type\":\"relationship\",\"validate\":true},\"relationshipGrantTemporalConstraintsEnforced\":true,\"returnByDefault\":false,\"title\":\"Provisioning Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"sn\":{\"description\":\"Last Name\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Last Name\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"stateProvince\":{\"description\":\"State/Province\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"State/Province\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"telephoneNumber\":{\"description\":\"Telephone Number\",\"isPersonal\":true,\"pattern\":\"^\\\\+?([0-9\\\\- \\\\(\\\\)])*$\",\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Telephone Number\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"userName\":{\"description\":\"Username\",\"isPersonal\":true,\"policies\":[{\"policyId\":\"valid-username\"},{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"},{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Username\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true}},\"required\":[\"userName\",\"givenName\",\"sn\",\"mail\"],\"title\":\"User\",\"type\":\"object\",\"viewable\":true}},{\"name\":\"role\",\"onCreate\":{\"globals\":{},\"source\":\"//asdfasdfadsfasdf\",\"type\":\"text/javascript\"},\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"icon\":\"fa-check-square\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role\",\"mat-icon\":\"assignment_ind\",\"order\":[\"_id\",\"name\",\"description\",\"members\",\"assignments\",\"condition\",\"temporalConstraints\"],\"properties\":{\"_id\":{\"description\":\"Role ID\",\"searchable\":false,\"title\":\"Name\",\"type\":\"string\",\"viewable\":false},\"assignments\":{\"description\":\"Managed Assignments\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Managed Assignments Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Assignment\",\"path\":\"managed/assignment\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"roles\",\"reverseRelationship\":true,\"title\":\"Managed Assignments Items\",\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"members\"],\"returnByDefault\":false,\"title\":\"Managed Assignments\",\"type\":\"array\",\"viewable\":true},\"condition\":{\"description\":\"A conditional filter for this role\",\"isConditional\":true,\"searchable\":false,\"title\":\"Condition\",\"type\":\"string\",\"viewable\":false},\"description\":{\"description\":\"The role description, used for display purposes.\",\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"viewable\":true},\"members\":{\"description\":\"Role Members\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Role Members Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"roles\",\"reverseRelationship\":true,\"title\":\"Role Members Items\",\"type\":\"relationship\",\"validate\":true},\"relationshipGrantTemporalConstraintsEnforced\":true,\"returnByDefault\":false,\"title\":\"Role Members\",\"type\":\"array\",\"viewable\":true},\"name\":{\"description\":\"The role name, used for display purposes.\",\"policies\":[{\"policyId\":\"unique\"}],\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"viewable\":true},\"temporalConstraints\":{\"description\":\"An array of temporal constraints for a role\",\"isTemporalConstraint\":true,\"items\":{\"order\":[\"duration\"],\"properties\":{\"duration\":{\"description\":\"Duration\",\"type\":\"string\"}},\"required\":[\"duration\"],\"title\":\"Temporal Constraints Items\",\"type\":\"object\"},\"notifyRelationships\":[\"members\"],\"returnByDefault\":true,\"title\":\"Temporal Constraints\",\"type\":\"array\",\"viewable\":false}},\"required\":[\"name\"],\"title\":\"Role\",\"type\":\"object\"}},{\"attributeEncryption\":{},\"name\":\"assignment\",\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"description\":\"A role assignment\",\"icon\":\"fa-key\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment\",\"mat-icon\":\"vpn_key\",\"order\":[\"_id\",\"name\",\"description\",\"mapping\",\"attributes\",\"linkQualifiers\",\"roles\",\"members\",\"condition\",\"weight\"],\"properties\":{\"_id\":{\"description\":\"The assignment ID\",\"searchable\":false,\"title\":\"Name\",\"type\":\"string\",\"viewable\":false},\"attributes\":{\"description\":\"The attributes operated on by this assignment.\",\"items\":{\"order\":[\"assignmentOperation\",\"unassignmentOperation\",\"name\",\"value\"],\"properties\":{\"assignmentOperation\":{\"description\":\"Assignment operation\",\"type\":\"string\"},\"name\":{\"description\":\"Name\",\"type\":\"string\"},\"unassignmentOperation\":{\"description\":\"Unassignment operation\",\"type\":\"string\"},\"value\":{\"description\":\"Value\",\"type\":\"string\"}},\"required\":[],\"title\":\"Assignment Attributes Items\",\"type\":\"object\"},\"notifyRelationships\":[\"roles\",\"members\"],\"title\":\"Assignment Attributes\",\"type\":\"array\",\"viewable\":true},\"condition\":{\"description\":\"A conditional filter for this assignment\",\"isConditional\":true,\"searchable\":false,\"title\":\"Condition\",\"type\":\"string\",\"viewable\":false},\"description\":{\"description\":\"The assignment description, used for display purposes.\",\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"viewable\":true},\"linkQualifiers\":{\"description\":\"Conditional link qualifiers to restrict this assignment to.\",\"items\":{\"title\":\"Link Qualifiers Items\",\"type\":\"string\"},\"title\":\"Link Qualifiers\",\"type\":\"array\",\"viewable\":true},\"mapping\":{\"description\":\"The name of the mapping this assignment applies to\",\"policies\":[{\"policyId\":\"mapping-exists\"}],\"searchable\":true,\"title\":\"Mapping\",\"type\":\"string\",\"viewable\":true},\"members\":{\"description\":\"Assignment Members\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Assignment Members Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"assignments\",\"reverseRelationship\":true,\"title\":\"Assignment Members Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Assignment Members\",\"type\":\"array\",\"viewable\":true},\"name\":{\"description\":\"The assignment name, used for display purposes.\",\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"viewable\":true},\"roles\":{\"description\":\"Managed Roles\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Managed Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Role\",\"notify\":true,\"path\":\"managed/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"assignments\",\"reverseRelationship\":true,\"title\":\"Managed Roles Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Managed Roles\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"weight\":{\"description\":\"The weight of the assignment.\",\"notifyRelationships\":[\"roles\",\"members\"],\"searchable\":false,\"title\":\"Weight\",\"type\":[\"number\",\"null\"],\"viewable\":true}},\"required\":[\"name\",\"description\",\"mapping\"],\"title\":\"Assignment\",\"type\":\"object\"}},{\"name\":\"organization\",\"onCreate\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"onRead\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"description\":\"An organization or tenant, whose resources are managed by organizational admins.\",\"icon\":\"fa-building\",\"mat-icon\":\"domain\",\"order\":[\"name\",\"description\",\"owners\",\"admins\",\"members\",\"parent\",\"children\",\"adminIDs\",\"ownerIDs\",\"parentAdminIDs\",\"parentOwnerIDs\",\"parentIDs\"],\"properties\":{\"adminIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"admin ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\"],\"referencedRelationshipFields\":[\"admins\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"Admin user ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"admins\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":false,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"adminOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"children\"],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Administrators\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"children\":{\"description\":\"Child Organizations\",\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\",\"description\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"parent\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Child Organizations\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"description\":{\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"members\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"memberOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"searchable\":false,\"title\":\"Members\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"name\":{\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"ownerIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"owner ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\"],\"referencedRelationshipFields\":[\"owners\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"Owner user ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"owners\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":false,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"ownerOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"children\"],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Owner\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"parent\":{\"description\":\"Parent Organization\",\"notifyRelationships\":[\"children\",\"members\"],\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":false,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\",\"description\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"returnByDefault\":false,\"reversePropertyName\":\"children\",\"reverseRelationship\":true,\"searchable\":false,\"title\":\"Parent Organization\",\"type\":\"relationship\",\"userEditable\":false,\"validate\":true,\"viewable\":true},\"parentAdminIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"user ids of parent admins\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"adminIDs\",\"parentAdminIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"user ids of parent admins\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"parentIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"parent org ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\",\"parentIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"parent org ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"parentOwnerIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"user ids of parent owners\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"ownerIDs\",\"parentOwnerIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"user ids of parent owners\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false}},\"required\":[\"name\"],\"title\":\"Organization\",\"type\":\"object\"}},{\"name\":\"seantestmanagedobject\",\"schema\":{\"description\":null,\"icon\":\"fa-database\",\"mat-icon\":null,\"title\":null}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.538Z", + "time": 21, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 21 + } + }, + { + "_id": "ea1a070c27903f4e71c8acb5d274be1e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 6159, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "6159" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"access\",\"configs\":[{\"actions\":\"\",\"methods\":\"read\",\"pattern\":\"health\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"info/*\",\"roles\":\"*\"},{\"actions\":\"login,logout\",\"methods\":\"read,action\",\"pattern\":\"authentication\",\"roles\":\"*\"},{\"actions\":\"validate\",\"methods\":\"action\",\"pattern\":\"util/validateQueryFilter\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/themeconfig\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/theme-*\",\"roles\":\"*\"},{\"actions\":\"*\",\"customAuthz\":\"checkIfAnyFeatureEnabled(['registration', 'passwordReset'])\",\"methods\":\"read\",\"pattern\":\"config/selfservice/kbaConfig\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/dashboard\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"query\",\"pattern\":\"info/features\",\"roles\":\"*\"},{\"actions\":\"listPrivileges\",\"methods\":\"action\",\"pattern\":\"privilege\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"privilege/*\",\"roles\":\"*\"},{\"actions\":\"submitRequirements\",\"methods\":\"read,action\",\"pattern\":\"selfservice/termsAndConditions\",\"roles\":\"*\"},{\"actions\":\"submitRequirements\",\"methods\":\"read,action\",\"pattern\":\"selfservice/kbaUpdate\",\"roles\":\"*\"},{\"actions\":\"\",\"customAuthz\":\"isMyProfile()\",\"methods\":\"read,query\",\"pattern\":\"profile/*\",\"roles\":\"*\"},{\"actions\":\"*\",\"customAuthz\":\"checkIfAnyFeatureEnabled('kba')\",\"methods\":\"read\",\"pattern\":\"selfservice/kba\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"schema/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"action,query\",\"pattern\":\"consent\",\"roles\":\"internal/role/openidm-authorized\"},{\"customAuthz\":\"checkIfApiRequest()\",\"methods\":\"read\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"excludePatterns\":\"repo,repo/*\",\"methods\":\"*\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"\",\"methods\":\"create,read,update,delete,patch,query\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"methods\":\"script\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"test,testConfig,createconfiguration,liveSync,authenticate\",\"methods\":\"action\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"customAuthz\":\"disallowCommandAction()\",\"methods\":\"*\",\"pattern\":\"repo\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"customAuthz\":\"disallowCommandAction()\",\"methods\":\"*\",\"pattern\":\"repo/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"command\",\"customAuthz\":\"request.additionalParameters.commandId === 'delete-mapping-links'\",\"methods\":\"action\",\"pattern\":\"repo/link\",\"roles\":\"internal/role/openidm-admin\"},{\"methods\":\"create,read,query,patch\",\"pattern\":\"managed/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read,query\",\"pattern\":\"internal/role/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"create,read,action,update\",\"pattern\":\"profile/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"read,action\",\"pattern\":\"policy/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"schema/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"action,query\",\"pattern\":\"consent\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"selfservice/kba\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"selfservice/terms\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"sendTemplate\",\"methods\":\"action\",\"pattern\":\"external/email\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"authenticate\",\"methods\":\"action\",\"pattern\":\"system/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"read,action\",\"pattern\":\"policy/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"reauthenticate\",\"methods\":\"action\",\"pattern\":\"authentication\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"bind,unbind\",\"customAuthz\":\"ownDataOnly()\",\"methods\":\"read,action,delete\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"patch\",\"customAuthz\":\"ownDataOnly() && onlyEditableManagedObjectProperties('user', []) && reauthIfProtectedAttributeChange()\",\"methods\":\"update,patch,action\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"endpoint/getprocessesforuser\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"query\",\"pattern\":\"endpoint/gettasksview\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"complete\",\"customAuthz\":\"isMyTask()\",\"methods\":\"action\",\"pattern\":\"workflow/taskinstance/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"canUpdateTask()\",\"methods\":\"read,update\",\"pattern\":\"workflow/taskinstance/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"isAllowedToStartProcess()\",\"methods\":\"create\",\"pattern\":\"workflow/processinstance\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"read\",\"methods\":\"*\",\"pattern\":\"workflow/processdefinition/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"customAuthz\":\"restrictPatchToFields(['password'])\",\"methods\":\"patch\",\"pattern\":\"managed/user/*\",\"roles\":\"internal/role/openidm-cert\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipProperty('_meta', false)\",\"methods\":\"read\",\"pattern\":\"internal/usermeta/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipProperty('_notifications', true)\",\"methods\":\"read,delete\",\"pattern\":\"internal/notification/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipCollection(['idps','_meta','_notifications'])\",\"methods\":\"read,query\",\"pattern\":\"managed/user/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"deleteNotificationsForTarget\",\"customAuthz\":\"request.additionalParameters.target === (context.security.authorization.component + '/' + context.security.authorization.id)\",\"methods\":\"action\",\"pattern\":\"notification\",\"roles\":\"internal/role/openidm-authorized\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/access" + }, + "response": { + "bodySize": 6159, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 6159, + "text": "{\"_id\":\"access\",\"configs\":[{\"actions\":\"\",\"methods\":\"read\",\"pattern\":\"health\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"info/*\",\"roles\":\"*\"},{\"actions\":\"login,logout\",\"methods\":\"read,action\",\"pattern\":\"authentication\",\"roles\":\"*\"},{\"actions\":\"validate\",\"methods\":\"action\",\"pattern\":\"util/validateQueryFilter\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/themeconfig\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/theme-*\",\"roles\":\"*\"},{\"actions\":\"*\",\"customAuthz\":\"checkIfAnyFeatureEnabled(['registration', 'passwordReset'])\",\"methods\":\"read\",\"pattern\":\"config/selfservice/kbaConfig\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/dashboard\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"query\",\"pattern\":\"info/features\",\"roles\":\"*\"},{\"actions\":\"listPrivileges\",\"methods\":\"action\",\"pattern\":\"privilege\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"privilege/*\",\"roles\":\"*\"},{\"actions\":\"submitRequirements\",\"methods\":\"read,action\",\"pattern\":\"selfservice/termsAndConditions\",\"roles\":\"*\"},{\"actions\":\"submitRequirements\",\"methods\":\"read,action\",\"pattern\":\"selfservice/kbaUpdate\",\"roles\":\"*\"},{\"actions\":\"\",\"customAuthz\":\"isMyProfile()\",\"methods\":\"read,query\",\"pattern\":\"profile/*\",\"roles\":\"*\"},{\"actions\":\"*\",\"customAuthz\":\"checkIfAnyFeatureEnabled('kba')\",\"methods\":\"read\",\"pattern\":\"selfservice/kba\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"schema/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"action,query\",\"pattern\":\"consent\",\"roles\":\"internal/role/openidm-authorized\"},{\"customAuthz\":\"checkIfApiRequest()\",\"methods\":\"read\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"excludePatterns\":\"repo,repo/*\",\"methods\":\"*\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"\",\"methods\":\"create,read,update,delete,patch,query\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"methods\":\"script\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"test,testConfig,createconfiguration,liveSync,authenticate\",\"methods\":\"action\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"customAuthz\":\"disallowCommandAction()\",\"methods\":\"*\",\"pattern\":\"repo\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"customAuthz\":\"disallowCommandAction()\",\"methods\":\"*\",\"pattern\":\"repo/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"command\",\"customAuthz\":\"request.additionalParameters.commandId === 'delete-mapping-links'\",\"methods\":\"action\",\"pattern\":\"repo/link\",\"roles\":\"internal/role/openidm-admin\"},{\"methods\":\"create,read,query,patch\",\"pattern\":\"managed/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read,query\",\"pattern\":\"internal/role/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"create,read,action,update\",\"pattern\":\"profile/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"read,action\",\"pattern\":\"policy/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"schema/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"action,query\",\"pattern\":\"consent\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"selfservice/kba\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"selfservice/terms\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"sendTemplate\",\"methods\":\"action\",\"pattern\":\"external/email\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"authenticate\",\"methods\":\"action\",\"pattern\":\"system/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"read,action\",\"pattern\":\"policy/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"reauthenticate\",\"methods\":\"action\",\"pattern\":\"authentication\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"bind,unbind\",\"customAuthz\":\"ownDataOnly()\",\"methods\":\"read,action,delete\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"patch\",\"customAuthz\":\"ownDataOnly() && onlyEditableManagedObjectProperties('user', []) && reauthIfProtectedAttributeChange()\",\"methods\":\"update,patch,action\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"endpoint/getprocessesforuser\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"query\",\"pattern\":\"endpoint/gettasksview\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"complete\",\"customAuthz\":\"isMyTask()\",\"methods\":\"action\",\"pattern\":\"workflow/taskinstance/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"canUpdateTask()\",\"methods\":\"read,update\",\"pattern\":\"workflow/taskinstance/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"isAllowedToStartProcess()\",\"methods\":\"create\",\"pattern\":\"workflow/processinstance\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"read\",\"methods\":\"*\",\"pattern\":\"workflow/processdefinition/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"customAuthz\":\"restrictPatchToFields(['password'])\",\"methods\":\"patch\",\"pattern\":\"managed/user/*\",\"roles\":\"internal/role/openidm-cert\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipProperty('_meta', false)\",\"methods\":\"read\",\"pattern\":\"internal/usermeta/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipProperty('_notifications', true)\",\"methods\":\"read,delete\",\"pattern\":\"internal/notification/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipCollection(['idps','_meta','_notifications'])\",\"methods\":\"read,query\",\"pattern\":\"managed/user/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"deleteNotificationsForTarget\",\"customAuthz\":\"request.additionalParameters.target === (context.security.authorization.component + '/' + context.security.authorization.id)\",\"methods\":\"action\",\"pattern\":\"notification\",\"roles\":\"internal/role/openidm-authorized\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.579Z", + "time": 19, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 19 + } + }, + { + "_id": "1a0ce7aa1d685f1d6105fc3fb872f60d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 659, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "659" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 450, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"apiVersion\",\"warning\":{\"enabled\":{\"$bool\":\"&{openidm.apiVersion.warning.enabled|false}\"},\"includeScripts\":{\"$bool\":\"&{openidm.apiVersion.warning.includeScripts|false}\"},\"logFilterResourcePaths\":[\"audit\",\"authentication\",\"cluster\",\"config\",\"consent\",\"csv\",\"external/rest\",\"identityProviders\",\"info\",\"internal\",\"internal/role\",\"internal/user\",\"internal/usermeta\",\"managed\",\"managed/assignment\",\"managed/organization\",\"managed/role\",\"managed/user\",\"notification\",\"policy\",\"privilege\",\"profile\",\"recon\",\"recon/assoc\",\"repo\",\"selfservice/kba\",\"selfservice/terms\",\"scheduler/job\",\"scheduler/trigger\",\"schema\",\"sync\",\"sync/mappings\",\"system\",\"taskscanner\"]}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/apiVersion" + }, + "response": { + "bodySize": 659, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 659, + "text": "{\"_id\":\"apiVersion\",\"warning\":{\"enabled\":{\"$bool\":\"&{openidm.apiVersion.warning.enabled|false}\"},\"includeScripts\":{\"$bool\":\"&{openidm.apiVersion.warning.includeScripts|false}\"},\"logFilterResourcePaths\":[\"audit\",\"authentication\",\"cluster\",\"config\",\"consent\",\"csv\",\"external/rest\",\"identityProviders\",\"info\",\"internal\",\"internal/role\",\"internal/user\",\"internal/usermeta\",\"managed\",\"managed/assignment\",\"managed/organization\",\"managed/role\",\"managed/user\",\"notification\",\"policy\",\"privilege\",\"profile\",\"recon\",\"recon/assoc\",\"repo\",\"selfservice/kba\",\"selfservice/terms\",\"scheduler/job\",\"scheduler/trigger\",\"schema\",\"sync\",\"sync/mappings\",\"system\",\"taskscanner\"]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "659" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.605Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "b6f4684a6808d67f5addd3251973f9ad", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2216, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2216" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"audit\",\"auditServiceConfig\":{\"availableAuditEventHandlers\":[\"org.forgerock.audit.handlers.csv.CsvAuditEventHandler\",\"org.forgerock.audit.handlers.jms.JmsAuditEventHandler\",\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RouterAuditEventHandler\",\"org.forgerock.audit.handlers.syslog.SyslogAuditEventHandler\"],\"caseInsensitiveFields\":[\"/access/http/request/headers\",\"/access/http/response/headers\"],\"filterPolicies\":{\"field\":{\"excludeIf\":[],\"includeIf\":[]}},\"handlerForQueries\":\"json\"},\"eventHandlers\":[{\"class\":\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"config\":{\"buffering\":{\"maxSize\":100000,\"writeInterval\":\"100 millis\"},\"enabled\":{\"$bool\":\"&{openidm.audit.handler.json.enabled|true}\"},\"logDirectory\":\"&{idm.data.dir}/audit\",\"name\":\"json\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.stdout.enabled|false}\"},\"name\":\"stdout\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.repo.enabled|false}\"},\"name\":\"repo\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}}],\"eventTopics\":{\"access\":{\"defaultEvents\":true,\"filter\":{\"script\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"}},\"name\":\"access\"},\"activity\":{\"defaultEvents\":true,\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]},\"name\":\"activity\",\"passwordFields\":[\"password\"],\"watchedFields\":[]},\"authentication\":{\"defaultEvents\":true,\"filter\":{\"script\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"}},\"name\":\"authentication\"},\"config\":{\"defaultEvents\":true,\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]},\"name\":\"config\"},\"recon\":{\"defaultEvents\":true,\"name\":\"recon\"},\"sync\":{\"defaultEvents\":true,\"name\":\"sync\"}},\"exceptionFormatter\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/audit" + }, + "response": { + "bodySize": 2216, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 2216, + "text": "{\"_id\":\"audit\",\"auditServiceConfig\":{\"availableAuditEventHandlers\":[\"org.forgerock.audit.handlers.csv.CsvAuditEventHandler\",\"org.forgerock.audit.handlers.jms.JmsAuditEventHandler\",\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RouterAuditEventHandler\",\"org.forgerock.audit.handlers.syslog.SyslogAuditEventHandler\"],\"caseInsensitiveFields\":[\"/access/http/request/headers\",\"/access/http/response/headers\"],\"filterPolicies\":{\"field\":{\"excludeIf\":[],\"includeIf\":[]}},\"handlerForQueries\":\"json\"},\"eventHandlers\":[{\"class\":\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"config\":{\"buffering\":{\"maxSize\":100000,\"writeInterval\":\"100 millis\"},\"enabled\":{\"$bool\":\"&{openidm.audit.handler.json.enabled|true}\"},\"logDirectory\":\"&{idm.data.dir}/audit\",\"name\":\"json\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.stdout.enabled|false}\"},\"name\":\"stdout\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.repo.enabled|false}\"},\"name\":\"repo\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}}],\"eventTopics\":{\"access\":{\"defaultEvents\":true,\"filter\":{\"script\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"}},\"name\":\"access\"},\"activity\":{\"defaultEvents\":true,\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]},\"name\":\"activity\",\"passwordFields\":[\"password\"],\"watchedFields\":[]},\"authentication\":{\"defaultEvents\":true,\"filter\":{\"script\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"}},\"name\":\"authentication\"},\"config\":{\"defaultEvents\":true,\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]},\"name\":\"config\"},\"recon\":{\"defaultEvents\":true,\"name\":\"recon\"},\"sync\":{\"defaultEvents\":true,\"name\":\"sync\"}},\"exceptionFormatter\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.620Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "3322bf0192ae7a058cb5bce4e4518614", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1661, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "1661" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 455, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"authentication\",\"serverAuthContext\":{\"authModules\":[{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"augmentSecurityContext\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-reg\"],\"password\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"fzE1J3P9LZOmuCuecCDnaQ==\",\"iv\":\"nhI8UHymNRChGIyOC+5Sag==\",\"keySize\":32,\"mac\":\"XfF7VE/o5Shv6AqW1Xe3TQ==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"v0NHakffrjBJNL3zjhEOtg==\",\"stableId\":\"openidm-sym-default\"}}},\"queryOnResource\":\"internal/user\",\"username\":\"anonymous\"}},{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"defaultUserRoles\":[\"internal/role/openidm-authorized\",\"internal/role/openidm-admin\"],\"password\":\"&{openidm.admin.password}\",\"queryOnResource\":\"internal/user\",\"username\":\"openidm-admin\"}},{\"enabled\":true,\"name\":\"MANAGED_USER\",\"properties\":{\"augmentSecurityContext\":{\"source\":\"var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield);\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-authorized\"],\"propertyMapping\":{\"additionalUserFields\":[\"adminOfOrg\",\"ownerOfOrg\"],\"authenticationId\":\"username\",\"userCredential\":\"password\",\"userRoles\":\"authzRoles\"},\"queryId\":\"credential-query\",\"queryOnResource\":\"managed/user\"}}],\"sessionModule\":{\"name\":\"JWT_SESSION\",\"properties\":{\"enableDynamicRoles\":false,\"isHttpOnly\":true,\"maxTokenLifeMinutes\":120,\"sessionOnly\":true,\"tokenIdleTimeMinutes\":30}}}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/authentication" + }, + "response": { + "bodySize": 1661, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1661, + "text": "{\"_id\":\"authentication\",\"serverAuthContext\":{\"authModules\":[{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"augmentSecurityContext\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-reg\"],\"password\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"fzE1J3P9LZOmuCuecCDnaQ==\",\"iv\":\"nhI8UHymNRChGIyOC+5Sag==\",\"keySize\":32,\"mac\":\"XfF7VE/o5Shv6AqW1Xe3TQ==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"v0NHakffrjBJNL3zjhEOtg==\",\"stableId\":\"openidm-sym-default\"}}},\"queryOnResource\":\"internal/user\",\"username\":\"anonymous\"}},{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"defaultUserRoles\":[\"internal/role/openidm-authorized\",\"internal/role/openidm-admin\"],\"password\":\"&{openidm.admin.password}\",\"queryOnResource\":\"internal/user\",\"username\":\"openidm-admin\"}},{\"enabled\":true,\"name\":\"MANAGED_USER\",\"properties\":{\"augmentSecurityContext\":{\"source\":\"var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield);\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-authorized\"],\"propertyMapping\":{\"additionalUserFields\":[\"adminOfOrg\",\"ownerOfOrg\"],\"authenticationId\":\"username\",\"userCredential\":\"password\",\"userRoles\":\"authzRoles\"},\"queryId\":\"credential-query\",\"queryOnResource\":\"managed/user\"}}],\"sessionModule\":{\"name\":\"JWT_SESSION\",\"properties\":{\"enableDynamicRoles\":false,\"isHttpOnly\":true,\"maxTokenLifeMinutes\":120,\"sessionOnly\":true,\"tokenIdleTimeMinutes\":30}}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1661" + } + ], + "headersSize": 2252, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.633Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "cffcfbec868c6d577abdd6dfb2546c66", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 179, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "179" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"cluster\",\"enabled\":true,\"instanceCheckInInterval\":5000,\"instanceCheckInOffset\":0,\"instanceId\":\"&{openidm.node.id}\",\"instanceRecoveryTimeout\":30000,\"instanceTimeout\":30000}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/cluster" + }, + "response": { + "bodySize": 179, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 179, + "text": "{\"_id\":\"cluster\",\"enabled\":true,\"instanceCheckInInterval\":5000,\"instanceCheckInOffset\":0,\"instanceId\":\"&{openidm.node.id}\",\"instanceRecoveryTimeout\":30000,\"instanceTimeout\":30000}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "179" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.650Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "ffb92165ac6b6a54193c1984e5d08a82", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 116, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "116" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 474, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/getavailableuserstoassign\",\"file\":\"workflow/getavailableuserstoassign.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getavailableuserstoassign" + }, + "response": { + "bodySize": 116, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 116, + "text": "{\"_id\":\"endpoint/getavailableuserstoassign\",\"file\":\"workflow/getavailableuserstoassign.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "116" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.666Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "67f7c32d59739e6e62de077c4ac38587", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 104, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "104" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/getprocessesforuser\",\"file\":\"workflow/getprocessesforuser.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getprocessesforuser" + }, + "response": { + "bodySize": 104, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 104, + "text": "{\"_id\":\"endpoint/getprocessesforuser\",\"file\":\"workflow/getprocessesforuser.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "104" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.681Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "a58bd28b08317f836ebe6fc592eea139", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 90, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "90" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 460, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/gettasksview\",\"file\":\"workflow/gettasksview.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/gettasksview" + }, + "response": { + "bodySize": 90, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 90, + "text": "{\"_id\":\"endpoint/gettasksview\",\"file\":\"workflow/gettasksview.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "90" + } + ], + "headersSize": 2250, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.694Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "190fb94af98292c04b2a125fbed0f974", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 121, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "121" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 463, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/mappingDetails\",\"context\":\"endpoint/mappingDetails\",\"file\":\"mappingDetails.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/mappingDetails" + }, + "response": { + "bodySize": 121, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 121, + "text": "{\"_id\":\"endpoint/mappingDetails\",\"context\":\"endpoint/mappingDetails\",\"file\":\"mappingDetails.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "121" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.709Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "7caf7b29cf8511e14fac45895389c849", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 109, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "109" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/oauthproxy\",\"context\":\"endpoint/oauthproxy\",\"file\":\"oauthProxy.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/oauthproxy" + }, + "response": { + "bodySize": 109, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 109, + "text": "{\"_id\":\"endpoint/oauthproxy\",\"context\":\"endpoint/oauthproxy\",\"file\":\"oauthProxy.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "109" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.723Z", + "time": 15, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 15 + } + }, + { + "_id": "765c2ef8259b3e3418e7c3a5a5b10c3e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 126, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "126" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 480, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/removeRepoPathFromRelationships\",\"file\":\"update/removeRepoPathFromRelationships.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/removeRepoPathFromRelationships" + }, + "response": { + "bodySize": 126, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 126, + "text": "{\"_id\":\"endpoint/removeRepoPathFromRelationships\",\"file\":\"update/removeRepoPathFromRelationships.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "126" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.746Z", + "time": 15, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 15 + } + }, + { + "_id": "4bdc8b47251097ee4051909112972e59", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 91, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "91" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 462, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/repairMetadata\",\"file\":\"meta/metadataScanner.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/repairMetadata" + }, + "response": { + "bodySize": 91, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 91, + "text": "{\"_id\":\"endpoint/repairMetadata\",\"file\":\"meta/metadataScanner.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "91" + } + ], + "headersSize": 2250, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.766Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "d2deb2d1663797facc0aec2b49b105d0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 144, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "144" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 489, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/updateInternalUserAndInternalRoleEntries\",\"file\":\"update/updateInternalUserAndInternalRoleEntries.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/updateInternalUserAndInternalRoleEntries" + }, + "response": { + "bodySize": 144, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 144, + "text": "{\"_id\":\"endpoint/updateInternalUserAndInternalRoleEntries\",\"file\":\"update/updateInternalUserAndInternalRoleEntries.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "144" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.780Z", + "time": 16, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 16 + } + }, + { + "_id": "09f96900530f528cc6caad3270bdf518", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 326, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "326" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/validateQueryFilter\",\"context\":\"util/validateQueryFilter\",\"source\":\"try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } };\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/validateQueryFilter" + }, + "response": { + "bodySize": 326, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 326, + "text": "{\"_id\":\"endpoint/validateQueryFilter\",\"context\":\"util/validateQueryFilter\",\"source\":\"try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } };\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "326" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.801Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "1835c2635e9c3818cf24fd460159b6e7", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 86, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "86" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 452, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"external.rest\",\"hostnameVerifier\":\"&{openidm.external.rest.hostnameVerifier}\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/external.rest" + }, + "response": { + "bodySize": 86, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 86, + "text": "{\"_id\":\"external.rest\",\"hostnameVerifier\":\"&{openidm.external.rest.hostnameVerifier}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "86" + } + ], + "headersSize": 2250, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.819Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "c3e432390b418bf9a27e761d92966735", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 353, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "353" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"internal\",\"objects\":[{\"name\":\"role\",\"properties\":{\"authzMembers\":{\"items\":{\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}]}}}},{\"name\":\"notification\",\"properties\":{\"target\":{\"reversePropertyName\":\"_notifications\"}}}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/internal" + }, + "response": { + "bodySize": 353, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 353, + "text": "{\"_id\":\"internal\",\"objects\":[{\"name\":\"role\",\"properties\":{\"authzMembers\":{\"items\":{\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}]}}}},{\"name\":\"notification\",\"properties\":{\"target\":{\"reversePropertyName\":\"_notifications\"}}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "353" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.836Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "c8847f8b05e82ff97b9901f9ef21711f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 33, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "33" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"metrics\",\"enabled\":false}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/metrics" + }, + "response": { + "bodySize": 33, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 33, + "text": "{\"_id\":\"metrics\",\"enabled\":false}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "33" + } + ], + "headersSize": 2250, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.851Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "481b9d20ca5295bab85a70f228c051a0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 415, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "415" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 467, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"notification/passwordUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"password\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.passwordUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your password has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/passwordUpdate" + }, + "response": { + "bodySize": 415, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 415, + "text": "{\"_id\":\"notification/passwordUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"password\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.passwordUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your password has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "415" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.864Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "8761a76489fd8c69e300a2d045819497", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 560, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "560" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 466, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"notification/profileUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"userName\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"preferences\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.profileUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your profile has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/profileUpdate" + }, + "response": { + "bodySize": 560, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 560, + "text": "{\"_id\":\"notification/profileUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"userName\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"preferences\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.profileUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your profile has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "560" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.877Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "409aa8b57ce9b97a4e7b4c72a690bb5b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 180, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "180" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"notificationFactory\",\"enabled\":{\"$bool\":\"&{openidm.notifications|false}\"},\"threadPool\":{\"maxPoolThreads\":2,\"maxQueueSize\":20000,\"steadyPoolThreads\":1,\"threadKeepAlive\":60}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notificationFactory" + }, + "response": { + "bodySize": 180, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 180, + "text": "{\"_id\":\"notificationFactory\",\"enabled\":{\"$bool\":\"&{openidm.notifications|false}\"},\"threadPool\":{\"maxPoolThreads\":2,\"maxQueueSize\":20000,\"steadyPoolThreads\":1,\"threadKeepAlive\":60}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "180" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.890Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "5f5545d40340b0d7eeccc0b7536b62f1", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2368, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2368" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"policy\",\"additionalFiles\":[],\"file\":\"policy.js\",\"resources\":[{\"calculatedProperties\":{\"source\":\"require('selfServicePolicies').getRegistrationProperties()\",\"type\":\"text/javascript\"},\"resource\":\"selfservice/registration\"},{\"calculatedProperties\":{\"source\":\"require('selfServicePolicies').getResetProperties()\",\"type\":\"text/javascript\"},\"resource\":\"selfservice/reset\"},{\"properties\":[{\"name\":\"_id\",\"policies\":[{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"}]},{\"name\":\"password\",\"policies\":[{\"params\":{\"minLength\":8},\"policyId\":\"minimum-length\"}]}],\"resource\":\"internal/user/*\"},{\"properties\":[{\"name\":\"name\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"forbiddenChars\":[\"/*\"]},\"policyId\":\"cannot-contain-characters\"}]},{\"name\":\"temporalConstraints\",\"policies\":[{\"policyId\":\"valid-temporal-constraints\"}]},{\"name\":\"condition\",\"policies\":[{\"policyId\":\"valid-query-filter\"}]},{\"name\":\"privileges\",\"policies\":[{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"params\":{\"properties\":[{\"name\":\"name\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"string\"]},\"policyId\":\"valid-type\"}]},{\"name\":\"path\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"forbiddenChars\":[\"/*\"]},\"policyId\":\"cannot-contain-characters\"},{\"policyId\":\"valid-privilege-path\"}]},{\"name\":\"accessFlags\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-accessFlags-object\"}]},{\"name\":\"actions\",\"policies\":[{\"policyId\":\"required\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"}]},{\"name\":\"permissions\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-permissions\"}]},{\"name\":\"filter\",\"policies\":[{\"params\":{\"types\":[\"string\",\"null\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-query-filter\"}]}]},\"policyId\":\"valid-array-items\"}]}],\"resource\":\"internal/role/*\"},{\"properties\":[{\"name\":\"temporalConstraints\",\"policies\":[{\"policyId\":\"valid-temporal-constraints\"}]},{\"name\":\"condition\",\"policies\":[{\"policyId\":\"valid-query-filter\"}]}],\"resource\":\"managed/role/*\"},{\"properties\":[{\"name\":\"objects\",\"policies\":[{\"policyId\":\"valid-event-scripts\"}]}],\"resource\":\"config/managed\"}],\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/policy" + }, + "response": { + "bodySize": 2368, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 2368, + "text": "{\"_id\":\"policy\",\"additionalFiles\":[],\"file\":\"policy.js\",\"resources\":[{\"calculatedProperties\":{\"source\":\"require('selfServicePolicies').getRegistrationProperties()\",\"type\":\"text/javascript\"},\"resource\":\"selfservice/registration\"},{\"calculatedProperties\":{\"source\":\"require('selfServicePolicies').getResetProperties()\",\"type\":\"text/javascript\"},\"resource\":\"selfservice/reset\"},{\"properties\":[{\"name\":\"_id\",\"policies\":[{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"}]},{\"name\":\"password\",\"policies\":[{\"params\":{\"minLength\":8},\"policyId\":\"minimum-length\"}]}],\"resource\":\"internal/user/*\"},{\"properties\":[{\"name\":\"name\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"forbiddenChars\":[\"/*\"]},\"policyId\":\"cannot-contain-characters\"}]},{\"name\":\"temporalConstraints\",\"policies\":[{\"policyId\":\"valid-temporal-constraints\"}]},{\"name\":\"condition\",\"policies\":[{\"policyId\":\"valid-query-filter\"}]},{\"name\":\"privileges\",\"policies\":[{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"params\":{\"properties\":[{\"name\":\"name\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"string\"]},\"policyId\":\"valid-type\"}]},{\"name\":\"path\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"forbiddenChars\":[\"/*\"]},\"policyId\":\"cannot-contain-characters\"},{\"policyId\":\"valid-privilege-path\"}]},{\"name\":\"accessFlags\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-accessFlags-object\"}]},{\"name\":\"actions\",\"policies\":[{\"policyId\":\"required\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"}]},{\"name\":\"permissions\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-permissions\"}]},{\"name\":\"filter\",\"policies\":[{\"params\":{\"types\":[\"string\",\"null\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-query-filter\"}]}]},\"policyId\":\"valid-array-items\"}]}],\"resource\":\"internal/role/*\"},{\"properties\":[{\"name\":\"temporalConstraints\",\"policies\":[{\"policyId\":\"valid-temporal-constraints\"}]},{\"name\":\"condition\",\"policies\":[{\"policyId\":\"valid-query-filter\"}]}],\"resource\":\"managed/role/*\"},{\"properties\":[{\"name\":\"objects\",\"policies\":[{\"policyId\":\"valid-event-scripts\"}]}],\"resource\":\"config/managed\"}],\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.905Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "85aa7f57d20e37b9a3d0385b7306304b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 493, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "493" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 460, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"privilegeAssignments\",\"privilegeAssignments\":[{\"name\":\"ownerPrivileges\",\"privileges\":[\"owner-view-update-delete-orgs\",\"owner-create-orgs\",\"owner-view-update-delete-admins-and-members\",\"owner-create-admins\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"ownerOfOrg\"},{\"name\":\"adminPrivileges\",\"privileges\":[\"admin-view-update-delete-orgs\",\"admin-create-orgs\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"adminOfOrg\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privilegeAssignments" + }, + "response": { + "bodySize": 493, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 493, + "text": "{\"_id\":\"privilegeAssignments\",\"privilegeAssignments\":[{\"name\":\"ownerPrivileges\",\"privileges\":[\"owner-view-update-delete-orgs\",\"owner-create-orgs\",\"owner-view-update-delete-admins-and-members\",\"owner-create-admins\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"ownerOfOrg\"},{\"name\":\"adminPrivileges\",\"privileges\":[\"admin-view-update-delete-orgs\",\"admin-create-orgs\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"adminOfOrg\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "493" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.920Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "cbec42ff637072f3ce8377be01511efe", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 8228, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "8228" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 451, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"privileges\",\"privileges\":[{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":false},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/ownerIDs eq \\\"{{_id}}\\\" or /parentOwnerIDs eq \\\"{{_id}}\\\"\",\"name\":\"owner-view-update-delete-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"VIEW\",\"UPDATE\",\"DELETE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":false},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/parent pr\",\"name\":\"owner-create-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":false},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrgIDs eq \\\"__org_id_placeholder__\\\"\",\"name\":\"owner-view-update-delete-admins-and-members\",\"path\":\"managed/user\",\"permissions\":[\"VIEW\",\"DELETE\",\"UPDATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":false},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrg/0 pr and /adminOfOrg/0 pr and !(/ownerOfOrg pr)\",\"name\":\"owner-create-admins\",\"path\":\"managed/user\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":true},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/adminIDs eq \\\"{{_id}}\\\" or /parentAdminIDs eq \\\"{{_id}}\\\"\",\"name\":\"admin-view-update-delete-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"VIEW\",\"UPDATE\",\"DELETE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":true},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/parent pr\",\"name\":\"admin-create-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":true},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrgIDs eq \\\"__org_id_placeholder__\\\"\",\"name\":\"admin-view-update-delete-members\",\"path\":\"managed/user\",\"permissions\":[\"VIEW\",\"DELETE\",\"UPDATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":true},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrg/0 pr and !(/adminOfOrg pr) and !(/ownerOfOrg pr)\",\"name\":\"admin-create-members\",\"path\":\"managed/user\",\"permissions\":[\"CREATE\"]}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privileges" + }, + "response": { + "bodySize": 8228, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 8228, + "text": "{\"_id\":\"privileges\",\"privileges\":[{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":false},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/ownerIDs eq \\\"{{_id}}\\\" or /parentOwnerIDs eq \\\"{{_id}}\\\"\",\"name\":\"owner-view-update-delete-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"VIEW\",\"UPDATE\",\"DELETE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":false},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/parent pr\",\"name\":\"owner-create-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":false},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrgIDs eq \\\"__org_id_placeholder__\\\"\",\"name\":\"owner-view-update-delete-admins-and-members\",\"path\":\"managed/user\",\"permissions\":[\"VIEW\",\"DELETE\",\"UPDATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":false},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrg/0 pr and /adminOfOrg/0 pr and !(/ownerOfOrg pr)\",\"name\":\"owner-create-admins\",\"path\":\"managed/user\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":true},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/adminIDs eq \\\"{{_id}}\\\" or /parentAdminIDs eq \\\"{{_id}}\\\"\",\"name\":\"admin-view-update-delete-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"VIEW\",\"UPDATE\",\"DELETE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":true},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/parent pr\",\"name\":\"admin-create-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":true},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrgIDs eq \\\"__org_id_placeholder__\\\"\",\"name\":\"admin-view-update-delete-members\",\"path\":\"managed/user\",\"permissions\":[\"VIEW\",\"DELETE\",\"UPDATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":true},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrg/0 pr and !(/adminOfOrg pr) and !(/ownerOfOrg pr)\",\"name\":\"admin-create-members\",\"path\":\"managed/user\",\"permissions\":[\"CREATE\"]}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.933Z", + "time": 14, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 14 + } + }, + { + "_id": "e113b4988a44660730d55e50b60c01f7", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 246, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "246" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 454, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"process/access\",\"workflowAccess\":[{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-authorized\"}},{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-admin\"}}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/process/access" + }, + "response": { + "bodySize": 246, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 246, + "text": "{\"_id\":\"process/access\",\"workflowAccess\":[{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-authorized\"}},{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-admin\"}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "246" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.951Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "eb131157f5058c14dd4e167f0cdcbc5a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 20198, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "20198" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"repo.ds\",\"commands\":{\"delete-mapping-links\":{\"_queryFilter\":\"/linkType eq \\\"${mapping}\\\"\",\"operation\":\"DELETE\"},\"delete-target-ids-for-recon\":{\"_queryFilter\":\"/reconId eq \\\"${reconId}\\\"\",\"operation\":\"DELETE\"}},\"embedded\":false,\"ldapConnectionFactories\":{\"bind\":{\"connectionPoolSize\":50,\"connectionSecurity\":\"startTLS\",\"heartBeatIntervalSeconds\":60,\"heartBeatTimeoutMilliSeconds\":10000,\"primaryLdapServers\":[{\"hostname\":\"opendj-frodo-dev.classic.com\",\"port\":2389}],\"secondaryLdapServers\":[]},\"root\":{\"authentication\":{\"simple\":{\"bindDn\":\"uid=admin\",\"bindPassword\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"lJ/B6T9e9CDKHCN8TxkD4g==\",\"iv\":\"EdrerzwEUUkHG582cLDw5w==\",\"keySize\":32,\"mac\":\"Aty9fXUtl4pexGlHOc+CBg==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"BITSKlnPeT5klcuEZbngzw==\",\"stableId\":\"openidm-sym-default\"}}}}},\"inheritFrom\":\"bind\"}},\"maxConnectionAttempts\":5,\"resourceMapping\":{\"defaultMapping\":{\"dnTemplate\":\"ou=generic,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"explicitMapping\":{\"clusteredrecontargetids\":{\"dnTemplate\":\"ou=clusteredrecontargetids,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-recon-clusteredTargetIds\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"reconId\":{\"ldapAttribute\":\"fr-idm-recon-id\",\"type\":\"simple\"},\"targetIds\":{\"ldapAttribute\":\"fr-idm-recon-targetIds\",\"type\":\"json\"}}},\"dsconfig/attributeValue\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-attribute-value-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"checkSubstrings\":{\"ldapAttribute\":\"ds-cfg-check-substrings\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"matchAttribute\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-match-attribute\",\"type\":\"simple\"},\"minSubstringLength\":{\"ldapAttribute\":\"ds-cfg-min-substring-length\",\"type\":\"simple\"},\"testReversedPassword\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-test-reversed-password\",\"type\":\"simple\"}}},\"dsconfig/characterSet\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-character-set-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"allowUnclassifiedCharacters\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-allow-unclassified-characters\",\"type\":\"simple\"},\"characterSet\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-character-set\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minCharacterSets\":{\"ldapAttribute\":\"ds-cfg-min-character-sets\",\"type\":\"simple\"}}},\"dsconfig/dictionary\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-dictionary-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"checkSubstrings\":{\"ldapAttribute\":\"ds-cfg-check-substrings\",\"type\":\"simple\"},\"dictionaryFile\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-dictionary-file\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minSubstringLength\":{\"ldapAttribute\":\"ds-cfg-min-substring-length\",\"type\":\"simple\"},\"testReversedPassword\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-test-reversed-password\",\"type\":\"simple\"}}},\"dsconfig/lengthBased\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-length-based-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"maxPasswordLength\":{\"ldapAttribute\":\"ds-cfg-max-password-length\",\"type\":\"simple\"},\"minPasswordLength\":{\"ldapAttribute\":\"ds-cfg-min-password-length\",\"type\":\"simple\"}}},\"dsconfig/passwordPolicies\":{\"dnTemplate\":\"cn=Password Policies,cn=config\",\"objectClasses\":[\"ds-cfg-password-policy\",\"ds-cfg-authentication-policy\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"defaultPasswordStorageScheme\":{\"isMultiValued\":true,\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-default-password-storage-scheme\",\"type\":\"simple\"},\"maxPasswordAge\":{\"ldapAttribute\":\"ds-cfg-max-password-age\",\"type\":\"simple\"},\"passwordAttribute\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-password-attribute\",\"type\":\"simple\"},\"passwordHistoryCount\":{\"ldapAttribute\":\"ds-cfg-password-history-count\",\"type\":\"simple\"},\"validator\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-password-validator\",\"type\":\"simple\"}}},\"dsconfig/repeatedCharacters\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-repeated-characters-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"maxConsecutiveLength\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-max-consecutive-length\",\"type\":\"simple\"}}},\"dsconfig/similarityBased\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-similarity-based-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minPasswordDifference\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-min-password-difference\",\"type\":\"simple\"}}},\"dsconfig/uniqueCharacters\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-unique-characters-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minUniqueCharacters\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-min-unique-characters\",\"type\":\"simple\"}}},\"dsconfig/userDefinedVirtualAttribute\":{\"dnTemplate\":\"cn=Virtual Attributes,cn=config\",\"objectClasses\":[\"ds-cfg-user-defined-virtual-attribute\",\"ds-cfg-virtual-attribute\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"attributeType\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-attribute-type\",\"type\":\"simple\"},\"baseDn\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-base-dn\",\"type\":\"simple\"},\"conflictBehavior\":{\"ldapAttribute\":\"ds-cfg-conflict-behavior\",\"type\":\"simple\"},\"enabled\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"filter\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-filter\",\"type\":\"simple\"},\"groupDn\":{\"ldapAttribute\":\"ds-cfg-group-dn\",\"type\":\"simple\"},\"javaClass\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"scope\":{\"ldapAttribute\":\"ds-cfg-scope\",\"type\":\"simple\"},\"value\":{\"isMultiValued\":true,\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-value\",\"type\":\"simple\"}}},\"internal/role\":{\"dnTemplate\":\"ou=roles,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"fr-idm-internal-role\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"authzMembers\":{\"isMultiValued\":true,\"propertyName\":\"authzRoles\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"condition\":{\"ldapAttribute\":\"fr-idm-condition\",\"type\":\"simple\"},\"description\":{\"ldapAttribute\":\"description\",\"type\":\"simple\"},\"name\":{\"ldapAttribute\":\"fr-idm-name\",\"type\":\"simple\"},\"privileges\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-privilege\",\"type\":\"json\"},\"temporalConstraints\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-temporal-constraints\",\"type\":\"json\"}}},\"internal/user\":{\"dnTemplate\":\"ou=users,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-internal-user\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"password\":{\"ldapAttribute\":\"fr-idm-password\",\"type\":\"json\"}}},\"link\":{\"dnTemplate\":\"ou=links,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-link\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"firstId\":{\"ldapAttribute\":\"fr-idm-link-firstId\",\"type\":\"simple\"},\"linkQualifier\":{\"ldapAttribute\":\"fr-idm-link-qualifier\",\"type\":\"simple\"},\"linkType\":{\"ldapAttribute\":\"fr-idm-link-type\",\"type\":\"simple\"},\"secondId\":{\"ldapAttribute\":\"fr-idm-link-secondId\",\"type\":\"simple\"}}},\"locks\":{\"dnTemplate\":\"ou=locks,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-lock\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"nodeId\":{\"ldapAttribute\":\"fr-idm-lock-nodeid\",\"type\":\"simple\"}}},\"recon/assoc\":{\"dnTemplate\":\"ou=assoc,ou=recon,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"namingStrategy\":{\"dnAttribute\":\"fr-idm-reconassoc-reconid\",\"type\":\"clientDnNaming\"},\"objectClasses\":[\"fr-idm-reconassoc\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"fr-idm-reconassoc-reconid\",\"type\":\"simple\"},\"finishTime\":{\"ldapAttribute\":\"fr-idm-reconassoc-finishtime\",\"type\":\"simple\"},\"isAnalysis\":{\"ldapAttribute\":\"fr-idm-reconassoc-isanalysis\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-reconassoc-mapping\",\"type\":\"simple\"},\"sourceResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-sourceresourcecollection\",\"type\":\"simple\"},\"targetResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-targetresourcecollection\",\"type\":\"simple\"}},\"subResources\":{\"entry\":{\"namingStrategy\":{\"dnAttribute\":\"uid\",\"type\":\"clientDnNaming\"},\"resource\":\"recon-assoc-entry\",\"type\":\"collection\"}}},\"recon/assoc/entry\":{\"objectClasses\":[\"uidObject\",\"fr-idm-reconassocentry\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\"},\"action\":{\"ldapAttribute\":\"fr-idm-reconassocentry-action\",\"type\":\"simple\"},\"ambiguousTargetObjectIds\":{\"ldapAttribute\":\"fr-idm-reconassocentry-ambiguoustargetobjectids\",\"type\":\"simple\"},\"exception\":{\"ldapAttribute\":\"fr-idm-reconassocentry-exception\",\"type\":\"simple\"},\"isAnalysis\":{\"ldapAttribute\":\"fr-idm-reconassoc-isanalysis\",\"type\":\"simple\"},\"linkQualifier\":{\"ldapAttribute\":\"fr-idm-reconassocentry-linkqualifier\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-reconassoc-mapping\",\"type\":\"simple\"},\"message\":{\"ldapAttribute\":\"fr-idm-reconassocentry-message\",\"type\":\"simple\"},\"messageDetail\":{\"ldapAttribute\":\"fr-idm-reconassocentry-messagedetail\",\"type\":\"simple\"},\"phase\":{\"ldapAttribute\":\"fr-idm-reconassocentry-phase\",\"type\":\"simple\"},\"reconId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-reconid\",\"type\":\"simple\"},\"situation\":{\"ldapAttribute\":\"fr-idm-reconassocentry-situation\",\"type\":\"simple\"},\"sourceObjectId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-sourceObjectId\",\"type\":\"simple\"},\"sourceResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-sourceresourcecollection\",\"type\":\"simple\"},\"status\":{\"ldapAttribute\":\"fr-idm-reconassocentry-status\",\"type\":\"simple\"},\"targetObjectId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-targetObjectId\",\"type\":\"simple\"},\"targetResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-targetresourcecollection\",\"type\":\"simple\"}},\"resourceName\":\"recon-assoc-entry\",\"subResourceRouting\":[{\"prefix\":\"entry\",\"template\":\"recon/assoc/{reconId}/entry\"}]},\"sync/queue\":{\"dnTemplate\":\"ou=queue,ou=sync,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-syncqueue\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"context\":{\"ldapAttribute\":\"fr-idm-syncqueue-context\",\"type\":\"json\"},\"createDate\":{\"ldapAttribute\":\"fr-idm-syncqueue-createdate\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-syncqueue-mapping\",\"type\":\"simple\"},\"newObject\":{\"ldapAttribute\":\"fr-idm-syncqueue-newobject\",\"type\":\"json\"},\"nodeId\":{\"ldapAttribute\":\"fr-idm-syncqueue-nodeid\",\"type\":\"simple\"},\"objectRev\":{\"ldapAttribute\":\"fr-idm-syncqueue-objectRev\",\"type\":\"simple\"},\"oldObject\":{\"ldapAttribute\":\"fr-idm-syncqueue-oldobject\",\"type\":\"json\"},\"resourceCollection\":{\"ldapAttribute\":\"fr-idm-syncqueue-resourcecollection\",\"type\":\"simple\"},\"resourceId\":{\"ldapAttribute\":\"fr-idm-syncqueue-resourceid\",\"type\":\"simple\"},\"state\":{\"ldapAttribute\":\"fr-idm-syncqueue-state\",\"type\":\"simple\"},\"syncAction\":{\"ldapAttribute\":\"fr-idm-syncqueue-syncaction\",\"type\":\"simple\"}}}},\"genericMapping\":{\"cluster/*\":{\"dnTemplate\":\"ou=cluster,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-cluster-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchClusterObject\",\"objectClasses\":[\"uidObject\",\"fr-idm-cluster-obj\"]},\"config\":{\"dnTemplate\":\"ou=config,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"file\":{\"dnTemplate\":\"ou=file,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"import\":{\"dnTemplate\":\"ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"import/*\":{\"dnTemplate\":\"ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"internal/notification\":{\"dnTemplate\":\"ou=notification,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-notification-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-notification\"],\"properties\":{\"target\":{\"propertyName\":\"_notifications\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"internal/usermeta\":{\"dnTemplate\":\"ou=usermeta,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-generic-obj\"],\"properties\":{\"target\":{\"propertyName\":\"_meta\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"jsonstorage\":{\"dnTemplate\":\"ou=jsonstorage,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"managed/*\":{\"dnTemplate\":\"ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"managed/assignment\":{\"dnTemplate\":\"ou=assignment,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-assignment-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-assignment\"],\"properties\":{\"condition\":{\"ldapAttribute\":\"fr-idm-assignment-condition\",\"type\":\"simple\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"assignments\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"roles\":{\"isMultiValued\":true,\"propertyName\":\"assignments\",\"resourcePath\":\"managed/role\",\"type\":\"reverseReference\"}}},\"managed/organization\":{\"dnTemplate\":\"ou=organization,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-organization-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-organization\"],\"properties\":{\"admins\":{\"isMultiValued\":true,\"propertyName\":\"adminOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"children\":{\"isMultiValued\":true,\"propertyName\":\"parent\",\"resourcePath\":\"managed/organization\",\"type\":\"reverseReference\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"memberOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"name\":{\"ldapAttribute\":\"fr-idm-managed-organization-name\",\"type\":\"simple\"},\"owners\":{\"isMultiValued\":true,\"propertyName\":\"ownerOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"parent\":{\"ldapAttribute\":\"fr-idm-managed-organization-parent\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"}}},\"managed/role\":{\"dnTemplate\":\"ou=role,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-role-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchManagedRole\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-role\"],\"properties\":{\"assignments\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-role-assignments\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/assignment\",\"type\":\"reference\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"roles\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"managed/user\":{\"dnTemplate\":\"ou=user,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-user-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchManagedUser\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-user\"],\"properties\":{\"_meta\":{\"isMultiValued\":false,\"ldapAttribute\":\"fr-idm-managed-user-meta\",\"primaryKey\":\"uid\",\"resourcePath\":\"internal/usermeta\",\"type\":\"reference\"},\"_notifications\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-notifications\",\"primaryKey\":\"uid\",\"resourcePath\":\"internal/notification\",\"type\":\"reference\"},\"adminOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-admin\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"assignments\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-assignment-member\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/assignment\",\"type\":\"reference\"},\"authzRoles\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-authzroles-internal-role\",\"primaryKey\":\"cn\",\"resourcePath\":\"internal/role\",\"type\":\"reference\"},\"manager\":{\"isMultiValued\":false,\"ldapAttribute\":\"fr-idm-managed-user-manager\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/user\",\"type\":\"reference\"},\"memberOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-member\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"ownerOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-owner\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"passwordExpirationTime\":{\"ldapAttribute\":\"pwdExpirationTime\",\"type\":\"simple\",\"writability\":\"readOnlyDiscardWrites\"},\"passwordLastChangedTime\":{\"ldapAttribute\":\"pwdChangedTime\",\"type\":\"simple\",\"writability\":\"readOnlyDiscardWrites\"},\"reports\":{\"isMultiValued\":true,\"propertyName\":\"manager\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"roles\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-roles\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/role\",\"type\":\"reference\"}}},\"reconprogressstate\":{\"dnTemplate\":\"ou=reconprogressstate,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"relationships\":{\"dnTemplate\":\"ou=relationships,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-relationship-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchRelationship\",\"objectClasses\":[\"uidObject\",\"fr-idm-relationship\"]},\"scheduler\":{\"dnTemplate\":\"ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"scheduler/*\":{\"dnTemplate\":\"ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"ui/*\":{\"dnTemplate\":\"ou=ui,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"updates\":{\"dnTemplate\":\"ou=updates,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"}}},\"rest2LdapOptions\":{\"mvccAttribute\":\"etag\",\"readOnUpdatePolicy\":\"controls\",\"returnNullForMissingProperties\":true,\"useMvcc\":true,\"usePermissiveModify\":true,\"useSubtreeDelete\":false},\"security\":{\"fileBasedTrustManagerFile\":\"&{idm.install.dir}/security/truststore\",\"fileBasedTrustManagerPasswordFile\":\"&{idm.install.dir}/security/storepass\",\"fileBasedTrustManagerType\":\"JKS\",\"trustManager\":\"file\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.ds" + }, + "response": { + "bodySize": 20198, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 20198, + "text": "{\"_id\":\"repo.ds\",\"commands\":{\"delete-mapping-links\":{\"_queryFilter\":\"/linkType eq \\\"${mapping}\\\"\",\"operation\":\"DELETE\"},\"delete-target-ids-for-recon\":{\"_queryFilter\":\"/reconId eq \\\"${reconId}\\\"\",\"operation\":\"DELETE\"}},\"embedded\":false,\"ldapConnectionFactories\":{\"bind\":{\"connectionPoolSize\":50,\"connectionSecurity\":\"startTLS\",\"heartBeatIntervalSeconds\":60,\"heartBeatTimeoutMilliSeconds\":10000,\"primaryLdapServers\":[{\"hostname\":\"opendj-frodo-dev.classic.com\",\"port\":2389}],\"secondaryLdapServers\":[]},\"root\":{\"authentication\":{\"simple\":{\"bindDn\":\"uid=admin\",\"bindPassword\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"lJ/B6T9e9CDKHCN8TxkD4g==\",\"iv\":\"EdrerzwEUUkHG582cLDw5w==\",\"keySize\":32,\"mac\":\"Aty9fXUtl4pexGlHOc+CBg==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"BITSKlnPeT5klcuEZbngzw==\",\"stableId\":\"openidm-sym-default\"}}}}},\"inheritFrom\":\"bind\"}},\"maxConnectionAttempts\":5,\"resourceMapping\":{\"defaultMapping\":{\"dnTemplate\":\"ou=generic,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"explicitMapping\":{\"clusteredrecontargetids\":{\"dnTemplate\":\"ou=clusteredrecontargetids,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-recon-clusteredTargetIds\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"reconId\":{\"ldapAttribute\":\"fr-idm-recon-id\",\"type\":\"simple\"},\"targetIds\":{\"ldapAttribute\":\"fr-idm-recon-targetIds\",\"type\":\"json\"}}},\"dsconfig/attributeValue\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-attribute-value-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"checkSubstrings\":{\"ldapAttribute\":\"ds-cfg-check-substrings\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"matchAttribute\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-match-attribute\",\"type\":\"simple\"},\"minSubstringLength\":{\"ldapAttribute\":\"ds-cfg-min-substring-length\",\"type\":\"simple\"},\"testReversedPassword\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-test-reversed-password\",\"type\":\"simple\"}}},\"dsconfig/characterSet\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-character-set-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"allowUnclassifiedCharacters\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-allow-unclassified-characters\",\"type\":\"simple\"},\"characterSet\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-character-set\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minCharacterSets\":{\"ldapAttribute\":\"ds-cfg-min-character-sets\",\"type\":\"simple\"}}},\"dsconfig/dictionary\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-dictionary-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"checkSubstrings\":{\"ldapAttribute\":\"ds-cfg-check-substrings\",\"type\":\"simple\"},\"dictionaryFile\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-dictionary-file\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minSubstringLength\":{\"ldapAttribute\":\"ds-cfg-min-substring-length\",\"type\":\"simple\"},\"testReversedPassword\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-test-reversed-password\",\"type\":\"simple\"}}},\"dsconfig/lengthBased\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-length-based-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"maxPasswordLength\":{\"ldapAttribute\":\"ds-cfg-max-password-length\",\"type\":\"simple\"},\"minPasswordLength\":{\"ldapAttribute\":\"ds-cfg-min-password-length\",\"type\":\"simple\"}}},\"dsconfig/passwordPolicies\":{\"dnTemplate\":\"cn=Password Policies,cn=config\",\"objectClasses\":[\"ds-cfg-password-policy\",\"ds-cfg-authentication-policy\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"defaultPasswordStorageScheme\":{\"isMultiValued\":true,\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-default-password-storage-scheme\",\"type\":\"simple\"},\"maxPasswordAge\":{\"ldapAttribute\":\"ds-cfg-max-password-age\",\"type\":\"simple\"},\"passwordAttribute\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-password-attribute\",\"type\":\"simple\"},\"passwordHistoryCount\":{\"ldapAttribute\":\"ds-cfg-password-history-count\",\"type\":\"simple\"},\"validator\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-password-validator\",\"type\":\"simple\"}}},\"dsconfig/repeatedCharacters\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-repeated-characters-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"maxConsecutiveLength\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-max-consecutive-length\",\"type\":\"simple\"}}},\"dsconfig/similarityBased\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-similarity-based-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minPasswordDifference\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-min-password-difference\",\"type\":\"simple\"}}},\"dsconfig/uniqueCharacters\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-unique-characters-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minUniqueCharacters\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-min-unique-characters\",\"type\":\"simple\"}}},\"dsconfig/userDefinedVirtualAttribute\":{\"dnTemplate\":\"cn=Virtual Attributes,cn=config\",\"objectClasses\":[\"ds-cfg-user-defined-virtual-attribute\",\"ds-cfg-virtual-attribute\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"attributeType\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-attribute-type\",\"type\":\"simple\"},\"baseDn\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-base-dn\",\"type\":\"simple\"},\"conflictBehavior\":{\"ldapAttribute\":\"ds-cfg-conflict-behavior\",\"type\":\"simple\"},\"enabled\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"filter\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-filter\",\"type\":\"simple\"},\"groupDn\":{\"ldapAttribute\":\"ds-cfg-group-dn\",\"type\":\"simple\"},\"javaClass\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"scope\":{\"ldapAttribute\":\"ds-cfg-scope\",\"type\":\"simple\"},\"value\":{\"isMultiValued\":true,\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-value\",\"type\":\"simple\"}}},\"internal/role\":{\"dnTemplate\":\"ou=roles,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"fr-idm-internal-role\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"authzMembers\":{\"isMultiValued\":true,\"propertyName\":\"authzRoles\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"condition\":{\"ldapAttribute\":\"fr-idm-condition\",\"type\":\"simple\"},\"description\":{\"ldapAttribute\":\"description\",\"type\":\"simple\"},\"name\":{\"ldapAttribute\":\"fr-idm-name\",\"type\":\"simple\"},\"privileges\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-privilege\",\"type\":\"json\"},\"temporalConstraints\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-temporal-constraints\",\"type\":\"json\"}}},\"internal/user\":{\"dnTemplate\":\"ou=users,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-internal-user\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"password\":{\"ldapAttribute\":\"fr-idm-password\",\"type\":\"json\"}}},\"link\":{\"dnTemplate\":\"ou=links,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-link\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"firstId\":{\"ldapAttribute\":\"fr-idm-link-firstId\",\"type\":\"simple\"},\"linkQualifier\":{\"ldapAttribute\":\"fr-idm-link-qualifier\",\"type\":\"simple\"},\"linkType\":{\"ldapAttribute\":\"fr-idm-link-type\",\"type\":\"simple\"},\"secondId\":{\"ldapAttribute\":\"fr-idm-link-secondId\",\"type\":\"simple\"}}},\"locks\":{\"dnTemplate\":\"ou=locks,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-lock\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"nodeId\":{\"ldapAttribute\":\"fr-idm-lock-nodeid\",\"type\":\"simple\"}}},\"recon/assoc\":{\"dnTemplate\":\"ou=assoc,ou=recon,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"namingStrategy\":{\"dnAttribute\":\"fr-idm-reconassoc-reconid\",\"type\":\"clientDnNaming\"},\"objectClasses\":[\"fr-idm-reconassoc\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"fr-idm-reconassoc-reconid\",\"type\":\"simple\"},\"finishTime\":{\"ldapAttribute\":\"fr-idm-reconassoc-finishtime\",\"type\":\"simple\"},\"isAnalysis\":{\"ldapAttribute\":\"fr-idm-reconassoc-isanalysis\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-reconassoc-mapping\",\"type\":\"simple\"},\"sourceResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-sourceresourcecollection\",\"type\":\"simple\"},\"targetResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-targetresourcecollection\",\"type\":\"simple\"}},\"subResources\":{\"entry\":{\"namingStrategy\":{\"dnAttribute\":\"uid\",\"type\":\"clientDnNaming\"},\"resource\":\"recon-assoc-entry\",\"type\":\"collection\"}}},\"recon/assoc/entry\":{\"objectClasses\":[\"uidObject\",\"fr-idm-reconassocentry\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\"},\"action\":{\"ldapAttribute\":\"fr-idm-reconassocentry-action\",\"type\":\"simple\"},\"ambiguousTargetObjectIds\":{\"ldapAttribute\":\"fr-idm-reconassocentry-ambiguoustargetobjectids\",\"type\":\"simple\"},\"exception\":{\"ldapAttribute\":\"fr-idm-reconassocentry-exception\",\"type\":\"simple\"},\"isAnalysis\":{\"ldapAttribute\":\"fr-idm-reconassoc-isanalysis\",\"type\":\"simple\"},\"linkQualifier\":{\"ldapAttribute\":\"fr-idm-reconassocentry-linkqualifier\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-reconassoc-mapping\",\"type\":\"simple\"},\"message\":{\"ldapAttribute\":\"fr-idm-reconassocentry-message\",\"type\":\"simple\"},\"messageDetail\":{\"ldapAttribute\":\"fr-idm-reconassocentry-messagedetail\",\"type\":\"simple\"},\"phase\":{\"ldapAttribute\":\"fr-idm-reconassocentry-phase\",\"type\":\"simple\"},\"reconId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-reconid\",\"type\":\"simple\"},\"situation\":{\"ldapAttribute\":\"fr-idm-reconassocentry-situation\",\"type\":\"simple\"},\"sourceObjectId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-sourceObjectId\",\"type\":\"simple\"},\"sourceResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-sourceresourcecollection\",\"type\":\"simple\"},\"status\":{\"ldapAttribute\":\"fr-idm-reconassocentry-status\",\"type\":\"simple\"},\"targetObjectId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-targetObjectId\",\"type\":\"simple\"},\"targetResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-targetresourcecollection\",\"type\":\"simple\"}},\"resourceName\":\"recon-assoc-entry\",\"subResourceRouting\":[{\"prefix\":\"entry\",\"template\":\"recon/assoc/{reconId}/entry\"}]},\"sync/queue\":{\"dnTemplate\":\"ou=queue,ou=sync,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-syncqueue\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"context\":{\"ldapAttribute\":\"fr-idm-syncqueue-context\",\"type\":\"json\"},\"createDate\":{\"ldapAttribute\":\"fr-idm-syncqueue-createdate\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-syncqueue-mapping\",\"type\":\"simple\"},\"newObject\":{\"ldapAttribute\":\"fr-idm-syncqueue-newobject\",\"type\":\"json\"},\"nodeId\":{\"ldapAttribute\":\"fr-idm-syncqueue-nodeid\",\"type\":\"simple\"},\"objectRev\":{\"ldapAttribute\":\"fr-idm-syncqueue-objectRev\",\"type\":\"simple\"},\"oldObject\":{\"ldapAttribute\":\"fr-idm-syncqueue-oldobject\",\"type\":\"json\"},\"resourceCollection\":{\"ldapAttribute\":\"fr-idm-syncqueue-resourcecollection\",\"type\":\"simple\"},\"resourceId\":{\"ldapAttribute\":\"fr-idm-syncqueue-resourceid\",\"type\":\"simple\"},\"state\":{\"ldapAttribute\":\"fr-idm-syncqueue-state\",\"type\":\"simple\"},\"syncAction\":{\"ldapAttribute\":\"fr-idm-syncqueue-syncaction\",\"type\":\"simple\"}}}},\"genericMapping\":{\"cluster/*\":{\"dnTemplate\":\"ou=cluster,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-cluster-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchClusterObject\",\"objectClasses\":[\"uidObject\",\"fr-idm-cluster-obj\"]},\"config\":{\"dnTemplate\":\"ou=config,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"file\":{\"dnTemplate\":\"ou=file,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"import\":{\"dnTemplate\":\"ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"import/*\":{\"dnTemplate\":\"ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"internal/notification\":{\"dnTemplate\":\"ou=notification,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-notification-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-notification\"],\"properties\":{\"target\":{\"propertyName\":\"_notifications\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"internal/usermeta\":{\"dnTemplate\":\"ou=usermeta,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-generic-obj\"],\"properties\":{\"target\":{\"propertyName\":\"_meta\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"jsonstorage\":{\"dnTemplate\":\"ou=jsonstorage,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"managed/*\":{\"dnTemplate\":\"ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"managed/assignment\":{\"dnTemplate\":\"ou=assignment,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-assignment-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-assignment\"],\"properties\":{\"condition\":{\"ldapAttribute\":\"fr-idm-assignment-condition\",\"type\":\"simple\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"assignments\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"roles\":{\"isMultiValued\":true,\"propertyName\":\"assignments\",\"resourcePath\":\"managed/role\",\"type\":\"reverseReference\"}}},\"managed/organization\":{\"dnTemplate\":\"ou=organization,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-organization-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-organization\"],\"properties\":{\"admins\":{\"isMultiValued\":true,\"propertyName\":\"adminOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"children\":{\"isMultiValued\":true,\"propertyName\":\"parent\",\"resourcePath\":\"managed/organization\",\"type\":\"reverseReference\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"memberOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"name\":{\"ldapAttribute\":\"fr-idm-managed-organization-name\",\"type\":\"simple\"},\"owners\":{\"isMultiValued\":true,\"propertyName\":\"ownerOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"parent\":{\"ldapAttribute\":\"fr-idm-managed-organization-parent\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"}}},\"managed/role\":{\"dnTemplate\":\"ou=role,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-role-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchManagedRole\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-role\"],\"properties\":{\"assignments\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-role-assignments\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/assignment\",\"type\":\"reference\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"roles\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"managed/user\":{\"dnTemplate\":\"ou=user,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-user-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchManagedUser\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-user\"],\"properties\":{\"_meta\":{\"isMultiValued\":false,\"ldapAttribute\":\"fr-idm-managed-user-meta\",\"primaryKey\":\"uid\",\"resourcePath\":\"internal/usermeta\",\"type\":\"reference\"},\"_notifications\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-notifications\",\"primaryKey\":\"uid\",\"resourcePath\":\"internal/notification\",\"type\":\"reference\"},\"adminOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-admin\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"assignments\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-assignment-member\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/assignment\",\"type\":\"reference\"},\"authzRoles\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-authzroles-internal-role\",\"primaryKey\":\"cn\",\"resourcePath\":\"internal/role\",\"type\":\"reference\"},\"manager\":{\"isMultiValued\":false,\"ldapAttribute\":\"fr-idm-managed-user-manager\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/user\",\"type\":\"reference\"},\"memberOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-member\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"ownerOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-owner\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"passwordExpirationTime\":{\"ldapAttribute\":\"pwdExpirationTime\",\"type\":\"simple\",\"writability\":\"readOnlyDiscardWrites\"},\"passwordLastChangedTime\":{\"ldapAttribute\":\"pwdChangedTime\",\"type\":\"simple\",\"writability\":\"readOnlyDiscardWrites\"},\"reports\":{\"isMultiValued\":true,\"propertyName\":\"manager\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"roles\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-roles\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/role\",\"type\":\"reference\"}}},\"reconprogressstate\":{\"dnTemplate\":\"ou=reconprogressstate,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"relationships\":{\"dnTemplate\":\"ou=relationships,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-relationship-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchRelationship\",\"objectClasses\":[\"uidObject\",\"fr-idm-relationship\"]},\"scheduler\":{\"dnTemplate\":\"ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"scheduler/*\":{\"dnTemplate\":\"ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"ui/*\":{\"dnTemplate\":\"ou=ui,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"updates\":{\"dnTemplate\":\"ou=updates,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"}}},\"rest2LdapOptions\":{\"mvccAttribute\":\"etag\",\"readOnUpdatePolicy\":\"controls\",\"returnNullForMissingProperties\":true,\"useMvcc\":true,\"usePermissiveModify\":true,\"useSubtreeDelete\":false},\"security\":{\"fileBasedTrustManagerFile\":\"&{idm.install.dir}/security/truststore\",\"fileBasedTrustManagerPasswordFile\":\"&{idm.install.dir}/security/storepass\",\"fileBasedTrustManagerType\":\"JKS\",\"trustManager\":\"file\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.970Z", + "time": 16, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 16 + } + }, + { + "_id": "713d28bcb7fbcf706532db458785e079", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 789, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "789" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"repo.init\",\"insert\":{\"internal/role\":[{\"description\":\"Administrative access\",\"id\":\"openidm-admin\",\"name\":\"openidm-admin\"},{\"description\":\"Basic minimum user\",\"id\":\"openidm-authorized\",\"name\":\"openidm-authorized\"},{\"description\":\"Anonymous access\",\"id\":\"openidm-reg\",\"name\":\"openidm-reg\"},{\"description\":\"Authenticated via certificate\",\"id\":\"openidm-cert\",\"name\":\"openidm-cert\"},{\"description\":\"Allowed to reassign workflow tasks\",\"id\":\"openidm-tasks-manager\",\"name\":\"openidm-tasks-manager\"},{\"description\":\"Platform provisioning access\",\"id\":\"platform-provisioning\",\"name\":\"platform-provisioning\"}],\"internal/user\":[{\"id\":\"openidm-admin\",\"password\":\"&{openidm.admin.password}\"},{\"id\":\"anonymous\",\"password\":\"anonymous\"},{\"id\":\"idm-provisioning\"},{\"id\":\"connector-server-client\"}]}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.init" + }, + "response": { + "bodySize": 789, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 789, + "text": "{\"_id\":\"repo.init\",\"insert\":{\"internal/role\":[{\"description\":\"Administrative access\",\"id\":\"openidm-admin\",\"name\":\"openidm-admin\"},{\"description\":\"Basic minimum user\",\"id\":\"openidm-authorized\",\"name\":\"openidm-authorized\"},{\"description\":\"Anonymous access\",\"id\":\"openidm-reg\",\"name\":\"openidm-reg\"},{\"description\":\"Authenticated via certificate\",\"id\":\"openidm-cert\",\"name\":\"openidm-cert\"},{\"description\":\"Allowed to reassign workflow tasks\",\"id\":\"openidm-tasks-manager\",\"name\":\"openidm-tasks-manager\"},{\"description\":\"Platform provisioning access\",\"id\":\"platform-provisioning\",\"name\":\"platform-provisioning\"}],\"internal/user\":[{\"id\":\"openidm-admin\",\"password\":\"&{openidm.admin.password}\"},{\"id\":\"anonymous\",\"password\":\"anonymous\"},{\"id\":\"idm-provisioning\"},{\"id\":\"connector-server-client\"}]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:17 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "789" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:17.991Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "42c6e3613a1d003bb03982859b13f769", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 619, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "619" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"router\",\"filters\":[{\"methods\":[\"create\",\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"},{\"methods\":[\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^config/managed$\"},{\"condition\":{\"source\":\"(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0)\",\"type\":\"text/javascript\"},\"onResponse\":{\"source\":\"require('relationshipFilter').filterResponse()\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/router" + }, + "response": { + "bodySize": 619, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 619, + "text": "{\"_id\":\"router\",\"filters\":[{\"methods\":[\"create\",\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"},{\"methods\":[\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^config/managed$\"},{\"condition\":{\"source\":\"(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0)\",\"type\":\"text/javascript\"},\"onResponse\":{\"source\":\"require('relationshipFilter').filterResponse()\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "619" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.004Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "424494959b5c9b3055c3c7adfdbd139c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 459, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "459" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 457, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"schedule/seantest\",\"concurrentExecution\":false,\"enabled\":false,\"endTime\":null,\"invokeContext\":{\"script\":{\"globals\":{},\"source\":\"//sean has changed this script. Let's see if it is still working. qqqqqqqqqqqqqqSchedule1\\n\",\"type\":\"text/javascript\"}},\"invokeLogLevel\":\"info\",\"invokeService\":\"script\",\"misfirePolicy\":\"fireAndProceed\",\"persisted\":true,\"recoverable\":false,\"repeatCount\":0,\"repeatInterval\":0,\"schedule\":null,\"startTime\":null,\"type\":\"simple\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/seantest" + }, + "response": { + "bodySize": 459, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 459, + "text": "{\"_id\":\"schedule/seantest\",\"concurrentExecution\":false,\"enabled\":false,\"endTime\":null,\"invokeContext\":{\"script\":{\"globals\":{},\"source\":\"//sean has changed this script. Let's see if it is still working. qqqqqqqqqqqqqqSchedule1\\n\",\"type\":\"text/javascript\"}},\"invokeLogLevel\":\"info\",\"invokeService\":\"script\",\"misfirePolicy\":\"fireAndProceed\",\"persisted\":true,\"recoverable\":false,\"repeatCount\":0,\"repeatInterval\":0,\"schedule\":null,\"startTime\":null,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "459" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.019Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "b72f7bad2fb70bd3408d023227d6c0a1", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 838, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "838" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 466, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"schedule/taskscan_activate\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/activeDate le \\\"${Time.nowWithOffset}\\\") AND (!(/inactiveDate pr) or /inactiveDate ge \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/activateAccount/task-completed\",\"started\":\"/activateAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"active\\\" }];\\n\\nlogger.debug(\\\"Performing Activate Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_activate" + }, + "response": { + "bodySize": 838, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 838, + "text": "{\"_id\":\"schedule/taskscan_activate\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/activeDate le \\\"${Time.nowWithOffset}\\\") AND (!(/inactiveDate pr) or /inactiveDate ge \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/activateAccount/task-completed\",\"started\":\"/activateAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"active\\\" }];\\n\\nlogger.debug(\\\"Performing Activate Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "838" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.036Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "4b0af8e512d690c0f8ba8f746dc7f7f0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 830, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "830" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 464, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"schedule/taskscan_expire\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/inactiveDate lt \\\"${Time.nowWithOffset}\\\") AND (!(/activeDate pr) or /activeDate le \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/expireAccount/task-completed\",\"started\":\"/expireAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"inactive\\\" }];\\n\\nlogger.debug(\\\"Performing Expire Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_expire" + }, + "response": { + "bodySize": 830, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 830, + "text": "{\"_id\":\"schedule/taskscan_expire\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/inactiveDate lt \\\"${Time.nowWithOffset}\\\") AND (!(/activeDate pr) or /activeDate le \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/expireAccount/task-completed\",\"started\":\"/expireAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"inactive\\\" }];\\n\\nlogger.debug(\\\"Performing Expire Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "830" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.053Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "1024d424442077395a76f0ae65915bbe", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 156, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "156" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"scheduler\",\"scheduler\":{\"executePersistentSchedules\":{\"$bool\":\"&{openidm.scheduler.execute.persistent.schedules}\"}},\"threadPool\":{\"threadCount\":10}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/scheduler" + }, + "response": { + "bodySize": 156, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 156, + "text": "{\"_id\":\"scheduler\",\"scheduler\":{\"executePersistentSchedules\":{\"$bool\":\"&{openidm.scheduler.execute.persistent.schedules}\"}},\"threadPool\":{\"threadCount\":10}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "156" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.069Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "940e52bd5df8ce79327cf7ca6c2a4b70", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 939, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "939" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"ECMAScript\":{\"javascript.optimization.level\":9,\"javascript.recompile.minimumInterval\":60000},\"Groovy\":{\"#groovy.disabled.global.ast.transformations\":\"\",\"#groovy.errors.tolerance\":10,\"#groovy.output.debug\":false,\"#groovy.output.verbose\":false,\"#groovy.script.base\":\"#any class extends groovy.lang.Script\",\"#groovy.script.extension\":\".groovy\",\"#groovy.target.bytecode\":\"1.8\",\"#groovy.target.directory\":\"&{idm.data.dir}/classes\",\"#groovy.target.indy\":true,\"#groovy.warnings\":\"likely errors #othere values [none,likely,possible,paranoia]\",\"groovy.classpath\":\"&{idm.install.dir}/lib\",\"groovy.recompile\":true,\"groovy.recompile.minimumInterval\":60000,\"groovy.source.encoding\":\"UTF-8\"},\"_id\":\"script\",\"properties\":{},\"sources\":{\"default\":{\"directory\":\"&{idm.install.dir}/bin/defaults/script\"},\"install\":{\"directory\":\"&{idm.install.dir}\"},\"project\":{\"directory\":\"&{idm.instance.dir}\"},\"project-script\":{\"directory\":\"&{idm.instance.dir}/script\"}}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/script" + }, + "response": { + "bodySize": 939, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 939, + "text": "{\"_id\":\"script\",\"ECMAScript\":{\"javascript.optimization.level\":9,\"javascript.recompile.minimumInterval\":60000},\"Groovy\":{\"#groovy.disabled.global.ast.transformations\":\"\",\"#groovy.errors.tolerance\":10,\"#groovy.output.debug\":false,\"#groovy.output.verbose\":false,\"#groovy.script.base\":\"#any class extends groovy.lang.Script\",\"#groovy.script.extension\":\".groovy\",\"#groovy.target.bytecode\":\"1.8\",\"#groovy.target.directory\":\"&{idm.data.dir}/classes\",\"#groovy.target.indy\":true,\"#groovy.warnings\":\"likely errors #othere values [none,likely,possible,paranoia]\",\"groovy.classpath\":\"&{idm.install.dir}/lib\",\"groovy.recompile\":true,\"groovy.recompile.minimumInterval\":60000,\"groovy.source.encoding\":\"UTF-8\"},\"properties\":{},\"sources\":{\"default\":{\"directory\":\"&{idm.install.dir}/bin/defaults/script\"},\"install\":{\"directory\":\"&{idm.install.dir}\"},\"project\":{\"directory\":\"&{idm.instance.dir}\"},\"project-script\":{\"directory\":\"&{idm.instance.dir}/script\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "939" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.083Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "e743b381506753be0f13b78ef7ba632d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1829, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "1829" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"secrets\",\"stores\":[{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}\",\"mappings\":[{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.default\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.config.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.password.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"],\"secretId\":\"idm.jwt.session.module.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}\"],\"secretId\":\"idm.jwt.session.module.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"selfservice\"],\"secretId\":\"idm.selfservice.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}\"],\"secretId\":\"idm.selfservice.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.assignment.attribute.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]}],\"providerName\":\"&{openidm.keystore.provider|SunJCE}\",\"storePassword\":\"&{openidm.keystore.password|changeit}\",\"storetype\":\"&{openidm.keystore.type|JCEKS}\"},\"name\":\"mainKeyStore\"},{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.truststore.location|&{idm.install.dir}/security/truststore}\",\"mappings\":[],\"providerName\":\"&{openidm.truststore.provider|SUN}\",\"storePassword\":\"&{openidm.truststore.password|changeit}\",\"storetype\":\"&{openidm.truststore.type|JKS}\"},\"name\":\"mainTrustStore\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/secrets" + }, + "response": { + "bodySize": 1829, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1829, + "text": "{\"_id\":\"secrets\",\"stores\":[{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}\",\"mappings\":[{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.default\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.config.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.password.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"],\"secretId\":\"idm.jwt.session.module.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}\"],\"secretId\":\"idm.jwt.session.module.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"selfservice\"],\"secretId\":\"idm.selfservice.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}\"],\"secretId\":\"idm.selfservice.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.assignment.attribute.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]}],\"providerName\":\"&{openidm.keystore.provider|SunJCE}\",\"storePassword\":\"&{openidm.keystore.password|changeit}\",\"storetype\":\"&{openidm.keystore.type|JCEKS}\"},\"name\":\"mainKeyStore\"},{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.truststore.location|&{idm.install.dir}/security/truststore}\",\"mappings\":[],\"providerName\":\"&{openidm.truststore.provider|SUN}\",\"storePassword\":\"&{openidm.truststore.password|changeit}\",\"storetype\":\"&{openidm.truststore.type|JKS}\"},\"name\":\"mainTrustStore\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1829" + } + ], + "headersSize": 2252, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.098Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "075665a037e3c1ea3d5c043d72cebd9b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 290, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "290" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 455, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"selfservice.kba\",\"kbaPropertyName\":\"kbaInfo\",\"minimumAnswersToDefine\":2,\"minimumAnswersToVerify\":1,\"questions\":{\"1\":{\"en\":\"What's your favorite color?\",\"en_GB\":\"What is your favourite colour?\",\"fr\":\"Quelle est votre couleur préférée?\"},\"2\":{\"en\":\"Who was your first employer?\"}}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.kba" + }, + "response": { + "bodySize": 290, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 290, + "text": "{\"_id\":\"selfservice.kba\",\"kbaPropertyName\":\"kbaInfo\",\"minimumAnswersToDefine\":2,\"minimumAnswersToVerify\":1,\"questions\":{\"1\":{\"en\":\"What's your favorite color?\",\"en_GB\":\"What is your favourite colour?\",\"fr\":\"Quelle est votre couleur préférée?\"},\"2\":{\"en\":\"Who was your first employer?\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "290" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.112Z", + "time": 15, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 15 + } + }, + { + "_id": "886ef232f84c623d0f2daf1d8668ce6e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 713, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "713" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 463, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"selfservice.propertymap\",\"properties\":[{\"source\":\"givenName\",\"target\":\"givenName\"},{\"source\":\"familyName\",\"target\":\"sn\"},{\"source\":\"email\",\"target\":\"mail\"},{\"condition\":\"/object/postalAddress pr\",\"source\":\"postalAddress\",\"target\":\"postalAddress\"},{\"condition\":\"/object/addressLocality pr\",\"source\":\"addressLocality\",\"target\":\"city\"},{\"condition\":\"/object/addressRegion pr\",\"source\":\"addressRegion\",\"target\":\"stateProvince\"},{\"condition\":\"/object/postalCode pr\",\"source\":\"postalCode\",\"target\":\"postalCode\"},{\"condition\":\"/object/country pr\",\"source\":\"country\",\"target\":\"country\"},{\"condition\":\"/object/phone pr\",\"source\":\"phone\",\"target\":\"telephoneNumber\"},{\"source\":\"username\",\"target\":\"userName\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.propertymap" + }, + "response": { + "bodySize": 713, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 713, + "text": "{\"_id\":\"selfservice.propertymap\",\"properties\":[{\"source\":\"givenName\",\"target\":\"givenName\"},{\"source\":\"familyName\",\"target\":\"sn\"},{\"source\":\"email\",\"target\":\"mail\"},{\"condition\":\"/object/postalAddress pr\",\"source\":\"postalAddress\",\"target\":\"postalAddress\"},{\"condition\":\"/object/addressLocality pr\",\"source\":\"addressLocality\",\"target\":\"city\"},{\"condition\":\"/object/addressRegion pr\",\"source\":\"addressRegion\",\"target\":\"stateProvince\"},{\"condition\":\"/object/postalCode pr\",\"source\":\"postalCode\",\"target\":\"postalCode\"},{\"condition\":\"/object/country pr\",\"source\":\"country\",\"target\":\"country\"},{\"condition\":\"/object/phone pr\",\"source\":\"phone\",\"target\":\"telephoneNumber\"},{\"source\":\"username\",\"target\":\"userName\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "713" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.131Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "6e5e53c9330c498d5a944251e0e8323f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 730, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "730" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 457, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"selfservice.terms\",\"active\":\"0.0\",\"uiConfig\":{\"buttonText\":\"Accept\",\"displayName\":\"We've updated our terms\",\"purpose\":\"You must accept the updated terms in order to proceed.\"},\"versions\":[{\"createDate\":\"2019-10-28T04:20:11.320Z\",\"termsTranslations\":{\"en\":\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"},\"version\":\"0.0\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.terms" + }, + "response": { + "bodySize": 730, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 730, + "text": "{\"_id\":\"selfservice.terms\",\"active\":\"0.0\",\"uiConfig\":{\"buttonText\":\"Accept\",\"displayName\":\"We've updated our terms\",\"purpose\":\"You must accept the updated terms in order to proceed.\"},\"versions\":[{\"createDate\":\"2019-10-28T04:20:11.320Z\",\"termsTranslations\":{\"en\":\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"},\"version\":\"0.0\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "730" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.148Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "3f77ccba1a46c8634dcf686cc6848c1a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 402, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "402" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"servletfilter/cors\",\"filterClass\":\"org.eclipse.jetty.ee10.servlets.CrossOriginFilter\",\"initParams\":{\"allowCredentials\":true,\"allowedHeaders\":\"accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with\",\"allowedMethods\":\"GET,POST,PUT,DELETE,PATCH\",\"allowedOrigins\":\"https://localhost:&{openidm.port.https}\",\"chainPreflight\":false},\"urlPatterns\":[\"/*\"]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/cors" + }, + "response": { + "bodySize": 402, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 402, + "text": "{\"_id\":\"servletfilter/cors\",\"filterClass\":\"org.eclipse.jetty.ee10.servlets.CrossOriginFilter\",\"initParams\":{\"allowCredentials\":true,\"allowedHeaders\":\"accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with\",\"allowedMethods\":\"GET,POST,PUT,DELETE,PATCH\",\"allowedOrigins\":\"https://localhost:&{openidm.port.https}\",\"chainPreflight\":false},\"urlPatterns\":[\"/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "402" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.163Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "11cc10c6d2f5a6faeed47d54f9af0abc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 191, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "191" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 461, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"servletfilter/payload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":5},\"urlPatterns\":[\"&{openidm.servlet.alias}/*\"]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/payload" + }, + "response": { + "bodySize": 191, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 191, + "text": "{\"_id\":\"servletfilter/payload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":5},\"urlPatterns\":[\"&{openidm.servlet.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "191" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.179Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "2cf4a8279922f2f68ba3daaf00d920cc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 198, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "198" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 460, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"servletfilter/upload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":50},\"urlPatterns\":[\"&{openidm.servlet.upload.alias}/*\"]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/upload" + }, + "response": { + "bodySize": 198, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 198, + "text": "{\"_id\":\"servletfilter/upload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":50},\"urlPatterns\":[\"&{openidm.servlet.upload.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "198" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.193Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "ffedaec2f8530b2951b4fe52409794b2", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 588, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "588" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 456, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui/configuration\",\"configuration\":{\"defaultNotificationType\":\"info\",\"forgotUsername\":false,\"lang\":\"en\",\"notificationTypes\":{\"error\":{\"iconPath\":\"images/notifications/error.png\",\"name\":\"common.notification.types.error\"},\"info\":{\"iconPath\":\"images/notifications/info.png\",\"name\":\"common.notification.types.info\"},\"warning\":{\"iconPath\":\"images/notifications/warning.png\",\"name\":\"common.notification.types.warning\"}},\"passwordReset\":false,\"passwordResetLink\":\"\",\"roles\":{\"internal/role/openidm-admin\":\"ui-admin\",\"internal/role/openidm-authorized\":\"ui-user\"},\"selfRegistration\":false}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/configuration" + }, + "response": { + "bodySize": 588, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 588, + "text": "{\"_id\":\"ui/configuration\",\"configuration\":{\"defaultNotificationType\":\"info\",\"forgotUsername\":false,\"lang\":\"en\",\"notificationTypes\":{\"error\":{\"iconPath\":\"images/notifications/error.png\",\"name\":\"common.notification.types.error\"},\"info\":{\"iconPath\":\"images/notifications/info.png\",\"name\":\"common.notification.types.info\"},\"warning\":{\"iconPath\":\"images/notifications/warning.png\",\"name\":\"common.notification.types.warning\"}},\"passwordReset\":false,\"passwordResetLink\":\"\",\"roles\":{\"internal/role/openidm-admin\":\"ui-admin\",\"internal/role/openidm-authorized\":\"ui-user\"},\"selfRegistration\":false}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "588" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.207Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "7ca95a1b42482427cd49ea83db0aecb0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2241, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2241" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui/dashboard\",\"adminDashboards\":[{\"isDefault\":true,\"name\":\"Quick Start\",\"widgets\":[{\"cards\":[{\"href\":\"#connectors/add/\",\"icon\":\"fa-database\",\"name\":\"Add Connector\"},{\"href\":\"#mapping/add/\",\"icon\":\"fa-map-marker\",\"name\":\"Create Mapping\"},{\"href\":\"#resource/managed/role/list/\",\"icon\":\"fa-check-square-o\",\"name\":\"Manage Roles\"},{\"href\":\"#managed/add/\",\"icon\":\"fa-tablet\",\"name\":\"Add Device\"},{\"href\":\"#selfservice/userregistration/\",\"icon\":\"fa-gear\",\"name\":\"Configure Registration\"},{\"href\":\"#selfservice/passwordreset/\",\"icon\":\"fa-gear\",\"name\":\"Configure Password Reset\"},{\"href\":\"#resource/managed/user/list/\",\"icon\":\"fa-user\",\"name\":\"Manage Users\"},{\"href\":\"#settings/\",\"icon\":\"fa-user\",\"name\":\"Configure System Preferences\"}],\"size\":\"large\",\"type\":\"quickStart\"}]},{\"isDefault\":false,\"name\":\"System Monitoring\",\"widgets\":[{\"legendRange\":{\"month\":[500,2500,5000],\"week\":[10,30,90,270,810],\"year\":[10000,40000,100000,250000]},\"maxRange\":\"#24423c\",\"minRange\":\"#b0d4cd\",\"size\":\"large\",\"type\":\"audit\"},{\"size\":\"large\",\"type\":\"clusterStatus\"},{\"size\":\"large\",\"type\":\"systemHealthFull\"},{\"barchart\":\"false\",\"size\":\"large\",\"type\":\"lastRecon\"}]},{\"isDefault\":false,\"name\":\"Resource Report\",\"widgets\":[{\"selected\":\"activeUsers\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"rolesEnabled\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"activeConnectors\",\"size\":\"x-small\",\"type\":\"counter\"},{\"size\":\"large\",\"type\":\"resourceList\"}]},{\"isDefault\":false,\"name\":\"Business Report\",\"widgets\":[{\"graphType\":\"fa-pie-chart\",\"providers\":[\"Username/Password\"],\"size\":\"x-small\",\"type\":\"signIns\",\"widgetTitle\":\"Sign-Ins\"},{\"graphType\":\"fa-bar-chart\",\"size\":\"x-small\",\"type\":\"passwordResets\",\"widgetTitle\":\"Password Resets\"},{\"graphType\":\"fa-line-chart\",\"providers\":[\"Username/Password\"],\"size\":\"x-small\",\"type\":\"newRegistrations\",\"widgetTitle\":\"New Registrations\"},{\"size\":\"x-small\",\"timezone\":{\"hours\":\"07\",\"minutes\":\"00\",\"negative\":true},\"type\":\"socialLogin\"},{\"selected\":\"socialEnabled\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"manualRegistrations\",\"size\":\"x-small\",\"type\":\"counter\"}]},{\"isDefault\":false,\"name\":\"seantestdashboard\",\"widgets\":[{\"size\":\"large\",\"type\":\"resourceList\"}]}],\"dashboard\":{\"widgets\":[{\"size\":\"large\",\"type\":\"Welcome\"}]}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/dashboard" + }, + "response": { + "bodySize": 2241, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 2241, + "text": "{\"_id\":\"ui/dashboard\",\"adminDashboards\":[{\"isDefault\":true,\"name\":\"Quick Start\",\"widgets\":[{\"cards\":[{\"href\":\"#connectors/add/\",\"icon\":\"fa-database\",\"name\":\"Add Connector\"},{\"href\":\"#mapping/add/\",\"icon\":\"fa-map-marker\",\"name\":\"Create Mapping\"},{\"href\":\"#resource/managed/role/list/\",\"icon\":\"fa-check-square-o\",\"name\":\"Manage Roles\"},{\"href\":\"#managed/add/\",\"icon\":\"fa-tablet\",\"name\":\"Add Device\"},{\"href\":\"#selfservice/userregistration/\",\"icon\":\"fa-gear\",\"name\":\"Configure Registration\"},{\"href\":\"#selfservice/passwordreset/\",\"icon\":\"fa-gear\",\"name\":\"Configure Password Reset\"},{\"href\":\"#resource/managed/user/list/\",\"icon\":\"fa-user\",\"name\":\"Manage Users\"},{\"href\":\"#settings/\",\"icon\":\"fa-user\",\"name\":\"Configure System Preferences\"}],\"size\":\"large\",\"type\":\"quickStart\"}]},{\"isDefault\":false,\"name\":\"System Monitoring\",\"widgets\":[{\"legendRange\":{\"month\":[500,2500,5000],\"week\":[10,30,90,270,810],\"year\":[10000,40000,100000,250000]},\"maxRange\":\"#24423c\",\"minRange\":\"#b0d4cd\",\"size\":\"large\",\"type\":\"audit\"},{\"size\":\"large\",\"type\":\"clusterStatus\"},{\"size\":\"large\",\"type\":\"systemHealthFull\"},{\"barchart\":\"false\",\"size\":\"large\",\"type\":\"lastRecon\"}]},{\"isDefault\":false,\"name\":\"Resource Report\",\"widgets\":[{\"selected\":\"activeUsers\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"rolesEnabled\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"activeConnectors\",\"size\":\"x-small\",\"type\":\"counter\"},{\"size\":\"large\",\"type\":\"resourceList\"}]},{\"isDefault\":false,\"name\":\"Business Report\",\"widgets\":[{\"graphType\":\"fa-pie-chart\",\"providers\":[\"Username/Password\"],\"size\":\"x-small\",\"type\":\"signIns\",\"widgetTitle\":\"Sign-Ins\"},{\"graphType\":\"fa-bar-chart\",\"size\":\"x-small\",\"type\":\"passwordResets\",\"widgetTitle\":\"Password Resets\"},{\"graphType\":\"fa-line-chart\",\"providers\":[\"Username/Password\"],\"size\":\"x-small\",\"type\":\"newRegistrations\",\"widgetTitle\":\"New Registrations\"},{\"size\":\"x-small\",\"timezone\":{\"hours\":\"07\",\"minutes\":\"00\",\"negative\":true},\"type\":\"socialLogin\"},{\"selected\":\"socialEnabled\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"manualRegistrations\",\"size\":\"x-small\",\"type\":\"counter\"}]},{\"isDefault\":false,\"name\":\"seantestdashboard\",\"widgets\":[{\"size\":\"large\",\"type\":\"resourceList\"}]}],\"dashboard\":{\"widgets\":[{\"size\":\"large\",\"type\":\"Welcome\"}]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.224Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "df3eb8ec5f2f8390ee9bda4e21313f01", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 891, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "891" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 450, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui/profile\",\"tabs\":[{\"name\":\"personalInfoTab\",\"view\":\"org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab\"},{\"name\":\"signInAndSecurity\",\"view\":\"org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab\"},{\"name\":\"preference\",\"view\":\"org/forgerock/openidm/ui/user/profile/PreferencesTab\"},{\"name\":\"trustedDevice\",\"view\":\"org/forgerock/openidm/ui/user/profile/TrustedDevicesTab\"},{\"name\":\"oauthApplication\",\"view\":\"org/forgerock/openidm/ui/user/profile/OauthApplicationsTab\"},{\"name\":\"privacyAndConsent\",\"view\":\"org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab\"},{\"name\":\"sharing\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/SharingTab\"},{\"name\":\"auditHistory\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/ActivityTab\"},{\"name\":\"accountControls\",\"view\":\"org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/profile" + }, + "response": { + "bodySize": 891, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 891, + "text": "{\"_id\":\"ui/profile\",\"tabs\":[{\"name\":\"personalInfoTab\",\"view\":\"org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab\"},{\"name\":\"signInAndSecurity\",\"view\":\"org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab\"},{\"name\":\"preference\",\"view\":\"org/forgerock/openidm/ui/user/profile/PreferencesTab\"},{\"name\":\"trustedDevice\",\"view\":\"org/forgerock/openidm/ui/user/profile/TrustedDevicesTab\"},{\"name\":\"oauthApplication\",\"view\":\"org/forgerock/openidm/ui/user/profile/OauthApplicationsTab\"},{\"name\":\"privacyAndConsent\",\"view\":\"org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab\"},{\"name\":\"sharing\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/SharingTab\"},{\"name\":\"auditHistory\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/ActivityTab\"},{\"name\":\"accountControls\",\"view\":\"org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "891" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.236Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "927933d6d1d6362ba93eab1026e492e6", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 421, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "421" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 454, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui/themeconfig\",\"icon\":\"favicon.ico\",\"path\":\"\",\"settings\":{\"footer\":{\"mailto\":\"info@pingidentity.com\"},\"loginLogo\":{\"alt\":\"Ping Identity\",\"height\":\"120px\",\"src\":\"images/login-logo-dark.png\",\"title\":\"Ping Identity\",\"width\":\"120px\"},\"logo\":{\"alt\":\"Ping Identity\",\"src\":\"images/logo-horizontal-white.png\",\"title\":\"Ping Identity\"}},\"stylesheets\":[\"css/bootstrap-3.4.1-custom.css\",\"css/structure.css\",\"css/theme.css\"]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/themeconfig" + }, + "response": { + "bodySize": 421, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 421, + "text": "{\"_id\":\"ui/themeconfig\",\"icon\":\"favicon.ico\",\"path\":\"\",\"settings\":{\"footer\":{\"mailto\":\"info@pingidentity.com\"},\"loginLogo\":{\"alt\":\"Ping Identity\",\"height\":\"120px\",\"src\":\"images/login-logo-dark.png\",\"title\":\"Ping Identity\",\"width\":\"120px\"},\"logo\":{\"alt\":\"Ping Identity\",\"src\":\"images/logo-horizontal-white.png\",\"title\":\"Ping Identity\"}},\"stylesheets\":[\"css/bootstrap-3.4.1-custom.css\",\"css/structure.css\",\"css/theme.css\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "421" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.253Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "f9398fa965ae2c914addd884d1c11499", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 244, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "244" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 456, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui.context/admin\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/admin/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/admin/extension\",\"responseHeaders\":{\"X-Frame-Options\":\"SAMEORIGIN\"},\"urlContextRoot\":\"/admin\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/admin" + }, + "response": { + "bodySize": 244, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 244, + "text": "{\"_id\":\"ui.context/admin\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/admin/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/admin/extension\",\"responseHeaders\":{\"X-Frame-Options\":\"SAMEORIGIN\"},\"urlContextRoot\":\"/admin\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "244" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.269Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "2531d9e46a98d59bb2310cfaf6e0c434", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 205, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "205" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 454, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui.context/api\",\"authEnabled\":true,\"cacheEnabled\":false,\"defaultDir\":\"&{idm.install.dir}/ui/api/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/api/extension\",\"urlContextRoot\":\"/api\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/api" + }, + "response": { + "bodySize": 205, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 205, + "text": "{\"_id\":\"ui.context/api\",\"authEnabled\":true,\"cacheEnabled\":false,\"defaultDir\":\"&{idm.install.dir}/ui/api/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/api/extension\",\"urlContextRoot\":\"/api\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "205" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.285Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "8e4d55d902fda9dcf6cb28a38f8b05c3", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 174, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "174" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui.context/enduser\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/enduser\",\"enabled\":true,\"responseHeaders\":{\"X-Frame-Options\":\"DENY\"},\"urlContextRoot\":\"/\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/enduser" + }, + "response": { + "bodySize": 174, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 174, + "text": "{\"_id\":\"ui.context/enduser\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/enduser\",\"enabled\":true,\"responseHeaders\":{\"X-Frame-Options\":\"DENY\"},\"urlContextRoot\":\"/\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "174" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.299Z", + "time": 21, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 21 + } + }, + { + "_id": "856e10b34afe79e55e6c6744c87c36e4", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 199, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "199" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 456, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui.context/oauth\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/oauth/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/oauth/extension\",\"urlContextRoot\":\"/oauthReturn\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/oauth" + }, + "response": { + "bodySize": 199, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 199, + "text": "{\"_id\":\"ui.context/oauth\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/oauth/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/oauth/extension\",\"urlContextRoot\":\"/oauthReturn\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "199" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.325Z", + "time": 12, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 12 + } + }, + { + "_id": "aae156524eceaac7659d29ccabfa6b7e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 169, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "169" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"webserver\",\"gzip\":{\"enabled\":true,\"includedMethods\":[\"GET\"]},\"maxThreads\":{\"$int\":\"&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver" + }, + "response": { + "bodySize": 169, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 169, + "text": "{\"_id\":\"webserver\",\"gzip\":{\"enabled\":true,\"includedMethods\":[\"GET\"]},\"maxThreads\":{\"$int\":\"&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "169" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.342Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "3b9fc03ddabd674233d649150dbf0931", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 128, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "128" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 463, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"webserver.listener/http\",\"enabled\":{\"$bool\":\"&{openidm.http.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.http|8080}\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/http" + }, + "response": { + "bodySize": 128, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 128, + "text": "{\"_id\":\"webserver.listener/http\",\"enabled\":{\"$bool\":\"&{openidm.http.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.http|8080}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "128" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.361Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "0ef4585bbfb32a7b30964a6d50210a3d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 217, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "217" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 464, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"webserver.listener/https\",\"enabled\":{\"$bool\":\"&{openidm.https.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.https|8443}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/https" + }, + "response": { + "bodySize": 217, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 217, + "text": "{\"_id\":\"webserver.listener/https\",\"enabled\":{\"$bool\":\"&{openidm.https.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.https|8443}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "217" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.373Z", + "time": 16, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 16 + } + }, + { + "_id": "50bbd6ee40df0dd745b9fec4c55bb37c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 250, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c007b64c-996d-454a-81c7-4a6f8c2b17b5" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "250" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 469, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"webserver.listener/mutualAuth\",\"enabled\":{\"$bool\":\"&{openidm.mutualauth.enabled|true}\"},\"mutualAuth\":true,\"port\":{\"$int\":\"&{openidm.port.mutualauth|8444}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/mutualAuth" + }, + "response": { + "bodySize": 250, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 250, + "text": "{\"_id\":\"webserver.listener/mutualAuth\",\"enabled\":{\"$bool\":\"&{openidm.mutualauth.enabled|true}\"},\"mutualAuth\":true,\"port\":{\"$int\":\"&{openidm.port.mutualauth|8444}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:18 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "250" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:18.396Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/idm_2060434423/import_288002260/0_af_m_950605143/openidm_3290118515/recording.har b/test/e2e/mocks/idm_2060434423/import_288002260/0_af_m_950605143/openidm_3290118515/recording.har new file mode 100644 index 000000000..ee40c8048 --- /dev/null +++ b/test/e2e/mocks/idm_2060434423/import_288002260/0_af_m_950605143/openidm_3290118515/recording.har @@ -0,0 +1,8789 @@ +{ + "log": { + "_recordingName": "idm/import/0_af_m/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "de3566e649dc89e93a6365b0fdaecd4e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 393, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/serverinfo/*" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:35:01.177Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "3f3b03432a833cfcbe27438276bb566b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "accept-api-version", + "value": "resource=2.0, protocol=1.0" + }, + { + "name": "x-openam-username", + "value": "openidm-admin" + }, + { + "name": "x-openam-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 507, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/realms/root/authenticate" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:35:01.195Z", + "time": 2, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 2 + } + }, + { + "_id": "ea1a070c27903f4e71c8acb5d274be1e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 6159, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "6159" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"access\",\"configs\":[{\"actions\":\"\",\"methods\":\"read\",\"pattern\":\"health\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"info/*\",\"roles\":\"*\"},{\"actions\":\"login,logout\",\"methods\":\"read,action\",\"pattern\":\"authentication\",\"roles\":\"*\"},{\"actions\":\"validate\",\"methods\":\"action\",\"pattern\":\"util/validateQueryFilter\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/themeconfig\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/theme-*\",\"roles\":\"*\"},{\"actions\":\"*\",\"customAuthz\":\"checkIfAnyFeatureEnabled(['registration', 'passwordReset'])\",\"methods\":\"read\",\"pattern\":\"config/selfservice/kbaConfig\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/dashboard\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"query\",\"pattern\":\"info/features\",\"roles\":\"*\"},{\"actions\":\"listPrivileges\",\"methods\":\"action\",\"pattern\":\"privilege\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"privilege/*\",\"roles\":\"*\"},{\"actions\":\"submitRequirements\",\"methods\":\"read,action\",\"pattern\":\"selfservice/termsAndConditions\",\"roles\":\"*\"},{\"actions\":\"submitRequirements\",\"methods\":\"read,action\",\"pattern\":\"selfservice/kbaUpdate\",\"roles\":\"*\"},{\"actions\":\"\",\"customAuthz\":\"isMyProfile()\",\"methods\":\"read,query\",\"pattern\":\"profile/*\",\"roles\":\"*\"},{\"actions\":\"*\",\"customAuthz\":\"checkIfAnyFeatureEnabled('kba')\",\"methods\":\"read\",\"pattern\":\"selfservice/kba\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"schema/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"action,query\",\"pattern\":\"consent\",\"roles\":\"internal/role/openidm-authorized\"},{\"customAuthz\":\"checkIfApiRequest()\",\"methods\":\"read\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"excludePatterns\":\"repo,repo/*\",\"methods\":\"*\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"\",\"methods\":\"create,read,update,delete,patch,query\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"methods\":\"script\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"test,testConfig,createconfiguration,liveSync,authenticate\",\"methods\":\"action\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"customAuthz\":\"disallowCommandAction()\",\"methods\":\"*\",\"pattern\":\"repo\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"customAuthz\":\"disallowCommandAction()\",\"methods\":\"*\",\"pattern\":\"repo/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"command\",\"customAuthz\":\"request.additionalParameters.commandId === 'delete-mapping-links'\",\"methods\":\"action\",\"pattern\":\"repo/link\",\"roles\":\"internal/role/openidm-admin\"},{\"methods\":\"create,read,query,patch\",\"pattern\":\"managed/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read,query\",\"pattern\":\"internal/role/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"create,read,action,update\",\"pattern\":\"profile/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"read,action\",\"pattern\":\"policy/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"schema/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"action,query\",\"pattern\":\"consent\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"selfservice/kba\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"selfservice/terms\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"sendTemplate\",\"methods\":\"action\",\"pattern\":\"external/email\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"authenticate\",\"methods\":\"action\",\"pattern\":\"system/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"read,action\",\"pattern\":\"policy/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"reauthenticate\",\"methods\":\"action\",\"pattern\":\"authentication\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"bind,unbind\",\"customAuthz\":\"ownDataOnly()\",\"methods\":\"read,action,delete\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"patch\",\"customAuthz\":\"ownDataOnly() && onlyEditableManagedObjectProperties('user', []) && reauthIfProtectedAttributeChange()\",\"methods\":\"update,patch,action\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"endpoint/getprocessesforuser\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"query\",\"pattern\":\"endpoint/gettasksview\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"complete\",\"customAuthz\":\"isMyTask()\",\"methods\":\"action\",\"pattern\":\"workflow/taskinstance/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"canUpdateTask()\",\"methods\":\"read,update\",\"pattern\":\"workflow/taskinstance/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"isAllowedToStartProcess()\",\"methods\":\"create\",\"pattern\":\"workflow/processinstance\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"read\",\"methods\":\"*\",\"pattern\":\"workflow/processdefinition/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"customAuthz\":\"restrictPatchToFields(['password'])\",\"methods\":\"patch\",\"pattern\":\"managed/user/*\",\"roles\":\"internal/role/openidm-cert\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipProperty('_meta', false)\",\"methods\":\"read\",\"pattern\":\"internal/usermeta/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipProperty('_notifications', true)\",\"methods\":\"read,delete\",\"pattern\":\"internal/notification/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipCollection(['idps','_meta','_notifications'])\",\"methods\":\"read,query\",\"pattern\":\"managed/user/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"deleteNotificationsForTarget\",\"customAuthz\":\"request.additionalParameters.target === (context.security.authorization.component + '/' + context.security.authorization.id)\",\"methods\":\"action\",\"pattern\":\"notification\",\"roles\":\"internal/role/openidm-authorized\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/access" + }, + "response": { + "bodySize": 6159, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 6159, + "text": "{\"_id\":\"access\",\"configs\":[{\"actions\":\"\",\"methods\":\"read\",\"pattern\":\"health\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"info/*\",\"roles\":\"*\"},{\"actions\":\"login,logout\",\"methods\":\"read,action\",\"pattern\":\"authentication\",\"roles\":\"*\"},{\"actions\":\"validate\",\"methods\":\"action\",\"pattern\":\"util/validateQueryFilter\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/themeconfig\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/theme-*\",\"roles\":\"*\"},{\"actions\":\"*\",\"customAuthz\":\"checkIfAnyFeatureEnabled(['registration', 'passwordReset'])\",\"methods\":\"read\",\"pattern\":\"config/selfservice/kbaConfig\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/dashboard\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"query\",\"pattern\":\"info/features\",\"roles\":\"*\"},{\"actions\":\"listPrivileges\",\"methods\":\"action\",\"pattern\":\"privilege\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"privilege/*\",\"roles\":\"*\"},{\"actions\":\"submitRequirements\",\"methods\":\"read,action\",\"pattern\":\"selfservice/termsAndConditions\",\"roles\":\"*\"},{\"actions\":\"submitRequirements\",\"methods\":\"read,action\",\"pattern\":\"selfservice/kbaUpdate\",\"roles\":\"*\"},{\"actions\":\"\",\"customAuthz\":\"isMyProfile()\",\"methods\":\"read,query\",\"pattern\":\"profile/*\",\"roles\":\"*\"},{\"actions\":\"*\",\"customAuthz\":\"checkIfAnyFeatureEnabled('kba')\",\"methods\":\"read\",\"pattern\":\"selfservice/kba\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"schema/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"action,query\",\"pattern\":\"consent\",\"roles\":\"internal/role/openidm-authorized\"},{\"customAuthz\":\"checkIfApiRequest()\",\"methods\":\"read\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"excludePatterns\":\"repo,repo/*\",\"methods\":\"*\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"\",\"methods\":\"create,read,update,delete,patch,query\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"methods\":\"script\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"test,testConfig,createconfiguration,liveSync,authenticate\",\"methods\":\"action\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"customAuthz\":\"disallowCommandAction()\",\"methods\":\"*\",\"pattern\":\"repo\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"customAuthz\":\"disallowCommandAction()\",\"methods\":\"*\",\"pattern\":\"repo/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"command\",\"customAuthz\":\"request.additionalParameters.commandId === 'delete-mapping-links'\",\"methods\":\"action\",\"pattern\":\"repo/link\",\"roles\":\"internal/role/openidm-admin\"},{\"methods\":\"create,read,query,patch\",\"pattern\":\"managed/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read,query\",\"pattern\":\"internal/role/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"create,read,action,update\",\"pattern\":\"profile/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"read,action\",\"pattern\":\"policy/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"schema/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"action,query\",\"pattern\":\"consent\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"selfservice/kba\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"selfservice/terms\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"sendTemplate\",\"methods\":\"action\",\"pattern\":\"external/email\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"authenticate\",\"methods\":\"action\",\"pattern\":\"system/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"read,action\",\"pattern\":\"policy/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"reauthenticate\",\"methods\":\"action\",\"pattern\":\"authentication\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"bind,unbind\",\"customAuthz\":\"ownDataOnly()\",\"methods\":\"read,action,delete\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"patch\",\"customAuthz\":\"ownDataOnly() && onlyEditableManagedObjectProperties('user', []) && reauthIfProtectedAttributeChange()\",\"methods\":\"update,patch,action\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"endpoint/getprocessesforuser\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"query\",\"pattern\":\"endpoint/gettasksview\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"complete\",\"customAuthz\":\"isMyTask()\",\"methods\":\"action\",\"pattern\":\"workflow/taskinstance/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"canUpdateTask()\",\"methods\":\"read,update\",\"pattern\":\"workflow/taskinstance/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"isAllowedToStartProcess()\",\"methods\":\"create\",\"pattern\":\"workflow/processinstance\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"read\",\"methods\":\"*\",\"pattern\":\"workflow/processdefinition/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"customAuthz\":\"restrictPatchToFields(['password'])\",\"methods\":\"patch\",\"pattern\":\"managed/user/*\",\"roles\":\"internal/role/openidm-cert\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipProperty('_meta', false)\",\"methods\":\"read\",\"pattern\":\"internal/usermeta/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipProperty('_notifications', true)\",\"methods\":\"read,delete\",\"pattern\":\"internal/notification/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipCollection(['idps','_meta','_notifications'])\",\"methods\":\"read,query\",\"pattern\":\"managed/user/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"deleteNotificationsForTarget\",\"customAuthz\":\"request.additionalParameters.target === (context.security.authorization.component + '/' + context.security.authorization.id)\",\"methods\":\"action\",\"pattern\":\"notification\",\"roles\":\"internal/role/openidm-authorized\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.207Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "1a0ce7aa1d685f1d6105fc3fb872f60d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 659, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "659" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 450, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"apiVersion\",\"warning\":{\"enabled\":{\"$bool\":\"&{openidm.apiVersion.warning.enabled|false}\"},\"includeScripts\":{\"$bool\":\"&{openidm.apiVersion.warning.includeScripts|false}\"},\"logFilterResourcePaths\":[\"audit\",\"authentication\",\"cluster\",\"config\",\"consent\",\"csv\",\"external/rest\",\"identityProviders\",\"info\",\"internal\",\"internal/role\",\"internal/user\",\"internal/usermeta\",\"managed\",\"managed/assignment\",\"managed/organization\",\"managed/role\",\"managed/user\",\"notification\",\"policy\",\"privilege\",\"profile\",\"recon\",\"recon/assoc\",\"repo\",\"selfservice/kba\",\"selfservice/terms\",\"scheduler/job\",\"scheduler/trigger\",\"schema\",\"sync\",\"sync/mappings\",\"system\",\"taskscanner\"]}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/apiVersion" + }, + "response": { + "bodySize": 659, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 659, + "text": "{\"_id\":\"apiVersion\",\"warning\":{\"enabled\":{\"$bool\":\"&{openidm.apiVersion.warning.enabled|false}\"},\"includeScripts\":{\"$bool\":\"&{openidm.apiVersion.warning.includeScripts|false}\"},\"logFilterResourcePaths\":[\"audit\",\"authentication\",\"cluster\",\"config\",\"consent\",\"csv\",\"external/rest\",\"identityProviders\",\"info\",\"internal\",\"internal/role\",\"internal/user\",\"internal/usermeta\",\"managed\",\"managed/assignment\",\"managed/organization\",\"managed/role\",\"managed/user\",\"notification\",\"policy\",\"privilege\",\"profile\",\"recon\",\"recon/assoc\",\"repo\",\"selfservice/kba\",\"selfservice/terms\",\"scheduler/job\",\"scheduler/trigger\",\"schema\",\"sync\",\"sync/mappings\",\"system\",\"taskscanner\"]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "659" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.226Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "b6f4684a6808d67f5addd3251973f9ad", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2216, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2216" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"audit\",\"auditServiceConfig\":{\"availableAuditEventHandlers\":[\"org.forgerock.audit.handlers.csv.CsvAuditEventHandler\",\"org.forgerock.audit.handlers.jms.JmsAuditEventHandler\",\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RouterAuditEventHandler\",\"org.forgerock.audit.handlers.syslog.SyslogAuditEventHandler\"],\"caseInsensitiveFields\":[\"/access/http/request/headers\",\"/access/http/response/headers\"],\"filterPolicies\":{\"field\":{\"excludeIf\":[],\"includeIf\":[]}},\"handlerForQueries\":\"json\"},\"eventHandlers\":[{\"class\":\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"config\":{\"buffering\":{\"maxSize\":100000,\"writeInterval\":\"100 millis\"},\"enabled\":{\"$bool\":\"&{openidm.audit.handler.json.enabled|true}\"},\"logDirectory\":\"&{idm.data.dir}/audit\",\"name\":\"json\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.stdout.enabled|false}\"},\"name\":\"stdout\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.repo.enabled|false}\"},\"name\":\"repo\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}}],\"eventTopics\":{\"access\":{\"defaultEvents\":true,\"filter\":{\"script\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"}},\"name\":\"access\"},\"activity\":{\"defaultEvents\":true,\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]},\"name\":\"activity\",\"passwordFields\":[\"password\"],\"watchedFields\":[]},\"authentication\":{\"defaultEvents\":true,\"filter\":{\"script\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"}},\"name\":\"authentication\"},\"config\":{\"defaultEvents\":true,\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]},\"name\":\"config\"},\"recon\":{\"defaultEvents\":true,\"name\":\"recon\"},\"sync\":{\"defaultEvents\":true,\"name\":\"sync\"}},\"exceptionFormatter\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/audit" + }, + "response": { + "bodySize": 2216, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 2216, + "text": "{\"_id\":\"audit\",\"auditServiceConfig\":{\"availableAuditEventHandlers\":[\"org.forgerock.audit.handlers.csv.CsvAuditEventHandler\",\"org.forgerock.audit.handlers.jms.JmsAuditEventHandler\",\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RouterAuditEventHandler\",\"org.forgerock.audit.handlers.syslog.SyslogAuditEventHandler\"],\"caseInsensitiveFields\":[\"/access/http/request/headers\",\"/access/http/response/headers\"],\"filterPolicies\":{\"field\":{\"excludeIf\":[],\"includeIf\":[]}},\"handlerForQueries\":\"json\"},\"eventHandlers\":[{\"class\":\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"config\":{\"buffering\":{\"maxSize\":100000,\"writeInterval\":\"100 millis\"},\"enabled\":{\"$bool\":\"&{openidm.audit.handler.json.enabled|true}\"},\"logDirectory\":\"&{idm.data.dir}/audit\",\"name\":\"json\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.stdout.enabled|false}\"},\"name\":\"stdout\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.repo.enabled|false}\"},\"name\":\"repo\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}}],\"eventTopics\":{\"access\":{\"defaultEvents\":true,\"filter\":{\"script\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"}},\"name\":\"access\"},\"activity\":{\"defaultEvents\":true,\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]},\"name\":\"activity\",\"passwordFields\":[\"password\"],\"watchedFields\":[]},\"authentication\":{\"defaultEvents\":true,\"filter\":{\"script\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"}},\"name\":\"authentication\"},\"config\":{\"defaultEvents\":true,\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]},\"name\":\"config\"},\"recon\":{\"defaultEvents\":true,\"name\":\"recon\"},\"sync\":{\"defaultEvents\":true,\"name\":\"sync\"}},\"exceptionFormatter\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.242Z", + "time": 15, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 15 + } + }, + { + "_id": "3322bf0192ae7a058cb5bce4e4518614", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1661, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "1661" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 455, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"authentication\",\"serverAuthContext\":{\"authModules\":[{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"augmentSecurityContext\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-reg\"],\"password\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"fzE1J3P9LZOmuCuecCDnaQ==\",\"iv\":\"nhI8UHymNRChGIyOC+5Sag==\",\"keySize\":32,\"mac\":\"XfF7VE/o5Shv6AqW1Xe3TQ==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"v0NHakffrjBJNL3zjhEOtg==\",\"stableId\":\"openidm-sym-default\"}}},\"queryOnResource\":\"internal/user\",\"username\":\"anonymous\"}},{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"defaultUserRoles\":[\"internal/role/openidm-authorized\",\"internal/role/openidm-admin\"],\"password\":\"&{openidm.admin.password}\",\"queryOnResource\":\"internal/user\",\"username\":\"openidm-admin\"}},{\"enabled\":true,\"name\":\"MANAGED_USER\",\"properties\":{\"augmentSecurityContext\":{\"source\":\"var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield);\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-authorized\"],\"propertyMapping\":{\"additionalUserFields\":[\"adminOfOrg\",\"ownerOfOrg\"],\"authenticationId\":\"username\",\"userCredential\":\"password\",\"userRoles\":\"authzRoles\"},\"queryId\":\"credential-query\",\"queryOnResource\":\"managed/user\"}}],\"sessionModule\":{\"name\":\"JWT_SESSION\",\"properties\":{\"enableDynamicRoles\":false,\"isHttpOnly\":true,\"maxTokenLifeMinutes\":120,\"sessionOnly\":true,\"tokenIdleTimeMinutes\":30}}}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/authentication" + }, + "response": { + "bodySize": 1661, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1661, + "text": "{\"_id\":\"authentication\",\"serverAuthContext\":{\"authModules\":[{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"augmentSecurityContext\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-reg\"],\"password\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"fzE1J3P9LZOmuCuecCDnaQ==\",\"iv\":\"nhI8UHymNRChGIyOC+5Sag==\",\"keySize\":32,\"mac\":\"XfF7VE/o5Shv6AqW1Xe3TQ==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"v0NHakffrjBJNL3zjhEOtg==\",\"stableId\":\"openidm-sym-default\"}}},\"queryOnResource\":\"internal/user\",\"username\":\"anonymous\"}},{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"defaultUserRoles\":[\"internal/role/openidm-authorized\",\"internal/role/openidm-admin\"],\"password\":\"&{openidm.admin.password}\",\"queryOnResource\":\"internal/user\",\"username\":\"openidm-admin\"}},{\"enabled\":true,\"name\":\"MANAGED_USER\",\"properties\":{\"augmentSecurityContext\":{\"source\":\"var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield);\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-authorized\"],\"propertyMapping\":{\"additionalUserFields\":[\"adminOfOrg\",\"ownerOfOrg\"],\"authenticationId\":\"username\",\"userCredential\":\"password\",\"userRoles\":\"authzRoles\"},\"queryId\":\"credential-query\",\"queryOnResource\":\"managed/user\"}}],\"sessionModule\":{\"name\":\"JWT_SESSION\",\"properties\":{\"enableDynamicRoles\":false,\"isHttpOnly\":true,\"maxTokenLifeMinutes\":120,\"sessionOnly\":true,\"tokenIdleTimeMinutes\":30}}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1661" + } + ], + "headersSize": 2252, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.264Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "cffcfbec868c6d577abdd6dfb2546c66", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 179, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "179" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"cluster\",\"enabled\":true,\"instanceCheckInInterval\":5000,\"instanceCheckInOffset\":0,\"instanceId\":\"&{openidm.node.id}\",\"instanceRecoveryTimeout\":30000,\"instanceTimeout\":30000}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/cluster" + }, + "response": { + "bodySize": 179, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 179, + "text": "{\"_id\":\"cluster\",\"enabled\":true,\"instanceCheckInInterval\":5000,\"instanceCheckInOffset\":0,\"instanceId\":\"&{openidm.node.id}\",\"instanceRecoveryTimeout\":30000,\"instanceTimeout\":30000}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "179" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.279Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "047f43a49dff3686ec2e9da2c2dd2a16", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 743, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "743" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 471, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/forgottenUsername\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

\",\"fr\":\"{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Account Information - username\",\"fr\":\"Informations sur le compte - nom d'utilisateur\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/forgottenUsername" + }, + "response": { + "bodySize": 743, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 743, + "text": "{\"_id\":\"emailTemplate/forgottenUsername\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

\",\"fr\":\"{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Account Information - username\",\"fr\":\"Informations sur le compte - nom d'utilisateur\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "743" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.294Z", + "time": 19, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 19 + } + }, + { + "_id": "63b37e07e202b68dc9889582625abf16", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 431, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "431" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 466, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/registration\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

This is your registration email.

Email verification link

\",\"fr\":\"

Ceci est votre mail d'inscription.

Lien de vérification email

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Register new account\",\"fr\":\"Créer un nouveau compte\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/registration" + }, + "response": { + "bodySize": 431, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 431, + "text": "{\"_id\":\"emailTemplate/registration\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

This is your registration email.

Email verification link

\",\"fr\":\"

Ceci est votre mail d'inscription.

Lien de vérification email

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Register new account\",\"fr\":\"Créer un nouveau compte\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "431" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.320Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "6f03115777dabeb2ee464972baac6d91", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 455, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "455" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 467, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/resetPassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Click to reset your password

Password reset link

\",\"fr\":\"

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Reset your password\",\"fr\":\"Réinitialisez votre mot de passe\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/resetPassword" + }, + "response": { + "bodySize": 455, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 455, + "text": "{\"_id\":\"emailTemplate/resetPassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Click to reset your password

Password reset link

\",\"fr\":\"

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Reset your password\",\"fr\":\"Réinitialisez votre mot de passe\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "455" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.335Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "45e0b48dbb5854c86c7df3d75efcda80", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 273, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/updatePassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Verify email to update password

Update password link

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Update your password\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/updatePassword" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 273, + "text": "{\"_id\":\"emailTemplate/updatePassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Verify email to update password

Update password link

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Update your password\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "273" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.350Z", + "time": 14, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 14 + } + }, + { + "_id": "fbc9263fd25ddd47ab77bcc419cd03de", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 420, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "420" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 461, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/welcome\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Welcome to OpenIDM. Your username is '{{object.userName}}'.

\",\"fr\":\"

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Your account has been created\",\"fr\":\"Votre compte vient d’être créé !\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/welcome" + }, + "response": { + "bodySize": 420, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 420, + "text": "{\"_id\":\"emailTemplate/welcome\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Welcome to OpenIDM. Your username is '{{object.userName}}'.

\",\"fr\":\"

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Your account has been created\",\"fr\":\"Votre compte vient d’être créé !\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "420" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.369Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "ffb92165ac6b6a54193c1984e5d08a82", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 116, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "116" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 474, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/getavailableuserstoassign\",\"file\":\"workflow/getavailableuserstoassign.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getavailableuserstoassign" + }, + "response": { + "bodySize": 116, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 116, + "text": "{\"_id\":\"endpoint/getavailableuserstoassign\",\"file\":\"workflow/getavailableuserstoassign.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "116" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.384Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "67f7c32d59739e6e62de077c4ac38587", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 104, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "104" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/getprocessesforuser\",\"file\":\"workflow/getprocessesforuser.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getprocessesforuser" + }, + "response": { + "bodySize": 104, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 104, + "text": "{\"_id\":\"endpoint/getprocessesforuser\",\"file\":\"workflow/getprocessesforuser.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "104" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.398Z", + "time": 20, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 20 + } + }, + { + "_id": "a58bd28b08317f836ebe6fc592eea139", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 90, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "90" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 460, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/gettasksview\",\"file\":\"workflow/gettasksview.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/gettasksview" + }, + "response": { + "bodySize": 90, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 90, + "text": "{\"_id\":\"endpoint/gettasksview\",\"file\":\"workflow/gettasksview.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "90" + } + ], + "headersSize": 2250, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.422Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "190fb94af98292c04b2a125fbed0f974", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 121, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "121" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 463, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/mappingDetails\",\"context\":\"endpoint/mappingDetails\",\"file\":\"mappingDetails.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/mappingDetails" + }, + "response": { + "bodySize": 121, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 121, + "text": "{\"_id\":\"endpoint/mappingDetails\",\"context\":\"endpoint/mappingDetails\",\"file\":\"mappingDetails.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "121" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.436Z", + "time": 20, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 20 + } + }, + { + "_id": "7caf7b29cf8511e14fac45895389c849", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 109, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "109" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/oauthproxy\",\"context\":\"endpoint/oauthproxy\",\"file\":\"oauthProxy.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/oauthproxy" + }, + "response": { + "bodySize": 109, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 109, + "text": "{\"_id\":\"endpoint/oauthproxy\",\"context\":\"endpoint/oauthproxy\",\"file\":\"oauthProxy.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "109" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.462Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "765c2ef8259b3e3418e7c3a5a5b10c3e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 126, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "126" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 480, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/removeRepoPathFromRelationships\",\"file\":\"update/removeRepoPathFromRelationships.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/removeRepoPathFromRelationships" + }, + "response": { + "bodySize": 126, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 126, + "text": "{\"_id\":\"endpoint/removeRepoPathFromRelationships\",\"file\":\"update/removeRepoPathFromRelationships.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "126" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.476Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "4bdc8b47251097ee4051909112972e59", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 91, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "91" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 462, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/repairMetadata\",\"file\":\"meta/metadataScanner.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/repairMetadata" + }, + "response": { + "bodySize": 91, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 91, + "text": "{\"_id\":\"endpoint/repairMetadata\",\"file\":\"meta/metadataScanner.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "91" + } + ], + "headersSize": 2250, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.490Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "d2deb2d1663797facc0aec2b49b105d0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 144, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "144" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 489, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/updateInternalUserAndInternalRoleEntries\",\"file\":\"update/updateInternalUserAndInternalRoleEntries.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/updateInternalUserAndInternalRoleEntries" + }, + "response": { + "bodySize": 144, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 144, + "text": "{\"_id\":\"endpoint/updateInternalUserAndInternalRoleEntries\",\"file\":\"update/updateInternalUserAndInternalRoleEntries.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "144" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.505Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "09f96900530f528cc6caad3270bdf518", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 326, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "326" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/validateQueryFilter\",\"context\":\"util/validateQueryFilter\",\"source\":\"try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } };\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/validateQueryFilter" + }, + "response": { + "bodySize": 326, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 326, + "text": "{\"_id\":\"endpoint/validateQueryFilter\",\"context\":\"util/validateQueryFilter\",\"source\":\"try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } };\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "326" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.519Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "1835c2635e9c3818cf24fd460159b6e7", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 86, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "86" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 452, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"external.rest\",\"hostnameVerifier\":\"&{openidm.external.rest.hostnameVerifier}\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/external.rest" + }, + "response": { + "bodySize": 86, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 86, + "text": "{\"_id\":\"external.rest\",\"hostnameVerifier\":\"&{openidm.external.rest.hostnameVerifier}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "86" + } + ], + "headersSize": 2250, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.536Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "c3e432390b418bf9a27e761d92966735", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 353, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "353" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"internal\",\"objects\":[{\"name\":\"role\",\"properties\":{\"authzMembers\":{\"items\":{\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}]}}}},{\"name\":\"notification\",\"properties\":{\"target\":{\"reversePropertyName\":\"_notifications\"}}}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/internal" + }, + "response": { + "bodySize": 353, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 353, + "text": "{\"_id\":\"internal\",\"objects\":[{\"name\":\"role\",\"properties\":{\"authzMembers\":{\"items\":{\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}]}}}},{\"name\":\"notification\",\"properties\":{\"target\":{\"reversePropertyName\":\"_notifications\"}}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "353" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.553Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "80df31f756ec3532329ed08ab69f20f3", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 28289, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "28289" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"managed\",\"objects\":[{\"lastSync\":{\"effectiveAssignmentsProperty\":\"effectiveAssignments\",\"lastSyncProperty\":\"lastSync\"},\"name\":\"user\",\"notifications\":{\"property\":\"_notifications\"},\"postDelete\":{\"source\":\"require('postDelete-idp-cleanup').removeConnectedIdpData(oldObject, resourceName, request);require('postDelete-notification-cleanup').removeConnectedNotificationData(oldObject, resourceName, request);\",\"type\":\"text/javascript\"},\"schema\":{\"$schema\":\"http://json-schema.org/draft-03/schema\",\"icon\":\"fa-user\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User\",\"mat-icon\":\"people\",\"order\":[\"_id\",\"userName\",\"password\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"roles\",\"assignments\",\"manager\",\"authzRoles\",\"reports\",\"effectiveRoles\",\"effectiveAssignments\",\"lastSync\",\"kbaInfo\",\"preferences\",\"consentedMappings\",\"ownerOfOrg\",\"adminOfOrg\",\"memberOfOrg\",\"memberOfOrgIDs\",\"activeDate\",\"inactiveDate\"],\"properties\":{\"_id\":{\"description\":\"User ID\",\"isPersonal\":false,\"policies\":[{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"}],\"searchable\":false,\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":false},\"accountStatus\":{\"default\":\"active\",\"description\":\"Status\",\"isPersonal\":false,\"policies\":[{\"params\":{\"regexp\":\"^(active|inactive)$\"},\"policyId\":\"regexpMatches\"}],\"searchable\":true,\"title\":\"Status\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"activeDate\":{\"description\":\"Active Date\",\"format\":\"datetime\",\"isPersonal\":false,\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":false,\"title\":\"Active Date\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"adminOfOrg\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"admins\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations I Administer\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"assignments\":{\"description\":\"Assignments\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Provisioning Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Assignment\",\"path\":\"managed/assignment\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"title\":\"Assignments Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Assignments\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"authzRoles\":{\"description\":\"Authorization Roles\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Authorization Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Internal Role\",\"path\":\"internal/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"authzMembers\",\"reverseRelationship\":true,\"title\":\"Authorization Roles Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Authorization Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"city\":{\"description\":\"City\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"City\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"consentedMappings\":{\"description\":\"Consented Mappings\",\"isPersonal\":false,\"isVirtual\":false,\"items\":{\"order\":[\"mapping\",\"consentDate\"],\"properties\":{\"consentDate\":{\"description\":\"Consent Date\",\"format\":\"datetime\",\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":true,\"title\":\"Consent Date\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"mapping\":{\"description\":\"Mapping\",\"searchable\":true,\"title\":\"Mapping\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true}},\"required\":[\"mapping\",\"consentDate\"],\"title\":\"Consented Mapping\",\"type\":\"object\"},\"returnByDefault\":false,\"searchable\":false,\"title\":\"Consented Mappings\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"country\":{\"description\":\"Country\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Country\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"description\":{\"description\":\"Description\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"effectiveAssignments\":{\"description\":\"Effective Assignments\",\"isPersonal\":false,\"isVirtual\":true,\"items\":{\"title\":\"Effective Assignments Items\",\"type\":\"object\"},\"queryConfig\":{\"referencedObjectFields\":[\"*\"],\"referencedRelationshipFields\":[[\"roles\",\"assignments\"],[\"assignments\"]]},\"returnByDefault\":true,\"title\":\"Effective Assignments\",\"type\":\"array\",\"usageDescription\":\"\",\"viewable\":false},\"effectiveRoles\":{\"description\":\"Effective Roles\",\"isPersonal\":false,\"isVirtual\":true,\"items\":{\"title\":\"Effective Roles Items\",\"type\":\"object\"},\"queryConfig\":{\"referencedRelationshipFields\":[\"roles\"]},\"returnByDefault\":true,\"title\":\"Effective Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"viewable\":false},\"givenName\":{\"description\":\"First Name\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"First Name\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"inactiveDate\":{\"description\":\"Inactive Date\",\"format\":\"datetime\",\"isPersonal\":false,\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":false,\"title\":\"Inactive Date\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"kbaInfo\":{\"description\":\"KBA Info\",\"isPersonal\":true,\"items\":{\"order\":[\"answer\",\"customQuestion\",\"questionId\"],\"properties\":{\"answer\":{\"description\":\"Answer\",\"type\":\"string\"},\"customQuestion\":{\"description\":\"Custom question\",\"type\":\"string\"},\"questionId\":{\"description\":\"Question ID\",\"type\":\"string\"}},\"required\":[],\"title\":\"KBA Info Items\",\"type\":\"object\"},\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"lastSync\":{\"description\":\"Last Sync timestamp\",\"isPersonal\":false,\"order\":[\"effectiveAssignments\",\"timestamp\"],\"properties\":{\"effectiveAssignments\":{\"description\":\"Effective Assignments\",\"items\":{\"title\":\"Effective Assignments Items\",\"type\":\"object\"},\"title\":\"Effective Assignments\",\"type\":\"array\"},\"timestamp\":{\"description\":\"Timestamp\",\"policies\":[{\"policyId\":\"valid-datetime\"}],\"type\":\"string\"}},\"required\":[],\"scope\":\"private\",\"searchable\":false,\"title\":\"Last Sync timestamp\",\"type\":\"object\",\"usageDescription\":\"\",\"viewable\":false},\"mail\":{\"description\":\"Email Address\",\"isPersonal\":true,\"policies\":[{\"policyId\":\"valid-email-address-format\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Email Address\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"manager\":{\"description\":\"Manager\",\"isPersonal\":false,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Manager _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"reports\",\"reverseRelationship\":true,\"searchable\":false,\"title\":\"Manager\",\"type\":\"relationship\",\"usageDescription\":\"\",\"userEditable\":false,\"validate\":true,\"viewable\":true},\"memberOfOrg\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":false,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations to which I Belong\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"memberOfOrgIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"org identifiers\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\",\"parentIDs\"],\"referencedRelationshipFields\":[\"memberOfOrg\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"MemberOfOrgIDs\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"ownerOfOrg\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"owners\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations I Own\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"password\":{\"description\":\"Password\",\"encryption\":{\"purpose\":\"idm.password.encryption\"},\"isPersonal\":false,\"isProtected\":true,\"policies\":[{\"params\":{\"minLength\":8},\"policyId\":\"minimum-length\"},{\"params\":{\"numCaps\":1},\"policyId\":\"at-least-X-capitals\"},{\"params\":{\"numNums\":1},\"policyId\":\"at-least-X-numbers\"},{\"params\":{\"disallowedFields\":[\"userName\",\"givenName\",\"sn\"]},\"policyId\":\"cannot-contain-others\"}],\"scope\":\"private\",\"searchable\":false,\"title\":\"Password\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"postalAddress\":{\"description\":\"Address 1\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Address 1\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"postalCode\":{\"description\":\"Postal Code\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Postal Code\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"preferences\":{\"description\":\"Preferences\",\"isPersonal\":false,\"order\":[\"updates\",\"marketing\"],\"properties\":{\"marketing\":{\"description\":\"Send me special offers and services\",\"type\":\"boolean\"},\"updates\":{\"description\":\"Send me news and updates\",\"type\":\"boolean\"}},\"required\":[],\"searchable\":false,\"title\":\"Preferences\",\"type\":\"object\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"reports\":{\"description\":\"Direct Reports\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Direct Reports Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"manager\",\"reverseRelationship\":true,\"title\":\"Direct Reports Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Direct Reports\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"roles\":{\"description\":\"Provisioning Roles\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:roles\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Provisioning Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Role\",\"path\":\"managed/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"title\":\"Provisioning Roles Items\",\"type\":\"relationship\",\"validate\":true},\"relationshipGrantTemporalConstraintsEnforced\":true,\"returnByDefault\":false,\"title\":\"Provisioning Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"sn\":{\"description\":\"Last Name\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Last Name\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"stateProvince\":{\"description\":\"State/Province\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"State/Province\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"telephoneNumber\":{\"description\":\"Telephone Number\",\"isPersonal\":true,\"pattern\":\"^\\\\+?([0-9\\\\- \\\\(\\\\)])*$\",\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Telephone Number\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"userName\":{\"description\":\"Username\",\"isPersonal\":true,\"policies\":[{\"policyId\":\"valid-username\"},{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"},{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Username\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true}},\"required\":[\"userName\",\"givenName\",\"sn\",\"mail\"],\"title\":\"User\",\"type\":\"object\",\"viewable\":true}},{\"name\":\"role\",\"onCreate\":{\"globals\":{},\"source\":\"//asdfasdfadsfasdf\",\"type\":\"text/javascript\"},\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"icon\":\"fa-check-square\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role\",\"mat-icon\":\"assignment_ind\",\"order\":[\"_id\",\"name\",\"description\",\"members\",\"assignments\",\"condition\",\"temporalConstraints\"],\"properties\":{\"_id\":{\"description\":\"Role ID\",\"searchable\":false,\"title\":\"Name\",\"type\":\"string\",\"viewable\":false},\"assignments\":{\"description\":\"Managed Assignments\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Managed Assignments Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Assignment\",\"path\":\"managed/assignment\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"roles\",\"reverseRelationship\":true,\"title\":\"Managed Assignments Items\",\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"members\"],\"returnByDefault\":false,\"title\":\"Managed Assignments\",\"type\":\"array\",\"viewable\":true},\"condition\":{\"description\":\"A conditional filter for this role\",\"isConditional\":true,\"searchable\":false,\"title\":\"Condition\",\"type\":\"string\",\"viewable\":false},\"description\":{\"description\":\"The role description, used for display purposes.\",\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"viewable\":true},\"members\":{\"description\":\"Role Members\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Role Members Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"roles\",\"reverseRelationship\":true,\"title\":\"Role Members Items\",\"type\":\"relationship\",\"validate\":true},\"relationshipGrantTemporalConstraintsEnforced\":true,\"returnByDefault\":false,\"title\":\"Role Members\",\"type\":\"array\",\"viewable\":true},\"name\":{\"description\":\"The role name, used for display purposes.\",\"policies\":[{\"policyId\":\"unique\"}],\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"viewable\":true},\"temporalConstraints\":{\"description\":\"An array of temporal constraints for a role\",\"isTemporalConstraint\":true,\"items\":{\"order\":[\"duration\"],\"properties\":{\"duration\":{\"description\":\"Duration\",\"type\":\"string\"}},\"required\":[\"duration\"],\"title\":\"Temporal Constraints Items\",\"type\":\"object\"},\"notifyRelationships\":[\"members\"],\"returnByDefault\":true,\"title\":\"Temporal Constraints\",\"type\":\"array\",\"viewable\":false}},\"required\":[\"name\"],\"title\":\"Role\",\"type\":\"object\"}},{\"attributeEncryption\":{},\"name\":\"assignment\",\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"description\":\"A role assignment\",\"icon\":\"fa-key\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment\",\"mat-icon\":\"vpn_key\",\"order\":[\"_id\",\"name\",\"description\",\"mapping\",\"attributes\",\"linkQualifiers\",\"roles\",\"members\",\"condition\",\"weight\"],\"properties\":{\"_id\":{\"description\":\"The assignment ID\",\"searchable\":false,\"title\":\"Name\",\"type\":\"string\",\"viewable\":false},\"attributes\":{\"description\":\"The attributes operated on by this assignment.\",\"items\":{\"order\":[\"assignmentOperation\",\"unassignmentOperation\",\"name\",\"value\"],\"properties\":{\"assignmentOperation\":{\"description\":\"Assignment operation\",\"type\":\"string\"},\"name\":{\"description\":\"Name\",\"type\":\"string\"},\"unassignmentOperation\":{\"description\":\"Unassignment operation\",\"type\":\"string\"},\"value\":{\"description\":\"Value\",\"type\":\"string\"}},\"required\":[],\"title\":\"Assignment Attributes Items\",\"type\":\"object\"},\"notifyRelationships\":[\"roles\",\"members\"],\"title\":\"Assignment Attributes\",\"type\":\"array\",\"viewable\":true},\"condition\":{\"description\":\"A conditional filter for this assignment\",\"isConditional\":true,\"searchable\":false,\"title\":\"Condition\",\"type\":\"string\",\"viewable\":false},\"description\":{\"description\":\"The assignment description, used for display purposes.\",\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"viewable\":true},\"linkQualifiers\":{\"description\":\"Conditional link qualifiers to restrict this assignment to.\",\"items\":{\"title\":\"Link Qualifiers Items\",\"type\":\"string\"},\"title\":\"Link Qualifiers\",\"type\":\"array\",\"viewable\":true},\"mapping\":{\"description\":\"The name of the mapping this assignment applies to\",\"policies\":[{\"policyId\":\"mapping-exists\"}],\"searchable\":true,\"title\":\"Mapping\",\"type\":\"string\",\"viewable\":true},\"members\":{\"description\":\"Assignment Members\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Assignment Members Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"assignments\",\"reverseRelationship\":true,\"title\":\"Assignment Members Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Assignment Members\",\"type\":\"array\",\"viewable\":true},\"name\":{\"description\":\"The assignment name, used for display purposes.\",\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"viewable\":true},\"roles\":{\"description\":\"Managed Roles\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Managed Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Role\",\"notify\":true,\"path\":\"managed/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"assignments\",\"reverseRelationship\":true,\"title\":\"Managed Roles Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Managed Roles\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"weight\":{\"description\":\"The weight of the assignment.\",\"notifyRelationships\":[\"roles\",\"members\"],\"searchable\":false,\"title\":\"Weight\",\"type\":[\"number\",\"null\"],\"viewable\":true}},\"required\":[\"name\",\"description\",\"mapping\"],\"title\":\"Assignment\",\"type\":\"object\"}},{\"name\":\"organization\",\"onCreate\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"onRead\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"description\":\"An organization or tenant, whose resources are managed by organizational admins.\",\"icon\":\"fa-building\",\"mat-icon\":\"domain\",\"order\":[\"name\",\"description\",\"owners\",\"admins\",\"members\",\"parent\",\"children\",\"adminIDs\",\"ownerIDs\",\"parentAdminIDs\",\"parentOwnerIDs\",\"parentIDs\"],\"properties\":{\"adminIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"admin ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\"],\"referencedRelationshipFields\":[\"admins\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"Admin user ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"admins\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":false,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"adminOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"children\"],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Administrators\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"children\":{\"description\":\"Child Organizations\",\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\",\"description\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"parent\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Child Organizations\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"description\":{\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"members\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"memberOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"searchable\":false,\"title\":\"Members\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"name\":{\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"ownerIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"owner ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\"],\"referencedRelationshipFields\":[\"owners\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"Owner user ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"owners\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":false,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"ownerOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"children\"],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Owner\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"parent\":{\"description\":\"Parent Organization\",\"notifyRelationships\":[\"children\",\"members\"],\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":false,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\",\"description\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"returnByDefault\":false,\"reversePropertyName\":\"children\",\"reverseRelationship\":true,\"searchable\":false,\"title\":\"Parent Organization\",\"type\":\"relationship\",\"userEditable\":false,\"validate\":true,\"viewable\":true},\"parentAdminIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"user ids of parent admins\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"adminIDs\",\"parentAdminIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"user ids of parent admins\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"parentIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"parent org ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\",\"parentIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"parent org ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"parentOwnerIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"user ids of parent owners\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"ownerIDs\",\"parentOwnerIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"user ids of parent owners\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false}},\"required\":[\"name\"],\"title\":\"Organization\",\"type\":\"object\"}},{\"name\":\"seantestmanagedobject\",\"schema\":{\"description\":null,\"icon\":\"fa-database\",\"mat-icon\":null,\"title\":null}}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/managed" + }, + "response": { + "bodySize": 28289, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 28289, + "text": "{\"_id\":\"managed\",\"objects\":[{\"lastSync\":{\"effectiveAssignmentsProperty\":\"effectiveAssignments\",\"lastSyncProperty\":\"lastSync\"},\"name\":\"user\",\"notifications\":{\"property\":\"_notifications\"},\"postDelete\":{\"source\":\"require('postDelete-idp-cleanup').removeConnectedIdpData(oldObject, resourceName, request);require('postDelete-notification-cleanup').removeConnectedNotificationData(oldObject, resourceName, request);\",\"type\":\"text/javascript\"},\"schema\":{\"$schema\":\"http://json-schema.org/draft-03/schema\",\"icon\":\"fa-user\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User\",\"mat-icon\":\"people\",\"order\":[\"_id\",\"userName\",\"password\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"roles\",\"assignments\",\"manager\",\"authzRoles\",\"reports\",\"effectiveRoles\",\"effectiveAssignments\",\"lastSync\",\"kbaInfo\",\"preferences\",\"consentedMappings\",\"ownerOfOrg\",\"adminOfOrg\",\"memberOfOrg\",\"memberOfOrgIDs\",\"activeDate\",\"inactiveDate\"],\"properties\":{\"_id\":{\"description\":\"User ID\",\"isPersonal\":false,\"policies\":[{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"}],\"searchable\":false,\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":false},\"accountStatus\":{\"default\":\"active\",\"description\":\"Status\",\"isPersonal\":false,\"policies\":[{\"params\":{\"regexp\":\"^(active|inactive)$\"},\"policyId\":\"regexpMatches\"}],\"searchable\":true,\"title\":\"Status\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"activeDate\":{\"description\":\"Active Date\",\"format\":\"datetime\",\"isPersonal\":false,\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":false,\"title\":\"Active Date\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"adminOfOrg\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"admins\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations I Administer\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"assignments\":{\"description\":\"Assignments\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Provisioning Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Assignment\",\"path\":\"managed/assignment\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"title\":\"Assignments Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Assignments\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"authzRoles\":{\"description\":\"Authorization Roles\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Authorization Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Internal Role\",\"path\":\"internal/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"authzMembers\",\"reverseRelationship\":true,\"title\":\"Authorization Roles Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Authorization Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"city\":{\"description\":\"City\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"City\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"consentedMappings\":{\"description\":\"Consented Mappings\",\"isPersonal\":false,\"isVirtual\":false,\"items\":{\"order\":[\"mapping\",\"consentDate\"],\"properties\":{\"consentDate\":{\"description\":\"Consent Date\",\"format\":\"datetime\",\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":true,\"title\":\"Consent Date\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"mapping\":{\"description\":\"Mapping\",\"searchable\":true,\"title\":\"Mapping\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true}},\"required\":[\"mapping\",\"consentDate\"],\"title\":\"Consented Mapping\",\"type\":\"object\"},\"returnByDefault\":false,\"searchable\":false,\"title\":\"Consented Mappings\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"country\":{\"description\":\"Country\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Country\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"description\":{\"description\":\"Description\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"effectiveAssignments\":{\"description\":\"Effective Assignments\",\"isPersonal\":false,\"isVirtual\":true,\"items\":{\"title\":\"Effective Assignments Items\",\"type\":\"object\"},\"queryConfig\":{\"referencedObjectFields\":[\"*\"],\"referencedRelationshipFields\":[[\"roles\",\"assignments\"],[\"assignments\"]]},\"returnByDefault\":true,\"title\":\"Effective Assignments\",\"type\":\"array\",\"usageDescription\":\"\",\"viewable\":false},\"effectiveRoles\":{\"description\":\"Effective Roles\",\"isPersonal\":false,\"isVirtual\":true,\"items\":{\"title\":\"Effective Roles Items\",\"type\":\"object\"},\"queryConfig\":{\"referencedRelationshipFields\":[\"roles\"]},\"returnByDefault\":true,\"title\":\"Effective Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"viewable\":false},\"givenName\":{\"description\":\"First Name\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"First Name\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"inactiveDate\":{\"description\":\"Inactive Date\",\"format\":\"datetime\",\"isPersonal\":false,\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":false,\"title\":\"Inactive Date\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"kbaInfo\":{\"description\":\"KBA Info\",\"isPersonal\":true,\"items\":{\"order\":[\"answer\",\"customQuestion\",\"questionId\"],\"properties\":{\"answer\":{\"description\":\"Answer\",\"type\":\"string\"},\"customQuestion\":{\"description\":\"Custom question\",\"type\":\"string\"},\"questionId\":{\"description\":\"Question ID\",\"type\":\"string\"}},\"required\":[],\"title\":\"KBA Info Items\",\"type\":\"object\"},\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"lastSync\":{\"description\":\"Last Sync timestamp\",\"isPersonal\":false,\"order\":[\"effectiveAssignments\",\"timestamp\"],\"properties\":{\"effectiveAssignments\":{\"description\":\"Effective Assignments\",\"items\":{\"title\":\"Effective Assignments Items\",\"type\":\"object\"},\"title\":\"Effective Assignments\",\"type\":\"array\"},\"timestamp\":{\"description\":\"Timestamp\",\"policies\":[{\"policyId\":\"valid-datetime\"}],\"type\":\"string\"}},\"required\":[],\"scope\":\"private\",\"searchable\":false,\"title\":\"Last Sync timestamp\",\"type\":\"object\",\"usageDescription\":\"\",\"viewable\":false},\"mail\":{\"description\":\"Email Address\",\"isPersonal\":true,\"policies\":[{\"policyId\":\"valid-email-address-format\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Email Address\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"manager\":{\"description\":\"Manager\",\"isPersonal\":false,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Manager _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"reports\",\"reverseRelationship\":true,\"searchable\":false,\"title\":\"Manager\",\"type\":\"relationship\",\"usageDescription\":\"\",\"userEditable\":false,\"validate\":true,\"viewable\":true},\"memberOfOrg\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":false,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations to which I Belong\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"memberOfOrgIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"org identifiers\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\",\"parentIDs\"],\"referencedRelationshipFields\":[\"memberOfOrg\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"MemberOfOrgIDs\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"ownerOfOrg\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"owners\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations I Own\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"password\":{\"description\":\"Password\",\"encryption\":{\"purpose\":\"idm.password.encryption\"},\"isPersonal\":false,\"isProtected\":true,\"policies\":[{\"params\":{\"minLength\":8},\"policyId\":\"minimum-length\"},{\"params\":{\"numCaps\":1},\"policyId\":\"at-least-X-capitals\"},{\"params\":{\"numNums\":1},\"policyId\":\"at-least-X-numbers\"},{\"params\":{\"disallowedFields\":[\"userName\",\"givenName\",\"sn\"]},\"policyId\":\"cannot-contain-others\"}],\"scope\":\"private\",\"searchable\":false,\"title\":\"Password\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"postalAddress\":{\"description\":\"Address 1\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Address 1\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"postalCode\":{\"description\":\"Postal Code\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Postal Code\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"preferences\":{\"description\":\"Preferences\",\"isPersonal\":false,\"order\":[\"updates\",\"marketing\"],\"properties\":{\"marketing\":{\"description\":\"Send me special offers and services\",\"type\":\"boolean\"},\"updates\":{\"description\":\"Send me news and updates\",\"type\":\"boolean\"}},\"required\":[],\"searchable\":false,\"title\":\"Preferences\",\"type\":\"object\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"reports\":{\"description\":\"Direct Reports\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Direct Reports Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"manager\",\"reverseRelationship\":true,\"title\":\"Direct Reports Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Direct Reports\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"roles\":{\"description\":\"Provisioning Roles\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:roles\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Provisioning Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Role\",\"path\":\"managed/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"title\":\"Provisioning Roles Items\",\"type\":\"relationship\",\"validate\":true},\"relationshipGrantTemporalConstraintsEnforced\":true,\"returnByDefault\":false,\"title\":\"Provisioning Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"sn\":{\"description\":\"Last Name\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Last Name\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"stateProvince\":{\"description\":\"State/Province\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"State/Province\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"telephoneNumber\":{\"description\":\"Telephone Number\",\"isPersonal\":true,\"pattern\":\"^\\\\+?([0-9\\\\- \\\\(\\\\)])*$\",\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Telephone Number\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"userName\":{\"description\":\"Username\",\"isPersonal\":true,\"policies\":[{\"policyId\":\"valid-username\"},{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"},{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Username\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true}},\"required\":[\"userName\",\"givenName\",\"sn\",\"mail\"],\"title\":\"User\",\"type\":\"object\",\"viewable\":true}},{\"name\":\"role\",\"onCreate\":{\"globals\":{},\"source\":\"//asdfasdfadsfasdf\",\"type\":\"text/javascript\"},\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"icon\":\"fa-check-square\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role\",\"mat-icon\":\"assignment_ind\",\"order\":[\"_id\",\"name\",\"description\",\"members\",\"assignments\",\"condition\",\"temporalConstraints\"],\"properties\":{\"_id\":{\"description\":\"Role ID\",\"searchable\":false,\"title\":\"Name\",\"type\":\"string\",\"viewable\":false},\"assignments\":{\"description\":\"Managed Assignments\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Managed Assignments Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Assignment\",\"path\":\"managed/assignment\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"roles\",\"reverseRelationship\":true,\"title\":\"Managed Assignments Items\",\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"members\"],\"returnByDefault\":false,\"title\":\"Managed Assignments\",\"type\":\"array\",\"viewable\":true},\"condition\":{\"description\":\"A conditional filter for this role\",\"isConditional\":true,\"searchable\":false,\"title\":\"Condition\",\"type\":\"string\",\"viewable\":false},\"description\":{\"description\":\"The role description, used for display purposes.\",\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"viewable\":true},\"members\":{\"description\":\"Role Members\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Role Members Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"roles\",\"reverseRelationship\":true,\"title\":\"Role Members Items\",\"type\":\"relationship\",\"validate\":true},\"relationshipGrantTemporalConstraintsEnforced\":true,\"returnByDefault\":false,\"title\":\"Role Members\",\"type\":\"array\",\"viewable\":true},\"name\":{\"description\":\"The role name, used for display purposes.\",\"policies\":[{\"policyId\":\"unique\"}],\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"viewable\":true},\"temporalConstraints\":{\"description\":\"An array of temporal constraints for a role\",\"isTemporalConstraint\":true,\"items\":{\"order\":[\"duration\"],\"properties\":{\"duration\":{\"description\":\"Duration\",\"type\":\"string\"}},\"required\":[\"duration\"],\"title\":\"Temporal Constraints Items\",\"type\":\"object\"},\"notifyRelationships\":[\"members\"],\"returnByDefault\":true,\"title\":\"Temporal Constraints\",\"type\":\"array\",\"viewable\":false}},\"required\":[\"name\"],\"title\":\"Role\",\"type\":\"object\"}},{\"attributeEncryption\":{},\"name\":\"assignment\",\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"description\":\"A role assignment\",\"icon\":\"fa-key\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment\",\"mat-icon\":\"vpn_key\",\"order\":[\"_id\",\"name\",\"description\",\"mapping\",\"attributes\",\"linkQualifiers\",\"roles\",\"members\",\"condition\",\"weight\"],\"properties\":{\"_id\":{\"description\":\"The assignment ID\",\"searchable\":false,\"title\":\"Name\",\"type\":\"string\",\"viewable\":false},\"attributes\":{\"description\":\"The attributes operated on by this assignment.\",\"items\":{\"order\":[\"assignmentOperation\",\"unassignmentOperation\",\"name\",\"value\"],\"properties\":{\"assignmentOperation\":{\"description\":\"Assignment operation\",\"type\":\"string\"},\"name\":{\"description\":\"Name\",\"type\":\"string\"},\"unassignmentOperation\":{\"description\":\"Unassignment operation\",\"type\":\"string\"},\"value\":{\"description\":\"Value\",\"type\":\"string\"}},\"required\":[],\"title\":\"Assignment Attributes Items\",\"type\":\"object\"},\"notifyRelationships\":[\"roles\",\"members\"],\"title\":\"Assignment Attributes\",\"type\":\"array\",\"viewable\":true},\"condition\":{\"description\":\"A conditional filter for this assignment\",\"isConditional\":true,\"searchable\":false,\"title\":\"Condition\",\"type\":\"string\",\"viewable\":false},\"description\":{\"description\":\"The assignment description, used for display purposes.\",\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"viewable\":true},\"linkQualifiers\":{\"description\":\"Conditional link qualifiers to restrict this assignment to.\",\"items\":{\"title\":\"Link Qualifiers Items\",\"type\":\"string\"},\"title\":\"Link Qualifiers\",\"type\":\"array\",\"viewable\":true},\"mapping\":{\"description\":\"The name of the mapping this assignment applies to\",\"policies\":[{\"policyId\":\"mapping-exists\"}],\"searchable\":true,\"title\":\"Mapping\",\"type\":\"string\",\"viewable\":true},\"members\":{\"description\":\"Assignment Members\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Assignment Members Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"assignments\",\"reverseRelationship\":true,\"title\":\"Assignment Members Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Assignment Members\",\"type\":\"array\",\"viewable\":true},\"name\":{\"description\":\"The assignment name, used for display purposes.\",\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"viewable\":true},\"roles\":{\"description\":\"Managed Roles\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Managed Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Role\",\"notify\":true,\"path\":\"managed/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"assignments\",\"reverseRelationship\":true,\"title\":\"Managed Roles Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Managed Roles\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"weight\":{\"description\":\"The weight of the assignment.\",\"notifyRelationships\":[\"roles\",\"members\"],\"searchable\":false,\"title\":\"Weight\",\"type\":[\"number\",\"null\"],\"viewable\":true}},\"required\":[\"name\",\"description\",\"mapping\"],\"title\":\"Assignment\",\"type\":\"object\"}},{\"name\":\"organization\",\"onCreate\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"onRead\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"description\":\"An organization or tenant, whose resources are managed by organizational admins.\",\"icon\":\"fa-building\",\"mat-icon\":\"domain\",\"order\":[\"name\",\"description\",\"owners\",\"admins\",\"members\",\"parent\",\"children\",\"adminIDs\",\"ownerIDs\",\"parentAdminIDs\",\"parentOwnerIDs\",\"parentIDs\"],\"properties\":{\"adminIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"admin ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\"],\"referencedRelationshipFields\":[\"admins\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"Admin user ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"admins\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":false,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"adminOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"children\"],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Administrators\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"children\":{\"description\":\"Child Organizations\",\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\",\"description\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"parent\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Child Organizations\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"description\":{\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"members\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"memberOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"searchable\":false,\"title\":\"Members\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"name\":{\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"ownerIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"owner ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\"],\"referencedRelationshipFields\":[\"owners\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"Owner user ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"owners\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":false,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"ownerOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"children\"],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Owner\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"parent\":{\"description\":\"Parent Organization\",\"notifyRelationships\":[\"children\",\"members\"],\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":false,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\",\"description\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"returnByDefault\":false,\"reversePropertyName\":\"children\",\"reverseRelationship\":true,\"searchable\":false,\"title\":\"Parent Organization\",\"type\":\"relationship\",\"userEditable\":false,\"validate\":true,\"viewable\":true},\"parentAdminIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"user ids of parent admins\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"adminIDs\",\"parentAdminIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"user ids of parent admins\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"parentIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"parent org ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\",\"parentIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"parent org ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"parentOwnerIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"user ids of parent owners\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"ownerIDs\",\"parentOwnerIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"user ids of parent owners\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false}},\"required\":[\"name\"],\"title\":\"Organization\",\"type\":\"object\"}},{\"name\":\"seantestmanagedobject\",\"schema\":{\"description\":null,\"icon\":\"fa-database\",\"mat-icon\":null,\"title\":null}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.573Z", + "time": 26, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 26 + } + }, + { + "_id": "c8847f8b05e82ff97b9901f9ef21711f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 33, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "33" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"metrics\",\"enabled\":false}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/metrics" + }, + "response": { + "bodySize": 33, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 33, + "text": "{\"_id\":\"metrics\",\"enabled\":false}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "33" + } + ], + "headersSize": 2250, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.609Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "481b9d20ca5295bab85a70f228c051a0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 415, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "415" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 467, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"notification/passwordUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"password\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.passwordUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your password has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/passwordUpdate" + }, + "response": { + "bodySize": 415, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 415, + "text": "{\"_id\":\"notification/passwordUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"password\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.passwordUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your password has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "415" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.623Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "8761a76489fd8c69e300a2d045819497", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 560, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "560" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 466, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"notification/profileUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"userName\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"preferences\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.profileUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your profile has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/profileUpdate" + }, + "response": { + "bodySize": 560, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 560, + "text": "{\"_id\":\"notification/profileUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"userName\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"preferences\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.profileUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your profile has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "560" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.638Z", + "time": 15, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 15 + } + }, + { + "_id": "409aa8b57ce9b97a4e7b4c72a690bb5b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 180, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "180" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"notificationFactory\",\"enabled\":{\"$bool\":\"&{openidm.notifications|false}\"},\"threadPool\":{\"maxPoolThreads\":2,\"maxQueueSize\":20000,\"steadyPoolThreads\":1,\"threadKeepAlive\":60}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notificationFactory" + }, + "response": { + "bodySize": 180, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 180, + "text": "{\"_id\":\"notificationFactory\",\"enabled\":{\"$bool\":\"&{openidm.notifications|false}\"},\"threadPool\":{\"maxPoolThreads\":2,\"maxQueueSize\":20000,\"steadyPoolThreads\":1,\"threadKeepAlive\":60}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "180" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.658Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "5f5545d40340b0d7eeccc0b7536b62f1", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2368, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2368" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"policy\",\"additionalFiles\":[],\"file\":\"policy.js\",\"resources\":[{\"calculatedProperties\":{\"source\":\"require('selfServicePolicies').getRegistrationProperties()\",\"type\":\"text/javascript\"},\"resource\":\"selfservice/registration\"},{\"calculatedProperties\":{\"source\":\"require('selfServicePolicies').getResetProperties()\",\"type\":\"text/javascript\"},\"resource\":\"selfservice/reset\"},{\"properties\":[{\"name\":\"_id\",\"policies\":[{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"}]},{\"name\":\"password\",\"policies\":[{\"params\":{\"minLength\":8},\"policyId\":\"minimum-length\"}]}],\"resource\":\"internal/user/*\"},{\"properties\":[{\"name\":\"name\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"forbiddenChars\":[\"/*\"]},\"policyId\":\"cannot-contain-characters\"}]},{\"name\":\"temporalConstraints\",\"policies\":[{\"policyId\":\"valid-temporal-constraints\"}]},{\"name\":\"condition\",\"policies\":[{\"policyId\":\"valid-query-filter\"}]},{\"name\":\"privileges\",\"policies\":[{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"params\":{\"properties\":[{\"name\":\"name\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"string\"]},\"policyId\":\"valid-type\"}]},{\"name\":\"path\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"forbiddenChars\":[\"/*\"]},\"policyId\":\"cannot-contain-characters\"},{\"policyId\":\"valid-privilege-path\"}]},{\"name\":\"accessFlags\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-accessFlags-object\"}]},{\"name\":\"actions\",\"policies\":[{\"policyId\":\"required\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"}]},{\"name\":\"permissions\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-permissions\"}]},{\"name\":\"filter\",\"policies\":[{\"params\":{\"types\":[\"string\",\"null\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-query-filter\"}]}]},\"policyId\":\"valid-array-items\"}]}],\"resource\":\"internal/role/*\"},{\"properties\":[{\"name\":\"temporalConstraints\",\"policies\":[{\"policyId\":\"valid-temporal-constraints\"}]},{\"name\":\"condition\",\"policies\":[{\"policyId\":\"valid-query-filter\"}]}],\"resource\":\"managed/role/*\"},{\"properties\":[{\"name\":\"objects\",\"policies\":[{\"policyId\":\"valid-event-scripts\"}]}],\"resource\":\"config/managed\"}],\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/policy" + }, + "response": { + "bodySize": 2368, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 2368, + "text": "{\"_id\":\"policy\",\"additionalFiles\":[],\"file\":\"policy.js\",\"resources\":[{\"calculatedProperties\":{\"source\":\"require('selfServicePolicies').getRegistrationProperties()\",\"type\":\"text/javascript\"},\"resource\":\"selfservice/registration\"},{\"calculatedProperties\":{\"source\":\"require('selfServicePolicies').getResetProperties()\",\"type\":\"text/javascript\"},\"resource\":\"selfservice/reset\"},{\"properties\":[{\"name\":\"_id\",\"policies\":[{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"}]},{\"name\":\"password\",\"policies\":[{\"params\":{\"minLength\":8},\"policyId\":\"minimum-length\"}]}],\"resource\":\"internal/user/*\"},{\"properties\":[{\"name\":\"name\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"forbiddenChars\":[\"/*\"]},\"policyId\":\"cannot-contain-characters\"}]},{\"name\":\"temporalConstraints\",\"policies\":[{\"policyId\":\"valid-temporal-constraints\"}]},{\"name\":\"condition\",\"policies\":[{\"policyId\":\"valid-query-filter\"}]},{\"name\":\"privileges\",\"policies\":[{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"params\":{\"properties\":[{\"name\":\"name\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"string\"]},\"policyId\":\"valid-type\"}]},{\"name\":\"path\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"forbiddenChars\":[\"/*\"]},\"policyId\":\"cannot-contain-characters\"},{\"policyId\":\"valid-privilege-path\"}]},{\"name\":\"accessFlags\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-accessFlags-object\"}]},{\"name\":\"actions\",\"policies\":[{\"policyId\":\"required\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"}]},{\"name\":\"permissions\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-permissions\"}]},{\"name\":\"filter\",\"policies\":[{\"params\":{\"types\":[\"string\",\"null\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-query-filter\"}]}]},\"policyId\":\"valid-array-items\"}]}],\"resource\":\"internal/role/*\"},{\"properties\":[{\"name\":\"temporalConstraints\",\"policies\":[{\"policyId\":\"valid-temporal-constraints\"}]},{\"name\":\"condition\",\"policies\":[{\"policyId\":\"valid-query-filter\"}]}],\"resource\":\"managed/role/*\"},{\"properties\":[{\"name\":\"objects\",\"policies\":[{\"policyId\":\"valid-event-scripts\"}]}],\"resource\":\"config/managed\"}],\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.674Z", + "time": 12, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 12 + } + }, + { + "_id": "85aa7f57d20e37b9a3d0385b7306304b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 493, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "493" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 460, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"privilegeAssignments\",\"privilegeAssignments\":[{\"name\":\"ownerPrivileges\",\"privileges\":[\"owner-view-update-delete-orgs\",\"owner-create-orgs\",\"owner-view-update-delete-admins-and-members\",\"owner-create-admins\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"ownerOfOrg\"},{\"name\":\"adminPrivileges\",\"privileges\":[\"admin-view-update-delete-orgs\",\"admin-create-orgs\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"adminOfOrg\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privilegeAssignments" + }, + "response": { + "bodySize": 493, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 493, + "text": "{\"_id\":\"privilegeAssignments\",\"privilegeAssignments\":[{\"name\":\"ownerPrivileges\",\"privileges\":[\"owner-view-update-delete-orgs\",\"owner-create-orgs\",\"owner-view-update-delete-admins-and-members\",\"owner-create-admins\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"ownerOfOrg\"},{\"name\":\"adminPrivileges\",\"privileges\":[\"admin-view-update-delete-orgs\",\"admin-create-orgs\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"adminOfOrg\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "493" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.692Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "cbec42ff637072f3ce8377be01511efe", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 8228, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "8228" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 451, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"privileges\",\"privileges\":[{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":false},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/ownerIDs eq \\\"{{_id}}\\\" or /parentOwnerIDs eq \\\"{{_id}}\\\"\",\"name\":\"owner-view-update-delete-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"VIEW\",\"UPDATE\",\"DELETE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":false},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/parent pr\",\"name\":\"owner-create-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":false},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrgIDs eq \\\"__org_id_placeholder__\\\"\",\"name\":\"owner-view-update-delete-admins-and-members\",\"path\":\"managed/user\",\"permissions\":[\"VIEW\",\"DELETE\",\"UPDATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":false},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrg/0 pr and /adminOfOrg/0 pr and !(/ownerOfOrg pr)\",\"name\":\"owner-create-admins\",\"path\":\"managed/user\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":true},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/adminIDs eq \\\"{{_id}}\\\" or /parentAdminIDs eq \\\"{{_id}}\\\"\",\"name\":\"admin-view-update-delete-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"VIEW\",\"UPDATE\",\"DELETE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":true},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/parent pr\",\"name\":\"admin-create-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":true},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrgIDs eq \\\"__org_id_placeholder__\\\"\",\"name\":\"admin-view-update-delete-members\",\"path\":\"managed/user\",\"permissions\":[\"VIEW\",\"DELETE\",\"UPDATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":true},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrg/0 pr and !(/adminOfOrg pr) and !(/ownerOfOrg pr)\",\"name\":\"admin-create-members\",\"path\":\"managed/user\",\"permissions\":[\"CREATE\"]}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privileges" + }, + "response": { + "bodySize": 8228, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 8228, + "text": "{\"_id\":\"privileges\",\"privileges\":[{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":false},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/ownerIDs eq \\\"{{_id}}\\\" or /parentOwnerIDs eq \\\"{{_id}}\\\"\",\"name\":\"owner-view-update-delete-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"VIEW\",\"UPDATE\",\"DELETE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":false},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/parent pr\",\"name\":\"owner-create-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":false},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrgIDs eq \\\"__org_id_placeholder__\\\"\",\"name\":\"owner-view-update-delete-admins-and-members\",\"path\":\"managed/user\",\"permissions\":[\"VIEW\",\"DELETE\",\"UPDATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":false},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrg/0 pr and /adminOfOrg/0 pr and !(/ownerOfOrg pr)\",\"name\":\"owner-create-admins\",\"path\":\"managed/user\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":true},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/adminIDs eq \\\"{{_id}}\\\" or /parentAdminIDs eq \\\"{{_id}}\\\"\",\"name\":\"admin-view-update-delete-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"VIEW\",\"UPDATE\",\"DELETE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":true},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/parent pr\",\"name\":\"admin-create-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":true},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrgIDs eq \\\"__org_id_placeholder__\\\"\",\"name\":\"admin-view-update-delete-members\",\"path\":\"managed/user\",\"permissions\":[\"VIEW\",\"DELETE\",\"UPDATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":true},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrg/0 pr and !(/adminOfOrg pr) and !(/ownerOfOrg pr)\",\"name\":\"admin-create-members\",\"path\":\"managed/user\",\"permissions\":[\"CREATE\"]}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.708Z", + "time": 16, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 16 + } + }, + { + "_id": "e113b4988a44660730d55e50b60c01f7", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 246, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "246" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 454, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"process/access\",\"workflowAccess\":[{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-authorized\"}},{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-admin\"}}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/process/access" + }, + "response": { + "bodySize": 246, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 246, + "text": "{\"_id\":\"process/access\",\"workflowAccess\":[{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-authorized\"}},{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-admin\"}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "246" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.731Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "eb131157f5058c14dd4e167f0cdcbc5a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 20198, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "20198" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"repo.ds\",\"commands\":{\"delete-mapping-links\":{\"_queryFilter\":\"/linkType eq \\\"${mapping}\\\"\",\"operation\":\"DELETE\"},\"delete-target-ids-for-recon\":{\"_queryFilter\":\"/reconId eq \\\"${reconId}\\\"\",\"operation\":\"DELETE\"}},\"embedded\":false,\"ldapConnectionFactories\":{\"bind\":{\"connectionPoolSize\":50,\"connectionSecurity\":\"startTLS\",\"heartBeatIntervalSeconds\":60,\"heartBeatTimeoutMilliSeconds\":10000,\"primaryLdapServers\":[{\"hostname\":\"opendj-frodo-dev.classic.com\",\"port\":2389}],\"secondaryLdapServers\":[]},\"root\":{\"authentication\":{\"simple\":{\"bindDn\":\"uid=admin\",\"bindPassword\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"lJ/B6T9e9CDKHCN8TxkD4g==\",\"iv\":\"EdrerzwEUUkHG582cLDw5w==\",\"keySize\":32,\"mac\":\"Aty9fXUtl4pexGlHOc+CBg==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"BITSKlnPeT5klcuEZbngzw==\",\"stableId\":\"openidm-sym-default\"}}}}},\"inheritFrom\":\"bind\"}},\"maxConnectionAttempts\":5,\"resourceMapping\":{\"defaultMapping\":{\"dnTemplate\":\"ou=generic,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"explicitMapping\":{\"clusteredrecontargetids\":{\"dnTemplate\":\"ou=clusteredrecontargetids,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-recon-clusteredTargetIds\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"reconId\":{\"ldapAttribute\":\"fr-idm-recon-id\",\"type\":\"simple\"},\"targetIds\":{\"ldapAttribute\":\"fr-idm-recon-targetIds\",\"type\":\"json\"}}},\"dsconfig/attributeValue\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-attribute-value-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"checkSubstrings\":{\"ldapAttribute\":\"ds-cfg-check-substrings\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"matchAttribute\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-match-attribute\",\"type\":\"simple\"},\"minSubstringLength\":{\"ldapAttribute\":\"ds-cfg-min-substring-length\",\"type\":\"simple\"},\"testReversedPassword\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-test-reversed-password\",\"type\":\"simple\"}}},\"dsconfig/characterSet\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-character-set-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"allowUnclassifiedCharacters\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-allow-unclassified-characters\",\"type\":\"simple\"},\"characterSet\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-character-set\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minCharacterSets\":{\"ldapAttribute\":\"ds-cfg-min-character-sets\",\"type\":\"simple\"}}},\"dsconfig/dictionary\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-dictionary-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"checkSubstrings\":{\"ldapAttribute\":\"ds-cfg-check-substrings\",\"type\":\"simple\"},\"dictionaryFile\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-dictionary-file\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minSubstringLength\":{\"ldapAttribute\":\"ds-cfg-min-substring-length\",\"type\":\"simple\"},\"testReversedPassword\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-test-reversed-password\",\"type\":\"simple\"}}},\"dsconfig/lengthBased\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-length-based-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"maxPasswordLength\":{\"ldapAttribute\":\"ds-cfg-max-password-length\",\"type\":\"simple\"},\"minPasswordLength\":{\"ldapAttribute\":\"ds-cfg-min-password-length\",\"type\":\"simple\"}}},\"dsconfig/passwordPolicies\":{\"dnTemplate\":\"cn=Password Policies,cn=config\",\"objectClasses\":[\"ds-cfg-password-policy\",\"ds-cfg-authentication-policy\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"defaultPasswordStorageScheme\":{\"isMultiValued\":true,\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-default-password-storage-scheme\",\"type\":\"simple\"},\"maxPasswordAge\":{\"ldapAttribute\":\"ds-cfg-max-password-age\",\"type\":\"simple\"},\"passwordAttribute\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-password-attribute\",\"type\":\"simple\"},\"passwordHistoryCount\":{\"ldapAttribute\":\"ds-cfg-password-history-count\",\"type\":\"simple\"},\"validator\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-password-validator\",\"type\":\"simple\"}}},\"dsconfig/repeatedCharacters\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-repeated-characters-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"maxConsecutiveLength\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-max-consecutive-length\",\"type\":\"simple\"}}},\"dsconfig/similarityBased\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-similarity-based-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minPasswordDifference\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-min-password-difference\",\"type\":\"simple\"}}},\"dsconfig/uniqueCharacters\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-unique-characters-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minUniqueCharacters\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-min-unique-characters\",\"type\":\"simple\"}}},\"dsconfig/userDefinedVirtualAttribute\":{\"dnTemplate\":\"cn=Virtual Attributes,cn=config\",\"objectClasses\":[\"ds-cfg-user-defined-virtual-attribute\",\"ds-cfg-virtual-attribute\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"attributeType\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-attribute-type\",\"type\":\"simple\"},\"baseDn\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-base-dn\",\"type\":\"simple\"},\"conflictBehavior\":{\"ldapAttribute\":\"ds-cfg-conflict-behavior\",\"type\":\"simple\"},\"enabled\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"filter\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-filter\",\"type\":\"simple\"},\"groupDn\":{\"ldapAttribute\":\"ds-cfg-group-dn\",\"type\":\"simple\"},\"javaClass\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"scope\":{\"ldapAttribute\":\"ds-cfg-scope\",\"type\":\"simple\"},\"value\":{\"isMultiValued\":true,\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-value\",\"type\":\"simple\"}}},\"internal/role\":{\"dnTemplate\":\"ou=roles,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"fr-idm-internal-role\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"authzMembers\":{\"isMultiValued\":true,\"propertyName\":\"authzRoles\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"condition\":{\"ldapAttribute\":\"fr-idm-condition\",\"type\":\"simple\"},\"description\":{\"ldapAttribute\":\"description\",\"type\":\"simple\"},\"name\":{\"ldapAttribute\":\"fr-idm-name\",\"type\":\"simple\"},\"privileges\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-privilege\",\"type\":\"json\"},\"temporalConstraints\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-temporal-constraints\",\"type\":\"json\"}}},\"internal/user\":{\"dnTemplate\":\"ou=users,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-internal-user\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"password\":{\"ldapAttribute\":\"fr-idm-password\",\"type\":\"json\"}}},\"link\":{\"dnTemplate\":\"ou=links,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-link\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"firstId\":{\"ldapAttribute\":\"fr-idm-link-firstId\",\"type\":\"simple\"},\"linkQualifier\":{\"ldapAttribute\":\"fr-idm-link-qualifier\",\"type\":\"simple\"},\"linkType\":{\"ldapAttribute\":\"fr-idm-link-type\",\"type\":\"simple\"},\"secondId\":{\"ldapAttribute\":\"fr-idm-link-secondId\",\"type\":\"simple\"}}},\"locks\":{\"dnTemplate\":\"ou=locks,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-lock\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"nodeId\":{\"ldapAttribute\":\"fr-idm-lock-nodeid\",\"type\":\"simple\"}}},\"recon/assoc\":{\"dnTemplate\":\"ou=assoc,ou=recon,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"namingStrategy\":{\"dnAttribute\":\"fr-idm-reconassoc-reconid\",\"type\":\"clientDnNaming\"},\"objectClasses\":[\"fr-idm-reconassoc\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"fr-idm-reconassoc-reconid\",\"type\":\"simple\"},\"finishTime\":{\"ldapAttribute\":\"fr-idm-reconassoc-finishtime\",\"type\":\"simple\"},\"isAnalysis\":{\"ldapAttribute\":\"fr-idm-reconassoc-isanalysis\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-reconassoc-mapping\",\"type\":\"simple\"},\"sourceResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-sourceresourcecollection\",\"type\":\"simple\"},\"targetResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-targetresourcecollection\",\"type\":\"simple\"}},\"subResources\":{\"entry\":{\"namingStrategy\":{\"dnAttribute\":\"uid\",\"type\":\"clientDnNaming\"},\"resource\":\"recon-assoc-entry\",\"type\":\"collection\"}}},\"recon/assoc/entry\":{\"objectClasses\":[\"uidObject\",\"fr-idm-reconassocentry\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\"},\"action\":{\"ldapAttribute\":\"fr-idm-reconassocentry-action\",\"type\":\"simple\"},\"ambiguousTargetObjectIds\":{\"ldapAttribute\":\"fr-idm-reconassocentry-ambiguoustargetobjectids\",\"type\":\"simple\"},\"exception\":{\"ldapAttribute\":\"fr-idm-reconassocentry-exception\",\"type\":\"simple\"},\"isAnalysis\":{\"ldapAttribute\":\"fr-idm-reconassoc-isanalysis\",\"type\":\"simple\"},\"linkQualifier\":{\"ldapAttribute\":\"fr-idm-reconassocentry-linkqualifier\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-reconassoc-mapping\",\"type\":\"simple\"},\"message\":{\"ldapAttribute\":\"fr-idm-reconassocentry-message\",\"type\":\"simple\"},\"messageDetail\":{\"ldapAttribute\":\"fr-idm-reconassocentry-messagedetail\",\"type\":\"simple\"},\"phase\":{\"ldapAttribute\":\"fr-idm-reconassocentry-phase\",\"type\":\"simple\"},\"reconId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-reconid\",\"type\":\"simple\"},\"situation\":{\"ldapAttribute\":\"fr-idm-reconassocentry-situation\",\"type\":\"simple\"},\"sourceObjectId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-sourceObjectId\",\"type\":\"simple\"},\"sourceResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-sourceresourcecollection\",\"type\":\"simple\"},\"status\":{\"ldapAttribute\":\"fr-idm-reconassocentry-status\",\"type\":\"simple\"},\"targetObjectId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-targetObjectId\",\"type\":\"simple\"},\"targetResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-targetresourcecollection\",\"type\":\"simple\"}},\"resourceName\":\"recon-assoc-entry\",\"subResourceRouting\":[{\"prefix\":\"entry\",\"template\":\"recon/assoc/{reconId}/entry\"}]},\"sync/queue\":{\"dnTemplate\":\"ou=queue,ou=sync,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-syncqueue\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"context\":{\"ldapAttribute\":\"fr-idm-syncqueue-context\",\"type\":\"json\"},\"createDate\":{\"ldapAttribute\":\"fr-idm-syncqueue-createdate\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-syncqueue-mapping\",\"type\":\"simple\"},\"newObject\":{\"ldapAttribute\":\"fr-idm-syncqueue-newobject\",\"type\":\"json\"},\"nodeId\":{\"ldapAttribute\":\"fr-idm-syncqueue-nodeid\",\"type\":\"simple\"},\"objectRev\":{\"ldapAttribute\":\"fr-idm-syncqueue-objectRev\",\"type\":\"simple\"},\"oldObject\":{\"ldapAttribute\":\"fr-idm-syncqueue-oldobject\",\"type\":\"json\"},\"resourceCollection\":{\"ldapAttribute\":\"fr-idm-syncqueue-resourcecollection\",\"type\":\"simple\"},\"resourceId\":{\"ldapAttribute\":\"fr-idm-syncqueue-resourceid\",\"type\":\"simple\"},\"state\":{\"ldapAttribute\":\"fr-idm-syncqueue-state\",\"type\":\"simple\"},\"syncAction\":{\"ldapAttribute\":\"fr-idm-syncqueue-syncaction\",\"type\":\"simple\"}}}},\"genericMapping\":{\"cluster/*\":{\"dnTemplate\":\"ou=cluster,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-cluster-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchClusterObject\",\"objectClasses\":[\"uidObject\",\"fr-idm-cluster-obj\"]},\"config\":{\"dnTemplate\":\"ou=config,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"file\":{\"dnTemplate\":\"ou=file,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"import\":{\"dnTemplate\":\"ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"import/*\":{\"dnTemplate\":\"ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"internal/notification\":{\"dnTemplate\":\"ou=notification,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-notification-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-notification\"],\"properties\":{\"target\":{\"propertyName\":\"_notifications\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"internal/usermeta\":{\"dnTemplate\":\"ou=usermeta,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-generic-obj\"],\"properties\":{\"target\":{\"propertyName\":\"_meta\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"jsonstorage\":{\"dnTemplate\":\"ou=jsonstorage,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"managed/*\":{\"dnTemplate\":\"ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"managed/assignment\":{\"dnTemplate\":\"ou=assignment,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-assignment-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-assignment\"],\"properties\":{\"condition\":{\"ldapAttribute\":\"fr-idm-assignment-condition\",\"type\":\"simple\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"assignments\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"roles\":{\"isMultiValued\":true,\"propertyName\":\"assignments\",\"resourcePath\":\"managed/role\",\"type\":\"reverseReference\"}}},\"managed/organization\":{\"dnTemplate\":\"ou=organization,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-organization-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-organization\"],\"properties\":{\"admins\":{\"isMultiValued\":true,\"propertyName\":\"adminOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"children\":{\"isMultiValued\":true,\"propertyName\":\"parent\",\"resourcePath\":\"managed/organization\",\"type\":\"reverseReference\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"memberOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"name\":{\"ldapAttribute\":\"fr-idm-managed-organization-name\",\"type\":\"simple\"},\"owners\":{\"isMultiValued\":true,\"propertyName\":\"ownerOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"parent\":{\"ldapAttribute\":\"fr-idm-managed-organization-parent\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"}}},\"managed/role\":{\"dnTemplate\":\"ou=role,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-role-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchManagedRole\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-role\"],\"properties\":{\"assignments\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-role-assignments\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/assignment\",\"type\":\"reference\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"roles\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"managed/user\":{\"dnTemplate\":\"ou=user,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-user-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchManagedUser\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-user\"],\"properties\":{\"_meta\":{\"isMultiValued\":false,\"ldapAttribute\":\"fr-idm-managed-user-meta\",\"primaryKey\":\"uid\",\"resourcePath\":\"internal/usermeta\",\"type\":\"reference\"},\"_notifications\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-notifications\",\"primaryKey\":\"uid\",\"resourcePath\":\"internal/notification\",\"type\":\"reference\"},\"adminOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-admin\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"assignments\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-assignment-member\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/assignment\",\"type\":\"reference\"},\"authzRoles\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-authzroles-internal-role\",\"primaryKey\":\"cn\",\"resourcePath\":\"internal/role\",\"type\":\"reference\"},\"manager\":{\"isMultiValued\":false,\"ldapAttribute\":\"fr-idm-managed-user-manager\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/user\",\"type\":\"reference\"},\"memberOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-member\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"ownerOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-owner\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"passwordExpirationTime\":{\"ldapAttribute\":\"pwdExpirationTime\",\"type\":\"simple\",\"writability\":\"readOnlyDiscardWrites\"},\"passwordLastChangedTime\":{\"ldapAttribute\":\"pwdChangedTime\",\"type\":\"simple\",\"writability\":\"readOnlyDiscardWrites\"},\"reports\":{\"isMultiValued\":true,\"propertyName\":\"manager\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"roles\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-roles\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/role\",\"type\":\"reference\"}}},\"reconprogressstate\":{\"dnTemplate\":\"ou=reconprogressstate,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"relationships\":{\"dnTemplate\":\"ou=relationships,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-relationship-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchRelationship\",\"objectClasses\":[\"uidObject\",\"fr-idm-relationship\"]},\"scheduler\":{\"dnTemplate\":\"ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"scheduler/*\":{\"dnTemplate\":\"ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"ui/*\":{\"dnTemplate\":\"ou=ui,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"updates\":{\"dnTemplate\":\"ou=updates,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"}}},\"rest2LdapOptions\":{\"mvccAttribute\":\"etag\",\"readOnUpdatePolicy\":\"controls\",\"returnNullForMissingProperties\":true,\"useMvcc\":true,\"usePermissiveModify\":true,\"useSubtreeDelete\":false},\"security\":{\"fileBasedTrustManagerFile\":\"&{idm.install.dir}/security/truststore\",\"fileBasedTrustManagerPasswordFile\":\"&{idm.install.dir}/security/storepass\",\"fileBasedTrustManagerType\":\"JKS\",\"trustManager\":\"file\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.ds" + }, + "response": { + "bodySize": 20198, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 20198, + "text": "{\"_id\":\"repo.ds\",\"commands\":{\"delete-mapping-links\":{\"_queryFilter\":\"/linkType eq \\\"${mapping}\\\"\",\"operation\":\"DELETE\"},\"delete-target-ids-for-recon\":{\"_queryFilter\":\"/reconId eq \\\"${reconId}\\\"\",\"operation\":\"DELETE\"}},\"embedded\":false,\"ldapConnectionFactories\":{\"bind\":{\"connectionPoolSize\":50,\"connectionSecurity\":\"startTLS\",\"heartBeatIntervalSeconds\":60,\"heartBeatTimeoutMilliSeconds\":10000,\"primaryLdapServers\":[{\"hostname\":\"opendj-frodo-dev.classic.com\",\"port\":2389}],\"secondaryLdapServers\":[]},\"root\":{\"authentication\":{\"simple\":{\"bindDn\":\"uid=admin\",\"bindPassword\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"lJ/B6T9e9CDKHCN8TxkD4g==\",\"iv\":\"EdrerzwEUUkHG582cLDw5w==\",\"keySize\":32,\"mac\":\"Aty9fXUtl4pexGlHOc+CBg==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"BITSKlnPeT5klcuEZbngzw==\",\"stableId\":\"openidm-sym-default\"}}}}},\"inheritFrom\":\"bind\"}},\"maxConnectionAttempts\":5,\"resourceMapping\":{\"defaultMapping\":{\"dnTemplate\":\"ou=generic,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"explicitMapping\":{\"clusteredrecontargetids\":{\"dnTemplate\":\"ou=clusteredrecontargetids,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-recon-clusteredTargetIds\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"reconId\":{\"ldapAttribute\":\"fr-idm-recon-id\",\"type\":\"simple\"},\"targetIds\":{\"ldapAttribute\":\"fr-idm-recon-targetIds\",\"type\":\"json\"}}},\"dsconfig/attributeValue\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-attribute-value-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"checkSubstrings\":{\"ldapAttribute\":\"ds-cfg-check-substrings\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"matchAttribute\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-match-attribute\",\"type\":\"simple\"},\"minSubstringLength\":{\"ldapAttribute\":\"ds-cfg-min-substring-length\",\"type\":\"simple\"},\"testReversedPassword\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-test-reversed-password\",\"type\":\"simple\"}}},\"dsconfig/characterSet\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-character-set-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"allowUnclassifiedCharacters\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-allow-unclassified-characters\",\"type\":\"simple\"},\"characterSet\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-character-set\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minCharacterSets\":{\"ldapAttribute\":\"ds-cfg-min-character-sets\",\"type\":\"simple\"}}},\"dsconfig/dictionary\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-dictionary-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"checkSubstrings\":{\"ldapAttribute\":\"ds-cfg-check-substrings\",\"type\":\"simple\"},\"dictionaryFile\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-dictionary-file\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minSubstringLength\":{\"ldapAttribute\":\"ds-cfg-min-substring-length\",\"type\":\"simple\"},\"testReversedPassword\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-test-reversed-password\",\"type\":\"simple\"}}},\"dsconfig/lengthBased\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-length-based-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"maxPasswordLength\":{\"ldapAttribute\":\"ds-cfg-max-password-length\",\"type\":\"simple\"},\"minPasswordLength\":{\"ldapAttribute\":\"ds-cfg-min-password-length\",\"type\":\"simple\"}}},\"dsconfig/passwordPolicies\":{\"dnTemplate\":\"cn=Password Policies,cn=config\",\"objectClasses\":[\"ds-cfg-password-policy\",\"ds-cfg-authentication-policy\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"defaultPasswordStorageScheme\":{\"isMultiValued\":true,\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-default-password-storage-scheme\",\"type\":\"simple\"},\"maxPasswordAge\":{\"ldapAttribute\":\"ds-cfg-max-password-age\",\"type\":\"simple\"},\"passwordAttribute\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-password-attribute\",\"type\":\"simple\"},\"passwordHistoryCount\":{\"ldapAttribute\":\"ds-cfg-password-history-count\",\"type\":\"simple\"},\"validator\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-password-validator\",\"type\":\"simple\"}}},\"dsconfig/repeatedCharacters\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-repeated-characters-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"maxConsecutiveLength\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-max-consecutive-length\",\"type\":\"simple\"}}},\"dsconfig/similarityBased\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-similarity-based-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minPasswordDifference\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-min-password-difference\",\"type\":\"simple\"}}},\"dsconfig/uniqueCharacters\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-unique-characters-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minUniqueCharacters\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-min-unique-characters\",\"type\":\"simple\"}}},\"dsconfig/userDefinedVirtualAttribute\":{\"dnTemplate\":\"cn=Virtual Attributes,cn=config\",\"objectClasses\":[\"ds-cfg-user-defined-virtual-attribute\",\"ds-cfg-virtual-attribute\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"attributeType\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-attribute-type\",\"type\":\"simple\"},\"baseDn\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-base-dn\",\"type\":\"simple\"},\"conflictBehavior\":{\"ldapAttribute\":\"ds-cfg-conflict-behavior\",\"type\":\"simple\"},\"enabled\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"filter\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-filter\",\"type\":\"simple\"},\"groupDn\":{\"ldapAttribute\":\"ds-cfg-group-dn\",\"type\":\"simple\"},\"javaClass\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"scope\":{\"ldapAttribute\":\"ds-cfg-scope\",\"type\":\"simple\"},\"value\":{\"isMultiValued\":true,\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-value\",\"type\":\"simple\"}}},\"internal/role\":{\"dnTemplate\":\"ou=roles,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"fr-idm-internal-role\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"authzMembers\":{\"isMultiValued\":true,\"propertyName\":\"authzRoles\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"condition\":{\"ldapAttribute\":\"fr-idm-condition\",\"type\":\"simple\"},\"description\":{\"ldapAttribute\":\"description\",\"type\":\"simple\"},\"name\":{\"ldapAttribute\":\"fr-idm-name\",\"type\":\"simple\"},\"privileges\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-privilege\",\"type\":\"json\"},\"temporalConstraints\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-temporal-constraints\",\"type\":\"json\"}}},\"internal/user\":{\"dnTemplate\":\"ou=users,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-internal-user\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"password\":{\"ldapAttribute\":\"fr-idm-password\",\"type\":\"json\"}}},\"link\":{\"dnTemplate\":\"ou=links,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-link\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"firstId\":{\"ldapAttribute\":\"fr-idm-link-firstId\",\"type\":\"simple\"},\"linkQualifier\":{\"ldapAttribute\":\"fr-idm-link-qualifier\",\"type\":\"simple\"},\"linkType\":{\"ldapAttribute\":\"fr-idm-link-type\",\"type\":\"simple\"},\"secondId\":{\"ldapAttribute\":\"fr-idm-link-secondId\",\"type\":\"simple\"}}},\"locks\":{\"dnTemplate\":\"ou=locks,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-lock\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"nodeId\":{\"ldapAttribute\":\"fr-idm-lock-nodeid\",\"type\":\"simple\"}}},\"recon/assoc\":{\"dnTemplate\":\"ou=assoc,ou=recon,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"namingStrategy\":{\"dnAttribute\":\"fr-idm-reconassoc-reconid\",\"type\":\"clientDnNaming\"},\"objectClasses\":[\"fr-idm-reconassoc\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"fr-idm-reconassoc-reconid\",\"type\":\"simple\"},\"finishTime\":{\"ldapAttribute\":\"fr-idm-reconassoc-finishtime\",\"type\":\"simple\"},\"isAnalysis\":{\"ldapAttribute\":\"fr-idm-reconassoc-isanalysis\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-reconassoc-mapping\",\"type\":\"simple\"},\"sourceResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-sourceresourcecollection\",\"type\":\"simple\"},\"targetResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-targetresourcecollection\",\"type\":\"simple\"}},\"subResources\":{\"entry\":{\"namingStrategy\":{\"dnAttribute\":\"uid\",\"type\":\"clientDnNaming\"},\"resource\":\"recon-assoc-entry\",\"type\":\"collection\"}}},\"recon/assoc/entry\":{\"objectClasses\":[\"uidObject\",\"fr-idm-reconassocentry\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\"},\"action\":{\"ldapAttribute\":\"fr-idm-reconassocentry-action\",\"type\":\"simple\"},\"ambiguousTargetObjectIds\":{\"ldapAttribute\":\"fr-idm-reconassocentry-ambiguoustargetobjectids\",\"type\":\"simple\"},\"exception\":{\"ldapAttribute\":\"fr-idm-reconassocentry-exception\",\"type\":\"simple\"},\"isAnalysis\":{\"ldapAttribute\":\"fr-idm-reconassoc-isanalysis\",\"type\":\"simple\"},\"linkQualifier\":{\"ldapAttribute\":\"fr-idm-reconassocentry-linkqualifier\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-reconassoc-mapping\",\"type\":\"simple\"},\"message\":{\"ldapAttribute\":\"fr-idm-reconassocentry-message\",\"type\":\"simple\"},\"messageDetail\":{\"ldapAttribute\":\"fr-idm-reconassocentry-messagedetail\",\"type\":\"simple\"},\"phase\":{\"ldapAttribute\":\"fr-idm-reconassocentry-phase\",\"type\":\"simple\"},\"reconId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-reconid\",\"type\":\"simple\"},\"situation\":{\"ldapAttribute\":\"fr-idm-reconassocentry-situation\",\"type\":\"simple\"},\"sourceObjectId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-sourceObjectId\",\"type\":\"simple\"},\"sourceResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-sourceresourcecollection\",\"type\":\"simple\"},\"status\":{\"ldapAttribute\":\"fr-idm-reconassocentry-status\",\"type\":\"simple\"},\"targetObjectId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-targetObjectId\",\"type\":\"simple\"},\"targetResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-targetresourcecollection\",\"type\":\"simple\"}},\"resourceName\":\"recon-assoc-entry\",\"subResourceRouting\":[{\"prefix\":\"entry\",\"template\":\"recon/assoc/{reconId}/entry\"}]},\"sync/queue\":{\"dnTemplate\":\"ou=queue,ou=sync,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-syncqueue\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"context\":{\"ldapAttribute\":\"fr-idm-syncqueue-context\",\"type\":\"json\"},\"createDate\":{\"ldapAttribute\":\"fr-idm-syncqueue-createdate\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-syncqueue-mapping\",\"type\":\"simple\"},\"newObject\":{\"ldapAttribute\":\"fr-idm-syncqueue-newobject\",\"type\":\"json\"},\"nodeId\":{\"ldapAttribute\":\"fr-idm-syncqueue-nodeid\",\"type\":\"simple\"},\"objectRev\":{\"ldapAttribute\":\"fr-idm-syncqueue-objectRev\",\"type\":\"simple\"},\"oldObject\":{\"ldapAttribute\":\"fr-idm-syncqueue-oldobject\",\"type\":\"json\"},\"resourceCollection\":{\"ldapAttribute\":\"fr-idm-syncqueue-resourcecollection\",\"type\":\"simple\"},\"resourceId\":{\"ldapAttribute\":\"fr-idm-syncqueue-resourceid\",\"type\":\"simple\"},\"state\":{\"ldapAttribute\":\"fr-idm-syncqueue-state\",\"type\":\"simple\"},\"syncAction\":{\"ldapAttribute\":\"fr-idm-syncqueue-syncaction\",\"type\":\"simple\"}}}},\"genericMapping\":{\"cluster/*\":{\"dnTemplate\":\"ou=cluster,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-cluster-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchClusterObject\",\"objectClasses\":[\"uidObject\",\"fr-idm-cluster-obj\"]},\"config\":{\"dnTemplate\":\"ou=config,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"file\":{\"dnTemplate\":\"ou=file,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"import\":{\"dnTemplate\":\"ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"import/*\":{\"dnTemplate\":\"ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"internal/notification\":{\"dnTemplate\":\"ou=notification,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-notification-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-notification\"],\"properties\":{\"target\":{\"propertyName\":\"_notifications\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"internal/usermeta\":{\"dnTemplate\":\"ou=usermeta,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-generic-obj\"],\"properties\":{\"target\":{\"propertyName\":\"_meta\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"jsonstorage\":{\"dnTemplate\":\"ou=jsonstorage,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"managed/*\":{\"dnTemplate\":\"ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"managed/assignment\":{\"dnTemplate\":\"ou=assignment,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-assignment-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-assignment\"],\"properties\":{\"condition\":{\"ldapAttribute\":\"fr-idm-assignment-condition\",\"type\":\"simple\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"assignments\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"roles\":{\"isMultiValued\":true,\"propertyName\":\"assignments\",\"resourcePath\":\"managed/role\",\"type\":\"reverseReference\"}}},\"managed/organization\":{\"dnTemplate\":\"ou=organization,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-organization-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-organization\"],\"properties\":{\"admins\":{\"isMultiValued\":true,\"propertyName\":\"adminOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"children\":{\"isMultiValued\":true,\"propertyName\":\"parent\",\"resourcePath\":\"managed/organization\",\"type\":\"reverseReference\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"memberOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"name\":{\"ldapAttribute\":\"fr-idm-managed-organization-name\",\"type\":\"simple\"},\"owners\":{\"isMultiValued\":true,\"propertyName\":\"ownerOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"parent\":{\"ldapAttribute\":\"fr-idm-managed-organization-parent\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"}}},\"managed/role\":{\"dnTemplate\":\"ou=role,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-role-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchManagedRole\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-role\"],\"properties\":{\"assignments\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-role-assignments\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/assignment\",\"type\":\"reference\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"roles\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"managed/user\":{\"dnTemplate\":\"ou=user,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-user-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchManagedUser\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-user\"],\"properties\":{\"_meta\":{\"isMultiValued\":false,\"ldapAttribute\":\"fr-idm-managed-user-meta\",\"primaryKey\":\"uid\",\"resourcePath\":\"internal/usermeta\",\"type\":\"reference\"},\"_notifications\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-notifications\",\"primaryKey\":\"uid\",\"resourcePath\":\"internal/notification\",\"type\":\"reference\"},\"adminOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-admin\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"assignments\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-assignment-member\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/assignment\",\"type\":\"reference\"},\"authzRoles\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-authzroles-internal-role\",\"primaryKey\":\"cn\",\"resourcePath\":\"internal/role\",\"type\":\"reference\"},\"manager\":{\"isMultiValued\":false,\"ldapAttribute\":\"fr-idm-managed-user-manager\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/user\",\"type\":\"reference\"},\"memberOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-member\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"ownerOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-owner\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"passwordExpirationTime\":{\"ldapAttribute\":\"pwdExpirationTime\",\"type\":\"simple\",\"writability\":\"readOnlyDiscardWrites\"},\"passwordLastChangedTime\":{\"ldapAttribute\":\"pwdChangedTime\",\"type\":\"simple\",\"writability\":\"readOnlyDiscardWrites\"},\"reports\":{\"isMultiValued\":true,\"propertyName\":\"manager\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"roles\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-roles\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/role\",\"type\":\"reference\"}}},\"reconprogressstate\":{\"dnTemplate\":\"ou=reconprogressstate,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"relationships\":{\"dnTemplate\":\"ou=relationships,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-relationship-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchRelationship\",\"objectClasses\":[\"uidObject\",\"fr-idm-relationship\"]},\"scheduler\":{\"dnTemplate\":\"ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"scheduler/*\":{\"dnTemplate\":\"ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"ui/*\":{\"dnTemplate\":\"ou=ui,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"updates\":{\"dnTemplate\":\"ou=updates,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"}}},\"rest2LdapOptions\":{\"mvccAttribute\":\"etag\",\"readOnUpdatePolicy\":\"controls\",\"returnNullForMissingProperties\":true,\"useMvcc\":true,\"usePermissiveModify\":true,\"useSubtreeDelete\":false},\"security\":{\"fileBasedTrustManagerFile\":\"&{idm.install.dir}/security/truststore\",\"fileBasedTrustManagerPasswordFile\":\"&{idm.install.dir}/security/storepass\",\"fileBasedTrustManagerType\":\"JKS\",\"trustManager\":\"file\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.751Z", + "time": 20, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 20 + } + }, + { + "_id": "713d28bcb7fbcf706532db458785e079", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 789, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "789" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"repo.init\",\"insert\":{\"internal/role\":[{\"description\":\"Administrative access\",\"id\":\"openidm-admin\",\"name\":\"openidm-admin\"},{\"description\":\"Basic minimum user\",\"id\":\"openidm-authorized\",\"name\":\"openidm-authorized\"},{\"description\":\"Anonymous access\",\"id\":\"openidm-reg\",\"name\":\"openidm-reg\"},{\"description\":\"Authenticated via certificate\",\"id\":\"openidm-cert\",\"name\":\"openidm-cert\"},{\"description\":\"Allowed to reassign workflow tasks\",\"id\":\"openidm-tasks-manager\",\"name\":\"openidm-tasks-manager\"},{\"description\":\"Platform provisioning access\",\"id\":\"platform-provisioning\",\"name\":\"platform-provisioning\"}],\"internal/user\":[{\"id\":\"openidm-admin\",\"password\":\"&{openidm.admin.password}\"},{\"id\":\"anonymous\",\"password\":\"anonymous\"},{\"id\":\"idm-provisioning\"},{\"id\":\"connector-server-client\"}]}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.init" + }, + "response": { + "bodySize": 789, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 789, + "text": "{\"_id\":\"repo.init\",\"insert\":{\"internal/role\":[{\"description\":\"Administrative access\",\"id\":\"openidm-admin\",\"name\":\"openidm-admin\"},{\"description\":\"Basic minimum user\",\"id\":\"openidm-authorized\",\"name\":\"openidm-authorized\"},{\"description\":\"Anonymous access\",\"id\":\"openidm-reg\",\"name\":\"openidm-reg\"},{\"description\":\"Authenticated via certificate\",\"id\":\"openidm-cert\",\"name\":\"openidm-cert\"},{\"description\":\"Allowed to reassign workflow tasks\",\"id\":\"openidm-tasks-manager\",\"name\":\"openidm-tasks-manager\"},{\"description\":\"Platform provisioning access\",\"id\":\"platform-provisioning\",\"name\":\"platform-provisioning\"}],\"internal/user\":[{\"id\":\"openidm-admin\",\"password\":\"&{openidm.admin.password}\"},{\"id\":\"anonymous\",\"password\":\"anonymous\"},{\"id\":\"idm-provisioning\"},{\"id\":\"connector-server-client\"}]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "789" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.777Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "42c6e3613a1d003bb03982859b13f769", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 619, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "619" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"router\",\"filters\":[{\"methods\":[\"create\",\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"},{\"methods\":[\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^config/managed$\"},{\"condition\":{\"source\":\"(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0)\",\"type\":\"text/javascript\"},\"onResponse\":{\"source\":\"require('relationshipFilter').filterResponse()\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/router" + }, + "response": { + "bodySize": 619, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 619, + "text": "{\"_id\":\"router\",\"filters\":[{\"methods\":[\"create\",\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"},{\"methods\":[\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^config/managed$\"},{\"condition\":{\"source\":\"(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0)\",\"type\":\"text/javascript\"},\"onResponse\":{\"source\":\"require('relationshipFilter').filterResponse()\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "619" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.790Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "424494959b5c9b3055c3c7adfdbd139c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 459, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "459" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 457, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"schedule/seantest\",\"concurrentExecution\":false,\"enabled\":false,\"endTime\":null,\"invokeContext\":{\"script\":{\"globals\":{},\"source\":\"//sean has changed this script. Let's see if it is still working. qqqqqqqqqqqqqqSchedule1\\n\",\"type\":\"text/javascript\"}},\"invokeLogLevel\":\"info\",\"invokeService\":\"script\",\"misfirePolicy\":\"fireAndProceed\",\"persisted\":true,\"recoverable\":false,\"repeatCount\":0,\"repeatInterval\":0,\"schedule\":null,\"startTime\":null,\"type\":\"simple\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/seantest" + }, + "response": { + "bodySize": 459, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 459, + "text": "{\"_id\":\"schedule/seantest\",\"concurrentExecution\":false,\"enabled\":false,\"endTime\":null,\"invokeContext\":{\"script\":{\"globals\":{},\"source\":\"//sean has changed this script. Let's see if it is still working. qqqqqqqqqqqqqqSchedule1\\n\",\"type\":\"text/javascript\"}},\"invokeLogLevel\":\"info\",\"invokeService\":\"script\",\"misfirePolicy\":\"fireAndProceed\",\"persisted\":true,\"recoverable\":false,\"repeatCount\":0,\"repeatInterval\":0,\"schedule\":null,\"startTime\":null,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "459" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.804Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "b72f7bad2fb70bd3408d023227d6c0a1", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 838, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "838" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 466, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"schedule/taskscan_activate\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/activeDate le \\\"${Time.nowWithOffset}\\\") AND (!(/inactiveDate pr) or /inactiveDate ge \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/activateAccount/task-completed\",\"started\":\"/activateAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"active\\\" }];\\n\\nlogger.debug(\\\"Performing Activate Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_activate" + }, + "response": { + "bodySize": 838, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 838, + "text": "{\"_id\":\"schedule/taskscan_activate\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/activeDate le \\\"${Time.nowWithOffset}\\\") AND (!(/inactiveDate pr) or /inactiveDate ge \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/activateAccount/task-completed\",\"started\":\"/activateAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"active\\\" }];\\n\\nlogger.debug(\\\"Performing Activate Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "838" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.818Z", + "time": 12, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 12 + } + }, + { + "_id": "4b0af8e512d690c0f8ba8f746dc7f7f0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 830, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "830" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 464, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"schedule/taskscan_expire\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/inactiveDate lt \\\"${Time.nowWithOffset}\\\") AND (!(/activeDate pr) or /activeDate le \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/expireAccount/task-completed\",\"started\":\"/expireAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"inactive\\\" }];\\n\\nlogger.debug(\\\"Performing Expire Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_expire" + }, + "response": { + "bodySize": 830, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 830, + "text": "{\"_id\":\"schedule/taskscan_expire\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/inactiveDate lt \\\"${Time.nowWithOffset}\\\") AND (!(/activeDate pr) or /activeDate le \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/expireAccount/task-completed\",\"started\":\"/expireAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"inactive\\\" }];\\n\\nlogger.debug(\\\"Performing Expire Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "830" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.834Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "1024d424442077395a76f0ae65915bbe", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 156, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "156" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"scheduler\",\"scheduler\":{\"executePersistentSchedules\":{\"$bool\":\"&{openidm.scheduler.execute.persistent.schedules}\"}},\"threadPool\":{\"threadCount\":10}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/scheduler" + }, + "response": { + "bodySize": 156, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 156, + "text": "{\"_id\":\"scheduler\",\"scheduler\":{\"executePersistentSchedules\":{\"$bool\":\"&{openidm.scheduler.execute.persistent.schedules}\"}},\"threadPool\":{\"threadCount\":10}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "156" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.849Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "940e52bd5df8ce79327cf7ca6c2a4b70", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 939, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "939" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"ECMAScript\":{\"javascript.optimization.level\":9,\"javascript.recompile.minimumInterval\":60000},\"Groovy\":{\"#groovy.disabled.global.ast.transformations\":\"\",\"#groovy.errors.tolerance\":10,\"#groovy.output.debug\":false,\"#groovy.output.verbose\":false,\"#groovy.script.base\":\"#any class extends groovy.lang.Script\",\"#groovy.script.extension\":\".groovy\",\"#groovy.target.bytecode\":\"1.8\",\"#groovy.target.directory\":\"&{idm.data.dir}/classes\",\"#groovy.target.indy\":true,\"#groovy.warnings\":\"likely errors #othere values [none,likely,possible,paranoia]\",\"groovy.classpath\":\"&{idm.install.dir}/lib\",\"groovy.recompile\":true,\"groovy.recompile.minimumInterval\":60000,\"groovy.source.encoding\":\"UTF-8\"},\"_id\":\"script\",\"properties\":{},\"sources\":{\"default\":{\"directory\":\"&{idm.install.dir}/bin/defaults/script\"},\"install\":{\"directory\":\"&{idm.install.dir}\"},\"project\":{\"directory\":\"&{idm.instance.dir}\"},\"project-script\":{\"directory\":\"&{idm.instance.dir}/script\"}}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/script" + }, + "response": { + "bodySize": 939, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 939, + "text": "{\"_id\":\"script\",\"ECMAScript\":{\"javascript.optimization.level\":9,\"javascript.recompile.minimumInterval\":60000},\"Groovy\":{\"#groovy.disabled.global.ast.transformations\":\"\",\"#groovy.errors.tolerance\":10,\"#groovy.output.debug\":false,\"#groovy.output.verbose\":false,\"#groovy.script.base\":\"#any class extends groovy.lang.Script\",\"#groovy.script.extension\":\".groovy\",\"#groovy.target.bytecode\":\"1.8\",\"#groovy.target.directory\":\"&{idm.data.dir}/classes\",\"#groovy.target.indy\":true,\"#groovy.warnings\":\"likely errors #othere values [none,likely,possible,paranoia]\",\"groovy.classpath\":\"&{idm.install.dir}/lib\",\"groovy.recompile\":true,\"groovy.recompile.minimumInterval\":60000,\"groovy.source.encoding\":\"UTF-8\"},\"properties\":{},\"sources\":{\"default\":{\"directory\":\"&{idm.install.dir}/bin/defaults/script\"},\"install\":{\"directory\":\"&{idm.install.dir}\"},\"project\":{\"directory\":\"&{idm.instance.dir}\"},\"project-script\":{\"directory\":\"&{idm.instance.dir}/script\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "939" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.865Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "e743b381506753be0f13b78ef7ba632d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1829, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "1829" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"secrets\",\"stores\":[{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}\",\"mappings\":[{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.default\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.config.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.password.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"],\"secretId\":\"idm.jwt.session.module.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}\"],\"secretId\":\"idm.jwt.session.module.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"selfservice\"],\"secretId\":\"idm.selfservice.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}\"],\"secretId\":\"idm.selfservice.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.assignment.attribute.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]}],\"providerName\":\"&{openidm.keystore.provider|SunJCE}\",\"storePassword\":\"&{openidm.keystore.password|changeit}\",\"storetype\":\"&{openidm.keystore.type|JCEKS}\"},\"name\":\"mainKeyStore\"},{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.truststore.location|&{idm.install.dir}/security/truststore}\",\"mappings\":[],\"providerName\":\"&{openidm.truststore.provider|SUN}\",\"storePassword\":\"&{openidm.truststore.password|changeit}\",\"storetype\":\"&{openidm.truststore.type|JKS}\"},\"name\":\"mainTrustStore\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/secrets" + }, + "response": { + "bodySize": 1829, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1829, + "text": "{\"_id\":\"secrets\",\"stores\":[{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}\",\"mappings\":[{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.default\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.config.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.password.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"],\"secretId\":\"idm.jwt.session.module.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}\"],\"secretId\":\"idm.jwt.session.module.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"selfservice\"],\"secretId\":\"idm.selfservice.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}\"],\"secretId\":\"idm.selfservice.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.assignment.attribute.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]}],\"providerName\":\"&{openidm.keystore.provider|SunJCE}\",\"storePassword\":\"&{openidm.keystore.password|changeit}\",\"storetype\":\"&{openidm.keystore.type|JCEKS}\"},\"name\":\"mainKeyStore\"},{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.truststore.location|&{idm.install.dir}/security/truststore}\",\"mappings\":[],\"providerName\":\"&{openidm.truststore.provider|SUN}\",\"storePassword\":\"&{openidm.truststore.password|changeit}\",\"storetype\":\"&{openidm.truststore.type|JKS}\"},\"name\":\"mainTrustStore\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1829" + } + ], + "headersSize": 2252, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.879Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "075665a037e3c1ea3d5c043d72cebd9b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 290, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "290" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 455, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"selfservice.kba\",\"kbaPropertyName\":\"kbaInfo\",\"minimumAnswersToDefine\":2,\"minimumAnswersToVerify\":1,\"questions\":{\"1\":{\"en\":\"What's your favorite color?\",\"en_GB\":\"What is your favourite colour?\",\"fr\":\"Quelle est votre couleur préférée?\"},\"2\":{\"en\":\"Who was your first employer?\"}}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.kba" + }, + "response": { + "bodySize": 290, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 290, + "text": "{\"_id\":\"selfservice.kba\",\"kbaPropertyName\":\"kbaInfo\",\"minimumAnswersToDefine\":2,\"minimumAnswersToVerify\":1,\"questions\":{\"1\":{\"en\":\"What's your favorite color?\",\"en_GB\":\"What is your favourite colour?\",\"fr\":\"Quelle est votre couleur préférée?\"},\"2\":{\"en\":\"Who was your first employer?\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "290" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.891Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "886ef232f84c623d0f2daf1d8668ce6e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 713, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "713" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 463, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"selfservice.propertymap\",\"properties\":[{\"source\":\"givenName\",\"target\":\"givenName\"},{\"source\":\"familyName\",\"target\":\"sn\"},{\"source\":\"email\",\"target\":\"mail\"},{\"condition\":\"/object/postalAddress pr\",\"source\":\"postalAddress\",\"target\":\"postalAddress\"},{\"condition\":\"/object/addressLocality pr\",\"source\":\"addressLocality\",\"target\":\"city\"},{\"condition\":\"/object/addressRegion pr\",\"source\":\"addressRegion\",\"target\":\"stateProvince\"},{\"condition\":\"/object/postalCode pr\",\"source\":\"postalCode\",\"target\":\"postalCode\"},{\"condition\":\"/object/country pr\",\"source\":\"country\",\"target\":\"country\"},{\"condition\":\"/object/phone pr\",\"source\":\"phone\",\"target\":\"telephoneNumber\"},{\"source\":\"username\",\"target\":\"userName\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.propertymap" + }, + "response": { + "bodySize": 713, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 713, + "text": "{\"_id\":\"selfservice.propertymap\",\"properties\":[{\"source\":\"givenName\",\"target\":\"givenName\"},{\"source\":\"familyName\",\"target\":\"sn\"},{\"source\":\"email\",\"target\":\"mail\"},{\"condition\":\"/object/postalAddress pr\",\"source\":\"postalAddress\",\"target\":\"postalAddress\"},{\"condition\":\"/object/addressLocality pr\",\"source\":\"addressLocality\",\"target\":\"city\"},{\"condition\":\"/object/addressRegion pr\",\"source\":\"addressRegion\",\"target\":\"stateProvince\"},{\"condition\":\"/object/postalCode pr\",\"source\":\"postalCode\",\"target\":\"postalCode\"},{\"condition\":\"/object/country pr\",\"source\":\"country\",\"target\":\"country\"},{\"condition\":\"/object/phone pr\",\"source\":\"phone\",\"target\":\"telephoneNumber\"},{\"source\":\"username\",\"target\":\"userName\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "713" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.903Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "6e5e53c9330c498d5a944251e0e8323f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 730, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "730" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 457, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"selfservice.terms\",\"active\":\"0.0\",\"uiConfig\":{\"buttonText\":\"Accept\",\"displayName\":\"We've updated our terms\",\"purpose\":\"You must accept the updated terms in order to proceed.\"},\"versions\":[{\"createDate\":\"2019-10-28T04:20:11.320Z\",\"termsTranslations\":{\"en\":\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"},\"version\":\"0.0\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.terms" + }, + "response": { + "bodySize": 730, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 730, + "text": "{\"_id\":\"selfservice.terms\",\"active\":\"0.0\",\"uiConfig\":{\"buttonText\":\"Accept\",\"displayName\":\"We've updated our terms\",\"purpose\":\"You must accept the updated terms in order to proceed.\"},\"versions\":[{\"createDate\":\"2019-10-28T04:20:11.320Z\",\"termsTranslations\":{\"en\":\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"},\"version\":\"0.0\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "730" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.916Z", + "time": 21, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 21 + } + }, + { + "_id": "3f77ccba1a46c8634dcf686cc6848c1a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 402, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "402" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"servletfilter/cors\",\"filterClass\":\"org.eclipse.jetty.ee10.servlets.CrossOriginFilter\",\"initParams\":{\"allowCredentials\":true,\"allowedHeaders\":\"accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with\",\"allowedMethods\":\"GET,POST,PUT,DELETE,PATCH\",\"allowedOrigins\":\"https://localhost:&{openidm.port.https}\",\"chainPreflight\":false},\"urlPatterns\":[\"/*\"]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/cors" + }, + "response": { + "bodySize": 402, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 402, + "text": "{\"_id\":\"servletfilter/cors\",\"filterClass\":\"org.eclipse.jetty.ee10.servlets.CrossOriginFilter\",\"initParams\":{\"allowCredentials\":true,\"allowedHeaders\":\"accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with\",\"allowedMethods\":\"GET,POST,PUT,DELETE,PATCH\",\"allowedOrigins\":\"https://localhost:&{openidm.port.https}\",\"chainPreflight\":false},\"urlPatterns\":[\"/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "402" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.942Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "11cc10c6d2f5a6faeed47d54f9af0abc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 191, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "191" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 461, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"servletfilter/payload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":5},\"urlPatterns\":[\"&{openidm.servlet.alias}/*\"]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/payload" + }, + "response": { + "bodySize": 191, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 191, + "text": "{\"_id\":\"servletfilter/payload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":5},\"urlPatterns\":[\"&{openidm.servlet.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "191" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.956Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "2cf4a8279922f2f68ba3daaf00d920cc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 198, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "198" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 460, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"servletfilter/upload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":50},\"urlPatterns\":[\"&{openidm.servlet.upload.alias}/*\"]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/upload" + }, + "response": { + "bodySize": 198, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 198, + "text": "{\"_id\":\"servletfilter/upload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":50},\"urlPatterns\":[\"&{openidm.servlet.upload.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "198" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.969Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "68226dd2e45f5243676246a1f17dc2c1", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 5213, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "5213" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"sync\",\"mappings\":[{\"_id\":\"sync/managedOrganization_managedRole\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedRole\",\"icon\":null,\"name\":\"managedOrganization_managedRole\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[],\"target\":\"managed/role\"},{\"_id\":\"sync/managedOrganization_managedSeantestmanagedobject\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedSeantestmanagedobject\",\"icon\":null,\"name\":\"managedOrganization_managedSeantestmanagedobject\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[\"managedOrganization_managedRole\"],\"target\":\"managed/seantestmanagedobject\"},{\"_id\":\"sync/managedAssignment_managedUser\",\"consentRequired\":false,\"displayName\":\"managedAssignment_managedUser\",\"icon\":null,\"name\":\"managedAssignment_managedUser\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"groovy\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\"],\"target\":\"managed/user\"},{\"_id\":\"sync/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\"],\"target\":\"managed/organization\"},{\"_id\":\"sync/managedSeantestmanagedobject_managedUser\",\"consentRequired\":false,\"displayName\":\"managedSeantestmanagedobject_managedUser\",\"icon\":null,\"name\":\"managedSeantestmanagedobject_managedUser\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/seantestmanagedobject\",\"syncAfter\":[\"seantestmapping\",\"managedOrganization_managedRole\"],\"target\":\"managed/user\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 5213, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 5213, + "text": "{\"_id\":\"sync\",\"mappings\":[{\"_id\":\"sync/managedOrganization_managedRole\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedRole\",\"icon\":null,\"name\":\"managedOrganization_managedRole\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[],\"target\":\"managed/role\"},{\"_id\":\"sync/managedOrganization_managedSeantestmanagedobject\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedSeantestmanagedobject\",\"icon\":null,\"name\":\"managedOrganization_managedSeantestmanagedobject\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[\"managedOrganization_managedRole\"],\"target\":\"managed/seantestmanagedobject\"},{\"_id\":\"sync/managedAssignment_managedUser\",\"consentRequired\":false,\"displayName\":\"managedAssignment_managedUser\",\"icon\":null,\"name\":\"managedAssignment_managedUser\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"groovy\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\"],\"target\":\"managed/user\"},{\"_id\":\"sync/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\"],\"target\":\"managed/organization\"},{\"_id\":\"sync/managedSeantestmanagedobject_managedUser\",\"consentRequired\":false,\"displayName\":\"managedSeantestmanagedobject_managedUser\",\"icon\":null,\"name\":\"managedSeantestmanagedobject_managedUser\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/seantestmanagedobject\",\"syncAfter\":[\"seantestmapping\",\"managedOrganization_managedRole\"],\"target\":\"managed/user\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.983Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "f9398fa965ae2c914addd884d1c11499", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 244, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "244" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 456, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui.context/admin\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/admin/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/admin/extension\",\"responseHeaders\":{\"X-Frame-Options\":\"SAMEORIGIN\"},\"urlContextRoot\":\"/admin\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/admin" + }, + "response": { + "bodySize": 244, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 244, + "text": "{\"_id\":\"ui.context/admin\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/admin/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/admin/extension\",\"responseHeaders\":{\"X-Frame-Options\":\"SAMEORIGIN\"},\"urlContextRoot\":\"/admin\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:01 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "244" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:01.998Z", + "time": 12, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 12 + } + }, + { + "_id": "2531d9e46a98d59bb2310cfaf6e0c434", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 205, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "205" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 454, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui.context/api\",\"authEnabled\":true,\"cacheEnabled\":false,\"defaultDir\":\"&{idm.install.dir}/ui/api/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/api/extension\",\"urlContextRoot\":\"/api\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/api" + }, + "response": { + "bodySize": 205, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 205, + "text": "{\"_id\":\"ui.context/api\",\"authEnabled\":true,\"cacheEnabled\":false,\"defaultDir\":\"&{idm.install.dir}/ui/api/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/api/extension\",\"urlContextRoot\":\"/api\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:02 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "205" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:02.014Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "8e4d55d902fda9dcf6cb28a38f8b05c3", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 174, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "174" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui.context/enduser\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/enduser\",\"enabled\":true,\"responseHeaders\":{\"X-Frame-Options\":\"DENY\"},\"urlContextRoot\":\"/\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/enduser" + }, + "response": { + "bodySize": 174, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 174, + "text": "{\"_id\":\"ui.context/enduser\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/enduser\",\"enabled\":true,\"responseHeaders\":{\"X-Frame-Options\":\"DENY\"},\"urlContextRoot\":\"/\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:02 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "174" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:02.027Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "856e10b34afe79e55e6c6744c87c36e4", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 199, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "199" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 456, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui.context/oauth\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/oauth/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/oauth/extension\",\"urlContextRoot\":\"/oauthReturn\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/oauth" + }, + "response": { + "bodySize": 199, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 199, + "text": "{\"_id\":\"ui.context/oauth\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/oauth/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/oauth/extension\",\"urlContextRoot\":\"/oauthReturn\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:02 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "199" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:02.044Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "ffedaec2f8530b2951b4fe52409794b2", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 588, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "588" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 456, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui/configuration\",\"configuration\":{\"defaultNotificationType\":\"info\",\"forgotUsername\":false,\"lang\":\"en\",\"notificationTypes\":{\"error\":{\"iconPath\":\"images/notifications/error.png\",\"name\":\"common.notification.types.error\"},\"info\":{\"iconPath\":\"images/notifications/info.png\",\"name\":\"common.notification.types.info\"},\"warning\":{\"iconPath\":\"images/notifications/warning.png\",\"name\":\"common.notification.types.warning\"}},\"passwordReset\":false,\"passwordResetLink\":\"\",\"roles\":{\"internal/role/openidm-admin\":\"ui-admin\",\"internal/role/openidm-authorized\":\"ui-user\"},\"selfRegistration\":false}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/configuration" + }, + "response": { + "bodySize": 588, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 588, + "text": "{\"_id\":\"ui/configuration\",\"configuration\":{\"defaultNotificationType\":\"info\",\"forgotUsername\":false,\"lang\":\"en\",\"notificationTypes\":{\"error\":{\"iconPath\":\"images/notifications/error.png\",\"name\":\"common.notification.types.error\"},\"info\":{\"iconPath\":\"images/notifications/info.png\",\"name\":\"common.notification.types.info\"},\"warning\":{\"iconPath\":\"images/notifications/warning.png\",\"name\":\"common.notification.types.warning\"}},\"passwordReset\":false,\"passwordResetLink\":\"\",\"roles\":{\"internal/role/openidm-admin\":\"ui-admin\",\"internal/role/openidm-authorized\":\"ui-user\"},\"selfRegistration\":false}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:02 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "588" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:02.058Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "7ca95a1b42482427cd49ea83db0aecb0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2241, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2241" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui/dashboard\",\"adminDashboards\":[{\"isDefault\":true,\"name\":\"Quick Start\",\"widgets\":[{\"cards\":[{\"href\":\"#connectors/add/\",\"icon\":\"fa-database\",\"name\":\"Add Connector\"},{\"href\":\"#mapping/add/\",\"icon\":\"fa-map-marker\",\"name\":\"Create Mapping\"},{\"href\":\"#resource/managed/role/list/\",\"icon\":\"fa-check-square-o\",\"name\":\"Manage Roles\"},{\"href\":\"#managed/add/\",\"icon\":\"fa-tablet\",\"name\":\"Add Device\"},{\"href\":\"#selfservice/userregistration/\",\"icon\":\"fa-gear\",\"name\":\"Configure Registration\"},{\"href\":\"#selfservice/passwordreset/\",\"icon\":\"fa-gear\",\"name\":\"Configure Password Reset\"},{\"href\":\"#resource/managed/user/list/\",\"icon\":\"fa-user\",\"name\":\"Manage Users\"},{\"href\":\"#settings/\",\"icon\":\"fa-user\",\"name\":\"Configure System Preferences\"}],\"size\":\"large\",\"type\":\"quickStart\"}]},{\"isDefault\":false,\"name\":\"System Monitoring\",\"widgets\":[{\"legendRange\":{\"month\":[500,2500,5000],\"week\":[10,30,90,270,810],\"year\":[10000,40000,100000,250000]},\"maxRange\":\"#24423c\",\"minRange\":\"#b0d4cd\",\"size\":\"large\",\"type\":\"audit\"},{\"size\":\"large\",\"type\":\"clusterStatus\"},{\"size\":\"large\",\"type\":\"systemHealthFull\"},{\"barchart\":\"false\",\"size\":\"large\",\"type\":\"lastRecon\"}]},{\"isDefault\":false,\"name\":\"Resource Report\",\"widgets\":[{\"selected\":\"activeUsers\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"rolesEnabled\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"activeConnectors\",\"size\":\"x-small\",\"type\":\"counter\"},{\"size\":\"large\",\"type\":\"resourceList\"}]},{\"isDefault\":false,\"name\":\"Business Report\",\"widgets\":[{\"graphType\":\"fa-pie-chart\",\"providers\":[\"Username/Password\"],\"size\":\"x-small\",\"type\":\"signIns\",\"widgetTitle\":\"Sign-Ins\"},{\"graphType\":\"fa-bar-chart\",\"size\":\"x-small\",\"type\":\"passwordResets\",\"widgetTitle\":\"Password Resets\"},{\"graphType\":\"fa-line-chart\",\"providers\":[\"Username/Password\"],\"size\":\"x-small\",\"type\":\"newRegistrations\",\"widgetTitle\":\"New Registrations\"},{\"size\":\"x-small\",\"timezone\":{\"hours\":\"07\",\"minutes\":\"00\",\"negative\":true},\"type\":\"socialLogin\"},{\"selected\":\"socialEnabled\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"manualRegistrations\",\"size\":\"x-small\",\"type\":\"counter\"}]},{\"isDefault\":false,\"name\":\"seantestdashboard\",\"widgets\":[{\"size\":\"large\",\"type\":\"resourceList\"}]}],\"dashboard\":{\"widgets\":[{\"size\":\"large\",\"type\":\"Welcome\"}]}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/dashboard" + }, + "response": { + "bodySize": 2241, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 2241, + "text": "{\"_id\":\"ui/dashboard\",\"adminDashboards\":[{\"isDefault\":true,\"name\":\"Quick Start\",\"widgets\":[{\"cards\":[{\"href\":\"#connectors/add/\",\"icon\":\"fa-database\",\"name\":\"Add Connector\"},{\"href\":\"#mapping/add/\",\"icon\":\"fa-map-marker\",\"name\":\"Create Mapping\"},{\"href\":\"#resource/managed/role/list/\",\"icon\":\"fa-check-square-o\",\"name\":\"Manage Roles\"},{\"href\":\"#managed/add/\",\"icon\":\"fa-tablet\",\"name\":\"Add Device\"},{\"href\":\"#selfservice/userregistration/\",\"icon\":\"fa-gear\",\"name\":\"Configure Registration\"},{\"href\":\"#selfservice/passwordreset/\",\"icon\":\"fa-gear\",\"name\":\"Configure Password Reset\"},{\"href\":\"#resource/managed/user/list/\",\"icon\":\"fa-user\",\"name\":\"Manage Users\"},{\"href\":\"#settings/\",\"icon\":\"fa-user\",\"name\":\"Configure System Preferences\"}],\"size\":\"large\",\"type\":\"quickStart\"}]},{\"isDefault\":false,\"name\":\"System Monitoring\",\"widgets\":[{\"legendRange\":{\"month\":[500,2500,5000],\"week\":[10,30,90,270,810],\"year\":[10000,40000,100000,250000]},\"maxRange\":\"#24423c\",\"minRange\":\"#b0d4cd\",\"size\":\"large\",\"type\":\"audit\"},{\"size\":\"large\",\"type\":\"clusterStatus\"},{\"size\":\"large\",\"type\":\"systemHealthFull\"},{\"barchart\":\"false\",\"size\":\"large\",\"type\":\"lastRecon\"}]},{\"isDefault\":false,\"name\":\"Resource Report\",\"widgets\":[{\"selected\":\"activeUsers\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"rolesEnabled\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"activeConnectors\",\"size\":\"x-small\",\"type\":\"counter\"},{\"size\":\"large\",\"type\":\"resourceList\"}]},{\"isDefault\":false,\"name\":\"Business Report\",\"widgets\":[{\"graphType\":\"fa-pie-chart\",\"providers\":[\"Username/Password\"],\"size\":\"x-small\",\"type\":\"signIns\",\"widgetTitle\":\"Sign-Ins\"},{\"graphType\":\"fa-bar-chart\",\"size\":\"x-small\",\"type\":\"passwordResets\",\"widgetTitle\":\"Password Resets\"},{\"graphType\":\"fa-line-chart\",\"providers\":[\"Username/Password\"],\"size\":\"x-small\",\"type\":\"newRegistrations\",\"widgetTitle\":\"New Registrations\"},{\"size\":\"x-small\",\"timezone\":{\"hours\":\"07\",\"minutes\":\"00\",\"negative\":true},\"type\":\"socialLogin\"},{\"selected\":\"socialEnabled\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"manualRegistrations\",\"size\":\"x-small\",\"type\":\"counter\"}]},{\"isDefault\":false,\"name\":\"seantestdashboard\",\"widgets\":[{\"size\":\"large\",\"type\":\"resourceList\"}]}],\"dashboard\":{\"widgets\":[{\"size\":\"large\",\"type\":\"Welcome\"}]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:02 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:02.074Z", + "time": 12, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 12 + } + }, + { + "_id": "df3eb8ec5f2f8390ee9bda4e21313f01", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 891, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "891" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 450, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui/profile\",\"tabs\":[{\"name\":\"personalInfoTab\",\"view\":\"org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab\"},{\"name\":\"signInAndSecurity\",\"view\":\"org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab\"},{\"name\":\"preference\",\"view\":\"org/forgerock/openidm/ui/user/profile/PreferencesTab\"},{\"name\":\"trustedDevice\",\"view\":\"org/forgerock/openidm/ui/user/profile/TrustedDevicesTab\"},{\"name\":\"oauthApplication\",\"view\":\"org/forgerock/openidm/ui/user/profile/OauthApplicationsTab\"},{\"name\":\"privacyAndConsent\",\"view\":\"org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab\"},{\"name\":\"sharing\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/SharingTab\"},{\"name\":\"auditHistory\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/ActivityTab\"},{\"name\":\"accountControls\",\"view\":\"org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/profile" + }, + "response": { + "bodySize": 891, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 891, + "text": "{\"_id\":\"ui/profile\",\"tabs\":[{\"name\":\"personalInfoTab\",\"view\":\"org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab\"},{\"name\":\"signInAndSecurity\",\"view\":\"org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab\"},{\"name\":\"preference\",\"view\":\"org/forgerock/openidm/ui/user/profile/PreferencesTab\"},{\"name\":\"trustedDevice\",\"view\":\"org/forgerock/openidm/ui/user/profile/TrustedDevicesTab\"},{\"name\":\"oauthApplication\",\"view\":\"org/forgerock/openidm/ui/user/profile/OauthApplicationsTab\"},{\"name\":\"privacyAndConsent\",\"view\":\"org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab\"},{\"name\":\"sharing\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/SharingTab\"},{\"name\":\"auditHistory\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/ActivityTab\"},{\"name\":\"accountControls\",\"view\":\"org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:02 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "891" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:02.093Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "927933d6d1d6362ba93eab1026e492e6", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 421, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "421" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 454, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui/themeconfig\",\"icon\":\"favicon.ico\",\"path\":\"\",\"settings\":{\"footer\":{\"mailto\":\"info@pingidentity.com\"},\"loginLogo\":{\"alt\":\"Ping Identity\",\"height\":\"120px\",\"src\":\"images/login-logo-dark.png\",\"title\":\"Ping Identity\",\"width\":\"120px\"},\"logo\":{\"alt\":\"Ping Identity\",\"src\":\"images/logo-horizontal-white.png\",\"title\":\"Ping Identity\"}},\"stylesheets\":[\"css/bootstrap-3.4.1-custom.css\",\"css/structure.css\",\"css/theme.css\"]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/themeconfig" + }, + "response": { + "bodySize": 421, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 421, + "text": "{\"_id\":\"ui/themeconfig\",\"icon\":\"favicon.ico\",\"path\":\"\",\"settings\":{\"footer\":{\"mailto\":\"info@pingidentity.com\"},\"loginLogo\":{\"alt\":\"Ping Identity\",\"height\":\"120px\",\"src\":\"images/login-logo-dark.png\",\"title\":\"Ping Identity\",\"width\":\"120px\"},\"logo\":{\"alt\":\"Ping Identity\",\"src\":\"images/logo-horizontal-white.png\",\"title\":\"Ping Identity\"}},\"stylesheets\":[\"css/bootstrap-3.4.1-custom.css\",\"css/structure.css\",\"css/theme.css\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:02 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "421" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:02.107Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "aae156524eceaac7659d29ccabfa6b7e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 169, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "169" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"webserver\",\"gzip\":{\"enabled\":true,\"includedMethods\":[\"GET\"]},\"maxThreads\":{\"$int\":\"&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver" + }, + "response": { + "bodySize": 169, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 169, + "text": "{\"_id\":\"webserver\",\"gzip\":{\"enabled\":true,\"includedMethods\":[\"GET\"]},\"maxThreads\":{\"$int\":\"&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:02 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "169" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:02.123Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "3b9fc03ddabd674233d649150dbf0931", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 128, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "128" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 463, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"webserver.listener/http\",\"enabled\":{\"$bool\":\"&{openidm.http.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.http|8080}\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/http" + }, + "response": { + "bodySize": 128, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 128, + "text": "{\"_id\":\"webserver.listener/http\",\"enabled\":{\"$bool\":\"&{openidm.http.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.http|8080}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:02 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "128" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:02.141Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "0ef4585bbfb32a7b30964a6d50210a3d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 217, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "217" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 464, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"webserver.listener/https\",\"enabled\":{\"$bool\":\"&{openidm.https.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.https|8443}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/https" + }, + "response": { + "bodySize": 217, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 217, + "text": "{\"_id\":\"webserver.listener/https\",\"enabled\":{\"$bool\":\"&{openidm.https.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.https|8443}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:02 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "217" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:02.156Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "50bbd6ee40df0dd745b9fec4c55bb37c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 250, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-daa4fd6a-d0a1-402c-a64d-5e32e77fb621" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "250" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 469, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"webserver.listener/mutualAuth\",\"enabled\":{\"$bool\":\"&{openidm.mutualauth.enabled|true}\"},\"mutualAuth\":true,\"port\":{\"$int\":\"&{openidm.port.mutualauth|8444}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/mutualAuth" + }, + "response": { + "bodySize": 250, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 250, + "text": "{\"_id\":\"webserver.listener/mutualAuth\",\"enabled\":{\"$bool\":\"&{openidm.mutualauth.enabled|true}\"},\"mutualAuth\":true,\"port\":{\"$int\":\"&{openidm.port.mutualauth|8444}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:02 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "250" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:02.175Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/mapping_637820293/export_4211608755/0_AD_m_4209801721/openidm_3290118515/recording.har b/test/e2e/mocks/mapping_637820293/export_4211608755/0_AD_m_4209801721/openidm_3290118515/recording.har new file mode 100644 index 000000000..f1db7e27d --- /dev/null +++ b/test/e2e/mocks/mapping_637820293/export_4211608755/0_AD_m_4209801721/openidm_3290118515/recording.har @@ -0,0 +1,493 @@ +{ + "log": { + "_recordingName": "mapping/export/0_AD_m/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "de3566e649dc89e93a6365b0fdaecd4e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-17741d4f-0f26-49c7-b0e3-b452c16e972f" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 393, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/serverinfo/*" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:43 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:03:43.453Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "3f3b03432a833cfcbe27438276bb566b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-17741d4f-0f26-49c7-b0e3-b452c16e972f" + }, + { + "name": "accept-api-version", + "value": "resource=2.0, protocol=1.0" + }, + { + "name": "x-openam-username", + "value": "openidm-admin" + }, + { + "name": "x-openam-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 507, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/realms/root/authenticate" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:43 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:03:43.471Z", + "time": 2, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 2 + } + }, + { + "_id": "4c1fef66c916c8940b0315dddc564b06", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-17741d4f-0f26-49c7-b0e3-b452c16e972f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 423, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 811, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 811, + "text": "[\"H4sIAAAAAAAA/w==\",\"7VfRjqIwFP2XPpP47ltHkZDFkgV5MBtDOlBJJ9iytE7GMf77tqOzq2sZihLmxQcThXNPr3jPucc9SGkOxkDsWAYcsMFVRVkhwPjX/uzOaIMZLkge1gVm9B1Lyll6uhbxkqjKjDNBmIzI7y2tiSpc41IQB+RUVCXeIbwhiqydhyoiMGbbsnQAsy2qeEkzSo5t40wjwHgPipI/qy7U24MDBN/WmaYbjQTBTBIhVaXcVfqaJG9y9IJfschqWkmg8VRu8ZEJwPmT7yVhEqsbvR2gvmhOe281DpNo4qZzP4595N3cb1Fz/rrT5BUXEt7FcN6eqS8A4yWagEvgLEzQNIVB5MLpMg189MOdtlcl6GcCA3/m24GhasZDNljdQBqiYNkOXcDIcxepIg4jG+rTL2aNh0GQeiFy25GTEM38aG5D+vG4Lc5+il20AIeVmouaV6SWR9WtzobhJM0RP9OrplE+AteS1Ee4xHVB5Bm81lLWDdjZTnwauNNH/vxCMtmHDzURdzOmJhajU335qPsbB7OLDTQ5t+m5g+ysnaWr3r5w1F7038WGLvztThG27lWTSoVxrs2yhULQgm2UGj9pE6FO7qjRRpZmQTaWdMwJWORr/Wpbal3jwSfvJfetEcHM1nWBW/Vzjyy+afP38Cs8MsNgmQH/VW5Xs3K6b2OTv221UfxnZ/887+PPkbWBXdcZLOsa9IgIj4gwZEQYVHNOy442afIiw5ijhvGwe1KHDWFzALGpfsj8IfMhZW5O7t+veOdqBTbv5dXhD+46tPKwFAAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:43 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:43.479Z", + "time": 3, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 3 + } + }, + { + "_id": "4c963e6ac6a0c10bf75de375d8e3da12", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-17741d4f-0f26-49c7-b0e3-b452c16e972f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 456, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "_id sw 'mapping'" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=_id%20sw%20%27mapping%27" + }, + "response": { + "bodySize": 1820, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1820, + "text": "{\"result\":[{\"_id\":\"mapping/mappingtest\",\"consentRequired\":false,\"displayName\":\"mappingtest\",\"icon\":null,\"name\":\"mappingtest\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"target\":\"managed/organization\"},{\"_id\":\"mapping/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"target\":\"managed/organization\"}],\"resultCount\":2,\"pagedResultsCookie\":null,\"totalPagedResultsPolicy\":\"EXACT\",\"totalPagedResults\":2,\"remainingPagedResults\":-1}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:43 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1820" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:43.492Z", + "time": 5, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 5 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/mapping_637820293/export_4211608755/0_aD_m_3016648281/openidm_3290118515/recording.har b/test/e2e/mocks/mapping_637820293/export_4211608755/0_aD_m_3016648281/openidm_3290118515/recording.har new file mode 100644 index 000000000..c3300c3bd --- /dev/null +++ b/test/e2e/mocks/mapping_637820293/export_4211608755/0_aD_m_3016648281/openidm_3290118515/recording.har @@ -0,0 +1,493 @@ +{ + "log": { + "_recordingName": "mapping/export/0_aD_m/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "de3566e649dc89e93a6365b0fdaecd4e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-53b8f1cd-d3c1-4efd-9128-cb467fd47ffc" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 393, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/serverinfo/*" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:59 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:03:59.690Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "3f3b03432a833cfcbe27438276bb566b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-53b8f1cd-d3c1-4efd-9128-cb467fd47ffc" + }, + { + "name": "accept-api-version", + "value": "resource=2.0, protocol=1.0" + }, + { + "name": "x-openam-username", + "value": "openidm-admin" + }, + { + "name": "x-openam-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 507, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/realms/root/authenticate" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:59 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:03:59.708Z", + "time": 3, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 3 + } + }, + { + "_id": "4c1fef66c916c8940b0315dddc564b06", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-53b8f1cd-d3c1-4efd-9128-cb467fd47ffc" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 423, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 811, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 811, + "text": "[\"H4sIAAAAAAAA/w==\",\"7VfRjqIwFP2XPpP47ltHkZDFkgV5MBtDOlBJJ9iytE7GMf77tqOzq2sZihLmxQcThXNPr3jPucc9SGkOxkDsWAYcsMFVRVkhwPjX/uzOaIMZLkge1gVm9B1Lyll6uhbxkqjKjDNBmIzI7y2tiSpc41IQB+RUVCXeIbwhiqydhyoiMGbbsnQAsy2qeEkzSo5t40wjwHgPipI/qy7U24MDBN/WmaYbjQTBTBIhVaXcVfqaJG9y9IJfschqWkmg8VRu8ZEJwPmT7yVhEqsbvR2gvmhOe281DpNo4qZzP4595N3cb1Fz/rrT5BUXEt7FcN6eqS8A4yWagEvgLEzQNIVB5MLpMg189MOdtlcl6GcCA3/m24GhasZDNljdQBqiYNkOXcDIcxepIg4jG+rTL2aNh0GQeiFy25GTEM38aG5D+vG4Lc5+il20AIeVmouaV6SWR9WtzobhJM0RP9OrplE+AteS1Ee4xHVB5Bm81lLWDdjZTnwauNNH/vxCMtmHDzURdzOmJhajU335qPsbB7OLDTQ5t+m5g+ysnaWr3r5w1F7038WGLvztThG27lWTSoVxrs2yhULQgm2UGj9pE6FO7qjRRpZmQTaWdMwJWORr/Wpbal3jwSfvJfetEcHM1nWBW/Vzjyy+afP38Cs8MsNgmQH/VW5Xs3K6b2OTv221UfxnZ/887+PPkbWBXdcZLOsa9IgIj4gwZEQYVHNOy442afIiw5ijhvGwe1KHDWFzALGpfsj8IfMhZW5O7t+veOdqBTbv5dXhD+46tPKwFAAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:59 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:59.717Z", + "time": 4, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 4 + } + }, + { + "_id": "4c963e6ac6a0c10bf75de375d8e3da12", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-53b8f1cd-d3c1-4efd-9128-cb467fd47ffc" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 456, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "_id sw 'mapping'" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=_id%20sw%20%27mapping%27" + }, + "response": { + "bodySize": 1820, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1820, + "text": "{\"result\":[{\"_id\":\"mapping/mappingtest\",\"consentRequired\":false,\"displayName\":\"mappingtest\",\"icon\":null,\"name\":\"mappingtest\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"target\":\"managed/organization\"},{\"_id\":\"mapping/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"target\":\"managed/organization\"}],\"resultCount\":2,\"pagedResultsCookie\":null,\"totalPagedResultsPolicy\":\"EXACT\",\"totalPagedResults\":2,\"remainingPagedResults\":-1}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:03:59 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1820" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:03:59.728Z", + "time": 5, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 5 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/mapping_637820293/import_288002260/0_AD_m_4209801721/openidm_3290118515/recording.har b/test/e2e/mocks/mapping_637820293/import_288002260/0_AD_m_4209801721/openidm_3290118515/recording.har new file mode 100644 index 000000000..951cdb9c0 --- /dev/null +++ b/test/e2e/mocks/mapping_637820293/import_288002260/0_AD_m_4209801721/openidm_3290118515/recording.har @@ -0,0 +1,497 @@ +{ + "log": { + "_recordingName": "mapping/import/0_AD_m/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "de3566e649dc89e93a6365b0fdaecd4e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5a08c67a-0c55-47e2-8a28-063533102af3" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 393, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/serverinfo/*" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:55:28 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:55:28.257Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "3f3b03432a833cfcbe27438276bb566b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5a08c67a-0c55-47e2-8a28-063533102af3" + }, + { + "name": "accept-api-version", + "value": "resource=2.0, protocol=1.0" + }, + { + "name": "x-openam-username", + "value": "openidm-admin" + }, + { + "name": "x-openam-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 507, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/realms/root/authenticate" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:55:28 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:55:28.276Z", + "time": 2, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 2 + } + }, + { + "_id": "4c1fef66c916c8940b0315dddc564b06", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5a08c67a-0c55-47e2-8a28-063533102af3" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 423, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 815, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 815, + "text": "[\"H4sIAAAAAAAA/w==\",\"7ZhRj6IwEMe/S59JfPetq0jIYcmBPJiLIV2opBtsOVo25xm/+7Wre6e3ZSnKcS8+mCjM/Blhfv8ZPYCU5mAKxJ5lwAE7XFWUFQJMvx0uzkx2mOGC5GFdYEZ/Ykk5S8/HIl4SlZlxJgiTEfne0JqoxC0uBXFATkVV4j3CO6LEunWoEgJT1pSlA5htUsVLmlFyKhtnOgJMD6Ao+bOqQr09OkDwps603GQiCGaSCKky5b7SxyT5IScv+BWLrKaVBDqeygaflABcPvleEiaxOjHYBdQXzengpcZhEs3cdOnHsY+8m+stas5f91q84kLCuxQuyzPVBWC8RjNwHbgIEzRPYRC5cL5OAx99cefdWQn6msDAX/h2wVAV4yGbWF1AGqJg3R26gpHnrlIlHEY20ucnZh0PgyD1QuR2R85CtPCjpY3o2+22uPZT7KIVOG5UX9S8IrU8Ube5aIYzmhN+wauWUT4Ct5LUp3CJ64LIi/Bao6wLsLOd+Nxw54/8+YVkcggfahPuZ0xtKkan+vRWD9cOZhcbqXNu47kHdtbO0pe3Txx1EP772NCVv90JYedcNVEqjH1txhYKQQu2UzS+yyZCXbkno60q7UC2pvTcE7DIt/rVNdT6rgfvutfat64IZrW+A9yqnnuw+E+Tf4Cn8NgZRtsZ8G9y+5qV038am/yt0UZhtjOjyD3OZiPYbnI22Y9t47FtjLltmLeDf0+y0zn5/1T29geHNft/59ki/jHPQPLHoAewD2DHBHbUedtNqfVoM+F79VPnuDn+AsJ5p7HbFAAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:55:28 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:55:28.286Z", + "time": 4, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 4 + } + }, + { + "_id": "4ba269ad1b4bcb0584c1898e5c04c91b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 5308, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5a08c67a-0c55-47e2-8a28-063533102af3" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "5308" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"mappings\":[{\"_id\":\"sync/managedOrganization_managedRole\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedRole\",\"icon\":null,\"name\":\"managedOrganization_managedRole\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[],\"target\":\"managed/role\"},{\"_id\":\"sync/managedOrganization_managedSeantestmanagedobject\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedSeantestmanagedobject\",\"icon\":null,\"name\":\"managedOrganization_managedSeantestmanagedobject\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[\"managedOrganization_managedRole\"],\"target\":\"managed/seantestmanagedobject\"},{\"_id\":\"sync/managedAssignment_managedUser\",\"consentRequired\":false,\"displayName\":\"managedAssignment_managedUser\",\"icon\":null,\"name\":\"managedAssignment_managedUser\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"groovy\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\"],\"target\":\"managed/user\"},{\"_id\":\"sync/managedSeantestmanagedobject_managedUser\",\"consentRequired\":false,\"displayName\":\"managedSeantestmanagedobject_managedUser\",\"icon\":null,\"name\":\"managedSeantestmanagedobject_managedUser\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/seantestmanagedobject\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\"],\"target\":\"managed/user\"},{\"_id\":\"sync/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\",\"managedSeantestmanagedobject_managedUser\"],\"target\":\"managed/organization\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 5321, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 5321, + "text": "{\"_id\":\"sync\",\"mappings\":[{\"_id\":\"sync/managedOrganization_managedRole\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedRole\",\"icon\":null,\"name\":\"managedOrganization_managedRole\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[],\"target\":\"managed/role\"},{\"_id\":\"sync/managedOrganization_managedSeantestmanagedobject\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedSeantestmanagedobject\",\"icon\":null,\"name\":\"managedOrganization_managedSeantestmanagedobject\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[\"managedOrganization_managedRole\"],\"target\":\"managed/seantestmanagedobject\"},{\"_id\":\"sync/managedAssignment_managedUser\",\"consentRequired\":false,\"displayName\":\"managedAssignment_managedUser\",\"icon\":null,\"name\":\"managedAssignment_managedUser\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"groovy\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\"],\"target\":\"managed/user\"},{\"_id\":\"sync/managedSeantestmanagedobject_managedUser\",\"consentRequired\":false,\"displayName\":\"managedSeantestmanagedobject_managedUser\",\"icon\":null,\"name\":\"managedSeantestmanagedobject_managedUser\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/seantestmanagedobject\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\"],\"target\":\"managed/user\"},{\"_id\":\"sync/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\",\"managedSeantestmanagedobject_managedUser\"],\"target\":\"managed/organization\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:55:28 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:55:28.300Z", + "time": 13, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 13 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/mapping_637820293/import_288002260/0_af_m_950605143/openidm_3290118515/recording.har b/test/e2e/mocks/mapping_637820293/import_288002260/0_af_m_950605143/openidm_3290118515/recording.har new file mode 100644 index 000000000..35b74f02e --- /dev/null +++ b/test/e2e/mocks/mapping_637820293/import_288002260/0_af_m_950605143/openidm_3290118515/recording.har @@ -0,0 +1,793 @@ +{ + "log": { + "_recordingName": "mapping/import/0_af_m/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "de3566e649dc89e93a6365b0fdaecd4e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-a8cc34aa-264d-4c56-8f04-f4f85d2e1948" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 393, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/serverinfo/*" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 21:02:40 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T21:02:40.540Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "3f3b03432a833cfcbe27438276bb566b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-a8cc34aa-264d-4c56-8f04-f4f85d2e1948" + }, + { + "name": "accept-api-version", + "value": "resource=2.0, protocol=1.0" + }, + { + "name": "x-openam-username", + "value": "openidm-admin" + }, + { + "name": "x-openam-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 507, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/realms/root/authenticate" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 21:02:40 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T21:02:40.557Z", + "time": 3, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 3 + } + }, + { + "_id": "4c1fef66c916c8940b0315dddc564b06", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-a8cc34aa-264d-4c56-8f04-f4f85d2e1948" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 423, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 815, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 815, + "text": "[\"H4sIAAAAAAAA/w==\",\"7ZhRj6IwEMe/S59JfPetq0jIYcmBPJiLIV2opBtsOVo25xm/+7Wre6fZshRluRcfTBRm/owwv/+MHkBKczAFYs8y4IAdrirKCgGmPw4XZyY7zHBB8rAuMKO/saScpedjES+Jysw4E4TJiPxsaE1U4haXgjggp6Iq8R7hHVFi3TpUCYEpa8rSAcw2qeIlzSg5lY0zHQGmB1CU/FlVod4eHSB4U2dabjIRBDNJhFSZcl/pY5L8kpMX/IpFVtNKAh1PZYNPSgAun3wvCZNYnRjsAuqL5nTwUuMwiWZuuvTj2EfezfUWNeevey1ecSHhXQqX5ZnqAjBeoxm4DlyECZqnMIhcOF+ngY++ufPurAR9T2DgL3y7YKiK8ZBNrC4gDVGw7g5dwchzV6kSDiMb6fMTs46HQZB6IXK7I2chWvjR0kb07XZbXPspdtEKHDeqL2pekVqeqNtcNMMZzQm/4FXLKB+BW0nqU7jEdUHkRXitUdYF2NlOfG6480f+/EIyOYQPtQn3M6Y2FaNTfXqrh2sHs4uN1Dm38dwDO2tn6cvbJ446CP99bOjK3+6EsHOumigVxr42YwuFoAXbKRrfZROhrtyT0VaVdiBbU3ruCVjkW/3qGmp914N33WvtW1cEs1rfAW5Vzz1Y/KfJP8BTeOwMo+0M+C+5fc3K6T+NTf7WaKMw25lR5B5nsxFsNzmb7Me28dg2xtw2zNvB15PsdEx+W9L/1f/2N4g10B/zDNx+DHrg+cBzTDxHna5dTDr2g8yE79UPm+Pm+AdHFI9+yRQAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 21:02:40 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T21:02:40.566Z", + "time": 3, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 3 + } + }, + { + "_id": "4ba269ad1b4bcb0584c1898e5c04c91b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 5308, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-a8cc34aa-264d-4c56-8f04-f4f85d2e1948" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "5308" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"mappings\":[{\"_id\":\"sync/managedOrganization_managedRole\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedRole\",\"icon\":null,\"name\":\"managedOrganization_managedRole\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[],\"target\":\"managed/role\"},{\"_id\":\"sync/managedOrganization_managedSeantestmanagedobject\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedSeantestmanagedobject\",\"icon\":null,\"name\":\"managedOrganization_managedSeantestmanagedobject\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[\"managedOrganization_managedRole\"],\"target\":\"managed/seantestmanagedobject\"},{\"_id\":\"sync/managedAssignment_managedUser\",\"consentRequired\":false,\"displayName\":\"managedAssignment_managedUser\",\"icon\":null,\"name\":\"managedAssignment_managedUser\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"groovy\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\"],\"target\":\"managed/user\"},{\"_id\":\"sync/managedSeantestmanagedobject_managedUser\",\"consentRequired\":false,\"displayName\":\"managedSeantestmanagedobject_managedUser\",\"icon\":null,\"name\":\"managedSeantestmanagedobject_managedUser\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/seantestmanagedobject\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\"],\"target\":\"managed/user\"},{\"_id\":\"sync/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\",\"managedSeantestmanagedobject_managedUser\"],\"target\":\"managed/organization\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 5321, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 5321, + "text": "{\"_id\":\"sync\",\"mappings\":[{\"_id\":\"sync/managedOrganization_managedRole\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedRole\",\"icon\":null,\"name\":\"managedOrganization_managedRole\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[],\"target\":\"managed/role\"},{\"_id\":\"sync/managedOrganization_managedSeantestmanagedobject\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedSeantestmanagedobject\",\"icon\":null,\"name\":\"managedOrganization_managedSeantestmanagedobject\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[\"managedOrganization_managedRole\"],\"target\":\"managed/seantestmanagedobject\"},{\"_id\":\"sync/managedAssignment_managedUser\",\"consentRequired\":false,\"displayName\":\"managedAssignment_managedUser\",\"icon\":null,\"name\":\"managedAssignment_managedUser\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"groovy\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\"],\"target\":\"managed/user\"},{\"_id\":\"sync/managedSeantestmanagedobject_managedUser\",\"consentRequired\":false,\"displayName\":\"managedSeantestmanagedobject_managedUser\",\"icon\":null,\"name\":\"managedSeantestmanagedobject_managedUser\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/seantestmanagedobject\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\"],\"target\":\"managed/user\"},{\"_id\":\"sync/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\",\"managedSeantestmanagedobject_managedUser\"],\"target\":\"managed/organization\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 21:02:40 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T21:02:40.576Z", + "time": 20, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 20 + } + }, + { + "_id": "05b1cd7b299518b68b4f5d29e6effc86", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 5265, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-a8cc34aa-264d-4c56-8f04-f4f85d2e1948" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "5265" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"mappings\":[{\"_id\":\"sync/managedOrganization_managedRole\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedRole\",\"icon\":null,\"name\":\"managedOrganization_managedRole\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[],\"target\":\"managed/role\"},{\"_id\":\"sync/managedOrganization_managedSeantestmanagedobject\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedSeantestmanagedobject\",\"icon\":null,\"name\":\"managedOrganization_managedSeantestmanagedobject\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[\"managedOrganization_managedRole\"],\"target\":\"managed/seantestmanagedobject\"},{\"_id\":\"sync/managedAssignment_managedUser\",\"consentRequired\":false,\"displayName\":\"managedAssignment_managedUser\",\"icon\":null,\"name\":\"managedAssignment_managedUser\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"groovy\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\"],\"target\":\"managed/user\"},{\"_id\":\"sync/managedSeantestmanagedobject_managedUser\",\"consentRequired\":false,\"displayName\":\"managedSeantestmanagedobject_managedUser\",\"icon\":null,\"name\":\"managedSeantestmanagedobject_managedUser\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/seantestmanagedobject\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\"],\"target\":\"managed/user\"},{\"_id\":\"sync/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\"],\"target\":\"managed/organization\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 5278, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 5278, + "text": "{\"_id\":\"sync\",\"mappings\":[{\"_id\":\"sync/managedOrganization_managedRole\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedRole\",\"icon\":null,\"name\":\"managedOrganization_managedRole\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[],\"target\":\"managed/role\"},{\"_id\":\"sync/managedOrganization_managedSeantestmanagedobject\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedSeantestmanagedobject\",\"icon\":null,\"name\":\"managedOrganization_managedSeantestmanagedobject\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[\"managedOrganization_managedRole\"],\"target\":\"managed/seantestmanagedobject\"},{\"_id\":\"sync/managedAssignment_managedUser\",\"consentRequired\":false,\"displayName\":\"managedAssignment_managedUser\",\"icon\":null,\"name\":\"managedAssignment_managedUser\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"groovy\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\"],\"target\":\"managed/user\"},{\"_id\":\"sync/managedSeantestmanagedobject_managedUser\",\"consentRequired\":false,\"displayName\":\"managedSeantestmanagedobject_managedUser\",\"icon\":null,\"name\":\"managedSeantestmanagedobject_managedUser\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/seantestmanagedobject\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\"],\"target\":\"managed/user\"},{\"_id\":\"sync/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\"],\"target\":\"managed/organization\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 21:02:40 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T21:02:40.684Z", + "time": 17, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 17 + } + }, + { + "_id": "de8082309655989ba7909c11049be993", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 5326, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-a8cc34aa-264d-4c56-8f04-f4f85d2e1948" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "5326" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"mappings\":[{\"_id\":\"sync/managedOrganization_managedRole\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedRole\",\"icon\":null,\"name\":\"managedOrganization_managedRole\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[],\"target\":\"managed/role\"},{\"_id\":\"sync/managedOrganization_managedSeantestmanagedobject\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedSeantestmanagedobject\",\"icon\":null,\"name\":\"managedOrganization_managedSeantestmanagedobject\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[\"managedOrganization_managedRole\"],\"target\":\"managed/seantestmanagedobject\"},{\"_id\":\"sync/managedAssignment_managedUser\",\"consentRequired\":false,\"displayName\":\"managedAssignment_managedUser\",\"icon\":null,\"name\":\"managedAssignment_managedUser\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"groovy\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\"],\"target\":\"managed/user\"},{\"_id\":\"sync/managedSeantestmanagedobject_managedUser\",\"consentRequired\":false,\"displayName\":\"managedSeantestmanagedobject_managedUser\",\"icon\":null,\"name\":\"managedSeantestmanagedobject_managedUser\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/seantestmanagedobject\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\",\"seantestmapping\"],\"target\":\"managed/user\"},{\"_id\":\"sync/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\",\"managedSeantestmanagedobject_managedUser\"],\"target\":\"managed/organization\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 5339, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 5339, + "text": "{\"_id\":\"sync\",\"mappings\":[{\"_id\":\"sync/managedOrganization_managedRole\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedRole\",\"icon\":null,\"name\":\"managedOrganization_managedRole\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[],\"target\":\"managed/role\"},{\"_id\":\"sync/managedOrganization_managedSeantestmanagedobject\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedSeantestmanagedobject\",\"icon\":null,\"name\":\"managedOrganization_managedSeantestmanagedobject\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[\"managedOrganization_managedRole\"],\"target\":\"managed/seantestmanagedobject\"},{\"_id\":\"sync/managedAssignment_managedUser\",\"consentRequired\":false,\"displayName\":\"managedAssignment_managedUser\",\"icon\":null,\"name\":\"managedAssignment_managedUser\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"groovy\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\"],\"target\":\"managed/user\"},{\"_id\":\"sync/managedSeantestmanagedobject_managedUser\",\"consentRequired\":false,\"displayName\":\"managedSeantestmanagedobject_managedUser\",\"icon\":null,\"name\":\"managedSeantestmanagedobject_managedUser\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/seantestmanagedobject\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\",\"seantestmapping\"],\"target\":\"managed/user\"},{\"_id\":\"sync/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\",\"managedSeantestmanagedobject_managedUser\"],\"target\":\"managed/organization\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 21:02:40 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T21:02:40.719Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/role_268382745/export_4211608755/0_AD_m_4209801721/openidm_3290118515/recording.har b/test/e2e/mocks/role_268382745/export_4211608755/0_AD_m_4209801721/openidm_3290118515/recording.har new file mode 100644 index 000000000..c4b468952 --- /dev/null +++ b/test/e2e/mocks/role_268382745/export_4211608755/0_AD_m_4209801721/openidm_3290118515/recording.har @@ -0,0 +1,353 @@ +{ + "log": { + "_recordingName": "role/export/0_AD_m/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "de3566e649dc89e93a6365b0fdaecd4e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-eb984b13-de63-4df8-9ac7-8168152f9b3f" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 393, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/serverinfo/*" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:04:15 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:04:15.919Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "3f3b03432a833cfcbe27438276bb566b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-eb984b13-de63-4df8-9ac7-8168152f9b3f" + }, + { + "name": "accept-api-version", + "value": "resource=2.0, protocol=1.0" + }, + { + "name": "x-openam-username", + "value": "openidm-admin" + }, + { + "name": "x-openam-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 507, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/realms/root/authenticate" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:04:15 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:04:15.937Z", + "time": 3, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 3 + } + }, + { + "_id": "1c44d5ed6a798188a1711859e5a9fceb", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-eb984b13-de63-4df8-9ac7-8168152f9b3f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 532, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "1000" + }, + { + "name": "_fields", + "value": "condition,description,name,privileges,temporalConstraints" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role?_queryFilter=true&_pageSize=1000&_fields=condition%2Cdescription%2Cname%2Cprivileges%2CtemporalConstraints" + }, + "response": { + "bodySize": 1357, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1357, + "text": "{\"result\":[{\"_id\":\"openidm-admin\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8780\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-admin\",\"description\":\"Administrative access\",\"temporalConstraints\":[]},{\"_id\":\"openidm-authorized\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8781\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-authorized\",\"description\":\"Basic minimum user\",\"temporalConstraints\":[]},{\"_id\":\"openidm-reg\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8783\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-reg\",\"description\":\"Anonymous access\",\"temporalConstraints\":[]},{\"_id\":\"openidm-cert\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8782\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-cert\",\"description\":\"Authenticated via certificate\",\"temporalConstraints\":[]},{\"_id\":\"openidm-tasks-manager\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8784\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-tasks-manager\",\"description\":\"Allowed to reassign workflow tasks\",\"temporalConstraints\":[]},{\"_id\":\"platform-provisioning\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8785\",\"privileges\":[],\"condition\":null,\"name\":\"platform-provisioning\",\"description\":\"Platform provisioning access\",\"temporalConstraints\":[]}],\"resultCount\":6,\"pagedResultsCookie\":null,\"totalPagedResultsPolicy\":\"NONE\",\"totalPagedResults\":-1,\"remainingPagedResults\":-1}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:04:15 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1357" + } + ], + "headersSize": 2221, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:04:15.948Z", + "time": 6, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 6 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/role_268382745/export_4211608755/0_aD_m_3016648281/openidm_3290118515/recording.har b/test/e2e/mocks/role_268382745/export_4211608755/0_aD_m_3016648281/openidm_3290118515/recording.har new file mode 100644 index 000000000..d60b1cf27 --- /dev/null +++ b/test/e2e/mocks/role_268382745/export_4211608755/0_aD_m_3016648281/openidm_3290118515/recording.har @@ -0,0 +1,353 @@ +{ + "log": { + "_recordingName": "role/export/0_aD_m/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "de3566e649dc89e93a6365b0fdaecd4e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-3ad3b16d-49fc-4658-bf60-fccc4bee660a" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 393, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/serverinfo/*" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:04:32 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:04:32.158Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "3f3b03432a833cfcbe27438276bb566b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-3ad3b16d-49fc-4658-bf60-fccc4bee660a" + }, + { + "name": "accept-api-version", + "value": "resource=2.0, protocol=1.0" + }, + { + "name": "x-openam-username", + "value": "openidm-admin" + }, + { + "name": "x-openam-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 507, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/realms/root/authenticate" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:04:32 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:04:32.174Z", + "time": 3, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 3 + } + }, + { + "_id": "1c44d5ed6a798188a1711859e5a9fceb", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-3ad3b16d-49fc-4658-bf60-fccc4bee660a" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 532, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "1000" + }, + { + "name": "_fields", + "value": "condition,description,name,privileges,temporalConstraints" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role?_queryFilter=true&_pageSize=1000&_fields=condition%2Cdescription%2Cname%2Cprivileges%2CtemporalConstraints" + }, + "response": { + "bodySize": 1357, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1357, + "text": "{\"result\":[{\"_id\":\"openidm-admin\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8780\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-admin\",\"description\":\"Administrative access\",\"temporalConstraints\":[]},{\"_id\":\"openidm-authorized\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8781\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-authorized\",\"description\":\"Basic minimum user\",\"temporalConstraints\":[]},{\"_id\":\"openidm-reg\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8783\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-reg\",\"description\":\"Anonymous access\",\"temporalConstraints\":[]},{\"_id\":\"openidm-cert\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8782\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-cert\",\"description\":\"Authenticated via certificate\",\"temporalConstraints\":[]},{\"_id\":\"openidm-tasks-manager\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8784\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-tasks-manager\",\"description\":\"Allowed to reassign workflow tasks\",\"temporalConstraints\":[]},{\"_id\":\"platform-provisioning\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-8785\",\"privileges\":[],\"condition\":null,\"name\":\"platform-provisioning\",\"description\":\"Platform provisioning access\",\"temporalConstraints\":[]}],\"resultCount\":6,\"pagedResultsCookie\":null,\"totalPagedResultsPolicy\":\"NONE\",\"totalPagedResults\":-1,\"remainingPagedResults\":-1}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:04:32 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1357" + } + ], + "headersSize": 2221, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:04:32.183Z", + "time": 6, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 6 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/role_268382745/import_288002260/0_AD_m_4209801721/openidm_3290118515/recording.har b/test/e2e/mocks/role_268382745/import_288002260/0_AD_m_4209801721/openidm_3290118515/recording.har new file mode 100644 index 000000000..359af8de2 --- /dev/null +++ b/test/e2e/mocks/role_268382745/import_288002260/0_AD_m_4209801721/openidm_3290118515/recording.har @@ -0,0 +1,205 @@ +{ + "log": { + "_recordingName": "role/import/0_AD_m/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "de3566e649dc89e93a6365b0fdaecd4e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-bdf08f68-8a91-4b13-9837-4c561d46385f" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 393, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/serverinfo/*" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:49 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:35:49.902Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "3f3b03432a833cfcbe27438276bb566b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-bdf08f68-8a91-4b13-9837-4c561d46385f" + }, + { + "name": "accept-api-version", + "value": "resource=2.0, protocol=1.0" + }, + { + "name": "x-openam-username", + "value": "openidm-admin" + }, + { + "name": "x-openam-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 507, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/realms/root/authenticate" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:49 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:35:49.918Z", + "time": 3, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 3 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/role_268382745/import_288002260/0_af_m_950605143/openidm_3290118515/recording.har b/test/e2e/mocks/role_268382745/import_288002260/0_af_m_950605143/openidm_3290118515/recording.har new file mode 100644 index 000000000..01ff1b388 --- /dev/null +++ b/test/e2e/mocks/role_268382745/import_288002260/0_af_m_950605143/openidm_3290118515/recording.har @@ -0,0 +1,1093 @@ +{ + "log": { + "_recordingName": "role/import/0_af_m/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "de3566e649dc89e93a6365b0fdaecd4e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5308818d-6ee9-4c97-be09-2091e67bab27" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 393, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/serverinfo/*" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:33 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:35:33.673Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "3f3b03432a833cfcbe27438276bb566b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5308818d-6ee9-4c97-be09-2091e67bab27" + }, + { + "name": "accept-api-version", + "value": "resource=2.0, protocol=1.0" + }, + { + "name": "x-openam-username", + "value": "openidm-admin" + }, + { + "name": "x-openam-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 507, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/realms/root/authenticate" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:33 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-06-05T20:35:33.692Z", + "time": 3, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 3 + } + }, + { + "_id": "6787041b9e28fc782af01d1a938d5c61", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 117, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5308818d-6ee9-4c97-be09-2091e67bab27" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "117" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 460, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"openidm-admin\",\"condition\":null,\"description\":\"Administrative access\",\"name\":\"openidm-admin\",\"privileges\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role/openidm-admin" + }, + "response": { + "bodySize": 194, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 194, + "text": "{\"_id\":\"openidm-admin\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-10142\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-admin\",\"description\":\"Administrative access\",\"temporalConstraints\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:33 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"f66a7552-09b3-4305-a88f-914dbd9c79bb-10142\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "194" + } + ], + "headersSize": 2255, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:33.703Z", + "time": 105, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 105 + } + }, + { + "_id": "4b1a0a65d562ca6a9f68f3aa3364e99c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 124, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5308818d-6ee9-4c97-be09-2091e67bab27" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "124" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 465, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"openidm-authorized\",\"condition\":null,\"description\":\"Basic minimum user\",\"name\":\"openidm-authorized\",\"privileges\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role/openidm-authorized" + }, + "response": { + "bodySize": 201, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 201, + "text": "{\"_id\":\"openidm-authorized\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-10143\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-authorized\",\"description\":\"Basic minimum user\",\"temporalConstraints\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:33 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"f66a7552-09b3-4305-a88f-914dbd9c79bb-10143\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "201" + } + ], + "headersSize": 2255, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:33.813Z", + "time": 14, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 14 + } + }, + { + "_id": "2bfff6c7e2c8069aca3368f98758ec42", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 123, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5308818d-6ee9-4c97-be09-2091e67bab27" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "123" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"openidm-cert\",\"condition\":null,\"description\":\"Authenticated via certificate\",\"name\":\"openidm-cert\",\"privileges\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role/openidm-cert" + }, + "response": { + "bodySize": 200, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 200, + "text": "{\"_id\":\"openidm-cert\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-10144\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-cert\",\"description\":\"Authenticated via certificate\",\"temporalConstraints\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:33 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"f66a7552-09b3-4305-a88f-914dbd9c79bb-10144\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "200" + } + ], + "headersSize": 2255, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:33.833Z", + "time": 12, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 12 + } + }, + { + "_id": "75d6976246a9dc1f1ab1849bbcfbcc40", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 108, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5308818d-6ee9-4c97-be09-2091e67bab27" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "108" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"openidm-reg\",\"condition\":null,\"description\":\"Anonymous access\",\"name\":\"openidm-reg\",\"privileges\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role/openidm-reg" + }, + "response": { + "bodySize": 185, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 185, + "text": "{\"_id\":\"openidm-reg\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-10145\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-reg\",\"description\":\"Anonymous access\",\"temporalConstraints\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:33 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"f66a7552-09b3-4305-a88f-914dbd9c79bb-10145\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "185" + } + ], + "headersSize": 2255, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:33.852Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "2b8a77d0354a870267b704fc6f7b358f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 146, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5308818d-6ee9-4c97-be09-2091e67bab27" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "146" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"openidm-tasks-manager\",\"condition\":null,\"description\":\"Allowed to reassign workflow tasks\",\"name\":\"openidm-tasks-manager\",\"privileges\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role/openidm-tasks-manager" + }, + "response": { + "bodySize": 223, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 223, + "text": "{\"_id\":\"openidm-tasks-manager\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-10146\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-tasks-manager\",\"description\":\"Allowed to reassign workflow tasks\",\"temporalConstraints\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:33 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"f66a7552-09b3-4305-a88f-914dbd9c79bb-10146\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "223" + } + ], + "headersSize": 2255, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:33.866Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "ee2c366c33d54481795486a93f74a3a7", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 140, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5308818d-6ee9-4c97-be09-2091e67bab27" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "140" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"platform-provisioning\",\"condition\":null,\"description\":\"Platform provisioning access\",\"name\":\"platform-provisioning\",\"privileges\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role/platform-provisioning" + }, + "response": { + "bodySize": 217, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 217, + "text": "{\"_id\":\"platform-provisioning\",\"_rev\":\"f66a7552-09b3-4305-a88f-914dbd9c79bb-10147\",\"privileges\":[],\"condition\":null,\"name\":\"platform-provisioning\",\"description\":\"Platform provisioning access\",\"temporalConstraints\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Thu, 05 Jun 2025 20:35:33 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"f66a7552-09b3-4305-a88f-914dbd9c79bb-10147\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "217" + } + ], + "headersSize": 2255, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-06-05T20:35:33.882Z", + "time": 13, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 13 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/role-export.e2e.test.js b/test/e2e/role-export.e2e.test.js index c22966c59..739d40d39 100644 --- a/test/e2e/role-export.e2e.test.js +++ b/test/e2e/role-export.e2e.test.js @@ -46,7 +46,7 @@ * the recordings must be committed to the frodo-lib project. */ -/* +/* Cloud FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo role export -i ccb11ba1-333b-4197-95db-89bb08a2ab56 -f roleExportTestFile1.json -N FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo role export --role-id ccb11ba1-333b-4197-95db-89bb08a2ab56 FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo role export -n test-internal-role @@ -55,13 +55,17 @@ FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgebloc FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo role export --all FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo role export -AND roleExportTestDir1 FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo role export --all-separate --directory roleExportTestDir2 - */ + +// IDM +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo role export -AD testDir4 -m idm +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo role export -aD testDir5 -m idm +*/ import { getEnv, testExport } from './utils/TestUtils'; -import { connection as c } from './utils/TestConfig'; +import { connection as c, idm_connection as ic} from './utils/TestConfig'; process.env['FRODO_MOCK'] = '1'; const env = getEnv(c); - +const idmenv =getEnv(ic) const type = 'internalRole'; describe('frodo role export', () => { @@ -112,4 +116,16 @@ describe('frodo role export', () => { const CMD = `frodo role export --all-separate --directory ${exportDirectory}`; await testExport(CMD, env, type, undefined, exportDirectory, false); }); + test('"frodo role export -AD roleExportTestDir3 -m idm": should export all idm roles to separate files', async () => { + const exportDirectory = "roleExportTestDir3"; + const CMD = `frodo role export -AD roleExportTestDir3 -m idm`; + await testExport(CMD, idmenv, type, undefined, exportDirectory, false); + }); + + test('"frodo role export -aD roleExportTestDir4 -m idm ": should export all idm roles to one file', async () => { + const exportDirectory = "roleExportTestDir4"; + const CMD = `frodo role export -aD roleExportTestDir4 -m idm`; + await testExport(CMD, idmenv, type, undefined, exportDirectory, false); + }); + }); diff --git a/test/e2e/role-import.e2e.test.js b/test/e2e/role-import.e2e.test.js index d6de14ba1..81fbdb48d 100644 --- a/test/e2e/role-import.e2e.test.js +++ b/test/e2e/role-import.e2e.test.js @@ -46,7 +46,7 @@ * the recordings must be committed to the frodo-lib project. */ -/* +/* Cloud FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo role import -i ccb11ba1-333b-4197-95db-89bb08a2ab56 -f test/e2e/exports/all/allInternalRoles.internalRole.json FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo role import --role-id ccb11ba1-333b-4197-95db-89bb08a2ab56 --file test/e2e/exports/all/allInternalRoles.internalRole.json FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo role import -n test-internal-role -f test/e2e/exports/all/allInternalRoles.internalRole.json @@ -56,17 +56,22 @@ FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgebloc FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo role import --all --file test/e2e/exports/all/allInternalRoles.internalRole.json FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo role import -AD test/e2e/exports/all-separate/cloud/global/internalRole FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo role import --all-separate --directory test/e2e/exports/all-separate/cloud/global/internalRole - */ + +// IDM +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo role import -af test/e2e/exports/all/idm/allInternalRoles.internalRole.json -m idm +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo role import -AD test/e2e/exports/all-separate/idm/global/internalRole -m idm +*/ import cp from 'child_process'; import { promisify } from 'util'; import { getEnv, removeAnsiEscapeCodes } from './utils/TestUtils'; -import { connection as c } from './utils/TestConfig'; +import { connection as c, idm_connection as ic } from './utils/TestConfig'; const exec = promisify(cp.exec); process.env['FRODO_MOCK'] = '1'; const env = getEnv(c); +const idmenv = getEnv(ic) const allDirectory = "test/e2e/exports/all"; const allRolesFileName = "allInternalRoles.internalRole.json"; @@ -127,4 +132,16 @@ describe('frodo role import', () => { const { stdout } = await exec(CMD, env); expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); }); + + test(`"frodo role import -af test/e2e/exports/all/idm/allInternalRoles.internalRole.json -m idm": should import all on prem idm roles from one file"`, async () => { + const CMD = `frodo role import -af test/e2e/exports/all/idm/allInternalRoles.internalRole.json -m idm `; + const { stdout } = await exec(CMD, idmenv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + }); + + test(`"frodo role import -AD test/e2e/exports/all-separate/idm/global/internalRole -m idm ": should import all on prem idm roles from the directory"`, async () => { + const CMD = `frodo role import -AD test/e2e/exports/all-separate/idm/global/internalRole -m idm`; + const { stdout } = await exec(CMD, idmenv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + }); }); diff --git a/test/e2e/utils/TestConfig.js b/test/e2e/utils/TestConfig.js index f9bc8facb..3a99b81ab 100644 --- a/test/e2e/utils/TestConfig.js +++ b/test/e2e/utils/TestConfig.js @@ -14,3 +14,10 @@ export const classic_connection = { pass: 'Sup3rS3cr3t!', realm: '/' } + +export const idm_connection = { + host: 'http://openidm-frodo-dev.classic.com:9080/openidm', + user: 'openidm-admin', + pass: 'openidm-admin', + realm: '/', +} \ No newline at end of file From 028794fe872ca9b0d3a8d584987967c6a8853d5d Mon Sep 17 00:00:00 2001 From: Sean Koo Date: Wed, 15 Oct 2025 10:51:59 -0600 Subject: [PATCH 2/3] Add ability to extract idm files scripts --- src/cli/agent/agent-describe.ts | 6 +- src/cli/agent/agent-export.ts | 6 +- src/cli/agent/agent-import.ts | 21 +- src/cli/agent/agent-list.ts | 21 +- src/cli/authn/authn-describe.ts | 21 +- src/cli/authn/authn-export.ts | 21 +- src/cli/authn/authn-import.ts | 21 +- src/cli/idm/idm-export.ts | 13 +- src/cli/idm/idm-schema-object-export.ts | 13 +- src/cli/mapping/mapping-export.ts | 23 +- src/ops/ConfigOps.ts | 92 +- src/ops/IdmOps.ts | 355 +- src/ops/MappingOps.ts | 262 +- src/utils/Config.ts | 84 +- .../en/__snapshots__/idm-export.test.js.snap | 3 + .../__snapshots__/mapping-export.test.js.snap | 1 + test/e2e/env/Connections.json | 5 + ...tTopics.access.filter.script.script.groovy | 1 + ...ics.authentication.filter.script.script.js | 1 + .../exceptionFormatter.script.js | 1 + ...roperties.augmentSecurityContext.script.js | 1 + ...roperties.augmentSecurityContext.script.js | 1 + .../endpoint/validateQueryFilter.script.js | 1 + .../idm/managed/assignment.managed.json | 235 + .../idm/global/idm/managed/managed.idm.json | 14 + .../idm/managed/organization.managed.json | 405 + .../onCreate.script.js | 1 + .../onRead.script.groovy | 1 + .../idm/global/idm/managed/role.managed.json | 193 + .../role.managed.scripts/onCreate.script.js | 1 + .../seantestmanagedobject.managed.json | 9 + .../idm/global/idm/managed/user.managed.json | 1044 ++ .../user.managed.scripts/postDelete.script.js | 1 + ...resources.0.calculatedProperties.script.js | 1 + ...resources.1.calculatedProperties.script.js | 1 + .../filters.2.condition.script.js | 1 + .../filters.2.onResponse.script.js | 1 + .../seantest.invokeContext.script.script.js | 1 + ...tivate.invokeContext.task.script.script.js | 5 + ...expire.invokeContext.task.script.script.js | 5 + .../policies.AMBIGUOUS.action.script.groovy | 1 + .../policies.SOURCE_MISSING.action.script.js | 1 + ...ies.SOURCE_MISSING.condition.script.groovy | 1 + ...licies.SOURCE_MISSING.postAction.script.js | 1 + .../policies.UNASSIGNED.action.script.js | 1 + .../policies.AMBIGUOUS.action.script.js | 1 + .../policies.MISSING.action.script.groovy | 1 + .../policies.MISSING.postAction.script.groovy | 1 + .../policies.SOURCE_MISSING.action.script.js | 1 + ...olicies.SOURCE_MISSING.condition.script.js | 1 + .../idm/global/sync/seantestmapping.sync.json | 69 + .../openidm_3290118515/recording.har | 8562 ++++++++++++++ .../openidm_3290118515/recording.har | 8562 ++++++++++++++ .../openidm_3290118515/recording.har | 8562 ++++++++++++++ .../openidm_3290118515/recording.har | 9821 +++++++++++++++++ .../openidm_3290118515/recording.har | 205 + test/e2e/utils/TestUtils.js | 2 +- 57 files changed, 38486 insertions(+), 200 deletions(-) create mode 100644 test/e2e/exports/all-separate/idm/global/idm/audit.idm.scripts/eventTopics.access.filter.script.script.groovy create mode 100644 test/e2e/exports/all-separate/idm/global/idm/audit.idm.scripts/eventTopics.authentication.filter.script.script.js create mode 100644 test/e2e/exports/all-separate/idm/global/idm/audit.idm.scripts/exceptionFormatter.script.js create mode 100644 test/e2e/exports/all-separate/idm/global/idm/authentication.idm.scripts/serverAuthContext.authModules.0.properties.augmentSecurityContext.script.js create mode 100644 test/e2e/exports/all-separate/idm/global/idm/authentication.idm.scripts/serverAuthContext.authModules.2.properties.augmentSecurityContext.script.js create mode 100644 test/e2e/exports/all-separate/idm/global/idm/endpoint/validateQueryFilter.script.js create mode 100644 test/e2e/exports/all-separate/idm/global/idm/managed/assignment.managed.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/managed/managed.idm.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/managed/organization.managed.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/managed/organization.managed.scripts/onCreate.script.js create mode 100644 test/e2e/exports/all-separate/idm/global/idm/managed/organization.managed.scripts/onRead.script.groovy create mode 100644 test/e2e/exports/all-separate/idm/global/idm/managed/role.managed.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/managed/role.managed.scripts/onCreate.script.js create mode 100644 test/e2e/exports/all-separate/idm/global/idm/managed/seantestmanagedobject.managed.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/managed/user.managed.json create mode 100644 test/e2e/exports/all-separate/idm/global/idm/managed/user.managed.scripts/postDelete.script.js create mode 100644 test/e2e/exports/all-separate/idm/global/idm/policy.idm.scripts/resources.0.calculatedProperties.script.js create mode 100644 test/e2e/exports/all-separate/idm/global/idm/policy.idm.scripts/resources.1.calculatedProperties.script.js create mode 100644 test/e2e/exports/all-separate/idm/global/idm/router.idm.scripts/filters.2.condition.script.js create mode 100644 test/e2e/exports/all-separate/idm/global/idm/router.idm.scripts/filters.2.onResponse.script.js create mode 100644 test/e2e/exports/all-separate/idm/global/idm/schedule/seantest.invokeContext.script.script.js create mode 100644 test/e2e/exports/all-separate/idm/global/idm/schedule/taskscan_activate.invokeContext.task.script.script.js create mode 100644 test/e2e/exports/all-separate/idm/global/idm/schedule/taskscan_expire.invokeContext.task.script.script.js create mode 100644 test/e2e/exports/all-separate/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.AMBIGUOUS.action.script.groovy create mode 100644 test/e2e/exports/all-separate/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.SOURCE_MISSING.action.script.js create mode 100644 test/e2e/exports/all-separate/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.SOURCE_MISSING.condition.script.groovy create mode 100644 test/e2e/exports/all-separate/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.SOURCE_MISSING.postAction.script.js create mode 100644 test/e2e/exports/all-separate/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.UNASSIGNED.action.script.js create mode 100644 test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.AMBIGUOUS.action.script.js create mode 100644 test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.MISSING.action.script.groovy create mode 100644 test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.MISSING.postAction.script.groovy create mode 100644 test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.SOURCE_MISSING.action.script.js create mode 100644 test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.SOURCE_MISSING.condition.script.js create mode 100644 test/e2e/exports/all-separate/idm/global/sync/seantestmapping.sync.json create mode 100644 test/e2e/mocks/config_603940551/export_4211608755/0_aD_4129875621/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/config_603940551/export_4211608755/0_aD_f_3100536376/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/config_603940551/export_4211608755/0_af_3559436575/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/config_603940551/import_288002260/0_af_3559436575/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/config_603940551/import_288002260/1_AD_909783044/openidm_3290118515/recording.har diff --git a/src/cli/agent/agent-describe.ts b/src/cli/agent/agent-describe.ts index e21812b67..b65e5ae19 100644 --- a/src/cli/agent/agent-describe.ts +++ b/src/cli/agent/agent-describe.ts @@ -17,7 +17,11 @@ const deploymentTypes = [ ]; export default function setup() { - const program = new FrodoCommand('frodo agent describe', [], deploymentTypes); + const program = new FrodoCommand( + 'frodo agent describe', + [], + globalDeploymentTypes + ); program .description('Describe agents.') diff --git a/src/cli/agent/agent-export.ts b/src/cli/agent/agent-export.ts index 3943a25dc..6202369e2 100644 --- a/src/cli/agent/agent-export.ts +++ b/src/cli/agent/agent-export.ts @@ -23,7 +23,11 @@ const deploymentTypes = [ ]; export default function setup() { - const program = new FrodoCommand('frodo agent export', [], deploymentTypes); + const program = new FrodoCommand( + 'frodo agent export', + [], + globalDeploymentTypes + ); program .description('Export agents.') diff --git a/src/cli/agent/agent-import.ts b/src/cli/agent/agent-import.ts index 9c07ce93f..ef3a267ac 100644 --- a/src/cli/agent/agent-import.ts +++ b/src/cli/agent/agent-import.ts @@ -11,20 +11,15 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const { - CLOUD_DEPLOYMENT_TYPE_KEY, - FORGEOPS_DEPLOYMENT_TYPE_KEY, - CLASSIC_DEPLOYMENT_TYPE_KEY, -} = frodo.utils.constants; - -const deploymentTypes = [ - CLOUD_DEPLOYMENT_TYPE_KEY, - FORGEOPS_DEPLOYMENT_TYPE_KEY, - CLASSIC_DEPLOYMENT_TYPE_KEY, -]; +const { CLASSIC_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const globalDeploymentTypes = [CLASSIC_DEPLOYMENT_TYPE_KEY]; export default function setup() { - const program = new FrodoCommand('frodo agent import', [], deploymentTypes); + const program = new FrodoCommand( + 'frodo agent import', + [], + globalDeploymentTypes + ); program .description('Import agents.') @@ -63,7 +58,7 @@ export default function setup() { await getTokens( false, true, - options.global ? [CLASSIC_DEPLOYMENT_TYPE_KEY] : deploymentTypes + options.global ? globalDeploymentTypes : undefined ) ) { // import diff --git a/src/cli/agent/agent-list.ts b/src/cli/agent/agent-list.ts index a29f4dd6a..20a92284f 100644 --- a/src/cli/agent/agent-list.ts +++ b/src/cli/agent/agent-list.ts @@ -5,20 +5,15 @@ import { listAgents } from '../../ops/AgentOps.js'; import { getTokens } from '../../ops/AuthenticateOps'; import { FrodoCommand } from '../FrodoCommand'; -const { - CLOUD_DEPLOYMENT_TYPE_KEY, - FORGEOPS_DEPLOYMENT_TYPE_KEY, - CLASSIC_DEPLOYMENT_TYPE_KEY, -} = frodo.utils.constants; - -const deploymentTypes = [ - CLOUD_DEPLOYMENT_TYPE_KEY, - FORGEOPS_DEPLOYMENT_TYPE_KEY, - CLASSIC_DEPLOYMENT_TYPE_KEY, -]; +const { CLASSIC_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const globalDeploymentTypes = [CLASSIC_DEPLOYMENT_TYPE_KEY]; export default function setup() { - const program = new FrodoCommand('frodo agent list', [], deploymentTypes); + const program = new FrodoCommand( + 'frodo agent list', + [], + globalDeploymentTypes + ); program .description('List agents.') @@ -41,7 +36,7 @@ export default function setup() { await getTokens( false, true, - options.global ? [CLASSIC_DEPLOYMENT_TYPE_KEY] : deploymentTypes + options.global ? globalDeploymentTypes : undefined ) ) { const outcome = await listAgents(options.long, options.global); diff --git a/src/cli/authn/authn-describe.ts b/src/cli/authn/authn-describe.ts index f446b9000..c01abb1af 100644 --- a/src/cli/authn/authn-describe.ts +++ b/src/cli/authn/authn-describe.ts @@ -6,20 +6,15 @@ import { describeAuthenticationSettings } from '../../ops/AuthenticationSettings import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const { - CLOUD_DEPLOYMENT_TYPE_KEY, - FORGEOPS_DEPLOYMENT_TYPE_KEY, - CLASSIC_DEPLOYMENT_TYPE_KEY, -} = frodo.utils.constants; - -const deploymentTypes = [ - CLOUD_DEPLOYMENT_TYPE_KEY, - FORGEOPS_DEPLOYMENT_TYPE_KEY, - CLASSIC_DEPLOYMENT_TYPE_KEY, -]; +const { CLASSIC_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const globalDeploymentTypes = [CLASSIC_DEPLOYMENT_TYPE_KEY]; export default function setup() { - const program = new FrodoCommand('frodo authn describe', [], deploymentTypes); + const program = new FrodoCommand( + 'frodo authn describe', + [], + globalDeploymentTypes + ); program .description('Describe authentication settings.') @@ -42,7 +37,7 @@ export default function setup() { await getTokens( false, true, - options.global ? [CLASSIC_DEPLOYMENT_TYPE_KEY] : deploymentTypes + options.global ? globalDeploymentTypes : undefined ) ) { verboseMessage(`Describing authentication settings...`); diff --git a/src/cli/authn/authn-export.ts b/src/cli/authn/authn-export.ts index 5f74c33ac..8a000a3d5 100644 --- a/src/cli/authn/authn-export.ts +++ b/src/cli/authn/authn-export.ts @@ -6,20 +6,15 @@ import { exportAuthenticationSettingsToFile } from '../../ops/AuthenticationSett import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const { - CLOUD_DEPLOYMENT_TYPE_KEY, - FORGEOPS_DEPLOYMENT_TYPE_KEY, - CLASSIC_DEPLOYMENT_TYPE_KEY, -} = frodo.utils.constants; - -const deploymentTypes = [ - CLOUD_DEPLOYMENT_TYPE_KEY, - FORGEOPS_DEPLOYMENT_TYPE_KEY, - CLASSIC_DEPLOYMENT_TYPE_KEY, -]; +const { CLASSIC_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const globalDeploymentTypes = [CLASSIC_DEPLOYMENT_TYPE_KEY]; export default function setup() { - const program = new FrodoCommand('frodo authn export', [], deploymentTypes); + const program = new FrodoCommand( + 'frodo authn export', + [], + globalDeploymentTypes + ); program .description('Export authentication settings.') @@ -48,7 +43,7 @@ export default function setup() { await getTokens( false, true, - options.global ? [CLASSIC_DEPLOYMENT_TYPE_KEY] : deploymentTypes + options.global ?globalDeploymentTypes : undefined ) ) { verboseMessage('Exporting authentication settings to file...'); diff --git a/src/cli/authn/authn-import.ts b/src/cli/authn/authn-import.ts index 55380433b..66a435493 100644 --- a/src/cli/authn/authn-import.ts +++ b/src/cli/authn/authn-import.ts @@ -6,20 +6,15 @@ import { importAuthenticationSettingsFromFile } from '../../ops/AuthenticationSe import { verboseMessage } from '../../utils/Console'; import { FrodoCommand } from '../FrodoCommand'; -const { - CLOUD_DEPLOYMENT_TYPE_KEY, - FORGEOPS_DEPLOYMENT_TYPE_KEY, - CLASSIC_DEPLOYMENT_TYPE_KEY, -} = frodo.utils.constants; - -const deploymentTypes = [ - CLOUD_DEPLOYMENT_TYPE_KEY, - FORGEOPS_DEPLOYMENT_TYPE_KEY, - CLASSIC_DEPLOYMENT_TYPE_KEY, -]; +const { CLASSIC_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const globalDeploymentTypes = [CLASSIC_DEPLOYMENT_TYPE_KEY]; export default function setup() { - const program = new FrodoCommand('frodo authn import', [], deploymentTypes); + const program = new FrodoCommand( + 'frodo authn import', + [], + globalDeploymentTypes + ); program .description('Import authentication settings.') @@ -42,7 +37,7 @@ export default function setup() { await getTokens( false, true, - options.global ? [CLASSIC_DEPLOYMENT_TYPE_KEY] : deploymentTypes + options.global ? globalDeploymentTypes : undefined ) ) { verboseMessage('Importing authentication settings from file...'); diff --git a/src/cli/idm/idm-export.ts b/src/cli/idm/idm-export.ts index fabe52834..5d7f3524d 100644 --- a/src/cli/idm/idm-export.ts +++ b/src/cli/idm/idm-export.ts @@ -77,6 +77,13 @@ export default function setup() { 'Does not include metadata in the export file.' ) ) + + .addOption( + new Option( + '-x, --extract', + 'Extract the scripts from the exported file, and save it to a separate file. Ignored with -a.' + ) + ) .action( // implement command logic inside action handler async (host, realm, user, password, options, command) => { @@ -112,7 +119,8 @@ export default function setup() { options.envFile, options.separateMappings, options.separateObjects, - options.metadata + options.metadata, + options.extract ); if (!outcome) process.exitCode = 1; // --all -a @@ -154,7 +162,8 @@ export default function setup() { options.envFile, options.separateMappings, options.separateObjects, - options.metadata + options.metadata, + options.extract ); if (!outcome) process.exitCode = 1; await warnAboutOfflineConnectorServers(); diff --git a/src/cli/idm/idm-schema-object-export.ts b/src/cli/idm/idm-schema-object-export.ts index 2368b02cf..3b9ad1ee1 100644 --- a/src/cli/idm/idm-schema-object-export.ts +++ b/src/cli/idm/idm-schema-object-export.ts @@ -57,6 +57,13 @@ export default function setup() { 'Does not include metadata in the export file.' ) ) + .addOption( + new Option( + '-x, --extract', + 'Extract scripts from the exported file, and save it to a separate file. Ignored with -a.' + ) + ) + .action( // implement command logic inside action handler async (host, realm, user, password, options, command) => { @@ -103,7 +110,8 @@ export default function setup() { options.envFile, false, false, - options.metadata + options.metadata, + false ); if (!outcome) process.exitCode = 1; } // -A, --all-separate @@ -120,7 +128,8 @@ export default function setup() { options.envFile, false, true, - options.metadata + options.metadata, + options.extract ); if (!outcome) process.exitCode = 1; await warnAboutOfflineConnectorServers(); diff --git a/src/cli/mapping/mapping-export.ts b/src/cli/mapping/mapping-export.ts index 05c234e3b..8f0fcfdc2 100644 --- a/src/cli/mapping/mapping-export.ts +++ b/src/cli/mapping/mapping-export.ts @@ -68,6 +68,13 @@ export default function setup() { 'Where applicable, use string arrays to store multi-line text (e.g. scripts).' ).default(false, 'off') ) + + .addOption( + new Option( + '-x, --extract', + 'Extract the script from the exported file, and save it to a separate file. Ignored with -a.' + ) + ) .action( // implement command logic inside action handler async (host, realm, user, password, options, command) => { @@ -120,12 +127,16 @@ export default function setup() { (await getTokens(false, true, deploymentTypes)) ) { verboseMessage('Exporting all mappings to separate files...'); - const outcome = await exportMappingsToFiles(options.metadata, { - connectorId: options.connectorId, - moType: options.managedObjectType, - deps: options.deps, - useStringArrays: options.useStringArrays, - }); + const outcome = await exportMappingsToFiles( + options.metadata, + options.extract, + { + connectorId: options.connectorId, + moType: options.managedObjectType, + deps: options.deps, + useStringArrays: options.useStringArrays, + } + ); if (!outcome) process.exitCode = 1; } // unrecognized combination of options or no options diff --git a/src/ops/ConfigOps.ts b/src/ops/ConfigOps.ts index 3e3350819..aeacafc94 100644 --- a/src/ops/ConfigOps.ts +++ b/src/ops/ConfigOps.ts @@ -17,8 +17,19 @@ import { } from '../utils/Config'; import { cleanupProgressIndicators, printError } from '../utils/Console'; import { saveServersToFiles } from './classic/ServerOps'; -import { ManagedSkeleton, writeManagedJsonToDirectory } from './IdmOps'; -import { writeSyncJsonToDirectory } from './MappingOps'; +import { + extractIdmEndpointScript, + extractIdmScriptsToFolder, + extractIdmScriptToSameLevel, + findScriptsFromIdm, + ManagedSkeleton, + writeManagedJsonToDirectory, +} from './IdmOps'; +import { + extractMappingScripts, + writeMappingJsonToDirectory, + writeSyncJsonToDirectory, +} from './MappingOps'; import { extractScriptsToFiles } from './ScriptOps'; import { errorHandler } from './utils/OpsUtils'; @@ -242,7 +253,8 @@ export function exportItem( writeSyncJsonToDirectory( obj as SyncSkeleton, `${baseDirectory.substring(getWorkingDirectory(false).length + 1)}/${fileType}`, - includeMeta + includeMeta, + extract ); } else if (type === 'server') { saveServersToFiles( @@ -252,24 +264,79 @@ export function exportItem( extract, includeMeta ); + } else if (type === 'mapping') { + writeMappingJsonToDirectory( + obj, + `${baseDirectory.substring(getWorkingDirectory(false).length + 1)}/${fileType}`, + includeMeta, + extract + ); } else { // eslint-disable-next-line @typescript-eslint/no-explicit-any Object.entries(obj).forEach(([id, value]: [string, any]) => { if (type === 'idm') { if (value != null) { - if (separateMappings && id === 'sync') { + if ((separateMappings || extract) && id === 'sync') { writeSyncJsonToDirectory( value as SyncSkeleton, `${baseDirectory.substring(getWorkingDirectory(false).length + 1)}/${fileType}/sync`, - includeMeta + includeMeta, + extract ); - } else if (separateObjects && id === 'managed') { + } else if ((separateObjects || extract) && id === 'managed') { writeManagedJsonToDirectory( value as ManagedSkeleton, `${baseDirectory.substring(getWorkingDirectory(false).length + 1)}/${fileType}/managed`, - includeMeta + includeMeta, + extract ); } else { + if (extract) { + if (id.includes('endpoint/')) { + const result = findScriptsFromIdm(value); + if (result.length !== 0) { + const endpointId = id.replace('endpoint/', ''); + extractIdmEndpointScript( + endpointId, + value, + result, + `${baseDirectory.substring(getWorkingDirectory(false).length + 1)}/${fileType}/endpoint/` + ); + } + } else if (id.includes('schedule/')) { + const result = findScriptsFromIdm(value); + if (result.length !== 0) { + const scheduleId = id.replace('schedule/', ''); + extractIdmScriptToSameLevel( + scheduleId, + value, + result, + `${baseDirectory.substring(getWorkingDirectory(false).length + 1)}/${fileType}/schedule/` + ); + } + } else if (id.includes('mapping/')) { + const result = findScriptsFromIdm(obj); + if (result.length !== 0) { + const mappingId = id.replace('mapping/', ''); + extractMappingScripts( + `${mappingId}.mapping.script`, + obj, + result, + `mapping/` + ); + } + } else { + const result = findScriptsFromIdm(value); + if (result.length !== 0) { + extractIdmScriptsToFolder( + `${id}.idm.scripts`, + value, + result, + `${baseDirectory.substring(getWorkingDirectory(false).length + 1)}/${fileType}` + ); + } + } + } const filename = `${id}.idm.json`; if (filename.includes('/')) { fs.mkdirSync( @@ -376,7 +443,16 @@ export async function importEverythingFromFiles( ): Promise { try { const data = await getFullExportConfigFromDirectory(getWorkingDirectory()); - await importFullConfiguration(data, options, errorHandler); + const collectErrors: Error[] = []; + saveJsonToFile(data, '../idmtest/aasdfasdf.json'); + + await importFullConfiguration(data, options, collectErrors); + if (collectErrors.length > 0) { + throw new FrodoError( + `Errors occurred during full config import`, + collectErrors + ); + } return true; } catch (error) { printError(error); diff --git a/src/ops/IdmOps.ts b/src/ops/IdmOps.ts index cf68d3d20..de87fe181 100644 --- a/src/ops/IdmOps.ts +++ b/src/ops/IdmOps.ts @@ -6,7 +6,11 @@ import fs from 'fs'; import path from 'path'; import propertiesReader from 'properties-reader'; -import { extractDataToFile, getExtractedJsonData } from '../utils/Config'; +import { + extractDataToFile, + getExtractedData, + getExtractedJsonData, +} from '../utils/Config'; import { createProgressIndicator, printError, @@ -14,6 +18,7 @@ import { stopProgressIndicator, } from '../utils/Console'; import { + extractMappingScripts, getLegacyMappingsFromFiles, writeSyncJsonToDirectory, } from './MappingOps'; @@ -66,7 +71,7 @@ export async function warnAboutOfflineConnectorServers(): Promise { } /** - * List all IDM configuration objects + * List all Idm configuration objects * @return {Promise} a promise that resolves to true if successful, false otherwise */ export async function listAllConfigEntities(): Promise { @@ -106,7 +111,8 @@ export async function exportConfigEntityToFile( envFile?: string, separateMappings: boolean = false, separateObjects: boolean = false, - includeMeta: boolean = true + includeMeta: boolean = true, + extract: boolean = false ): Promise { try { const options = getIdmImportExportOptions(undefined, envFile); @@ -114,19 +120,21 @@ export async function exportConfigEntityToFile( envReplaceParams: options.envReplaceParams, entitiesToExport: undefined, }); - if (separateMappings && id === 'sync') { + if ((separateMappings || extract) && id === 'sync') { writeSyncJsonToDirectory( exportData.idm[id] as SyncSkeleton, file, - includeMeta + includeMeta, + extract ); return true; } - if (separateObjects && id === 'managed') { + if ((separateObjects || extract) && id === 'managed') { writeManagedJsonToDirectory( exportData.idm[id] as ManagedSkeleton, file, - includeMeta + includeMeta, + extract ); return true; } @@ -221,7 +229,8 @@ export async function exportAllConfigEntitiesToFiles( envFile?: string, separateMappings: boolean = false, separateObjects: boolean = false, - includeMeta: boolean = true + includeMeta: boolean = true, + extract: boolean = false ): Promise { const errors: Error[] = []; try { @@ -234,28 +243,74 @@ export async function exportAllConfigEntitiesToFiles( errorHandler ); for (const [id, obj] of Object.entries(exportData.idm)) { - try { - if (separateMappings && id === 'sync') { - writeSyncJsonToDirectory(obj as SyncSkeleton, 'sync', includeMeta); - continue; - } - if (separateObjects && id === 'managed') { - writeManagedJsonToDirectory( - obj as ManagedSkeleton, - 'managed', + if (obj) { + try { + if ((separateMappings || extract) && id === 'sync') { + writeSyncJsonToDirectory( + obj as SyncSkeleton, + 'sync', + includeMeta, + extract + ); + continue; + } + if ((separateObjects || extract) && id === 'managed') { + writeManagedJsonToDirectory( + obj as ManagedSkeleton, + 'managed', + includeMeta, + extract + ); + continue; + } + if (extract && (id !== 'sync' || 'managed')) { + if (id.includes('endpoint/')) { + const result = findScriptsFromIdm(obj); + if (result.length !== 0) { + const endpointId = id.replace('endpoint/', ''); + extractIdmEndpointScript(endpointId, obj, result, `endpoint/`); + } + } else if (id.includes('schedule/')) { + const result = findScriptsFromIdm(obj); + if (result.length !== 0) { + const scheduleId = id.replace('schedule/', ''); + extractIdmScriptToSameLevel( + scheduleId, + obj, + result, + `schedule/` + ); + } + } else if (id.includes('mapping/')) { + const result = findScriptsFromIdm(obj); + if (result.length !== 0) { + const mappingId = id.replace('mapping/', ''); + extractMappingScripts( + `${mappingId}.mapping.script`, + obj, + result, + `mapping/` + ); + } + } else { + const result = findScriptsFromIdm(obj); + if (result.length !== 0) { + extractIdmScriptsToFolder(`${id}.idm.scripts`, obj, result); + } + } + } + saveToFile( + 'idm', + obj, + '_id', + getFilePath(`${id}.idm.json`, true), includeMeta ); - continue; + } catch (error) { + errors.push( + new FrodoError(`Error saving config entity ${id}`, error) + ); } - saveToFile( - 'idm', - obj, - '_id', - getFilePath(`${id}.idm.json`, true), - includeMeta - ); - } catch (error) { - errors.push(new FrodoError(`Error saving config entity ${id}`, error)); } } if (errors.length > 0) { @@ -312,8 +367,13 @@ export async function importConfigEntityByIdFromFile( importData = { idm: { managed: managedData } }; } else { importData = JSON.parse(fileData); + const entity = importData.idm?.[entityId]; + if (entity) { + const baseDir = path.dirname(filePath); + resolveAllExtractedScriptsForImport(entity, baseDir); + importData.idm[entityId] = entity; + } } - const options = getIdmImportExportOptions(undefined, envFile); await importConfigEntities( @@ -377,33 +437,46 @@ export async function importFirstConfigEntityFromFile( 0, `Importing ${filePath}...` ); + const fileData = fs.readFileSync( path.resolve(process.cwd(), filePath), 'utf8' ); - const entities = Object.values( - JSON.parse(fileData).idm - ) as IdObjectSkeletonInterface[]; - if (entities.length === 0) { + + const parsed = JSON.parse(fileData); + const allEntities = Object.entries(parsed.idm) + .filter(([id]) => id !== 'meta') // ✅ "meta" 필터링 + .map(([, val]) => val) as IdObjectSkeletonInterface[]; + + if (allEntities.length === 0) { stopProgressIndicator(indicatorId, `No items to import.`, 'success'); return true; } - const entityId = entities[0]._id; - const importData = { idm: { [entityId]: entities[0] } }; + + const entity = allEntities[0]; + const entityId = entity._id; + + const baseDir = path.dirname(filePath); + resolveAllExtractedScriptsForImport(entity, baseDir); + + const importData: ConfigEntityExportInterface = { + idm: { [entityId]: entity }, + }; if (entityId === 'sync') { importData.idm.sync = getLegacyMappingsFromFiles([ { content: fileData, - path: `${filePath.substring(0, filePath.lastIndexOf('/'))}/sync.idm.json`, + path: `${baseDir}/sync.idm.json`, }, ]); } + if (entityId === 'managed') { importData.idm.managed = getManagedObjectsFromFiles([ { content: fileData, - path: `${filePath.substring(0, filePath.lastIndexOf('/'))}/managed.idm.json`, + path: `${baseDir}/managed.idm.json`, }, ]); } @@ -425,6 +498,7 @@ export async function importFirstConfigEntityFromFile( `Imported ${entityId} from ${filePath}.`, 'success' ); + return true; } catch (error) { stopProgressIndicator(indicatorId, `Error importing ${filePath}.`, 'fail'); @@ -497,13 +571,18 @@ export async function importManagedObjectFromFile( let filePath: string; try { filePath = getFilePath(file); - const importData = JSON.parse(fs.readFileSync(filePath, 'utf8')); + const fileData = fs.readFileSync(filePath, 'utf8'); + const importData = JSON.parse(fileData); + const baseDir = path.dirname(filePath); + resolveAllExtractedScriptsForImport(importData, baseDir); + indicatorId = createProgressIndicator( 'indeterminate', 0, `Importing config managed object from ${filePath}...` ); const options = getIdmImportExportOptions(undefined, envFile); + await importSubConfigEntity('managed', importData, { entitiesToImport: options.entitiesToExportOrImport, envReplaceParams: options.envReplaceParams, @@ -526,9 +605,8 @@ export async function importManagedObjectFromFile( } return false; } - /** - * Import all IDM configuration objects from working directory + * Import all Idm configuration objects from working directory * @param {string} entitiesFile JSON file that specifies the config entities to export/import * @param {string} envFile File that defines environment specific variables for replacement during configuration export/import * @param {boolean} validate True to validate script hooks. Default: false @@ -543,6 +621,7 @@ export async function importAllConfigEntitiesFromFiles( const baseDirectory = getWorkingDirectory(); try { const importData = await getIdmImportDataFromIdmDirectory(baseDirectory); + indicatorId = createProgressIndicator( 'indeterminate', 0, @@ -597,12 +676,17 @@ export async function getIdmImportDataFromIdmDirectory( ): Promise { const importData = { idm: {} } as ConfigEntityExportInterface; const idmConfigFiles = await readFiles(directory); - idmConfigFiles.forEach( - (f) => (f.path = f.path.toLowerCase().replace(/\/$/, '')) - ); + idmConfigFiles.forEach((f) => (f.path = f.path.replace(/\/$/, ''))); // Process sync mapping file(s) - importData.idm.sync = getLegacyMappingsFromFiles(idmConfigFiles); - importData.idm.managed = getManagedObjectsFromFiles(idmConfigFiles); + const sync = getLegacyMappingsFromFiles(idmConfigFiles); + if (sync.mappings && sync.mappings.length > 0) { + importData.idm.sync = sync; + } + const managed = getManagedObjectsFromFiles(idmConfigFiles); + if (managed.objects && managed.objects.length > 0) { + importData.idm.managed = managed; + } + // Process other files for (const f of idmConfigFiles.filter( (f) => @@ -610,16 +694,46 @@ export async function getIdmImportDataFromIdmDirectory( !f.path.endsWith('managed.idm.json') && f.path.endsWith('.idm.json') )) { + const baseDirOfThisJson = path.dirname(f.path); const entities = Object.values( JSON.parse(f.content).idm ) as unknown as IdObjectSkeletonInterface[]; + for (const entity of entities) { + resolveAllExtractedScriptsForImport(entity, baseDirOfThisJson); importData.idm[entity._id] = entity; } } return importData; } +export function resolveAllExtractedScriptsForImport( + obj: any, + baseDir: string, + visited = new WeakSet() +) { + if (obj === null || typeof obj !== 'object') { + return; + } + if (visited.has(obj)) return; + visited.add(obj); + if (Array.isArray(obj)) { + for (const item of obj) { + resolveAllExtractedScriptsForImport(item, baseDir, visited); + } + return; + } + if (typeof obj.source === 'string' && obj.source.startsWith('file://')) { + const fileContent = getExtractedData(obj.source, baseDir); + if (fileContent !== null) { + obj.source = fileContent; + } + } + for (const key of Object.keys(obj)) { + resolveAllExtractedScriptsForImport(obj[key], baseDir, visited); + } +} + /** * Helper that returns options for exporting/importing IDM config entities * @param {string} entitiesFile JSON file that specifies the config entities to export/import @@ -664,10 +778,20 @@ function getIdmImportExportOptions( export function writeManagedJsonToDirectory( managed: ManagedSkeleton, directory: string = 'managed', - includeMeta: boolean = true + includeMeta: boolean = true, + extract: boolean ) { const objectPaths = []; for (const object of managed.objects) { + if (extract) { + const result = findScriptsFromIdm(object); + if (result.length !== 0) { + const dirName = getTypedFilename(object.name, 'managed', 'scripts'); + // getFilePath(`${directory}/${dirName}`, true); + extractIdmScriptsToFolder(dirName, object, result, `${directory}/`); + //dirname= oobject name + + } + } const fileName = getTypedFilename(object.name, 'managed'); objectPaths.push(extractDataToFile(object, fileName, directory)); } @@ -681,6 +805,63 @@ export function writeManagedJsonToDirectory( ); } +export function extractIdmScriptsToFolder( + id: string, + object: any, + foundResults, + directory?: string +): boolean { + for (const result of foundResults) { + const sourceObj = getObjectByPath(object, result.path); + const objectFileName = getTypedFilename(result.path, 'script', result.type); + sourceObj.source = extractDataToFile( + result.source, + `${id}/${objectFileName}`, + directory + ); + } + return false; +} + +export function extractIdmScriptToSameLevel( + id: string, + object: any, + foundResults: any, + directory?: string +): boolean { + for (const result of foundResults) { + const sourceObj = getObjectByPath(object, result.path); + const objectFileName = getTypedFilename( + `${id}.${result.path}`, + 'script', + result.type + ); + sourceObj.source = extractDataToFile( + result.source, + objectFileName, + directory + ); + } + return false; +} + +export function extractIdmEndpointScript( + id: string, + object: any, + foundResults: any, + directory?: string +): boolean { + for (const result of foundResults) { + const objectFileName = getTypedFilename(id, 'script', result.type); + object.source = extractDataToFile( + result.source, + objectFileName, + directory + ); + } + return false; +} + /** * Helper that returns the managed.idm.json object containing all the mappings in it by looking through the files * @@ -698,28 +879,98 @@ export function getManagedObjectsFromFiles( 'Multiple managed.idm.json files found in idm directory' ); } - const managed = { + const managed: ManagedSkeleton = { _id: 'managed', objects: [], }; if (managedFiles.length === 1) { const jsonData = JSON.parse(managedFiles[0].content); - const managedData = jsonData.managed - ? jsonData.managed - : jsonData.idm.managed; + const managedData = jsonData.managed ?? jsonData.idm?.managed; const managedJsonDir = managedFiles[0].path.substring( 0, managedFiles[0].path.indexOf('/managed.idm.json') ); - if (managedData.objects) { + if (managedData?.objects) { for (const object of managedData.objects) { + let resolvedObject: any; if (typeof object === 'string') { - managed.objects.push(getExtractedJsonData(object, managedJsonDir)); + resolvedObject = getExtractedJsonData(object, managedJsonDir); } else { - managed.objects.push(object); + resolvedObject = object; } + resolveAllExtractedScriptsForImport(resolvedObject, managedJsonDir); + managed.objects.push(resolvedObject); } } } return managed; } + +type MatchResult = { path: string; source: string; type: string }; + +export function findScriptsFromIdm( + obj: any, + currentPath = '', + result: MatchResult[] = [] +): MatchResult[] { + if ( + typeof obj === 'object' && + obj !== null && + 'source' in obj && + 'type' in obj && + (obj.type === 'text/javascript' || obj.type === 'groovy') + ) { + const rawSource = obj.source; + const normalizedSource = Array.isArray(rawSource) + ? rawSource.join('\n') + : rawSource; + const scriptType = + obj.type === 'text/javascript' + ? 'js' + : obj.type === 'groovy' + ? 'groovy' + : ''; + result.push({ + path: currentPath, + source: normalizedSource, + type: scriptType, + }); + } + + if (typeof obj === 'object' && obj !== null) { + for (const key of Object.keys(obj)) { + const newPath = currentPath ? `${currentPath}.${key}` : key; + findScriptsFromIdm(obj[key], newPath, result); + } + } + + return result; +} +export function getTopObject(path, obj) { + const parts = path.split('.'); + return obj[parts[0]]; +} +export function getTopString(path) { + const parts = path.split('.'); + return parts[0]; +} + +export function getLastString(path) { + const parts = path.split('.'); + return parts[parts.length - 1]; +} +export function getObjectByPath(obj, path) { + return path.split('.').reduce((acc, key) => { + const realKey = /^\d+$/.test(key) ? Number(key) : key; + return acc?.[realKey]; + }, obj); +} + +export function getObjectByPathExcludeLast(obj: any, path: string): any { + const keys = path.split('.'); + keys.pop(); + return keys.reduce((acc, key) => { + const realKey = /^\d+$/.test(key) ? Number(key) : key; + return acc?.[realKey]; + }, obj); +} diff --git a/src/ops/MappingOps.ts b/src/ops/MappingOps.ts index 1d56aca38..9238f17fa 100644 --- a/src/ops/MappingOps.ts +++ b/src/ops/MappingOps.ts @@ -7,6 +7,7 @@ import { SyncSkeleton, } from '@rockcarver/frodo-lib/types/ops/MappingOps'; import fs from 'fs'; +import path from 'path'; import { extractDataToFile, getExtractedJsonData } from '../utils/Config'; import { @@ -18,6 +19,14 @@ import { stopProgressIndicator, updateProgressIndicator, } from '../utils/Console'; +import { + findScriptsFromIdm, + getLastString, + getObjectByPath, + getObjectByPathExcludeLast, + getTopString, + resolveAllExtractedScriptsForImport, +} from './IdmOps'; const { getTypedFilename, @@ -42,6 +51,79 @@ const { createMappingExportTemplate, } = frodo.idm.mapping; +export function extractMappingScripts( + id: string, + mapping: any, + foundResult, + directory: string +): boolean { + for (const behavior of foundResult) { + if (getTopString(behavior.path) === 'policies') { + const situation = getObjectByPathExcludeLast( + mapping, + behavior.path + ).situation; + const fileName = `policies.${situation}.${getLastString(behavior.path)}`; + const objectSource = getObjectByPath(mapping, behavior.path); + saveMappingScript( + id, + objectSource, + fileName, + behavior.type, + behavior.source, + directory + ); + } else if (getTopString(behavior.path) === 'properties') { + let source = getObjectByPathExcludeLast(mapping, behavior.path).source; + if (!source) source = 'SOURCE'; + let target = getObjectByPathExcludeLast(mapping, behavior.path).target; + if (!target) target = 'TARGET'; + const fileName = `properties.${source}.${target}.${getLastString(behavior.path)}`; + const objectSource = getObjectByPath(mapping, behavior.path); + saveMappingScript( + id, + objectSource, + fileName, + behavior.type, + behavior.source, + directory + ); + } else { + const objectSource = getObjectByPath(mapping, behavior.path); + saveMappingScript( + id, + objectSource, + behavior.path, + behavior.type, + behavior.source, + directory + ); + } + } + return false; +} + +function saveMappingScript( + id: string, + object: any, + fileName: string, + type: string, + script?: string, + directory?: string +): boolean { + try { + const objectFileName = getTypedFilename(fileName, 'script', type); + object.source = extractDataToFile( + script, + `${id}/${objectFileName}`, + directory + ); + return true; + } catch (error) { + printError(error); + } + return false; +} /** * List mappings * @param {boolean} [long=false] detailed list @@ -155,6 +237,7 @@ export async function exportMappingsToFile( */ export async function exportMappingsToFiles( includeMeta: boolean = true, + extract: boolean, options: MappingExportOptions = { deps: true, useStringArrays: true, @@ -162,20 +245,14 @@ export async function exportMappingsToFiles( ): Promise { try { const exportData = await exportMappings(options); - for (const mapping of Object.values(exportData.mapping)) { - const fileName = getTypedFilename( - mapping.name, - getMappingTypeFromId(mapping._id) - ); - saveToFile( - getMappingTypeFromId(mapping._id), - mapping, - '_id', - getFilePath('mapping/' + fileName, true), - includeMeta - ); - } - writeSyncJsonToDirectory(exportData.sync, 'sync', includeMeta); + writeMappingJsonToDirectory( + exportData.mapping, + 'mapping', + includeMeta, + extract + ); + + writeSyncJsonToDirectory(exportData.sync, 'sync', includeMeta, extract); return true; } catch (error) { printError(error, `Error exporting mappings to files`); @@ -255,18 +332,23 @@ export async function importMappingsFromFiles( const workingDirectory = getWorkingDirectory(); const allMappingFiles = (await readFiles(workingDirectory)).filter( (f) => - f.path.toLowerCase().endsWith('mapping.json') || - f.path.toLowerCase().endsWith('sync.json') || - f.path.toLowerCase().endsWith('sync.idm.json') || - f.path.toLowerCase().endsWith('mapping.idm.json') + f.path.endsWith('mapping.json') || + f.path.endsWith('sync.json') || + f.path.endsWith('sync.idm.json') || + f.path.endsWith('mapping.idm.json') ); - const mapping = Object.fromEntries( - allMappingFiles - .filter((f) => f.path.toLowerCase().endsWith('mapping.json')) - .map((f) => Object.values(JSON.parse(f.content).mapping)) - .flat() - .map((m) => [(m as MappingSkeleton)._id, m]) - ) as Record; + const mappingEntries: [string, MappingSkeleton][] = []; + for (const f of allMappingFiles.filter((f) => + f.path.endsWith('mapping.json') + )) { + const parsed = parseAndResolveMappingFile(f); + mappingEntries.push(...Object.entries(parsed)); + } + const mapping = Object.fromEntries(mappingEntries) as Record< + string, + MappingSkeleton + >; + await importMappings( { mapping, @@ -274,6 +356,7 @@ export async function importMappingsFromFiles( } as MappingExportInterface, options ); + return true; } catch (error) { printError(error, `Error importing mappings from files`); @@ -281,6 +364,27 @@ export async function importMappingsFromFiles( return false; } +/** + * Loads and resolves extracted scripts from a single mapping file. + * @param file A file object with path and content (from readFiles) + * @returns Record of mappings keyed by _id + */ +export function parseAndResolveMappingFile(file: { + path: string; + content: string; +}): Record { + const baseDir = path.dirname(file.path); + const parsed = JSON.parse(file.content); + const mappings = Object.values(parsed.mapping || {}) as MappingSkeleton[]; + + const mappingRecord: Record = {}; + for (const mapping of mappings) { + resolveAllExtractedScriptsForImport(mapping, baseDir); + mappingRecord[mapping._id] = mapping; + } + return mappingRecord; +} + /** * Import first mapping from file * @param {string} file import file name @@ -462,10 +566,19 @@ export async function renameMappings( export function writeSyncJsonToDirectory( sync: SyncSkeleton, directory: string = 'sync', - includeMeta: boolean = true + includeMeta: boolean = true, + extract: boolean ) { const mappingPaths = []; for (const mapping of sync.mappings) { + if (extract) { + const result = findScriptsFromIdm(mapping); + if (result.length !== 0) { + const dirName = getTypedFilename(mapping.name, 'sync', 'scripts'); + //getFilePath(`${directory}/${dirName}`, true); + extractMappingScripts(dirName, mapping, result, `${directory}/`); + } + } const fileName = getTypedFilename(mapping.name, 'sync'); mappingPaths.push(extractDataToFile(mapping, fileName, directory)); } @@ -479,6 +592,38 @@ export function writeSyncJsonToDirectory( ); } +export function writeMappingJsonToDirectory( + mappings: Record, + directory: string = 'mapping', + includeMeta: boolean, + extract: boolean +) { + for (const mapping of Object.values(mappings)) { + if (extract) { + const result = findScriptsFromIdm(mapping); + if (result.length !== 0) { + const dirName = getTypedFilename( + mapping.name, + getMappingTypeFromId(mapping._id), + 'scripts' + ); + extractMappingScripts(dirName, mapping, result, `${directory}/`); + } + } + const fileName = getTypedFilename( + mapping.name, + getMappingTypeFromId(mapping._id) + ); + saveToFile( + getMappingTypeFromId(mapping._id), + mapping, + '_id', + getFilePath(`${directory}/${fileName}`, true), + includeMeta + ); + } +} + /** * Helper that returns the sync.idm.json object containing all the mappings in it by looking through the files * @@ -496,26 +641,50 @@ export function getLegacyMappingsFromFiles( _id: 'sync', mappings: [], }; + if (syncFiles.length === 1) { - const jsonData = JSON.parse(syncFiles[0].content); - const syncData = jsonData.sync ? jsonData.sync : jsonData.idm.sync; - const syncJsonDir = syncFiles[0].path.substring( - 0, - syncFiles[0].path.indexOf('/sync.idm.json') - ); - if (syncData.mappings) { + const file = syncFiles[0]; + const jsonData = JSON.parse(file.content); + const syncData = jsonData.sync ?? jsonData.idm?.sync; + const syncJsonDir = path.dirname(file.path); + if (syncData?.mappings) { for (const mapping of syncData.mappings) { + let resolvedMapping: any; if (typeof mapping === 'string') { - sync.mappings.push(getExtractedJsonData(mapping, syncJsonDir)); + resolvedMapping = getExtractedJsonData(mapping, syncJsonDir); } else { - sync.mappings.push(mapping); + resolvedMapping = mapping; } + resolveAllExtractedScriptsForImport(resolvedMapping, syncJsonDir); + sync.mappings.push(resolvedMapping); } } } + return sync; } +/** + * Helper that returns the sync.idm.json object containing all the mappings in it by looking through the files + * + * @param files the files to get sync.idm.json object from + * @returns the sync.idm.json object + */ +export function getNewMappingsFromFiles( + mappingFiles: { path: string; content: string }[] +): Record { + const mappingEntries: [string, MappingSkeleton][] = []; + for (const f of mappingFiles.filter((f) => f.path.endsWith('mapping.json'))) { + const parsed = parseAndResolveMappingFile(f); + mappingEntries.push(...Object.entries(parsed)); + } + const mapping = Object.fromEntries(mappingEntries) as Record< + string, + MappingSkeleton + >; + return mapping; +} + /** * Helper that gets a mapping's type (either 'sync' or 'mapping') from it's id * @param {string} mappingId the mapping id @@ -539,37 +708,42 @@ export function getMappingNameFromId(mappingId: string): string | undefined { : mappingId; } -/** - * Helper that returns mapping file data as import data - * - * @param {string} file the file path - * @returns {MappingExportInterface} the import data - */ function getMappingImportDataFromFile(file: string): MappingExportInterface { const filePath = getFilePath(file); const data = fs.readFileSync(filePath, 'utf8'); let importData = JSON.parse(data); - //If importing from file not in export format, put it into export format + const baseDir = path.dirname(filePath); + // If importing from file not in export format, put it into export format if (!importData.sync && !importData.mapping) { const mapping = importData; importData = createMappingExportTemplate(); + if (mapping.idm) { importData.sync = getLegacyMappingsFromFiles([ { - // Ensure path ends in /sync.idm.json so it gets processed path: `${filePath.substring(0, filePath.lastIndexOf('/'))}/sync.idm.json`, content: data, }, ]); } else if (isLegacyMapping(mapping._id)) { + resolveAllExtractedScriptsForImport(mapping, baseDir); importData.sync.mappings.push(mapping); } else { + resolveAllExtractedScriptsForImport(mapping, baseDir); importData.mapping[mapping._id] = mapping; } - } else if (!importData.sync && importData.mapping) { + } else { + if (importData.mapping) { + Object.values(importData.mapping).forEach((m) => { + resolveAllExtractedScriptsForImport(m, baseDir); + }); + } + } + if (!importData.sync && importData.mapping) { importData.sync = { id: 'sync', mappings: [] }; } else if (importData.sync && !importData.mapping) { importData.mapping = {}; } + return importData; } diff --git a/src/utils/Config.ts b/src/utils/Config.ts index 7c1a53de7..5f8fd4a23 100644 --- a/src/utils/Config.ts +++ b/src/utils/Config.ts @@ -1,4 +1,5 @@ import { frodo, state } from '@rockcarver/frodo-lib'; +import { IdObjectSkeletonInterface } from '@rockcarver/frodo-lib/types/api/ApiTypes'; import { FullExportInterface, FullGlobalExportInterface, @@ -7,10 +8,17 @@ import { import { ExportMetaData } from '@rockcarver/frodo-lib/types/ops/OpsTypes'; import fs from 'fs'; import os from 'os'; +import path from 'path'; import { readServersFromFiles } from '../ops/classic/ServerOps'; -import { getManagedObjectsFromFiles } from '../ops/IdmOps'; -import { getLegacyMappingsFromFiles } from '../ops/MappingOps'; +import { + getManagedObjectsFromFiles, + resolveAllExtractedScriptsForImport, +} from '../ops/IdmOps'; +import { + getLegacyMappingsFromFiles, + getNewMappingsFromFiles, +} from '../ops/MappingOps'; import { getScriptExportByScriptFile } from '../ops/ScriptOps'; import { errorHandler } from '../ops/utils/OpsUtils'; import { printMessage } from './Console'; @@ -112,27 +120,30 @@ export async function getFullExportConfig( export async function getFullExportConfigFromDirectory( directory: string ): Promise { - const realms = - state.getDeploymentType() === IDM_DEPLOYMENT_TYPE_KEY - ? [] - : fs.readdirSync(directory + '/realm'); - + let realms = {} as string[]; + let realmInterface; + if (state.getDeploymentType() !== IDM_DEPLOYMENT_TYPE_KEY) { + realms = fs.readdirSync(directory + '/realm'); + realmInterface = Object.fromEntries( + realms.map((r) => [r, {} as FullRealmExportInterface]) + ); + } const fullExportConfig: FullExportInterface = { meta: {} as ExportMetaData, global: {} as unknown as FullGlobalExportInterface, - realm: Object.fromEntries( - realms.map((r) => [r, {} as FullRealmExportInterface]) - ), + realm: realmInterface, } as FullExportInterface; // Get global await getConfig(fullExportConfig.global, undefined, directory + '/global'); // Get realms - for (const realm of realms) { - await getConfig( - fullExportConfig.realm[realm], - undefined, - directory + '/realm/' + realm - ); + if (state.getDeploymentType() !== IDM_DEPLOYMENT_TYPE_KEY) { + for (const realm of realms) { + await getConfig( + fullExportConfig.realm[realm], + undefined, + directory + '/realm/' + realm + ); + } } return fullExportConfig; } @@ -161,11 +172,24 @@ export async function getConfig( const jsonFiles = files.filter((f) => f.path.endsWith('.json')); const samlFiles = jsonFiles.filter((f) => f.path.endsWith('.saml.json')); const scriptFiles = jsonFiles.filter((f) => f.path.endsWith('.script.json')); + const mappingFiles = jsonFiles.filter((f) => + f.path.endsWith('.mapping.json') + ); const serverFiles = jsonFiles.filter( (f) => f.path.endsWith('.server.json') && !f.path.endsWith('.properties.server.json') ); + const idmFiles = jsonFiles.filter( + (f) => + f.path.endsWith('idm.json') && + !f.path.endsWith('/sync.idm.json') && + !f.path.endsWith('sync.json') && + !f.path.endsWith('/managed.idm.json') && + !f.path.endsWith('managed.json') && + !f.path.endsWith('mapping.idm.json') + ); + const allOtherFiles = jsonFiles.filter( (f) => !f.path.endsWith('.saml.json') && @@ -174,8 +198,10 @@ export async function getConfig( !f.path.endsWith('/sync.idm.json') && !f.path.endsWith('sync.json') && !f.path.endsWith('/managed.idm.json') && - !f.path.endsWith('managed.json') + !f.path.endsWith('managed.json') && + !f.path.endsWith('idm.json') ); + // Handle all other json files for (const f of allOtherFiles) { for (const [id, value] of Object.entries( @@ -193,15 +219,37 @@ export async function getConfig( } } } + for (const f of idmFiles) { + const baseDirOfThisJson = path.dirname(f.path); + const parsed = JSON.parse(f.content); + if (!parsed.idm) continue; + + const entities = Object.values( + parsed.idm + ) as unknown as IdObjectSkeletonInterface[]; + for (const entity of entities) { + resolveAllExtractedScriptsForImport(entity, baseDirOfThisJson); + if (!(exportConfig as FullGlobalExportInterface).idm) { + (exportConfig as FullGlobalExportInterface).idm = {}; + } + (exportConfig as FullGlobalExportInterface).idm[entity._id] = entity; + } + } // Handle sync files const sync = await getLegacyMappingsFromFiles(jsonFiles); if (sync.mappings.length > 0) { (exportConfig as FullGlobalExportInterface).sync = sync; } + if (mappingFiles.length > 0) { + const mapping = await getNewMappingsFromFiles(mappingFiles); + (exportConfig as FullGlobalExportInterface).mapping = mapping; + } + const managed = await getManagedObjectsFromFiles(jsonFiles); if (managed.objects.length > 0) { (exportConfig as FullGlobalExportInterface).idm.managed = managed; } + // Handle saml files if ( samlFiles.length > 0 && @@ -266,7 +314,7 @@ export async function getConfig( export function extractDataToFile( data: any, file: string, - directory?: string + directory?: string, ): string { const filePath = getFilePath((directory ? `${directory}/` : '') + file, true); if (typeof data === 'object') { diff --git a/test/client_cli/en/__snapshots__/idm-export.test.js.snap b/test/client_cli/en/__snapshots__/idm-export.test.js.snap index 9f2253e41..f8f284850 100644 --- a/test/client_cli/en/__snapshots__/idm-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/idm-export.test.js.snap @@ -103,6 +103,9 @@ Options: --verbose Verbose output during command execution. If specified, may or may not produce additional output. + -x, --extract Extract the scripts from the exported + file, and save it to a separate file. + Ignored with -a. Environment Variables: FRODO_HOST: AM base URL. Overridden by 'host' argument. diff --git a/test/client_cli/en/__snapshots__/mapping-export.test.js.snap b/test/client_cli/en/__snapshots__/mapping-export.test.js.snap index fa71316eb..d74dcf221 100644 --- a/test/client_cli/en/__snapshots__/mapping-export.test.js.snap +++ b/test/client_cli/en/__snapshots__/mapping-export.test.js.snap @@ -39,6 +39,7 @@ Options: -t, --managed-object-type Managed object type. If specified, limits mappings to that particular managed object type. Ignored with -i. --use-string-arrays Where applicable, use string arrays to store multi-line text (e.g. scripts). (default: off) --verbose Verbose output during command execution. If specified, may or may not produce additional output. + -x, --extract Extract the script from the exported file, and save it to a separate file. Ignored with -a. Environment Variables: FRODO_HOST: AM base URL. Overridden by 'host' argument. diff --git a/test/e2e/env/Connections.json b/test/e2e/env/Connections.json index b4326d4b1..8dba2df33 100644 --- a/test/e2e/env/Connections.json +++ b/test/e2e/env/Connections.json @@ -1,4 +1,9 @@ { + "http://openidm-frodo-dev.classic.com:9080/openidm": { + "deploymentType": "idm", + "encodedPassword": "TSdl7D/AJsuZD8hvsSsMCg/P4QUwXJDSggvr11TuCAavuUjvJtaPrr08oBGzG3HYlJFSZBM5aPpOaZGKP75WaUI67E6H+KtfLJz42wKWtOq2BXA6RcSU745krtbfBIcU5O/im9QfHz5XPG9Dg2CL", + "username": "openidm-admin" + }, "https://openam-frodo-dev.forgeblocks.com/am": { "deploymentType": "cloud", "encodedLogApiSecret": "s/jvumbnVBgyFKC1GQKdYvUNBYdKVKiZQueQUlj0iAxucif140oyKlOw0g4rIV9K4dJ+XG7XxnSP1+4YBrm0+gUiv9a871T3qqqCbdfd7n1fIgY4bxU/c9GM6JDyE3izEP33WBRmjwPTwsOSn/5L44/XlXrRSuMmWVr/6dRwu4cG0lG/jhecMuLGyCieA4h5MZNMvO0OEDcqB8+h+tqqOWug", diff --git a/test/e2e/exports/all-separate/idm/global/idm/audit.idm.scripts/eventTopics.access.filter.script.script.groovy b/test/e2e/exports/all-separate/idm/global/idm/audit.idm.scripts/eventTopics.access.filter.script.script.groovy new file mode 100644 index 000000000..d4d58a399 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/audit.idm.scripts/eventTopics.access.filter.script.script.groovy @@ -0,0 +1 @@ +//seantest \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/idm/audit.idm.scripts/eventTopics.authentication.filter.script.script.js b/test/e2e/exports/all-separate/idm/global/idm/audit.idm.scripts/eventTopics.authentication.filter.script.script.js new file mode 100644 index 000000000..d4d58a399 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/audit.idm.scripts/eventTopics.authentication.filter.script.script.js @@ -0,0 +1 @@ +//seantest \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/idm/audit.idm.scripts/exceptionFormatter.script.js b/test/e2e/exports/all-separate/idm/global/idm/audit.idm.scripts/exceptionFormatter.script.js new file mode 100644 index 000000000..d4d58a399 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/audit.idm.scripts/exceptionFormatter.script.js @@ -0,0 +1 @@ +//seantest \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/idm/authentication.idm.scripts/serverAuthContext.authModules.0.properties.augmentSecurityContext.script.js b/test/e2e/exports/all-separate/idm/global/idm/authentication.idm.scripts/serverAuthContext.authModules.0.properties.augmentSecurityContext.script.js new file mode 100644 index 000000000..d4d58a399 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/authentication.idm.scripts/serverAuthContext.authModules.0.properties.augmentSecurityContext.script.js @@ -0,0 +1 @@ +//seantest \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/idm/authentication.idm.scripts/serverAuthContext.authModules.2.properties.augmentSecurityContext.script.js b/test/e2e/exports/all-separate/idm/global/idm/authentication.idm.scripts/serverAuthContext.authModules.2.properties.augmentSecurityContext.script.js new file mode 100644 index 000000000..fcddc567e --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/authentication.idm.scripts/serverAuthContext.authModules.2.properties.augmentSecurityContext.script.js @@ -0,0 +1 @@ +var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield); \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/idm/endpoint/validateQueryFilter.script.js b/test/e2e/exports/all-separate/idm/global/idm/endpoint/validateQueryFilter.script.js new file mode 100644 index 000000000..39b9848fa --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/endpoint/validateQueryFilter.script.js @@ -0,0 +1 @@ +try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } }; \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/idm/managed/assignment.managed.json b/test/e2e/exports/all-separate/idm/global/idm/managed/assignment.managed.json new file mode 100644 index 000000000..4a7630c79 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/managed/assignment.managed.json @@ -0,0 +1,235 @@ +{ + "attributeEncryption": {}, + "name": "assignment", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "A role assignment", + "icon": "fa-key", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment", + "mat-icon": "vpn_key", + "order": [ + "_id", + "name", + "description", + "mapping", + "attributes", + "linkQualifiers", + "roles", + "members", + "condition", + "weight" + ], + "properties": { + "_id": { + "description": "The assignment ID", + "searchable": false, + "title": "Name", + "type": "string", + "viewable": false + }, + "attributes": { + "description": "The attributes operated on by this assignment.", + "items": { + "order": [ + "assignmentOperation", + "unassignmentOperation", + "name", + "value" + ], + "properties": { + "assignmentOperation": { + "description": "Assignment operation", + "type": "string" + }, + "name": { + "description": "Name", + "type": "string" + }, + "unassignmentOperation": { + "description": "Unassignment operation", + "type": "string" + }, + "value": { + "description": "Value", + "type": "string" + } + }, + "required": [], + "title": "Assignment Attributes Items", + "type": "object" + }, + "notifyRelationships": [ + "roles", + "members" + ], + "title": "Assignment Attributes", + "type": "array", + "viewable": true + }, + "condition": { + "description": "A conditional filter for this assignment", + "isConditional": true, + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false + }, + "description": { + "description": "The assignment description, used for display purposes.", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true + }, + "linkQualifiers": { + "description": "Conditional link qualifiers to restrict this assignment to.", + "items": { + "title": "Link Qualifiers Items", + "type": "string" + }, + "title": "Link Qualifiers", + "type": "array", + "viewable": true + }, + "mapping": { + "description": "The name of the mapping this assignment applies to", + "policies": [ + { + "policyId": "mapping-exists" + } + ], + "searchable": true, + "title": "Mapping", + "type": "string", + "viewable": true + }, + "members": { + "description": "Assignment Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Assignment Members Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "assignments", + "reverseRelationship": true, + "title": "Assignment Members Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Assignment Members", + "type": "array", + "viewable": true + }, + "name": { + "description": "The assignment name, used for display purposes.", + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true + }, + "roles": { + "description": "Managed Roles", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Managed Roles Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Role", + "notify": true, + "path": "managed/role", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "assignments", + "reverseRelationship": true, + "title": "Managed Roles Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Managed Roles", + "type": "array", + "userEditable": false, + "viewable": true + }, + "weight": { + "description": "The weight of the assignment.", + "notifyRelationships": [ + "roles", + "members" + ], + "searchable": false, + "title": "Weight", + "type": [ + "number", + "null" + ], + "viewable": true + } + }, + "required": [ + "name", + "description", + "mapping" + ], + "title": "Assignment", + "type": "object" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/managed/managed.idm.json b/test/e2e/exports/all-separate/idm/global/idm/managed/managed.idm.json new file mode 100644 index 000000000..a6b96ed44 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/managed/managed.idm.json @@ -0,0 +1,14 @@ +{ + "idm": { + "managed": { + "_id": "managed", + "objects": [ + "file://user.managed.json", + "file://role.managed.json", + "file://assignment.managed.json", + "file://organization.managed.json", + "file://seantestmanagedobject.managed.json" + ] + } + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/managed/organization.managed.json b/test/e2e/exports/all-separate/idm/global/idm/managed/organization.managed.json new file mode 100644 index 000000000..af68d693e --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/managed/organization.managed.json @@ -0,0 +1,405 @@ +{ + "name": "organization", + "onCreate": { + "globals": {}, + "source": "file://organization.managed.scripts/onCreate.script.js", + "type": "text/javascript" + }, + "onRead": { + "globals": {}, + "source": "file://organization.managed.scripts/onRead.script.groovy", + "type": "groovy" + }, + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "An organization or tenant, whose resources are managed by organizational admins.", + "icon": "fa-building", + "mat-icon": "domain", + "order": [ + "name", + "description", + "owners", + "admins", + "members", + "parent", + "children", + "adminIDs", + "ownerIDs", + "parentAdminIDs", + "parentOwnerIDs", + "parentIDs" + ], + "properties": { + "adminIDs": { + "isVirtual": true, + "items": { + "title": "admin ids", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id" + ], + "referencedRelationshipFields": [ + "admins" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "Admin user ids", + "type": "array", + "userEditable": false, + "viewable": false + }, + "admins": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "notify": false, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "adminOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "notifyRelationships": [ + "children" + ], + "returnByDefault": false, + "searchable": false, + "title": "Administrators", + "type": "array", + "userEditable": false, + "viewable": true + }, + "children": { + "description": "Child Organizations", + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/organization", + "query": { + "fields": [ + "name", + "description" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "parent", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Child Organizations", + "type": "array", + "userEditable": false, + "viewable": false + }, + "description": { + "searchable": true, + "title": "Description", + "type": "string", + "userEditable": true, + "viewable": true + }, + "members": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "memberOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "searchable": false, + "title": "Members", + "type": "array", + "userEditable": false, + "viewable": true + }, + "name": { + "searchable": true, + "title": "Name", + "type": "string", + "userEditable": true, + "viewable": true + }, + "ownerIDs": { + "isVirtual": true, + "items": { + "title": "owner ids", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id" + ], + "referencedRelationshipFields": [ + "owners" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "Owner user ids", + "type": "array", + "userEditable": false, + "viewable": false + }, + "owners": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "notify": false, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "ownerOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "notifyRelationships": [ + "children" + ], + "returnByDefault": false, + "searchable": false, + "title": "Owner", + "type": "array", + "userEditable": false, + "viewable": true + }, + "parent": { + "description": "Parent Organization", + "notifyRelationships": [ + "children", + "members" + ], + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/organization", + "query": { + "fields": [ + "name", + "description" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "returnByDefault": false, + "reversePropertyName": "children", + "reverseRelationship": true, + "searchable": false, + "title": "Parent Organization", + "type": "relationship", + "userEditable": false, + "validate": true, + "viewable": true + }, + "parentAdminIDs": { + "isVirtual": true, + "items": { + "title": "user ids of parent admins", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "adminIDs", + "parentAdminIDs" + ], + "referencedRelationshipFields": [ + "parent" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent admins", + "type": "array", + "userEditable": false, + "viewable": false + }, + "parentIDs": { + "isVirtual": true, + "items": { + "title": "parent org ids", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs" + ], + "referencedRelationshipFields": [ + "parent" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "parent org ids", + "type": "array", + "userEditable": false, + "viewable": false + }, + "parentOwnerIDs": { + "isVirtual": true, + "items": { + "title": "user ids of parent owners", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "ownerIDs", + "parentOwnerIDs" + ], + "referencedRelationshipFields": [ + "parent" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent owners", + "type": "array", + "userEditable": false, + "viewable": false + } + }, + "required": [ + "name" + ], + "title": "Organization", + "type": "object" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/managed/organization.managed.scripts/onCreate.script.js b/test/e2e/exports/all-separate/idm/global/idm/managed/organization.managed.scripts/onCreate.script.js new file mode 100644 index 000000000..d4d58a399 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/managed/organization.managed.scripts/onCreate.script.js @@ -0,0 +1 @@ +//seantest \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/idm/managed/organization.managed.scripts/onRead.script.groovy b/test/e2e/exports/all-separate/idm/global/idm/managed/organization.managed.scripts/onRead.script.groovy new file mode 100644 index 000000000..d4d58a399 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/managed/organization.managed.scripts/onRead.script.groovy @@ -0,0 +1 @@ +//seantest \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/idm/managed/role.managed.json b/test/e2e/exports/all-separate/idm/global/idm/managed/role.managed.json new file mode 100644 index 000000000..4d73c7286 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/managed/role.managed.json @@ -0,0 +1,193 @@ +{ + "name": "role", + "onCreate": { + "globals": {}, + "source": "file://role.managed.scripts/onCreate.script.js", + "type": "text/javascript" + }, + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "icon": "fa-check-square", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role", + "mat-icon": "assignment_ind", + "order": [ + "_id", + "name", + "description", + "members", + "assignments", + "condition", + "temporalConstraints" + ], + "properties": { + "_id": { + "description": "Role ID", + "searchable": false, + "title": "Name", + "type": "string", + "viewable": false + }, + "assignments": { + "description": "Managed Assignments", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Managed Assignments Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Assignment", + "path": "managed/assignment", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Managed Assignments Items", + "type": "relationship", + "validate": true + }, + "notifyRelationships": [ + "members" + ], + "returnByDefault": false, + "title": "Managed Assignments", + "type": "array", + "viewable": true + }, + "condition": { + "description": "A conditional filter for this role", + "isConditional": true, + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false + }, + "description": { + "description": "The role description, used for display purposes.", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true + }, + "members": { + "description": "Role Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Role Members Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Role Members Items", + "type": "relationship", + "validate": true + }, + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Role Members", + "type": "array", + "viewable": true + }, + "name": { + "description": "The role name, used for display purposes.", + "policies": [ + { + "policyId": "unique" + } + ], + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true + }, + "temporalConstraints": { + "description": "An array of temporal constraints for a role", + "isTemporalConstraint": true, + "items": { + "order": [ + "duration" + ], + "properties": { + "duration": { + "description": "Duration", + "type": "string" + } + }, + "required": [ + "duration" + ], + "title": "Temporal Constraints Items", + "type": "object" + }, + "notifyRelationships": [ + "members" + ], + "returnByDefault": true, + "title": "Temporal Constraints", + "type": "array", + "viewable": false + } + }, + "required": [ + "name" + ], + "title": "Role", + "type": "object" + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/managed/role.managed.scripts/onCreate.script.js b/test/e2e/exports/all-separate/idm/global/idm/managed/role.managed.scripts/onCreate.script.js new file mode 100644 index 000000000..62df850d7 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/managed/role.managed.scripts/onCreate.script.js @@ -0,0 +1 @@ +//asdfasdfadsfasdf \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/idm/managed/seantestmanagedobject.managed.json b/test/e2e/exports/all-separate/idm/global/idm/managed/seantestmanagedobject.managed.json new file mode 100644 index 000000000..157374c4a --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/managed/seantestmanagedobject.managed.json @@ -0,0 +1,9 @@ +{ + "name": "seantestmanagedobject", + "schema": { + "description": null, + "icon": "fa-database", + "mat-icon": null, + "title": null + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/managed/user.managed.json b/test/e2e/exports/all-separate/idm/global/idm/managed/user.managed.json new file mode 100644 index 000000000..9302f8d17 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/managed/user.managed.json @@ -0,0 +1,1044 @@ +{ + "lastSync": { + "effectiveAssignmentsProperty": "effectiveAssignments", + "lastSyncProperty": "lastSync" + }, + "name": "user", + "notifications": { + "property": "_notifications" + }, + "postDelete": { + "source": "file://user.managed.scripts/postDelete.script.js", + "type": "text/javascript" + }, + "schema": { + "$schema": "http://json-schema.org/draft-03/schema", + "icon": "fa-user", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User", + "mat-icon": "people", + "order": [ + "_id", + "userName", + "password", + "givenName", + "sn", + "mail", + "description", + "accountStatus", + "telephoneNumber", + "postalAddress", + "city", + "postalCode", + "country", + "stateProvince", + "roles", + "assignments", + "manager", + "authzRoles", + "reports", + "effectiveRoles", + "effectiveAssignments", + "lastSync", + "kbaInfo", + "preferences", + "consentedMappings", + "ownerOfOrg", + "adminOfOrg", + "memberOfOrg", + "memberOfOrgIDs", + "activeDate", + "inactiveDate" + ], + "properties": { + "_id": { + "description": "User ID", + "isPersonal": false, + "policies": [ + { + "params": { + "forbiddenChars": [ + "/" + ] + }, + "policyId": "cannot-contain-characters" + } + ], + "searchable": false, + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": false + }, + "accountStatus": { + "default": "active", + "description": "Status", + "isPersonal": false, + "policies": [ + { + "params": { + "regexp": "^(active|inactive)$" + }, + "policyId": "regexpMatches" + } + ], + "searchable": true, + "title": "Status", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "activeDate": { + "description": "Active Date", + "format": "datetime", + "isPersonal": false, + "policies": [ + { + "policyId": "valid-datetime" + } + ], + "searchable": false, + "title": "Active Date", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "adminOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/organization", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "admins", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Administer", + "type": "array", + "userEditable": false, + "viewable": true + }, + "assignments": { + "description": "Assignments", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Assignment", + "path": "managed/assignment", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Assignments Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Assignments", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "authzRoles": { + "description": "Authorization Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Authorization Roles Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Internal Role", + "path": "internal/role", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "authzMembers", + "reverseRelationship": true, + "title": "Authorization Roles Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Authorization Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "city": { + "description": "City", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "title": "City", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "consentedMappings": { + "description": "Consented Mappings", + "isPersonal": false, + "isVirtual": false, + "items": { + "order": [ + "mapping", + "consentDate" + ], + "properties": { + "consentDate": { + "description": "Consent Date", + "format": "datetime", + "policies": [ + { + "policyId": "valid-datetime" + } + ], + "searchable": true, + "title": "Consent Date", + "type": "string", + "userEditable": true, + "viewable": true + }, + "mapping": { + "description": "Mapping", + "searchable": true, + "title": "Mapping", + "type": "string", + "userEditable": true, + "viewable": true + } + }, + "required": [ + "mapping", + "consentDate" + ], + "title": "Consented Mapping", + "type": "object" + }, + "returnByDefault": false, + "searchable": false, + "title": "Consented Mappings", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false + }, + "country": { + "description": "Country", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "title": "Country", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "description": { + "description": "Description", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "searchable": true, + "title": "Description", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "effectiveAssignments": { + "description": "Effective Assignments", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Assignments Items", + "type": "object" + }, + "queryConfig": { + "referencedObjectFields": [ + "*" + ], + "referencedRelationshipFields": [ + [ + "roles", + "assignments" + ], + [ + "assignments" + ] + ] + }, + "returnByDefault": true, + "title": "Effective Assignments", + "type": "array", + "usageDescription": "", + "viewable": false + }, + "effectiveRoles": { + "description": "Effective Roles", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Roles Items", + "type": "object" + }, + "queryConfig": { + "referencedRelationshipFields": [ + "roles" + ] + }, + "returnByDefault": true, + "title": "Effective Roles", + "type": "array", + "usageDescription": "", + "viewable": false + }, + "givenName": { + "description": "First Name", + "isPersonal": true, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "searchable": true, + "title": "First Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "inactiveDate": { + "description": "Inactive Date", + "format": "datetime", + "isPersonal": false, + "policies": [ + { + "policyId": "valid-datetime" + } + ], + "searchable": false, + "title": "Inactive Date", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "kbaInfo": { + "description": "KBA Info", + "isPersonal": true, + "items": { + "order": [ + "answer", + "customQuestion", + "questionId" + ], + "properties": { + "answer": { + "description": "Answer", + "type": "string" + }, + "customQuestion": { + "description": "Custom question", + "type": "string" + }, + "questionId": { + "description": "Question ID", + "type": "string" + } + }, + "required": [], + "title": "KBA Info Items", + "type": "object" + }, + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false + }, + "lastSync": { + "description": "Last Sync timestamp", + "isPersonal": false, + "order": [ + "effectiveAssignments", + "timestamp" + ], + "properties": { + "effectiveAssignments": { + "description": "Effective Assignments", + "items": { + "title": "Effective Assignments Items", + "type": "object" + }, + "title": "Effective Assignments", + "type": "array" + }, + "timestamp": { + "description": "Timestamp", + "policies": [ + { + "policyId": "valid-datetime" + } + ], + "type": "string" + } + }, + "required": [], + "scope": "private", + "searchable": false, + "title": "Last Sync timestamp", + "type": "object", + "usageDescription": "", + "viewable": false + }, + "mail": { + "description": "Email Address", + "isPersonal": true, + "policies": [ + { + "policyId": "valid-email-address-format" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "searchable": true, + "title": "Email Address", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "manager": { + "description": "Manager", + "isPersonal": false, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Manager _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "reports", + "reverseRelationship": true, + "searchable": false, + "title": "Manager", + "type": "relationship", + "usageDescription": "", + "userEditable": false, + "validate": true, + "viewable": true + }, + "memberOfOrg": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/organization", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations to which I Belong", + "type": "array", + "userEditable": false, + "viewable": true + }, + "memberOfOrgIDs": { + "isVirtual": true, + "items": { + "title": "org identifiers", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs" + ], + "referencedRelationshipFields": [ + "memberOfOrg" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "MemberOfOrgIDs", + "type": "array", + "userEditable": false, + "viewable": false + }, + "ownerOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/organization", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "owners", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Own", + "type": "array", + "userEditable": false, + "viewable": true + }, + "password": { + "description": "Password", + "encryption": { + "purpose": "idm.password.encryption" + }, + "isPersonal": false, + "isProtected": true, + "policies": [ + { + "params": { + "minLength": 8 + }, + "policyId": "minimum-length" + }, + { + "params": { + "numCaps": 1 + }, + "policyId": "at-least-X-capitals" + }, + { + "params": { + "numNums": 1 + }, + "policyId": "at-least-X-numbers" + }, + { + "params": { + "disallowedFields": [ + "userName", + "givenName", + "sn" + ] + }, + "policyId": "cannot-contain-others" + } + ], + "scope": "private", + "searchable": false, + "title": "Password", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": false + }, + "postalAddress": { + "description": "Address 1", + "isPersonal": true, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "title": "Address 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "postalCode": { + "description": "Postal Code", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "title": "Postal Code", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "preferences": { + "description": "Preferences", + "isPersonal": false, + "order": [ + "updates", + "marketing" + ], + "properties": { + "marketing": { + "description": "Send me special offers and services", + "type": "boolean" + }, + "updates": { + "description": "Send me news and updates", + "type": "boolean" + } + }, + "required": [], + "searchable": false, + "title": "Preferences", + "type": "object", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "reports": { + "description": "Direct Reports", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Direct Reports Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "manager", + "reverseRelationship": true, + "title": "Direct Reports Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Direct Reports", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "roles": { + "description": "Provisioning Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Role", + "path": "managed/role", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Provisioning Roles Items", + "type": "relationship", + "validate": true + }, + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Provisioning Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "sn": { + "description": "Last Name", + "isPersonal": true, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "searchable": true, + "title": "Last Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "stateProvince": { + "description": "State/Province", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "title": "State/Province", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "telephoneNumber": { + "description": "Telephone Number", + "isPersonal": true, + "pattern": "^\\+?([0-9\\- \\(\\)])*$", + "policies": [ + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "title": "Telephone Number", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "userName": { + "description": "Username", + "isPersonal": true, + "policies": [ + { + "policyId": "valid-username" + }, + { + "params": { + "forbiddenChars": [ + "/" + ] + }, + "policyId": "cannot-contain-characters" + }, + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "searchable": true, + "title": "Username", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + } + }, + "required": [ + "userName", + "givenName", + "sn", + "mail" + ], + "title": "User", + "type": "object", + "viewable": true + } +} diff --git a/test/e2e/exports/all-separate/idm/global/idm/managed/user.managed.scripts/postDelete.script.js b/test/e2e/exports/all-separate/idm/global/idm/managed/user.managed.scripts/postDelete.script.js new file mode 100644 index 000000000..74f6c4355 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/managed/user.managed.scripts/postDelete.script.js @@ -0,0 +1 @@ +require('postDelete-idp-cleanup').removeConnectedIdpData(oldObject, resourceName, request);require('postDelete-notification-cleanup').removeConnectedNotificationData(oldObject, resourceName, request); \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/idm/policy.idm.scripts/resources.0.calculatedProperties.script.js b/test/e2e/exports/all-separate/idm/global/idm/policy.idm.scripts/resources.0.calculatedProperties.script.js new file mode 100644 index 000000000..4c05eacf4 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/policy.idm.scripts/resources.0.calculatedProperties.script.js @@ -0,0 +1 @@ +require('selfServicePolicies').getRegistrationProperties() \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/idm/policy.idm.scripts/resources.1.calculatedProperties.script.js b/test/e2e/exports/all-separate/idm/global/idm/policy.idm.scripts/resources.1.calculatedProperties.script.js new file mode 100644 index 000000000..c077d7bc8 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/policy.idm.scripts/resources.1.calculatedProperties.script.js @@ -0,0 +1 @@ +require('selfServicePolicies').getResetProperties() \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/idm/router.idm.scripts/filters.2.condition.script.js b/test/e2e/exports/all-separate/idm/global/idm/router.idm.scripts/filters.2.condition.script.js new file mode 100644 index 000000000..dfd352ea0 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/router.idm.scripts/filters.2.condition.script.js @@ -0,0 +1 @@ +(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0) \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/idm/router.idm.scripts/filters.2.onResponse.script.js b/test/e2e/exports/all-separate/idm/global/idm/router.idm.scripts/filters.2.onResponse.script.js new file mode 100644 index 000000000..dcc639b51 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/router.idm.scripts/filters.2.onResponse.script.js @@ -0,0 +1 @@ +require('relationshipFilter').filterResponse() \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/idm/schedule/seantest.invokeContext.script.script.js b/test/e2e/exports/all-separate/idm/global/idm/schedule/seantest.invokeContext.script.script.js new file mode 100644 index 000000000..ac4e9d090 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/schedule/seantest.invokeContext.script.script.js @@ -0,0 +1 @@ +//sean has changed this script. Let's see if it is still working. qqqqqqqqqqqqqqSchedule1 diff --git a/test/e2e/exports/all-separate/idm/global/idm/schedule/taskscan_activate.invokeContext.task.script.script.js b/test/e2e/exports/all-separate/idm/global/idm/schedule/taskscan_activate.invokeContext.task.script.script.js new file mode 100644 index 000000000..07f9e0f65 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/schedule/taskscan_activate.invokeContext.task.script.script.js @@ -0,0 +1,5 @@ +var patch = [{ "operation" : "replace", "field" : "/accountStatus", "value" : "active" }]; + +logger.debug("Performing Activate Account Task on {} ({})", input.mail, objectID); + +openidm.patch(objectID, null, patch); true; \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/idm/schedule/taskscan_expire.invokeContext.task.script.script.js b/test/e2e/exports/all-separate/idm/global/idm/schedule/taskscan_expire.invokeContext.task.script.script.js new file mode 100644 index 000000000..033fac23b --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/idm/schedule/taskscan_expire.invokeContext.task.script.script.js @@ -0,0 +1,5 @@ +var patch = [{ "operation" : "replace", "field" : "/accountStatus", "value" : "inactive" }]; + +logger.debug("Performing Expire Account Task on {} ({})", input.mail, objectID); + +openidm.patch(objectID, null, patch); true; \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.AMBIGUOUS.action.script.groovy b/test/e2e/exports/all-separate/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.AMBIGUOUS.action.script.groovy new file mode 100644 index 000000000..043e348a9 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.AMBIGUOUS.action.script.groovy @@ -0,0 +1 @@ +//asdfasdf \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.SOURCE_MISSING.action.script.js b/test/e2e/exports/all-separate/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.SOURCE_MISSING.action.script.js new file mode 100644 index 000000000..45f5dd2ca --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.SOURCE_MISSING.action.script.js @@ -0,0 +1 @@ +//asdfasdfasdf \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.SOURCE_MISSING.condition.script.groovy b/test/e2e/exports/all-separate/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.SOURCE_MISSING.condition.script.groovy new file mode 100644 index 000000000..45f5dd2ca --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.SOURCE_MISSING.condition.script.groovy @@ -0,0 +1 @@ +//asdfasdfasdf \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.SOURCE_MISSING.postAction.script.js b/test/e2e/exports/all-separate/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.SOURCE_MISSING.postAction.script.js new file mode 100644 index 000000000..043e348a9 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.SOURCE_MISSING.postAction.script.js @@ -0,0 +1 @@ +//asdfasdf \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.UNASSIGNED.action.script.js b/test/e2e/exports/all-separate/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.UNASSIGNED.action.script.js new file mode 100644 index 000000000..45f5dd2ca --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.UNASSIGNED.action.script.js @@ -0,0 +1 @@ +//asdfasdfasdf \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.AMBIGUOUS.action.script.js b/test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.AMBIGUOUS.action.script.js new file mode 100644 index 000000000..d4d58a399 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.AMBIGUOUS.action.script.js @@ -0,0 +1 @@ +//seantest \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.MISSING.action.script.groovy b/test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.MISSING.action.script.groovy new file mode 100644 index 000000000..d4d58a399 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.MISSING.action.script.groovy @@ -0,0 +1 @@ +//seantest \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.MISSING.postAction.script.groovy b/test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.MISSING.postAction.script.groovy new file mode 100644 index 000000000..d4d58a399 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.MISSING.postAction.script.groovy @@ -0,0 +1 @@ +//seantest \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.SOURCE_MISSING.action.script.js b/test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.SOURCE_MISSING.action.script.js new file mode 100644 index 000000000..d4d58a399 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.SOURCE_MISSING.action.script.js @@ -0,0 +1 @@ +//seantest \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.SOURCE_MISSING.condition.script.js b/test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.SOURCE_MISSING.condition.script.js new file mode 100644 index 000000000..d4d58a399 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.SOURCE_MISSING.condition.script.js @@ -0,0 +1 @@ +//seantest \ No newline at end of file diff --git a/test/e2e/exports/all-separate/idm/global/sync/seantestmapping.sync.json b/test/e2e/exports/all-separate/idm/global/sync/seantestmapping.sync.json new file mode 100644 index 000000000..262738ea8 --- /dev/null +++ b/test/e2e/exports/all-separate/idm/global/sync/seantestmapping.sync.json @@ -0,0 +1,69 @@ +{ + "_id": "sync/seantestmapping", + "consentRequired": false, + "displayName": "seantestmapping", + "icon": null, + "name": "seantestmapping", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT" + }, + { + "action": "ASYNC", + "situation": "ALL_GONE" + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS" + }, + { + "action": "ASYNC", + "situation": "CONFIRMED" + }, + { + "action": "ASYNC", + "situation": "FOUND" + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED" + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY" + }, + { + "action": "ASYNC", + "situation": "MISSING" + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED" + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING" + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED" + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED" + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED" + } + ], + "properties": [], + "source": "managed/assignment", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser" + ], + "target": "managed/organization" +} diff --git a/test/e2e/mocks/config_603940551/export_4211608755/0_aD_4129875621/openidm_3290118515/recording.har b/test/e2e/mocks/config_603940551/export_4211608755/0_aD_4129875621/openidm_3290118515/recording.har new file mode 100644 index 000000000..8e8ad9dbc --- /dev/null +++ b/test/e2e/mocks/config_603940551/export_4211608755/0_aD_4129875621/openidm_3290118515/recording.har @@ -0,0 +1,8562 @@ +{ + "log": { + "_recordingName": "config/export/0_aD/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "4c1fef66c916c8940b0315dddc564b06", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 425, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 539, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 539, + "text": "[\"H4sIAAAAAAAA/w==\",\"7ZVBb4IwGIb/S88k3r2hImmGbQZyMIshHVbSBQpry8EZ//vagQtGTOvFE8e2z/e2h/eBM8jYAcyBPPEceKAiTcN4IcH84zw4mUlKuKJS9eeazGsuKVcx/W6ZoBo8klJSDxyYbEpyQqSiZvhujulBMOdtWXqAP4KaumQ5o90zSK6YmQF+skNLfSqZasl1b5EEaAsuno2LoizEKHAgNwsYpjhN7OgSozWMN8HKjq5xilyxzI/iwF/tsgiiN5dww2UYRTs7uoFJAlFoBxOcxssggyHCscsbet45f+vHYbB1z0+Rr5ND5Ma+p34E19DAe10nUTdUqK5Qei3rVuSmeRXhpKCHGZGSFbzSfTZJuvD+UVHRwYqIgqoBXIuCcPbTXWbeMvCkZ/AAyfq9uC6pszf2nBGP7EOTV5NXr/TqRpVbs+6++mOqCVPbccWS//G/Zf35RXN1rXsq9R1PuuYS+Fg6l+nJvsm+V9onxzpp09Cz/kbGRG1Nwy/7yy8hq2ynTwoAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:03 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:03.869Z", + "time": 34, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 34 + } + }, + { + "_id": "4c963e6ac6a0c10bf75de375d8e3da12", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "_id sw 'mapping'" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=_id%20sw%20%27mapping%27" + }, + "response": { + "bodySize": 138, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 138, + "text": "{\"result\":[],\"resultCount\":0,\"pagedResultsCookie\":null,\"totalPagedResultsPolicy\":\"EXACT\",\"totalPagedResults\":0,\"remainingPagedResults\":-1}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:03 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "138" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:03.911Z", + "time": 17, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 17 + } + }, + { + "_id": "778b519855abd745b38438bc349de829", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 463, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "_id sw 'emailTemplat'" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=_id%20sw%20%27emailTemplat%27" + }, + "response": { + "bodySize": 1099, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1099, + "text": "[\"H4sIAAAAAAAA/w==\",\"rVZtbhMxEL2KMT/yJ02ECn+isFIJ/RGpQBXaAqIIObuzianXXvyxJV2txDU4ASrXyE04CWPvJk1pA2kUKVJT2zNv5r1nT0qqwThhae9jST/zhPYoZIyLE8hywSx0U6UnylqQpwa0ZBnQNk0gZRhzpGImwEdIXATJxgIwgdUO2jTVKsMt3MjAGDbBc6U/2KP9qc1E1B+rZBaV5WOeEjX+ArHtOER4jQhV1c+jD8pp4hpMwg1pleWdc61Ov5tjEhAG/xumZKYc0RADLyAhdophoRvCJQGtlW6TXAAzQBJuNEyYTjpl2eUpQk6fRn1GphrS5+d0ieXZyeB0NKyqcxoNBI8vyBQ0EKuIUBMu+10W9bs+uBs6wu++PeoZ2LjZM2UxpVQZSVrOcsENUo/9g7Eb9P2Wk0I5Q1gBV9j9/KcjMVgCe6H1nGnfO6ZrkwIcFwJPScB1JEcSVJZrEqsst/BQLr46TMVjTnIvVqghVlLiWdDreKnQEDyDk1nunWPhmw0byJdxAWbpk4M4Vk5aMpTowYxZriTZW1piQfDKriEGyxDQdIOH7zBKq6p9v8/RDdxYHRLtwOL70Yl3H35mnpvV7LUlUUE8tBHTh0HHAjRPeVynEFxeLBm+8dp+NACUw9umCJYKkUmLSxNrnvvQB+AecfRHAqSYX69Ah+pvsDfXcxQ4AI3muySsFndR+kDPr3HHSZTMFcBco+G/9DJgj5kxl0onOxGsvtx4r0PqWre8AdictEVJTZb1QjXXJ1wd7J5LbjlDn4JeaKesZ9+XAJvjv1qJQvRawdX8QcXt9LtDy6Kh0Wr9V/fUv15Hlyf4Z6dCnvmbMmteftSzhthCy9PbgX+JuTlzTZ7b1K1l5BIEmn+3cxZnzLs6rSfkTQ5y+PJVhzxgyP5/vCHGC/RbAdJBeImXMNuNt60HR+iqeWDIFMfcGPAaxBoQdWnZuqZmUhRYN5r19/cf819hGS/M/Jo8QpE+tZtfSIPwXvWetWmOLCejsGgGSl1wLEg6IdrUKsvE8cr2scJHZYZwh+8PBif0nhMho/YOkFxObu/sPan+ALjZrOmgCQAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:03 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:03.934Z", + "time": 15, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 15 + } + }, + { + "_id": "4f7c200a37e236805c35afa89036bda0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 438, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=true" + }, + "response": { + "bodySize": 20962, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 20962, + "text": "[\"H4sIAAAAAAAA/w==\",\"7X2Ldtw2kuivcDs5IznTD/mRmUQTZ1duyYkS6xG1nEzW9vpQJLobEZtk+JDclnXO/Y37BffM/Y38yf2SW4UXARJks1st2TOjObuOmgAKhUJVoapQAK46CUnzIOtsv7rqvKV+Z7vjeh5J006340XhmE5SVuR6GY1C+LsDBTOSTSMffyTE9eFD7GYZSUL4MCVukE3hUxIFBGt80bnu6s2/aG5Pw3E0+KKhfRBNaNiFf6M8q4Dq8noGRDfPpiTMqOeKojrIF25AfTcjBlQLwDyjwUBW/iknyfw5DaBs9UFzQg9yOgBUZ4T/XBu4XhM5sczL0yya7QCd3mPrKfHO98c74fw5cbM8IXuhexYQf/PVRkImNM0SRsiNrrMRu2l6GSX+CUlJtvHmQSu0UhKMU5JcUI8Mzs/c4doG67vp9CxyE18DRkOs5gYD/DCIYhJSf9ZDlogS+p74jX39jnNb5c4xJ0vaxKRApuOEXtCATFjFRoaKZc3VqaBANMpOmp/NaHZCfs9pAowRZmkrCdJnDD7N0p3Qh2nzKYd7q/0Bh7yMhVTWdVNhYZoezI+TaAwU2awyZbc6rzGv3Ei8JSRlA7DeWCANpUGui2er/QCWM9cY2Y064N8tNARBTGGKl+3HTtKYIteQNLPMn9Fri3H5MxpahkTeeUHuk2MOigOPoy7+MzCH/MUaejQAejCMjHQZM+aMu7s+CQj8B7rxphbipvM0I7M2s1gz2qLz1EtonK0Pegaz1MV/uCbv8sFxtZzztaIb0AsymodeV1uMF66zNx6zyVo+Td0giC6H0Wzmhv4Oq1piL3OmkRU+aucrjt3jnVSQSLhI9V2fq243OHYTFxAgSdoXjfZ95+nTp84G58fezI1jGk56AQ3P041FM8ZwxqpLoG2XCiYBXBqMHgBFd0L8BsLEgZuNo2TWA51+QVNAEfAv9VSzCpiAVumiTub0oQkFmstVrXkVumnPdWtsHAXUm6+BjsstNssPYOX1ZrUBtFyVbwyc2VE3IhMM3j8lM6y6UJWSdwI6zA4NbtTtWjX4HfLzTe2ows+4QR8AdQny1XquS/Z6RkOwM0L8T2VNiC7DXTdzj8JgbjOVhfTx1WBZM6gOH6nWGzBx/vQnJ4K/9mClQpv6gOv9o7PfiAeeFXSRZJSkmxs5CBS4oq/esCacvvtjqAEmSEb8nSxL6FmekeHUDSdlb0DYXtzoskzA7XETyG4cAcjBhGTA+xhwISlIAg7n9txXvdfMTc/TC0ouV+8OTIZY8EXV/zoF+CVyWyh8GSXnY7CLBogODdPMDb2mBbAVCUouhRtyD9KCkWaB3zVaNN1Bg5D4p9EocxNkauSCEoLccLDjJvhGoncjreQ3WKLlDn0ypiEzIJenSNkgTUE8QaBRAE+j55QEfrr5SsWVyiGlensQ5aYFNh6ojYUzA4rohARM56ZTGgttM9/ceAuYuKBsxm6QkgV+qeofMcN26+WeehzDKKNjsWSkgGyW5BZcbRpdIaWDuFW0h1EQEO4Kvdqgfgz4SiKXB2IJLlpswiXZoRZzTp1DHYPnUXLqJqA4l3OrMtaG+VSbYEJkYIn1U+LlCc3mfdk/6wE9sDgKYcF3/uxsDDbg3wUNqL9Qv+pEXIocb5AgYj8gpj/DUDiESzdhNtr2FawmLNqFf35+FkUBVP3TlYDVLxr1RZO+qP+Bic81UBzQYCGYEYtIpK0Bmc00eEE04aH4E5JGeeJhcGcKcF+BKQVzA+hXTCqAlPLYvYq6F46Fl16wQJEkFswy/KY+QsgwwngBfydoxmNgmP2HV9X+ZCTWf4slvqIgcCo5+xZ/DUAR0kk44+jIj1EycUPBBNpn0ZEuA/CzxAHcTsY/tKCzcDyRQTBwI/+LvUce+8UCIVXnyObRoA/o5wEI4G/RmfEbdP1kwpDifiL+MQ898Z+BiDUwGMxxgD+YlQIreAjN3lxrPKnmE/474hiInQTgIvcCvBxkth0s3rsA8n3vhn6AcwXMAPTrg60FqETeeZ+B6E9FeR/mvD9MLyotobPGdr/N0v4Ps3T5dilw9g/wz2ot08yP8owBGLE/F4NRksXAUbDh+icwwSnNomS+WnPolyRLDwBmGSS2P2L/qbZ+AwLopmQfpRGQoxeEGwg4hQO+STmYZlk8EAp4MIVFgYtjqTiNUaRVOQAeMzVxjMJACdM8Y4TN1BqPC++PoZ83Skfxn8CBHYE+rAe498dad3AqUAGREquBwROAEOHKtzIPeIqtz/LxGHrk2nfmvhuBqu5sP9zC/4FmhhUCiAXDunBRhcJ3Z0aDgKYMs0ZlraPDsZHKGs0HqVt3KagFZBLWGBuC4ez2fZpcD6RAhrDwSYKA+EYx9bgClpvKuEhdgPYshL+qk/mIuby3J2ArUSiouQRFBOTqAiZGy8tvc7xLy+xK40Q9Xz9KsQrcdIxvhJicCjhXRXMmhmwrfVuzxl4VXpBy1XTzlbkEwvYBs6UjvYdCW8gvKPmX2IAUhdiiINaNu0cNARqExPgbdMSMmWICNOHBmAF4UG4eZOmA78Vw4RmAG+edZ4nrEdUOGBspPo+xJZqCg99gbRM7OMZyWCI3LsqokbPpkNuQbEjw8yDCtZjrJsUZKORqmkenO6f7w7cvR3sn3DQQsRaEIBB/CeBPuCn5qsaWTMgEqa0oj9znJfM4i/BPMaJ3vRRZmfRIyMo47qC+coK1PBpPkXadnb3RYPhsODj+cTj68hjt7BANNdQ+UDp+v/fwh8fHX7/476NZPsyJN9wN3Z+ePkUj6wJt4On+Vy+/n88OT4bT7/bnR8M/fzlyJ6z8nMy5En38CA0nD2r/ffz8rz/vDaIvR9OLv+z8/svDv5PHpxxanCcgcog4ig5nmr6BeupiJk3nYuvwe/d8PE5+e/bD4YvH73+b7h1lvMeUhbP2cdIkqdL5rCcI22H8w/yao1AasWVvEhkxxZ9sutwwCuezKE85P9zmnGr+QbeuCtvXMSZe1zZY2pdF150lh1raPKof7sHO4c53e7v28br5BO3pkfCpNPlQOFy4iSOq/Yp6wnnqJDyJYXMDiTDQHMCNB+CeZdWAY7opvbYHfzMbg1IvckOgObfxi0+nEc7FZiJo0nUkoK5TjAS+5iwYesCtZiyTADAzp+hA/7Wj3An8rg/xwd8aFE13NSZ5o0g/F1gy+is3GaEVSprN6tH4KEHRji7B4uc/3pRXEyY8ii04hwwTwrwyZvko3uNlAmEG5T3/IYWMgfJU256MKFTZ0vCq2CKWYuwtCrlCxYEJ5vvhl9O3o73RaP/osMJ7nF1351CVegIvts6CPKXfg7GK0W/JzGDhnUbnJHxBx+SAhshTYO092lJd65UzrLkPq/gpnRW1H29dX2vLROHsluRGxhCHLP0iLKzIL5lpWSo+GoPTBxKjleybgh5GPulTJuGyxgl4lLAkzRE/NJYANwO2+b3Ame1YyX2uAVpEEayM4cti/gVvvog8l62wJKwOcJxEs47IwkhTmEk+G/Dpm2k2C7795izy599eXX1Gx07E5KqPM30IPVxffxN/+yvwgSN5zqGps3F1Vam30f9mEAMQgobT9f7YmUc5KA6PgOviO9kUmrHRODR0SJJECQhtQMDFcXyawoLpJn7/6mpAx9Dl9Mm337jONCHjp687qi/M1ZyRlyf719evO98OwXs5d2CJJE4WOSwx8puB++03A2w8YCOCv3F4HaRA68H+HGUAMoxmjr+ByY40BdLD+MHHajHuEXUuYDly3AvyHkb/x//JHY9kDuYSwNBjUK0wdgDXdS5IDv4J1AoJfAfihA7MLE0cjIRlZFlagNC+d8Cfc2KcLIYDrNEhquWkji6gCGbAeKea4sMCXKi5elV8suN5UR5mzn44ZtYZyJ/TczQ1xAislaagoRMnIGI0ULlCUd2EM/lcz7RcA4s//vYUuQ/+b4600aFzloQZhEqtKL3H5hFEWYWVHEz5UBQueO3xt0MC04Fsc8FYirX0N0Dk2cKCMb32/b6gwB8+cS7++IfWNcO+6Lv9fJ4wGpAEmO/ScfnkStSHyR//gJI8hCnLL4ibizlsmi80Aop15+YTxoUb5JqB5vMmF7b2RJMoCSj1EyXEh4kOjJ5t8LjApySRcxdlSH1EgbTv/0BrBb3zGdThs1lcbf4qZJEDOtHxf2/Bv34euYe31on8GSVlLjQ/zCfvYoW5fGk2LE1me8oJOCbpailySQJg/vWus7DG/MLBIkGOwGjY3z3oO0sssouXN+jjGfDbBQlzwjSx6ma15W3lhYONSigYZwrL3BkBMeAxBcWyHCexUlxQ3ATy/9//+t9//F/2GQTmj384/2FMkraVr8LdiDM4Jtyh6HRlyEFt4NbWbY4zWDu1ZC1YuivXWqEjPVHB0oMqXha02G7YBZrQQBx34Z5gQx2BgPl92Z4j9ESAMu/m9l6NctEj+3aM35btLSEzMLwxWoi7Yc9BQPUtWG1QXDEtqr9897FLkwOgFAvXFCTEPfGZ+DziWzzLwuYY7ws/FF2CndCXP9G92gszFqEvj7Ftw2URsp8KKqa44eiQ8jSzZO5cOfbwL/NL+6MMNwG05mkfzOqUbMqdaNZhmPXf/l7UedDHcG2cbaK9Y0JHrARo8NN59Z8piy1vPug6YR4ED/7mXDseBjudTfIA8MumSXQJ/93wwNXbcLadJ+DMORtC6+MH0hc/oOV1Y3RBkVFstPbFRus0SjNcCtgKSlkksHAxjcr9ctVrDay2Kct1O49+yqg23zUtx4iy6fsDMjtj2zhXHZqRGftDBmWKzAW+yyNPw7jBDu6ZUm64i0UR9C3BuMRLbUdWOe4xCFk5viACEGpbisVH5IIEpRNwKEPxd8rCbdpEMxbK0cZ5I5x/MdLyTrAxYp6nwIcItn1KZErJIW9spmNgnFLLECj2rXUCB26aYdI/WwnHYyTXhR6Bkj3gzFuKO10FQaupgF6zzAcXgcdF8Vuxk26bJ+uWO8bbz4l/rBFDBvx3eawfe+TZgz7bXhDUtGyvp2VkSjTD3fc02+V7B3q8UcUHi/Ie9eOeFxA3zOONB32ulIfCnfX3/RhzJTejQKREdh05YpyvriM0gRZ61EDraNX3oWe/tOysMYQo9vxxI0D+2cH92e3BALfvevxjH7TSwE/ccdbbejxQeQLUYzM4dnsyfYIFAZNwG9vyatvQdFtptW2hKLYFc267Md0WEggOek9AjEkUMwUARjDKzivG0l1d2jT3oiR4CImlU/tEebRsM4gZe6PMzXK2fgDZ42kUksMcNUqH8wGoCt9PxElbvnnGPw9Bo7JVA2CwaCR8zAjLNtHT/KAfQ1j4OBOx+SYCnTx3I2EVlJDJogVSh/sjZ+4+z2yJwTUhCQEEhKmEKTLEPyhyNrSQbdcM5s6YIrX82t9Vu4dS2mio/XxT1lJM3VwZ5OZq1dnfxcbpMagu1MIqrBqrLX7QSDHmZfHd/ig5o75PQpBsnhQy4HuHLD2Gh4XBJImyHq6lLgU5gYouhpJAkFn0103g0xlaFaIrwfopW50ZC8F87BqoCsaSWc2qKdqv2ofrMg8V2zSdbUGvEtdtdxS7tadCQibkXQxt/2eTA/0gyf/g845JDV71gG2eVikgYtA0Y0ZWwfjroAjLQDC4pMIBO6zMESzEI3DwGY2sjDJhXUiTYqTMPOuptnWTLcZqdr3WARcipFsg3HoYkWBcjMSUEZBUbY9V4AIAseDYqGoVLvwoF32mCsUS4tcwOu5Yii989WdfagwlaQodmSlsjSZRKd3NYhqxJdluBaFhnWQ/kjnf68fZtBs4jNxcYbJi3elRDM6HmehF3eLeADlzGmex7jJYp57Nd6UACyo2MJVOndTZd3YQNyq2bgQSbpK48/bMpGn4qvgY6n/1lXXbXJAsMqe4eD2dbHN4XUMoBA9ZZcIc94la0hzX0SfVwTAWfBN9i02SinxbZaqklPOYLb+O9HSdS5pNaQj+E3FKfFRCeZK4YcbjS2Wo32GRw8oK78L4WEXUtnKa2Ith8qXUIuOCOY+1o1oOMyWcfZwGp0SLJbSC3X16zjPyilJtsDt6XmxJXxg5s8tpiwb9MBPeYLOCkKtCwaOcOJ3WyqNOXVhA25TBDdabwmqsagg979yR9uNNhFg3UW9LUag+lJ7459cKaxNjy5R+BDmWMTeGQCHK5eT5tUmxEdhpJ8p1dFqjSFula42i7YnkSpNthtzpbO8ugBHygoQTnKGHpneA5sksn/UCXoyRIa2Z+042e/Tll6WG7juj4ZuCKgK9VUxqPoNVMlS81ipNZBVH82xt+in9mSZZbtNYKpAgNgkKd9nu0+qFdfg0uTYr+jEml5f6qRK9BXlnRY6XOYgDRYh6BIo6K/R9rTspDYQvjbaY5aqSW8lut3LPCnJcHqQMCsiQkIVNZKzok5VmheEaBdogQpkmu0ZM7lOjS70kmHivkVrWcF+FbHuylrOz0JsrlKBII5Q6UI7FCqy8fBYix9by4hiXCjmKuHORK/pFh63wslhfv1WlV9Y46ZvuK/P3G5uomzNSR5JWkl2V4lIctmEGmgzkJWhvNVpaUN1KVkHVpci2lElTJVgRda/Q6jlN0swREXmdTCIK8GmKuIH1GiXcCJ5XaLUvSj9KnLTc+TojpXKXojLiH5/tOGL/osobVYPNDdNLvmHP0vt/wk0tFXNMRep5xX4Trao+s4RWcQ9L4KurOSt3fi/6r4DQEKo0l4DrPEDNVNIWaEmrej2xRkNG3xo2kX8BJQ4WOchVaebOYjtbqlmr2cUqmldm7IYL4Q0XuaVWlWt9IBUUTzUSLSGmi1gi9SJWAY+NcGltEGz7hJmjbq/q2X5qdSpY7mSxXbpI0ZdHzzIaey5v3xN675Z0exnXNap3ucNrcbDk1q9Nf9/HvAonk9HpBhGuUirPbSbv1IWwig39huhVg8AWzGIPXy2zEhuRLhvHajv/dZuYTfs1/4x7mFLsPsYmZrtNio+yi5lFzuWUelNn33lGgkiPuSy3lVnKH0G2WugLAfUdfm0LJgdW1XLVCxoHeAA71HmNw653SjmnwZIC/SBmi11UQz4aPKomaS5n0yxHU7nuask798kGty+njNyfpJjuO0eX4aqiqZ/2N5dr7USNdmAeGcA4Uy8B6Kfqr2viH+rIdXtn/6slnP0wnw3dOK1ECNysh2c2s97fe54bA0WCtNryMJ81tgxzrqfNhvKSaO12iibDoTFdLQKzSqaqLWPOaxO1DstV6hcz4bHqK/MC5+GnF8VRm3Qaimu06bWUz6rQsDJH5IN+ahFsxTEGluskjZZyWqWNkY/aFB/gZz14hmxyDl5wOKmGBIqiquNCQh+cFieNiUdhoBFewgR+EnwVV59pyy5esENcprRkv7UAQ3LJwRQYlqFUXfMGyTUo0s4BbzUP0uGo7rCw+6CcE+WQ3FIih0DgPouj6tGaU3DjBI5PwL0t0thbJGfYhl/r2C6dl1Hh7zWmZCT2vZ9qcl3nRnlWye2mWCVGdtV9Fua/WRammbRVuof042Re1tFlGa1QlLPZxKPwUYJGWoiXZtAwS/fwmg+vcD0WaRKrWK9Rm6SWXSQWmP9n2xnVkV6jKWmeoKrqByweaCesPlVbu4LoGmlUPqVW3W2SFRx1js3CV+rq6f95/frP/7n5aqv39evXPef1683Xrx+8efDF55W9qo9ES8tw1khNZRFVyKjdXLXsPpa6bcgkwM0Os3U/JfnXiLO2yShlB9bbqmL78Y2JjsWZqnRQPk3ecNZVO9SfTPSTr591yif6Ovq5V/YyXi/9PXcTsrJNeCKvCFfnX4tcqLf8eZjSOVh1x5qelFasyOaJH91GyKqrZsvznIgkN38avN2aNcJykLJpj188K1O3w786kf9tTimteW/Wr+ZQrMGdvfvTQtLvamGx1g68vcnKGcu81kXtLomNqGYD1S4IJQvVllAv5L0a0XU0d8Lh1yo7IDf8GkT5JkI6LCq12Owa6vploeQ3ZgefImejotE+d/HyKZ9h6dM0Dty5I7Yn0n5n9ZTdmh1MixwyzVecTlmHHhJ9/QvFzj5Vj1yfvFvyxT/6hTJrUHdVMn1c17wkc4tUXmi16ZU2CdmFKI1qpM7Ez0O8gnGBfbzQ7FHOXNX6smSoOmycTjR2ZANU27IFG4JbKOsqtetzaX3x9G/V5lMl1f2EXF142piiaAAv3DkxAG3I9UmYK6yY5kTYumtiH74olcYhbQudF21a4qrjymvF9/Tdc8WPHcOKWY/3scM52oBcuCPnZL6yF2KYY5ovchGHbzncVk6IOrqliMNur6Hh+U85aA6Z6SN1U+G06G7KJaGTadbSM0ExL+ixRh+lGIC9T1XuII54caQThc7ZnFtTBUr9jjWvXZUfsdZ85Hlo/y6IzV9hqGa7W9pUFUtBo0iDXFl87crUSrbrOoSr8RWtWnP36qEJE8DP7HP7zHlttMXt/0urnjKbLurgNs1zU+Y/rpGuTeZHMNVL2qR6VEOjItZ1fleVxd3N7IHLMlmhzBBVFf5GEEV/ZSYqWLemQQumqD2li8RmF++iNTDFy7pZxQrq8DlAqziLGowZ+W48eUfTbNF9UfVnf9u7TpqMrM2BKmDeu1F35kZVJ/LfzZkyY6pL3TazumPV9tKZtbhKmjZp4TDd3BuqSbaQQS+VZ7E2dWHmRfzzK4u1R3nXk7FQykNoFN213ySzrJRahr4+AS2z8krp28IXsoosL5O2gelxtLdoG8zGX3jnEvVXnVDuyuL909i4eVuv0Ue0GtN2T1u+NWaeA1iTSx06OlwH7W0SwrradS6noO7UvbqgBNhzKXxSwc/Tm4GpyS8r7Bse+VlOA/EwnuZT+9HMpaHuUlsJpQ4kqGsQC3eZn2hBv3kKPSTs2QdWjR84YU35n7zmTlHGPxyVa4jTMSXPUjZrdaKH1Xaof4tned4sPr8jqLXa0R1GJ/behTmOJY/uCBzqju380x6vK9lj9mN16zPIlrsoVF5mfPPzOzXKU8law+bdIt7ibzxFNmOt5b1hEomq34sljnF0SDeg/iUY8BaOjZlq94aMqPTyJ3CIzM4Pqym0Ukho9ZuS2hypt7zx8K9x6PFu3dklTyivT32uwKu1Hmw7pSjd2qXd0lYMqaypVlYQq/3RrSBhPK5mBTHj8OZWkMDh3gq6Izk2Xnv4VK0gxluryrlYXqtHdNh3x2od1A/AcIP/JTjzNq6/WNk+srOGnXW1OVntBhU7B9TdprLKvSklR7rVWiBVKMZoeHtHOfO3sDa4ZS9fYdtixRCytdqK0WKgSy4eRVSiFaVFp/xSkU/nMpEbEbVuTCtR8mgpI8YynyocdQuUrcSrFLYfgXHLA12K3Auyiez6yRLrBJTDjKSZUNZqh6EIehorIMZj9cAjbiWcual5sIBXEqjgD/PBOILb4uwNKvl+rOAgWUN/o2wgrwXhL9d2SpkN4mnHYiU8iHzcDvf5utGfJFF0gUSdBNEZXtdhLJunEXvVnk+uuPviTbEeisbXGqZXnc/xgH7HfPBee+mtb+L7gQ9NvFg3jYRlJscS45tKyiqQ7/PhoRr5gi5/Qla9+6vekOUgfBWCF235pm6H4sWX11ZbcfAF8oP24p96ic6odXUFJTHeaT2ASbm+1t+fNecniXASbnl6Fh7cuet32PQLKm7MMjoJ18UxHOanxzDPXS+LGEnbU0ijSTZNiOsfs+rs7Bn+eco+AqEeITe8+yknORnR94Djoy34H84elM+Nqg8lrB8JiXcCfFVt+y9bGtI8o4Xtd8gMAuBaGSeTnM0q8adi1QYOTzxwAy/HV7R902ivPvyYgi8w4reJHItY3MaDPpCbP1PPc9gKIJsPCoVueWpRmx8ELK4pGSQaLHaAby344cP3N0YMgPAjhfo7nGqBEsbQrTzlp62D2kOPN75L6g33S9RwjbdHQZzqByscobrMKrXiMwjFdxwgmcXZfPHh0C9WpI8tqXzRkVXZpqfllZtQ9WzcZljM9uvxZMXSzCX0AoRxQqoIKUIgV3LPhdlYJRIIbJFzTfrdySQp3ISh24CcybDAap8Mq3QtU6YmpsdwNbDH96jT9HngTprYaGVStprmcomGU09ayibOcm+jHb4roGVMMElmNE2X6vK2SaTjZCA7lk+ZLxJAFRHnmR3LdV9WAtbmbGA97mnWq2JMUGlUxZ+awjPHoWc2NQ5DPsq98JpsMKqzHl+tLXTzmNc9kI99azeJ1z/pruTfPFhq/axjjG7xsaHUix/Sh++hP9zjNm3P509bR0nxFnGPP+NtfrO04cGjnhv6vSLpxYCgwkvsDxsM7UQ8qyIaGueJSvEEM4iu6xiE0DD4WiTEQA0MjG9rQ1zLgdDd+rgW6StD27Pf8iRDsZqiJX4UBnMtGKDXMp27BZW1G1ZlPR5bNatpr742gtPvIGqsqG3KN9YzgtAtIPKAVYvBtKlYydNqrq5FzNrAPaqt/qarFlDpQPHA/kB24ZDfndedqyvmPr7uYIbcwIRaqtHpGjqjQSyadyT0VQ1k7Of9vV/g68vj3Z3TPfhjd+/FHvzBeP2ek+85uZ6TRWA3TsqcaSrkpbhxeLK304b7tAjZwqlQru6CmnqobUHVtAUPiEDdOgWkHOZbUL0aBVxEq1KQcJE88BhiK6AixLgIoopALpqAUoByQfXi1P6CKStu5GyeCP1R30V9a69YNFYsvZbWvv5OKUG/sZV6kGhhTfnY1OIZNu7jXTjF5adJWyryIgWjeWrMpNXFC061rk1Nlt5iWEJNmi35ov72LahBWNffxoHrkWkU+CR5+7bVGm+14e1ZMvaVXizwasm/17X3uvZe197r2n8xXTvYAsuUXTo/KNAsPv7H5qDACD4+qDFilbPRSsW2NV8/Keepfgrufafb8p0k6vVRgB17jYJNFwXH/v2iAPeM/EkEAWxR2fsgwL0=\",\"YXpvmN4bph/XMK3VkZ9mDKDFVta943+vX+/1671+vdevVb8fXPwCT3TxFzn+1ryAZT1/I0kgQuU64DoW2oCKPB8H0eUO/8BSU1Qei8j+xjTfzJtiLkGnj8nIogYQwTzilrK7gMpJPiKjuIfCEyX0PaavIEa31g/SrGMceUBZ7LOTNV40A6r5KT9YwZcucV0eXiHID/KZB98GWIBp2nyR/PxKNOCub3HJ5bZcztgxegaaZ233qM8evu8lxOO54uUeWMG+LzsQP+s7wPR24AXf104VBr4bD6Mw5KcFeZa3SCk+w9clttldbKIYM7F5gvaXW13t+4h4eUIZxUHVJtnpixGgMCXw5zPgwX0k+IUbjBBBJOJftrTSUzojUZ4d0CCgqsZDngAeJ3TmJvMXgCSmMrPjwsBrU1gkZIwLps//rTdOIj8Cq+Ki7wV405HXhylDXgBl2tl+9Pirr/l9hgi+ApAdDYoilieP7IaPThcZ+imdxcg3nCC7SNCc+k85v3TZR/UCK+bEs8t+I+0s6LseB9HTXsjVbjL1aDxl87mzNxoMnw0Hxz8OR18eY/o6y7jDszqoiX8YPPvL6dfk6+Huj98PD786fXe++2Ty9CnUoBdQvgfLcPL+cu/ly/Pvv/vyq0fei93LLy9Z+TmZ81l7zBLtPewrm389/vvLLHgSk3ffBd8feX8ePuPQzOd9eQZZ30A9dfHsVOfZ/unoxyA8JqdfngdevvffZ+HkPe8xZaegWJ6alK90PoP54eeurvF/gHcIA6fZ8wSmapuzG36eue8KjtzJMDsPU82+REHmmW0H+oWYDKT+JcSLngOXK+386YSAkqRe1/eeClzknzrf4DfBOuxPQAnF5V2M2Xc6eC/IU2Bn4jNx46JKhWYo9VxTdXlMuiIfcIifeUYZsOCRPPQ1TnpIYdZLT3V6yvrb9+vfcKHpiTqLJi5WBLnY0Q1nqr8qzAUBtH+Cp9xowCWeLzNsdWPHBZgSQvBlYAaaFsDX8rzKPidnY/uipgKD93h1GGP5qUh8VIvyz+reYH2OvPCpFF3nZ37AN0rSLnzm7W2EB6XsjSc96Sj0LmQ7FFVepnrtMSG31V19SrxwyRlhrxCN8jOewmulrMBbvFdUVLXMkHb6pwaKrGFpjPmmjJQNzbFOj/G/DQJb6rVWSLEDkH/KJriWaAI2a11Mj7UDGipayXMjtbiilaXIJc+R2NiapNkJP7durBWLZ1t0hAB64uS739Oc1FJXBvOrRP8RPwJ2F6yv+uylYMF8XMZnD7O/DLkuxdOLw+LkwzLEZ3B6uQZIP0Nhme4y4ZdhUYOAn6IA0nCoDa8J0Ew/bILDsQA0GNanbMl3+T0Td8GuRY8fW0m7KRmRMKXooYsBCvuzNZ8iDCCzACLHYd60pfHoOleFgo7PaUCWwlqbAnY485Nk+X+VJYHj8wwYxb8rEeNd9vC2Af8jC9nH5iP3nSTwYjZy3xXEquciPHXSGiRw5kKQBrfI2sfqCFIDy8hKyzGMOq0t11rD/ZbFd8gjwp+UwxoBi7oTMsJrNerNzfbKjkMvxp9y+Pz6YbtBWnDNzoS0ZRm8UsACTJaXLOiW2BfQmyxoWet7ioObDzFI34C2Ajrl9Xssqm8DXOiMJW0qq3pqYvyExMgTJYPxLrSl7FmzMP/dLJOPr6Xx7CjxcsS10KqtB4ty6BUQ2qla+EgDF2Ood7o4F93eL9DGarpLx2KTarm519dYv4DRPPn8GcG7Vza833tV8xH57aVl6pfitsocLuK1lCS7ZExD4otL3gxboMx2oo72iFkrrsNe0NjBbnoXHIZhNYh61aK7jA/JxvJJpfYRIRXgzczHldTUojbdDZc1VLBVz7f760BysIWzZ2TqXlBuA9WJgKjaO5N1m1m/9bAbhEHuYC83XnX9RAXeJInymBOwpi2rUUMsQzRbD69ZWEGA4ibzm5fbzdZ8Da7DRemJQ024jQ1t20YUS2jpwh+y5lq2oMR+jITZY73fpfxiWs2Bdhu8jb6xeZFsKRWHbyceW/Mi1OWw4r5ZuZZfly7Lq9mm8ixvKhbxMvO+/MqUW2/JV63ldeY1PYeu3ZPUb3doKacCompZ3mzr1r1avAx06/Urll094z4uG5vj9/WzuWWnVbE8w+Qut1dVnK9++quhwIKEmJNioxxLYrktarFO75JIY5qkWeMeNKLUk9UsomK8IboIjno/tA6StC+agNQZEjxlZfFgVD3rChFE3rk1RYEV3NrEA/A7nfgw8kkzqQCjHtaypR9cy/SFgYtPTtrIxQpQw7B6q9ANlDMNJyO80pFMxD5XXZID643/qePrBZSE2S4mH4sbluuW5gLKDaahBUa6HRjSdIopXYsyODgoXj+j9hWLpjugZecpXZgPwqHR1JX1rZEdlcSzGNSs8sBtIZLMaDixXLXfBjBvJU0Pr2hdmw6zak+8dZuecFD52UlxEeoV+AcZ34ZdxLB5M2tql5HxxB2OGxGJ27JdgVxZDAcKk9Y5UKwdb7Ze7XMt83ZbTQDDoOfWzq47O6OTPMpTnqnFh9Ii90kHLkHwueYUMi+4Lzy+dx6ptThr4Bdtbl062y65ZRSxXeMKvC6xVzc1t0ZNtqgHtksyPPexNEift7MZ+VO81r09QF7fAqhlIp8GqmFZSGmWu0vyXtGmVgdLkVkGqtnwo6r3lJ/MWQJ5dS26faVYgR6lhh93EZLVhLNuWzC0deokyjMm2Oz0ARnTd9BGLSyF3aYvJipJXiwr7C7SdB56g9/x9nGbzccK0ObDardlKiNsjsFd2suYlUzeWXdny3j1ZN1KBICD3HWzJrWjwWHVxbX4KyjrAlKDrg7JpaBwG0BQu/xEtxzcQo9Cg1LjVkgGOCEXreAUtW2gAn+JgUHtuoHZXopqAbGdYpO1WlJOVq9ZO7K2rMVr2kBAlZ32g8S/6sw2Zp6KIwXVUwGDL2waRBSuojtwumzBRQ6xx2aT1/oJzwbtMUsomx9gojOgdpKzE0+4KbY/CaOE/CBrshpDDkYpozaaSnYNddk90J562KcybFay0rmLMbUHsvH7SgDpjJ8EqoLkJTcAap/zm4CVcc7yWyHlPvTym4Y9axhN7+Km3NaSwYxRV1bD4kWTUmT/rfH0yOrR/UqkeUYyty7ajGW3RPm7IbbQZFya29Oa0eRGJMZxieQ3G3G14pVkSKJilU1ReCPArjpFXRMnFKXdm/RXyxwCYq/o5474pdpxlW3a7I5piDdulM2W3N4rnW1fcX+PXwCwzj7Z3ugCkbDeKWRhLr38dtlL7+mOGcwgQoXFxJ1ZbWfIPOS/6qavvC+rZa/aPVzWHqOat0irPS8pBOULEFYc74JdZiuP1G09a089txhA6aaFFfEvHgNeZgRq1sTR8x/JXLnWS06kVbibUjRuV5ixh5sK8QGHdcK12TLybE8O0XXnklkDxrBMHdx+6rRlzDZxS4tecrPMEp1RmpIcbpdRWPLeehhFPIW+DKPUpFRIK7w0C9otFotGJGzWxcxRtf7tvFHyOFbkX4Zb2XdZAknDXbIjqq1/KyJpqEh588UaNWR3HZpAsym52K5XFWipYzeZagaG6YlS5lwJWS9smPSyOalrLHEr1c1kRV1t1Z6AZeVW0aLr48AVprcFC2pmxzqQZODWjaNM7tp7F1N+v09drkV8Wa60aG9AXlK1S1PPTfxfoJCkeqcv3DQbTt0QcG3oVa+xcpfyGrS2Jq92Fdut+HxthEYu/u0nvFaMVQ4EjHOC1+upIHjFbqzUWimsob8YZk0UMyqs0ejQ4d7U6NDff29pdejds3A2HsT0oRur7aUKV6Kxam2PSt0MeE7tUHO6Gjh2TaeVE0TRCmDFFm/2CK/fOoqV2TS78DydNcDkKu7Y489rH/ODwOxCwAzEhhvZWZ6Eh3kQPI+SA7zCLpzojyJzyQXRPAD42s9jceHdBWHPms+1olF+liWE7LJ72NSVgZiEKe4342+jszN6p0meZtzOTfitB50/XeGVWTTEKyyDvk+T64FsOsiwOoY0UeKtQOQRrxbAGJyYn1SwwuIpp50ffsSL2DKtoLPNN1euS9fc0ZCiWEB3hO+TlA4VvLoyk9Y77O5u8Tb1BXHU1YBUv/RLmoraZW3aXXvdMkwYBvUc8S6zI3S2CbC4DbAKVbspsAJ6J4zC+SzK0xpMEzKpQsSPFlDFGXXiOxfUdTxkOWaEkzJcLKoCZl8tkPGmGYCZRQ4wPzNIHXnVopO56XkFbfZRM9dK/ZjF1Q6PQazHUTLDd+cvKN4BCTJUolAs6vT0OkVX9mK8ba+Urw8cZOWNIqVde0eeFfZl0TVDnbV25TyaLYvPqiY/uKDjJEvExYURXkqDdwD2eNoiJoNoUhHl/GwSP6TELx4Eb3Aa+Wwx4XkMHakq0WWNQkzRAAUn9URHvjTP72zk782L1d7y1HrsZkgxKPyfTWEifJBEfLD5+YfNQf/PDx6wcWiI3Er/5sOxn7M+jbi+yurcFIkhfQ/UFPQBfzKEnadPnzqoWB84f/qTs4m9RmNHVlYnSli1jTwUhwU3nA8fHL5I98/JPN2sNOjPhDFQPLf6oM/PWDNYW83P2SON0hiPZxujEFeEbm6YT6ci1TYe9DkLyIabzT20nUXtolG59A+YvHpu+BbTDy44fwEFQOtjVHLvHTtTjhMgfDl1ik/8puFFdE6GRVpPmHPP63SKqym/RRE7YDEV8zrRzc0B65Wl8jgBYXeKohXfD6PLX2g2PRqPU5Jdv+48cHYOd53N/9gc0FBrghfT4rMfxsdJE5wHykqrmupo2IJssjU341eEQqWHWzOek5aej6RJDLZFjOs1UnIgCbfDL79mFO0VNbr8gtKGurL8WnTD2IRPLvw1CaIzIDX8qTIFO/gWc+LEyJbOU+fVFQxY3b76uuNsw29YYvFu9NedLvwY44u8omBgXNLNy9lJP1HOKQk/rt/87XX4OgyiCWjyvk/O8snm6w6YMqh7UWnviME4YjTOKSDvRKFzde1sXl0/QNg0jPOsj1eNdx1O9/3dBwyu1LtsFJuyrOvgc99dPrYHf2Pi/LcG5geaXLo0A3NsyCle8Oq1ZE68dpUyqklmD+U1xCmYE4XLxa/CkHfHdra/+suTLX4rbHl7oV6MCHrAdyxEBvsHWRsxsghRW1G8BRHiRGsjQJaan5b4yLloI0AsWnIvPgEDZ7jBhIkM+k2sCyC3KGXe2+dnURQYxptq3Bct+7FqqgrTa84jTKaOGYgr8UtcGfRw61pHjtGo29kbHuyMFEMV5OtHYNTORPQMDIILAhC/7uo1UB5mMdgMfeFiFNT5C5IG0PkuiaILJjCfTdif4HilTD30Oe/23TTrg9MTpsg3MvSPN27LBiRJoiTtZ+A2QTWcqodbRSnIIDIR4z+lcUqFILNn7AbmUrEYxhnL8O985oZzh7nYDtpcoZ86ol7ghpP+SBKs1JrVTbn53+dFWiWe8tM/m2dAKx+7edj/qloO3igzoOfKT8VbqrmT6omAS6URDX3la8uiSzcJ+f2DnYCek2DucPI5n0XgZIE4MmlOnVdg35Mur9KNI3CNYE66sQsUjqj7psNuDECArHdx0b3Fgw7oWVFX8YPEqvy9hk9URa7B8HLsiF3Wvd15efq89xU/bK1tXyllJy6Q57dg458VOhrYntFwIGqng8LCFHUWAxCIyHzhmsrAo+XavUJlL2ik0NJllYBzxHZiWZyCu078YgVw/5JJH0QHlHDknfeVyuBN5HXjP5I53rwG2g4/j0TUpEg1HcsQiWyPvgLW6gcR3wr70BQ+UbV/88g5KCKVdy6ejgmoK0KGRQ8CM367e59V+WC52/waHTE+mn3hhfblhHPVy+DuHQ5Pfj0+7eBjNvwv/ojNmnu23d5+1zhIL30NWEyzLE6LucYoSgkXnP4AnwewYfLbJSw/hD110Z9FuAitnTLQhexhOnM9QLWEYFEBy3tQoSWmGAwqTjswJEb73x3C75/3Tvaf/1pBMSXBOBXWQrUHrXTtRNBhp1M3IX6VDlqdOiIYYJYd/VpYt9gT7qsrf5agFs9iuKC+eH3KqrBkjQ+jPPxhuHctteaxLSxWtBKlHzy220Yz1U5Yd5Y2WPIBuvhxdF3kd+HDU6FUtzzMc6uKugiDt1PVRf2Smm4irtZJQd6Xh8201Ru1p67WitO3Sl0Wlxf01YM+Gnufn2GSCfx7bO5rFo8qCUtkJ0wvwZY+jfgdXp3tR9Win0nCdjUedjssGii3WR7yc90A9pepm22kzhxsEmfsXkS47ep4URAl/9lBf/jtd89ELYdq1XJVL2cVx+jx/pSTADxU6Me5iLIEy0FdQYs4+eMf4z/+Af+S/0SKPNK6j5xLVwLGWzgc3GGK5gTAmoZEQSK54wss0DHNq1daHE9/lU2mr2sfEbSqO3ZnNJiXK6ehWYuIl9lUBfa7FA/tDLjPNzDeRHP4a6IKVPnBNAXSLKiD7fLyF7jEgWiUoZeKdfjs6bUFYE/IBL7XAOWFBpmMJ9WayYGvudlpId55KxGCfa0DKR59K8Mr3oIrRi0+1SKHj91V8MKPOpTys3gGc2CgJSwxkHpssE7YwZeY4fTz0AQUbvW3cB+BDpXahIUmi8JTFn/q4CNbzJMDVzQOXKkbfiEbF8Th0X/fQVGSgIsXfH6NcmcG2odt6cSZAz6VasFqOzR0QNGRBPec2DNf4OmyW8vQY+dPgl0ZRzw7j7Yeft17uNV79NXp1pPtR1vbDx/2Hz/a+m+kAYI8Rec4KJLimMi/AO03c2ic5jPHR0XjpBSwmpGs6/DLUjPczXVcn8Y09TAeQ4CLu04KmPqRQ2iegiHk8LuiAGuP+tTHOE2eOYF7BuAdknHQxJm5k9B1QAx+z92+8xLUC2hIgM23Fh3QBtSddZ3fc9BuIbBckvvgQ5ME5ITh7eRB4M68iEPGSjSl2BMDSWOo7BDXwVfBIkCODQC6yvrOLoJ0wUxwaJIDJnysQOSExAmZgpeOLx7hh4soyGMUIkAHRgoKNAXdSYNAUggGlDvjfEJBC2McyXXA3YUfedJ39ti9DKhlUwo0iDzPJbCYOl4e43WX2AJGAfMJS1+IVERKQadeHsQujtuJxmPqUdfxCbAlls6iANFwkUDUZ/qcjT6f6fwguNVk7eQiIBnfIwHxTFK1aTbUTAniBTD94HKRLJv3CXm41Rct0/4wAY/+KKETGj6XVwLihvQx+PczniiMO6NDsCRx45VFELnH7vId0++J67M9ug5n9O67njTx5FqufYIp57a19k1KcpdtOIUZu5CpGzGcoFrCN9aI37uk7DJf0fGB3IfrfLd32j0+GsE/L0+7/MW17vHO6fD7ojIfIVZmjsz2YKDcle3CosDEJ+7poNUBFggNjxMyDuhkmhXRwDwJjvlGEzM/B190aqckdudB5PrWWakaeHx+XqA2O+YNRxxazczM3Hdi1xHfGNsPD8jExfARhsmreGpBQg6VG+TXTfjn8UdCf6sN/hw7+zD4w5lGbKEoARvXDfEVh+Icu3jtsjjoLwKApuKvtqPsgUAWbJaGZ7VSrG7xxxCHJ1MORr8eDjvGDR2dnWejvcPTDn9Vt6neixdvvzs63GtR8+DZ/ncvj16OFlcdHh0+3z852NtdXPX50cvDttXe7rw42dvZ/fXti/3DH9sAx3pvjw5f/Lq46sH+aLR/+N3iiqOjlyfDvbfguB6dtMFB1G8N/3TnBNRQe/gvD3dG6Ea3q/vTy50X+8/3sXIpPx+dMWUTWROq2Qn8Mdsjw8qaMW1JfTUlSCYhHGlV3s6Mgyjt5GYxHIscLW50L1f3cnWXclXKEtclq6L1baLG8vnsIjZSzdlP7idJdhdneZaStTYA64WuTet76buXvruUvtTGk4vEsLtwGbEJKsvi0D2tnPZFOtxAJk96rjclezKBhftEIqC9SzE8Z4mt5pQ3HxT7UsSEoPaIF8MotpNZbjdLkFPe2FXn773nYGmTnsr27ox2DvaOTva/2z/scPNaJNqcsAeYO4MiN7g66Jh2+Dms0ohNKkiF1IIMMb0pEQCCTgLLeABp62hI6Is8nRUnsQBQwrzVPOzuHf5qnwE7uhHSfXVkWfMbEpvDaCY3q3PCTgYY4xjwPYk8keum+bvYlj/UzlOKLHrKQ/DobEbZSxnyU+fpXLbzT1iee6kxD4BhRgNLqYc+5Um+GYh4ahzeTAesYj/Ws6tZiCns6/XYPkPK00x4NsA4agMd67UFzmCydCSWntEGvKjatgcJ+Vo7X3ZC8M1TSVfj6wt2cTmm2RTntPQDCgMzqxxnXCWY11QsTguw2lzbdlmkFsPd/GRDkYBlMJPvptOzyGWXrLNuduUHbojQdFcmeXD+FvT4KafeuTPCHDloeUn9CXtCFUOsqu00IWOo+pnKUk8xRD9QllJn7PYwxnfGL+4UkHd83xnKFozzJRyxCFWBQAH8f3KuHxwYskivI2820+HIM2wD3ZAcBEAoE6x4L/T33E1ILypA8wMoDj9BayIoHMYyguwR+cwc4y5hG9p6ey22ztbMRJs9E+CEuPpYhQYAnPT5rgMt+TFBfmwHVz3axDm7kZqIuYWaQsObNEQdlJYQzfAuzLSpcYHXaJ5mZOYcqxOHKTN+UpAGqBegIdJReYK/I89yluXGiMbcQlRFBwLsQRRSYEJu+Og8jsn6oX+CW6os9AaaG9TJqy+3trqP8B/4/y1A45IQkPVXD7e6j7e6X0PZX7e6Xz3EkjnSGUswCYulM3Yf8qRGbA+N2fnnd6KHzmePnjx59Njju6fq49mW/8RjiazW4bq5T/lU2cvF/Xc847ShXsqIAUtwkE2fg3PDqp65Cb7UlLHpCZj82lsHLj4PixO5gObyMlRgMXbDnUlx4F/cWWEnZNhuE+cc1eu7XjrDTDLtIu4ctSUfV9GYKd099fzPkq1510o7te7fShkpOC9AVBYR51me0hA3Yq3EmSRuPBVLPAhLTPkzWvzyF541wGK+csUfqLSBN/UDwJjXPrvDgXd1SjOWATGC7z0sQIRLPQNXqJ7r4BqrYRW8qWmsvQRAijUMMCSXurqsonJILh2zhjaZGjg6I+9xrxU0wRRmFG3Srb9yWc1Z/L2zhduiIZm4fJ8UV9LrgtCRR93gRTQR3oLGb7xoZXYFjZy7QXmQC4E0s6J0CXXLwZDUVswO81IAAMIthvALCcAII+bZNrBggAHkc9vuGQcgD/QBV0RgLmHiyamL6bIXlFx22IbLQG24SDsK7XK2dAmAA7354LgEC1GQBGGCshP6I3m4dsmOKgAGo/KXUpdxccJ+yb60lbIEk+X/EF+YJUuCPdUblyEzT2YnjoPicpelgB+V2pfh44k615sDuYY8pLc8UUoAyjMMuoYbAUuBzWfuYMSblgCypVk8K7wKVHZEqsoW4gzJsDhZvhTkUvPBjvmbdWYEcQYZvvWs3lBU5toF/tWHfzrsEOGU+zvSsmPZdODk8iMZmISURcI3/S+01dlOPwyuL07wB6gZQT1GfPscTY5jTKvYF/UA9JTwPeXOw0db8TvsK/EK944B6MG/Ebgbyblw7DK54JRggSZiGHNQvP+Grss9RT3mjAHN3KB3OaV4ZqShP/ZiSTYHo2RKuP7reGk6OAP6oM6Oe4/7T/oPex6IVzTreyzbCitgqoeX5Zg7rL6x2WC/tVm6JGf8bDBUmrynMU9kMUIWNART0NdSAF5hDkBH2KDqrNhV53OKp1m0rWMFvA8V+/zMS/oBypNJP4rTJ7/1Y/gOtfpFNQHvw6Otretr/fR+ASxgJ2yAMzF5oGM88Vg9o4N1+qLGB7aysvR/cUlyBWWVlPDhq62vttogkLbBIF0FhfTDV0+ePL7uyIsZ1PGNNA2GJMl2cCve0lXLvPHGkc1y9mQqD4U1Do/XRB1cHaMGRd5n0zjqAhYO/cntDf0NCx6C+SKOYH35V1RFGKRmX9NhFJ1TIndrsgik9VgrVrd07P19Z4i50JUaHGSCSZUY/jGLeg+v/z8hqTBZ3GgBAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:03 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:03.958Z", + "time": 40, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 40 + } + }, + { + "_id": "b184093074ffea48d93b8e1ac0d9ef4a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 427, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/access" + }, + "response": { + "bodySize": 1551, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1551, + "text": "[\"H4sIAAAAAAAA/w==\",\"xVhLb9s4EP4rhg+VNytH9wI5GGkD5NA2m3pPQVDQ4siemiJVkrLrFv3vOxTl1JIl2bKd7sUPipzvm+E89XP4Bfnw7ZDFMRgzDIexkgnOzfDt009atKgk/R7SgxTsQnH3RwPjtJAxa0FLWlgAE3ZBS1oJcDuuhr/C3eNX3edRJiq66jgv1BxlSJ8qt3uiQr+vIpHldgHSYszKR22SV0wgZxYqUhsE5hZFtN38Tw56c4eCnp2utDd0lGNEVFPwfy8mbtxlTvcszo1V6YTs9MOdXkC8vE8mcnMHzOYa3ks2E8BHT4GGORqrC0MG4SDImDFrpfkjGLDB819H0TIgEgN6hTFEyxm7vZiynJnFTDHNd4ShdNuYiNxCpDKQyNOxcwml8QfwTqxv7m73vTPxZjFdTkpmetC4QgHzYmOnQ2Xbnadb4UVEZ+yYfJaifYRvOWpyDGnNURG0e2O0lJqJ5HRtHL3cV8UjD/k3K6OyDWbPhdF82DxolZBFRvtOGe7fa+Y3dxqvR6QExDo4EA01JS/ls/s4xDJlFc3OAvDrDTakQDR0xX1xmk2aofMaMLbh/iqoR+jFU5QNKsH3WOQcHrwoLzxTofuIqipfXQCxIjAmNSyEhTPmhXeHHATQF8HEiwbjmo2xkB5ziy3a/gY3scbMXk66pVsK3YfP5KFXzqfl3NeKUOAKPm9kHO4U44N19mydq67F0TAh1PpWpSmTfFJsrblX9aadK/yv4CfqHnuQPRLah9Q14z51M/HANCMCoM11eeieD25ubgaB98dxyrIM5XwsUC5NcOjGCs5uaw/azVFRRICPhgoCUWRz4B2GyQSzidLpmHL6Cg1RJP41pJYqUBV0CkRbzO2qVibQfFvVuqvQuchtNTZTAuPNBezYr9j0V+DkenOaAkdW5bOFF33UWWYi5fkUUrf1YCqF76V0uh0UZ8FeNIP/QX8+t4/6PWecgUFSe5ivdXLtiTpDSX2GdF97NUGt5Ttm2ScpNk2tchl9vhr0bYPa+GzTegeTwZs3A0W/3lOlcj31B5/3P82+QkyTFUFoi2BGQU4BRaPo03NxxNv3PqEd1IJY4BNrNc5yC7cLJuf1aaDsvXzT1XABr+dNFLuZIpHRHCz5vnvhAoYiwanzeuPrLqplZmlWCOvT4ahlyEq/2J+/piS/Zu4GC6+VXibUF0WODkpjmYy7CuBRJqiNFEz6CbKB0U4H/qdpoZm4hhD4VH22TDundl5QI+gbh2Zupd9s6Z2VlXhHJ1oH5JCgLBrI/hapN6SGwpMC2gXgVN0hCG5GTy/vleqvlNr7QRc3R7CJKW0cvBlKRI8gipxrFpiV2WYzCr4QE0bJJmHCwIG59AXfMXPnLus97RylspiUJcMQWavzBq5NGf2F1K6IV6V9q4QAPwo9Bcgz4rs1cl2RhpeLDT1hT3doZe6t83GXwZ3SU6YpcfYbq2xxppipRtRCWOrErg3EuUa7ud7iFwhuAsuUpII/+HsQRAF9HjiA/GB+3TViL3M8//oPgcmj2Q8YAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.021Z", + "time": 47, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 47 + } + }, + { + "_id": "81d93bfd62ed9b30d11aef04d6706d33", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 431, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/apiVersion" + }, + "response": { + "bodySize": 659, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 659, + "text": "{\"_id\":\"apiVersion\",\"warning\":{\"enabled\":{\"$bool\":\"&{openidm.apiVersion.warning.enabled|false}\"},\"includeScripts\":{\"$bool\":\"&{openidm.apiVersion.warning.includeScripts|false}\"},\"logFilterResourcePaths\":[\"audit\",\"authentication\",\"cluster\",\"config\",\"consent\",\"csv\",\"external/rest\",\"identityProviders\",\"info\",\"internal\",\"internal/role\",\"internal/user\",\"internal/usermeta\",\"managed\",\"managed/assignment\",\"managed/organization\",\"managed/role\",\"managed/user\",\"notification\",\"policy\",\"privilege\",\"profile\",\"recon\",\"recon/assoc\",\"repo\",\"selfservice/kba\",\"selfservice/terms\",\"scheduler/job\",\"scheduler/trigger\",\"schema\",\"sync\",\"sync/mappings\",\"system\",\"taskscanner\"]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "659" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.022Z", + "time": 127, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 127 + } + }, + { + "_id": "37717db1403fe0fca4c76faa7b01295c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/audit" + }, + "response": { + "bodySize": 1806, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1806, + "text": "{\"_id\":\"audit\",\"auditServiceConfig\":{\"availableAuditEventHandlers\":[\"org.forgerock.audit.handlers.csv.CsvAuditEventHandler\",\"org.forgerock.audit.handlers.jms.JmsAuditEventHandler\",\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RouterAuditEventHandler\",\"org.forgerock.audit.handlers.syslog.SyslogAuditEventHandler\"],\"caseInsensitiveFields\":[\"/access/http/request/headers\",\"/access/http/response/headers\"],\"filterPolicies\":{\"field\":{\"excludeIf\":[],\"includeIf\":[]}},\"handlerForQueries\":\"json\"},\"eventHandlers\":[{\"class\":\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"config\":{\"buffering\":{\"maxSize\":100000,\"writeInterval\":\"100 millis\"},\"enabled\":{\"$bool\":\"&{openidm.audit.handler.json.enabled|true}\"},\"logDirectory\":\"&{idm.data.dir}/audit\",\"name\":\"json\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.stdout.enabled|false}\"},\"name\":\"stdout\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.repo.enabled|false}\"},\"name\":\"repo\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}}],\"eventTopics\":{\"activity\":{\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]},\"passwordFields\":[\"password\"],\"watchedFields\":[]},\"config\":{\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]}}},\"exceptionFormatter\":{\"file\":\"bin/defaults/script/audit/stacktraceFormatter.js\",\"type\":\"text/javascript\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1806" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.023Z", + "time": 153, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 153 + } + }, + { + "_id": "653fe2843bcc7fd80db785216049a251", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/authentication" + }, + "response": { + "bodySize": 1574, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1574, + "text": "{\"_id\":\"authentication\",\"serverAuthContext\":{\"authModules\":[{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"defaultUserRoles\":[\"internal/role/openidm-reg\"],\"password\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"fzE1J3P9LZOmuCuecCDnaQ==\",\"iv\":\"nhI8UHymNRChGIyOC+5Sag==\",\"keySize\":32,\"mac\":\"XfF7VE/o5Shv6AqW1Xe3TQ==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"v0NHakffrjBJNL3zjhEOtg==\",\"stableId\":\"openidm-sym-default\"}}},\"queryOnResource\":\"internal/user\",\"username\":\"anonymous\"}},{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"defaultUserRoles\":[\"internal/role/openidm-authorized\",\"internal/role/openidm-admin\"],\"password\":\"&{openidm.admin.password}\",\"queryOnResource\":\"internal/user\",\"username\":\"openidm-admin\"}},{\"enabled\":true,\"name\":\"MANAGED_USER\",\"properties\":{\"augmentSecurityContext\":{\"source\":\"var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield);\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-authorized\"],\"propertyMapping\":{\"additionalUserFields\":[\"adminOfOrg\",\"ownerOfOrg\"],\"authenticationId\":\"username\",\"userCredential\":\"password\",\"userRoles\":\"authzRoles\"},\"queryId\":\"credential-query\",\"queryOnResource\":\"managed/user\"}}],\"sessionModule\":{\"name\":\"JWT_SESSION\",\"properties\":{\"enableDynamicRoles\":false,\"isHttpOnly\":true,\"maxTokenLifeMinutes\":120,\"sessionOnly\":true,\"tokenIdleTimeMinutes\":30}}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1574" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.024Z", + "time": 104, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 104 + } + }, + { + "_id": "aec85c9f6664d9880169fcf8d9d733db", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/cluster" + }, + "response": { + "bodySize": 179, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 179, + "text": "{\"_id\":\"cluster\",\"enabled\":true,\"instanceCheckInInterval\":5000,\"instanceCheckInOffset\":0,\"instanceId\":\"&{openidm.node.id}\",\"instanceRecoveryTimeout\":30000,\"instanceTimeout\":30000}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "179" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.025Z", + "time": 124, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 124 + } + }, + { + "_id": "8b83418cf28acd1b939879c72c951589", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 452, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/forgottenUsername" + }, + "response": { + "bodySize": 743, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 743, + "text": "{\"_id\":\"emailTemplate/forgottenUsername\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

\",\"fr\":\"{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Account Information - username\",\"fr\":\"Informations sur le compte - nom d'utilisateur\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "743" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.026Z", + "time": 84, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 84 + } + }, + { + "_id": "ba8f08c2397259b7af7094fa4d11c519", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/registration" + }, + "response": { + "bodySize": 431, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 431, + "text": "{\"_id\":\"emailTemplate/registration\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

This is your registration email.

Email verification link

\",\"fr\":\"

Ceci est votre mail d'inscription.

Lien de vérification email

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Register new account\",\"fr\":\"Créer un nouveau compte\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "431" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.027Z", + "time": 93, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 93 + } + }, + { + "_id": "71086d44381b7d81178ecc45f4989855", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/resetPassword" + }, + "response": { + "bodySize": 455, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 455, + "text": "{\"_id\":\"emailTemplate/resetPassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Click to reset your password

Password reset link

\",\"fr\":\"

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Reset your password\",\"fr\":\"Réinitialisez votre mot de passe\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "455" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.028Z", + "time": 87, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 87 + } + }, + { + "_id": "82e1f6e62e8145e19f78445f80160a4f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/updatePassword" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 273, + "text": "{\"_id\":\"emailTemplate/updatePassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Verify email to update password

Update password link

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Update your password\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "273" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.028Z", + "time": 89, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 89 + } + }, + { + "_id": "76be78f43255ef6c7f0ec368787fd6fa", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/welcome" + }, + "response": { + "bodySize": 420, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 420, + "text": "{\"_id\":\"emailTemplate/welcome\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Welcome to OpenIDM. Your username is '{{object.userName}}'.

\",\"fr\":\"

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Your account has been created\",\"fr\":\"Votre compte vient d’être créé !\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "420" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.029Z", + "time": 76, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 76 + } + }, + { + "_id": "8996c88e14b7ecbba49105dae49641fe", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 455, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getavailableuserstoassign" + }, + "response": { + "bodySize": 116, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 116, + "text": "{\"_id\":\"endpoint/getavailableuserstoassign\",\"file\":\"workflow/getavailableuserstoassign.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "116" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.030Z", + "time": 102, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 102 + } + }, + { + "_id": "340e7202bcebc2ae1e41e59ead8e6dbc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/gettasksview" + }, + "response": { + "bodySize": 90, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 90, + "text": "{\"_id\":\"endpoint/gettasksview\",\"file\":\"workflow/gettasksview.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "90" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.031Z", + "time": 105, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 105 + } + }, + { + "_id": "e504a45bf842a314f67c6419cf0b82f3", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getprocessesforuser" + }, + "response": { + "bodySize": 104, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 104, + "text": "{\"_id\":\"endpoint/getprocessesforuser\",\"file\":\"workflow/getprocessesforuser.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "104" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.031Z", + "time": 111, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 111 + } + }, + { + "_id": "050b4885370dd0fec91299f44157fa98", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 444, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/mappingDetails" + }, + "response": { + "bodySize": 121, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 121, + "text": "{\"_id\":\"endpoint/mappingDetails\",\"context\":\"endpoint/mappingDetails\",\"file\":\"mappingDetails.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "121" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.032Z", + "time": 104, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 104 + } + }, + { + "_id": "20416931a8bfbbe57c7d8022c7cdc8d8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 440, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/oauthproxy" + }, + "response": { + "bodySize": 109, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 109, + "text": "{\"_id\":\"endpoint/oauthproxy\",\"context\":\"endpoint/oauthproxy\",\"file\":\"oauthProxy.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "109" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.033Z", + "time": 91, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 91 + } + }, + { + "_id": "950d0219de4cf4b9516ef30be6bb5836", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 461, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/removeRepoPathFromRelationships" + }, + "response": { + "bodySize": 126, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 126, + "text": "{\"_id\":\"endpoint/removeRepoPathFromRelationships\",\"file\":\"update/removeRepoPathFromRelationships.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "126" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.033Z", + "time": 123, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 123 + } + }, + { + "_id": "4e2d4c5a497442e856fc60f741d3d798", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 444, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/repairMetadata" + }, + "response": { + "bodySize": 91, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 91, + "text": "{\"_id\":\"endpoint/repairMetadata\",\"file\":\"meta/metadataScanner.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "91" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.034Z", + "time": 154, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 154 + } + }, + { + "_id": "acd8e0a1115f4a5814282f28fd6a895e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 470, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/updateInternalUserAndInternalRoleEntries" + }, + "response": { + "bodySize": 144, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 144, + "text": "{\"_id\":\"endpoint/updateInternalUserAndInternalRoleEntries\",\"file\":\"update/updateInternalUserAndInternalRoleEntries.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "144" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.035Z", + "time": 75, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 75 + } + }, + { + "_id": "0a16240221eeea51a0aa371b1b13ad9b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/validateQueryFilter" + }, + "response": { + "bodySize": 326, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 326, + "text": "{\"_id\":\"endpoint/validateQueryFilter\",\"context\":\"util/validateQueryFilter\",\"source\":\"try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } };\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "326" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.035Z", + "time": 106, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 106 + } + }, + { + "_id": "663ad29a28f7c57cd35b8178c4fdb1a5", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 434, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/external.rest" + }, + "response": { + "bodySize": 86, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 86, + "text": "{\"_id\":\"external.rest\",\"hostnameVerifier\":\"&{openidm.external.rest.hostnameVerifier}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "86" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.036Z", + "time": 98, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 98 + } + }, + { + "_id": "b90c49fb8e97c6a49c1b99e8b28c3228", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 429, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/internal" + }, + "response": { + "bodySize": 353, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 353, + "text": "{\"_id\":\"internal\",\"objects\":[{\"name\":\"role\",\"properties\":{\"authzMembers\":{\"items\":{\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}]}}}},{\"name\":\"notification\",\"properties\":{\"target\":{\"reversePropertyName\":\"_notifications\"}}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "353" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.036Z", + "time": 109, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 109 + } + }, + { + "_id": "a691ccd864d3d6bd4cec893c7df77b9c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/managed" + }, + "response": { + "bodySize": 4987, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 4987, + "text": "[\"H4sIAAAAAAAA/w==\",\"7R1rc9y28a9gWM/ETu+kpJ3MtNcPHVmyO5rElmO7aWcsxQMdcTpEPJAGQcmKqv/exYsECJDHO1GW7PhDkhOeu4t9Y8FcJ+9pmsySFWb4jKTJJMlPfyNzUSazd9dJhkvx5orNk9l1QhYLaKcXZK8s6RlbESbKVzwvCBdXsECsG1azKzgj60VvJsmKCCwXL5ru96ptknBS5hWfk/08y+TKOYNOygThDGe7VUm4GSg4np+T1OxAiQQ9mXOCBTmAfwwQ+0vMJIInsCvDKwKLyTWgl+WCLugcyy3KNjB+J8wt8lIckIzAwjBUgwgDOflQUU4ef9P0T2laTOcZwawqvnmyw8kqvwBsGANsSHqYFgAdfpxn6ZGi+ARZjF8CePKvDxUpxZN/xJZ2were46UzauBmkp5XhcRIkI9i9zd8gcs5p4WQuJfzJVmp83pkfyZLIYrZ7u5vJQCiG3dyfrabcrwQ0+/+umsGThI6Vye4wFNDd8V3FWczOVcPm8HU2QL+RXg+P5/BMTCarmaGOWe4oLN/68krLKZmxYLkRSaPOecp9MHhS5aeqOOV2MHPApflJXTDzzNgUWaaS6ZWohn8JyUaT8lnkwTP53nFxBuBRSXZWADZi2XOyMtqdaoAkIeBs700BULKEXMKDGOb9/NUrq/W4LIZGgUBDr2gbC57eJ4ROQt7wqLxlKvjSix/f20GcVLkXA2ohcx2rZE6+Hl+ig/ZIpegcbIgnAAACl6gOYwm6QtcFJSdybb8khF+tDjiZxKEdEWZ/WNFJNqRvw4PFBoKBiNtlDl/nkysOCnBvNbq5toj9yyRh4oOD+Tk8hXhwA84S2YLnJVEkjSjcy3WIJuY45VaCNjklKYpYSDZXMn8rhJuNfzqUDLXHDMQlCmgKjAFOYGBABqsn9wAXCXBHJpOgXfsVob1S8GBIoqF4DwOPFANYz1LqfCmXlBy6TTctHlI4bzAVSZgEU2gFtfNkprdhlOBkzPysYC5vz7Wi/7Pkv/Jo8Snhh76AgsQtZACgleSAFTIPxpIRqGIXPvG45KAA/ZUHzIsBGcLAg7NKfwtqBLWtTRpML3AGU2n9dyuwza4+luPinAjQoAwFUSfmVLeV29Itmgw8WUEJFX+14cFFpQdr7yhUeGSjS+1jdOq0JiQtIPRb27qFm39VUvMACuf4JTAESSAFWb0d2w0pkbK8lGBxbLxKnZzfyzYGtCKUoYpyVIlu8okn5iu5zQTUpMncjGpPUH9/Uiu5MCTG3manFwALxDrVBhcFbm1wlTdr0mm7faSFjWDazS52zXRDKP40pycw1lqOwF26unVgRVgQ8UepnKpU6JDtCdho6VQ2t0AgTnHV8OZydHwofh46n97yzrzDVJE5mouHmeTmV5v4gmF4aGoTPh4v65NGsLIPVS04PkK2szeyPB1wPkxmWop5apQ5hdJdxOYBKNLKpaUIbEkqMVHLZDPOGbirdqwveq/ZBdSfZNapLzGENCY5fShN2hqUxqRccOcyhEpYQHoQMqVQIfyGFCLFhtoBbCxwMFUsgrwYj6niizPpXxLQ2x7HWQblk0CfYHdvs20RY9+0G7LOgVhrULDo5o4yWDl0aUuIkvHlMEt7E3jNYYaAvpybjQSsv7jbYTYdVHvSlHUe9R64vPXCqOJceRI70GOD01IrgBoRLmO1LluHk2KFU+82EiUu+g0okhHpWtE0VbhZcA2+zroHB4ugBPyE2Fn8oS+96MD6Z6sqtU00903E28a/min/eWHH1oT8Udv4klDFQPeNi61PsGQDEHUGtLEDkFOZBvTT+UvlIsqprHqRMJKr9CEy/GY1u3sgqcvtNkyjvG5vLVPSPQB5LX4Bki8qAnRDUAzZou9b9wgpYfwLWybUw6V3FZ+e5R7tpDjNpI2KWBTQhE2sbmiByvNNYQjCrRHhDZNDryc3EOjS7ck+HCPSK1oui8g2zM7Cu2tjeYaJai3rHWgxSW6WNt8NiKnbDkI0YKe6fSU8cRM3vl5bfy/TZSFt92u/a4HvYvmSU8m7/y/T2Ki7p9IF0kGSXYoxa08bM8J9DnIG9A+6rQMoHqUrIaqG5FtI5cmJFiTdQ9o9ZzyUiCTkXfJZLIAD1PEPahHlHAveR7Q6tD03kuetL35mJlSe0sRYPzj0z1k7i9C3ggdNszKS5Vim1elyFc/y0utOueofgLigf9mZoUxs10tCA9by4fWXPWjD83+wRIOQMF0u3BXBOi4So6BtrTq1hMjOjLu1bAP/E/Qg2QXklxVCrwq4mxZn1rHLVYzPTixWxrCWxq5jazKjYtIAOJbh0QbiOk6lijnuRpQcHqhpbVHsOMH5mM9XNWr+9TwKGQzaq5L1yn6NvZEzp9iPX9q9N4d6fY2rCOqd3vDGwmw7NVvTH9/zXk1Qaai0y0yXDZvZQoJWplnU5sQyVY55QStGoKNU1jNhX5P9qpHYBtmiaevNrHEXqYrxrHOzX/XJWbffc3neIdpxe4+LjGHXVLcyy2myNHlks6X6BA9JVnu5lw2u8ps1Y9ItlobCwH1EU3BwFKgNw/VchgFLYA4gjCX1/Ta3UGp5jQwKbCPhGx9iOrJR09E1SfN7WqazWhq7a5TvPO12ODu5VSR+0GK6SE6umTbimZdKReY61dNDR2IA7+qc3ZFxYu8lFvRdLVjF9hxBt105D+ApEIVKg4P9v+2QbDPqtU+LsogQ4AFjAefd/rf6RwXQJGsDGe+rFa9M1ml9bQ/MaUlzrL8kqTPhzgOveVqObhVtlRtE3feOagxPFerX/yCxzBW1h3o+4eXxakv6RwQR/TpnZLPUGhUHzL1oA8tg11zjAflmKRxSk5D2nj1qH35gaqQ+lJXyPJziIIBriAl0HSFgQthKQQtqCzInAKiOcTtHOIkaAUsLujcjSBO81zWU0ulZfftXJCRS71MA2F7lTA075FcjyLDAvBB52ADjvCGBeCCoOt1HZDcUSGHAeBrFUcY0fpHcOsCjgcQ3jZl7AOKM2Lodwa2G9dlBPw9YkkGj9/9hMV1ya3qrPjdllhxr7rqaxXmH6wK0y/asmpi7JqtjSovu+iyiVZo+tVpviUr4B7ppDE4CHCuRfmMgXDMm9BjnSaJivWI2qSM3CKpxPzndjPqAj2iK+m/oAr1g+zedV5YPVRfOwB0RBq1X6mFt012AKrfsUX4SqbNuBz+6/Hxn//5+N13078fH0/R8fHj4+MnJ0++fRTcVd0TLSPojEjN2iMKyCgNJxsmlu17rMpO9Qlwu8dsk4ck/w5xRjuMVnVgt69qrh9PfHAiwVSwwbV9FWxsX89b19qrUi9dnZevf0raL/oS990rjJmfT8sPFeZka5/QGGzn/WtTC/WeMvWC238Haw7Df+DaWGT/xY/rI4jQag58zymB1O5PT7TbYSMiDyn77vhfGNey44Z/eyL/YV4pjXw3m4Y1FCOEs5/+tZCNuwZ4rJ2ID3dZNWO5mzi3S+Yiqt9BjQtCy0ONFdQbeQ8zusgJJ9BC0Q2B3ABL0RIZNUnL/WbQgMuufVe/rJX83urgt5KzpaJxmicIbEOqoExpWWT4CpnriXIn2b5kt+MGMyKHSvM1r1PG0ENmry8od/ZQI3L38O4oFrd810rT9V5ofpqalOHqLiTT/YbmLZlbp/JY1KevtQlTH0TpVSNdLn7F6Idq3TudtW5PHcyF3lekQhUpPFG+QHaCVNt2hkIBN8o6pHZ3LW1acc2ygc9X94T3CbZnTYmit3gTzhkEHJS7izC3sJj+QcS262MfbZRaeFjfwuXFmJa4TiCq5vS0EuSZe3te82PieTHjRB97mqO9lZtw5JxcbR2FeO6YE4tcFOy9XndQEFI/3aqJo75eQ9n5zxVoDlvpY3VTE7S4YcoloWdLMTAykWLe0GPEGKVBIL5n3Y8kjFi+MMsZOr3S3lQD0k4SrWuv+4/UbI15xeLthtigfKvIa8XYnFCxNDTKnZUD4xtXplGy3XQBHOZXnGH922sUgwV+Uc3DK+cdbPeag9pU9bTZdN0Gd+me+zJ/v066c5j34Kq3tEn4VMOhohyLPtSDZcUjeHewNPiOLbJCnyeqdfpbLtHs12aihnU7Jgxgis5XupLYUiCVNwC/zcAAdGjOpFcs8h5nxkyeko+0FOu+F9X99nd46OTIyGgBVLPm1zDqk4VR4UH+0YIpP6e60ddmtg+shn50ZpRQydEmAwKm20dDHcUWNulV11mMpi78uojPX1mMnuUdp2KhVYfQK7qjf0lmUymNoD6egLZZeavybRMLRUVW91nfwI84hnu0PW7jf/TmFvR3CbO3sqzK1KVc/7Veb4wYdabjkbYJqFvvAEYKqRly10XS3yYM7OoEXS5B3dXf1QUlwEkt8hDnudPA1dQfK9zxIvLTimapVoBOTJ3mK0yZG1JHCVU/SKg/g9iEy/pFi4ybl7AD/LbD9IMTNVX/1CP3mj7dcNQeYV7HtCJLO23Qix41GtH0Dt/ynKx/v2Ootd3THUUnafq4j8eGT3cMDF3Pdj7b53Utfyz+rG48h2yzD4Xajxnf/v1Oh/KsZa3n8m4db1GZmBR5zFkb+N0wC0QY98oe5D0dch2oL4IB7+DZmK92b8mItV5+AI/I4vywnUJrpYS2/1LSkCf1TT7hC3v0+GnD2Q1fKI+nPrfg1c4IdphStGHtxmHpIIasvalBXpAafe9ekHEet/OClHN4ey/IwPDVC/pEcuz93x4eqhekeGtbOTfmNXyio9pR1DvoRsALg78IzryLz19s7R/FWSPOus6ZbPcFlTgHdH1NZZvvprQC6UG2wKpQmaPR81EdzN+BbcDtKL+GdoDFMLK1ncUYgOiGxqPJSgyitNlUf1Tk4XxM5FZE7cJpK0oebeTERM6zTkfdAWWDfFUN7T0wbhvRjci9ppoorp8iuU4AmQlSCqOs6xuGJunpWUCZj3UTj/Iq4RSX/sMCPciAIv8ARX3zf9h7AK8wbgAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.037Z", + "time": 169, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 169 + } + }, + { + "_id": "06e43b06c5889436306de832c9ef5b8e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/metrics" + }, + "response": { + "bodySize": 33, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 33, + "text": "{\"_id\":\"metrics\",\"enabled\":false}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "33" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.038Z", + "time": 99, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 99 + } + }, + { + "_id": "b383c6f86886873c85a44fc34ee9c862", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/passwordUpdate" + }, + "response": { + "bodySize": 415, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 415, + "text": "{\"_id\":\"notification/passwordUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"password\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.passwordUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your password has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "415" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.038Z", + "time": 99, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 99 + } + }, + { + "_id": "fe870654434ff77b9195e8510c2343c5", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 440, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notificationFactory" + }, + "response": { + "bodySize": 180, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 180, + "text": "{\"_id\":\"notificationFactory\",\"enabled\":{\"$bool\":\"&{openidm.notifications|false}\"},\"threadPool\":{\"maxPoolThreads\":2,\"maxQueueSize\":20000,\"steadyPoolThreads\":1,\"threadKeepAlive\":60}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "180" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.039Z", + "time": 103, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 103 + } + }, + { + "_id": "01b649998d9398654a57902d252545ba", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/profileUpdate" + }, + "response": { + "bodySize": 560, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 560, + "text": "{\"_id\":\"notification/profileUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"userName\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"preferences\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.profileUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your profile has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "560" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.039Z", + "time": 112, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 112 + } + }, + { + "_id": "3b7ebd7cf01869d6ce8cf4a5c9da9642", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 441, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privilegeAssignments" + }, + "response": { + "bodySize": 493, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 493, + "text": "{\"_id\":\"privilegeAssignments\",\"privilegeAssignments\":[{\"name\":\"ownerPrivileges\",\"privileges\":[\"owner-view-update-delete-orgs\",\"owner-create-orgs\",\"owner-view-update-delete-admins-and-members\",\"owner-create-admins\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"ownerOfOrg\"},{\"name\":\"adminPrivileges\",\"privileges\":[\"admin-view-update-delete-orgs\",\"admin-create-orgs\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"adminOfOrg\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "493" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.042Z", + "time": 97, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 97 + } + }, + { + "_id": "00725d753c390a655105f030d582ccaa", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 427, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/policy" + }, + "response": { + "bodySize": 735, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 735, + "text": "[\"H4sIAAAAAAAA/w==\",\"zZVNb9swDIb/iy79gF1fh1wLFBiwQ7Edh2BgZcZlIEsuJbszgvz3UbabxF7mtOk29GTDpF4+/BC9UT8oVwtVOUO6VYmCPKdAzoK5I4NeLb4vE7WS153TzdqLH6N3NevOY6M0GF0bCJjfs6uQA0XDRvU+cpTxqSbGywuPZvUNuSGN91FOHC+ubgoMX7EgHxhi8L3I5ZXECm0VNQL+DNkaGvCaqQpqu6cQaxT2vXDGB1ri9pf4PIb3g4lIR1QdcEgBLZTRNzYj6ev8YqmAoexgV44fKM/R3j4CR6PK1HI7uLefYxs1WOtCqp0NQDbV4gg6oHhvlzHqEKYC758dz8QqyX5BW4RHtfg0DiEWKusyNb1ZdJejdMlKPBmfrJaks+uZZLvHlGAfaGhJ3ivsv8cEsaxC2xvmynN9Zn2C6DsGc+tsHCNJyc+ANmAoT1/ORPHdoZGqGPq7dVLrqUZuU7l1gjbpHFMjl7HA34F2hYhT2eUPzNBOSzDQxskd1++/NGnHJiUiW8zBjQdWRu3DjEpypGW7xqQd64getOxJf2egmBujs0v5qjZPLQdMqXtYow5T5jipr+c9A2vUYOSSvH9TyH9dokOmEexwMU9fwGHIE2VrY94afroEjh7vEktJlo+fWcXsDM6u4o+28MZ5lGChwPx0Gv0gn0bHBm1I+7/1kboJ94qKbAirovVPf/pfNQjUdkAJAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.042Z", + "time": 154, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 154 + } + }, + { + "_id": "47768b99c96433fcc0faa9554a4e372e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 431, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privileges" + }, + "response": { + "bodySize": 919, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 919, + "text": "[\"H4sIAAAAAAAA/w==\",\"7VhNj9owEP0raU6tBErP3KKFSkjtstrtx6G7ikw8CVYdO7UdEIv4750EliwsaWarVkKVTxDr+WViP7+Z8SZMBA9HYWnEUkjIwYaD5w+j75uQpSlY+0GyfP/snBHzygHOU6wAnGGA8ZmS63CUMWlhOzhGcbCpEaUTWvWD9UqBsUc4Z6oXMMYLoWw/XQHF/JTvLLBkBpTrx6ULITlCqYzTMfFjKMAdZUyFN2tJ5511wh8GKIN6/2oJ4EMmpAODE6OnVwTwM7gPNxvU03Z7HwbaBNEx6wkCX9KoZx/lcClgNaxKzhwMOUjAH23yRo/MLeqdZIrlwCMcZUo8sr2cSjCFsHYfW/h1OvmGo19uxvHnCf4ZTz5O8M9D88VeyV7JnUrezQxKc6rMFCn+UI1Xt5OYor7KgrkmKbBk1q604f3IXCxB0UgtQQMFE/IvHxBcEV0pd+eYqwi6dugK5UIruK7qk0BYK20dkzFHkVsCfyrcmkp6pTlhXZvPMwRSpHRwY/RSqJTAa7QEimM0GiUsFKvc4vGWRmqg1MYRgJBlgCdtCUTiAz7G85OrAg8jYZZk1t2tVdqP/DFnU5Vpwg4byAC9IKVEneJJx0iBf2JlKVRONvJZNjM5YWtqhyRiG7t6iT1nk89ieKVNHs/cJfUkQRvEvJ6UkqWw0JKDSRJSjt9lvyFTfNgmuBOPrd2xM9PvE/wh5Xuv9V7rvdZ77X/mtdF7rEwDtMkgasNsB9+8jdqIcPBdRxF7aDZIFkstXy+qeereAt87/ave6Sn07luA+DyilWlD4W8BvJAv7RJgJ0x/CeALU1+Y+sL0kgrTTo+8zDuAzgzvG3/vr95fvb96f/1d348tfhtn3eL3Nf5HhesrPfZQsz5sfwGv8MZVJCAAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.043Z", + "time": 114, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 114 + } + }, + { + "_id": "f72fc2cc21d104762b3c16db0f0db1bc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/process/access" + }, + "response": { + "bodySize": 246, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 246, + "text": "{\"_id\":\"process/access\",\"workflowAccess\":[{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-authorized\"}},{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-admin\"}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "246" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.044Z", + "time": 101, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 101 + } + }, + { + "_id": "bc1b98e58c7b710a4bc8518787bef019", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.ds" + }, + "response": { + "bodySize": 4251, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 4251, + "text": "[\"H4sIAAAAAAAA/w==\",\"7Vxtc9s2Ev4rGU7nPtyJcS5tOklm/CGWnCZNnLiW3bu5NJOBSEhCTIEMCNpWPP7v3cULCUkgRUqyfHPXfIlMLJ5d7BsWL+Rt8IXFwctA0Cx9HOdBL4jS2Yxw+PnyNohpQiUNZyTLGJ+ECeOX6vmXbwUV89cskVRA5wNsOJ9n9BH99uiP4Idb0+HujwAA04wKIlnKgXJw/P74/Di461loScSEypDFeThORShohHSrHFTD29gyMH/WMwAOdDaicUxhdGOS5LQXJDHJ+innNELi1ySSqWBUDWjEeIz/R2XzaZomQ/adBi+fPek5z4c0KgSTc+CVg/Dy/P0QRJhS+HlEiXzLQeArkgxRQFTiz0+c1nM2o2khT1iSsJLin0/gXy/IBJsRMX8PQg4Bggpo+nQbTNNccjIDOXCcPP4ajkUap2FMrx5HCclzFj0Gk4EMWSpk8PLpj89f3H3uBbmCXwH8DIoRaSpxsKSQU8oli4zyboOczbKEWoUMUKEFiw9JPGMcOODDU2B5nQqlrR8iMc9kij8lWB+ob0INEVKu2hC3F4A+CoUasWyq7PnqeHjQP+ofnL7rD5+dkjgGbwHCmEgCrcmvB0c/n7+gL/qDd2/6H56f31wOfpocHgIFu4L241hQ8f36+OLi8s0vz54/jd4Prp9dq/ZLOtdW+/FpL5iRCHnJ+Yvxvy9k8lNGb35J3nyM/tE/0mhZIbI0R8FZPAM18jGbPF4QPScJ6Co4ens+fJfwU3r+7DKJiuP/jPjku+YIXjBK6NvYGAiAwnw+A/uMSQF97/AfyM1h4Ey+FmCql9rd8PGM3FQe+UpKOsskmOkZGInmaSEieqJDSUejgnSf8HPokRCp3KM4nFAOXKJeHB0aWexP12/wmXEd9RNEwnC5yRIWMRc+Sooc3JnGKtx0qDKTGZY415B2lwTCefQV9NHHxxicn9AFP6pn0DgWIWpYcQlLpueK31sQ7TMGEiYEaSJbpbfbgOVn9FvBBKYDKQqTDUDjgo0KNQjgAvjGj00g9IJrMBoZsURHfCQgiOlHnsxRYyYJIfwy2IKYHmDoLUuZ1/WvKEuYrzl4p3KsONdue0Bs999ttC3YKOKHNnQfAQWDUEtF3oPHur9P8ZCUo/EkzEy/8Mr2w1DVbSXXUAW5j3Zzk0S8o0WiKY0uh8UoBww+8WrWyK0ow7wi9ViIcoxsr30NiqXwdP5KrohSZUN3pAmV//sQZkRGU6cXauwE4p8pA9cqzWCr3pV5vAwYL3X1nvKJnDbICsSVusJEk/vcmubyjOJsQxfmivXWNowQABxfI5T+tMpqwfmjKREwn1MxpHJfrl/yDHOoYB7W8UmSpNcXXOfSMaNx3wqXd1K+wgkLB6gaptdJlxXfxUUXFPjfGICM953hNQFhdCwMxwO44LAxU1M+1Gf7cteK40MnaZLTIeU5k+yKmgGa+rO1nyIGqNmA2HHoks3jo7ucFSo9wuqEdpLaMcGYJd6c/PAu/78yJWh5jsBR4n2FmGYZjogr5sME2UP7EbmxCl7vRuSmUla9F4G3tYcEz1wLueAtlvo0xUUQXV3juC5jibo5TIa95k7pvLD8ts179BGznrTDGoKLkgkdQhKc1Zeb7ZOdRq/Gn2v8MNcMmr3m1YS2dRnA9IHZ9qUKuqX0FXpTBW2p3jAc3LyfFlw2iF2CTjV9GKkOHuAqZ3SsqbzpqcnxBc3QJ5YKxn1kS8vZqTD/3yqTh8/S/ZTnNCpQ1iqrth4sxmFUIbRLtfCQJQT3UPc6OVds/5qgF2bTARuPqaA86pYhF+bYuMJoNn7B2beC7j/ZaL5/pZoH9LcLj+k7eduKDdf5Wk7FgI4Zp/HvTMiCJAu1wLLbGZpHJVE7r0MuWOwgm/BKYyxUDYZutWmf+0O287nq1GVHqNzgVfw8psVsOuBdCxXsFcb+9TqoHGpheUSn5IrpGqguBAxpOLK0za7fetgNwTA2h5Ldxmt6efAmIi0yrcCavoqiRlkLodl6eM3BCgGUNZXfut1fthY7WDpoGG9wMzxf5SQ5EGmyGsVpcYjP8x78sJQ7OYIy5zEWM1Tc9xm/sFb8foIn2jZvevRrhJl/0MfFqs8ZqiOojhNPCZZ4UPlxWDbFKkVWopgtljNq53IdjDGzU1PNMVVF49svo3kkWFYH4TZ7euuj71rOqtm3MBPsiiV0Quu1VYNY9lw+bMN9rFkGS9gEa2YpCDhDZ3QLoapmi+E51SvdXBnI4+b4fPdu7jlpLV1eSbLP49Vyn6/e/KtbgZUK8U6KT3PqEst9aUsx3aeSxkzksvEMGkUKLZknVLD9NyhM8LTHO9W6ON9KwhokW180gdQVEvrKyvrBlHTeGSJJo0vvFQXVcG+GB/C9Gp6nMW1WFUgUIpXv+sGdvb5wAINKI5+6VANmGEW3id4gOTM+GUKak3RizrnqLjkobvqnK2+UMMrlgH9QUDjuuqm5QtnCDC0kcutAzvIpXulad4NDQ2l6yfwzFstfQZad52ztfRCNxnJi6b07O+UlnvVQltgXkqpoODPFQz9NEn1VqR2w7mVLj6jqXXsdZlNOuncbTjioYmT5KGWDh+lj2HUOWzS7pmWvKim8uKNl0/BVv0q45TA8KCVpfQdK9dPddpt9sOhsbwAlQUhqrUtmIzYp0iLXN7X0UFrcfXLBLYS2tdYQi/03d24iWltx1uBXfe49OttOucsiYr/GGXhXYT+jeU78JzA1otke9WADKglLukPGup+vyJ+SvIuMmt4D1PIinwPVMC3kTBako+9VfWpzsA2ZLqiLHR80vUPUyqJLuJsOtTPFBvpY6viwk5AlM4t134ThzFNnaSFVYH+6hSRPx+wG+pQTS1W3uZNJeUneTCt3ePc7n/Po4FtBPTdEodRTDVjzIdl9lcqIrSXYZ72Mt5Lpjfd0dlmu0NKu7ABoyAGRTWnHwVHkMam5frk2WVdIDbma02uj4TZAQJ1aeywNbu2KwkGpWVZYBzijV61wKmofVBJ3GBhQ1w1MdInnCrFdYrNULTVnyWvmDtnWtTSlDwJIXrUfJP6qK9tUeWpeKVh9K+Dg774MYho3yR1oLt/mokYMlTU11W/4btCxqoTk/AQvOoNoZ0WiymuY499OeCror5ZSUfQ1TJmM2mQqyxpog8/mYIJ5X7zQLRu9dzFm/o1sfL4RIJvpN4FWIXXLFqB+m28Da/c5eSqhqq3eRFrm4bZvu+1Z42gui229raWDLYx6ZTbU9QT+WtrZ/+L222J3f2WneUbx/Sv/bjO23ZPm96Nsk8l0NLfXtdLJVirGcZnLbz7lOs0bxZAVxRubpnErYHw+4TPKvUmlau1tw6/WOQxiWPHZk7+sMl51mzanY47gjQdls47HeyXsVud76rx0pzzV2eiakLC0qZgQzr7Xpn23/X7dy+W0ZwdbUMKKi6mXb9tbCKk/jj+KyVaHvlOWxPBXW64ZEVRdZK3huDDCRs4dg0CTbz3eNafMXh+pO3pOr3mHASjqreU3+u84gtJq5tXzd3ReLq07GtIb3E1XNO43mJHDtkF8orHOdDbrEs/+yyFu7ux4a2BhWIs5uL3pnGnMZ7jOoSe2u1niOkrTJYf7dRR1eW83jnKhB9zFUWquVNgqfMkKzlcs1o3I1KzrnWO1+vf7xtKKY0P/VbItr106CLmwXPIL6sx/Gwq5kCLtly92mCF7u8gETk2pw3a3qcC5OraNqRWMyhNLN+eWhFXX4eqMvlxOuhlLMfNdxewSKwakiwKXk9tKFt2dB25g3hYu6JQduxBSwe1aRnu56/gmY/r7PnV3LbLrZaJ1ZwOCkhhPBgYsj4iI/wWN4OsO0/ckl/0p4SBrA1eXYmOW+Okl0ZAKlkve0l/vac3XJmjs5N/e4LVhXN6BgHFOoHNeboKv1I0rVBttawia6MlnyjLvRbEFgh0WHS7utkXHmYPVsupw2avtbHwRMwY23tqrbNxIx2Vv/67UduAF86MWbDO4DE/ovJ5gmjaANUe88il+futjVpZNs6socl0DSi698sPkcKHYneoXgV+qI0sIG11ky0LwD0WSvE7FCQNWfHLqVI06ciE0TwDf+fMUqjqkvqInaczGc6dpWIykoHSgvsNmZkx9CdN83+xWHU2od/TORZFLXecK/dWD4G+3+MksxiEOk+RxzMTdge16IJEctzQx4r0g9hWvFmAKJ9NvKnix9JXT4Nd3+CE26TRg5DF1kPUnYFalveZOAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.044Z", + "time": 126, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 126 + } + }, + { + "_id": "9f231197089ead48083fbb1440010a11", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 427, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/router" + }, + "response": { + "bodySize": 619, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 619, + "text": "{\"_id\":\"router\",\"filters\":[{\"methods\":[\"create\",\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"},{\"methods\":[\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^config/managed$\"},{\"condition\":{\"source\":\"(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0)\",\"type\":\"text/javascript\"},\"onResponse\":{\"source\":\"require('relationshipFilter').filterResponse()\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "619" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.045Z", + "time": 58, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 58 + } + }, + { + "_id": "bd5d9cbc1b0e2e075e3f77bb51e59736", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 430, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.init" + }, + "response": { + "bodySize": 789, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 789, + "text": "{\"_id\":\"repo.init\",\"insert\":{\"internal/role\":[{\"description\":\"Administrative access\",\"id\":\"openidm-admin\",\"name\":\"openidm-admin\"},{\"description\":\"Basic minimum user\",\"id\":\"openidm-authorized\",\"name\":\"openidm-authorized\"},{\"description\":\"Anonymous access\",\"id\":\"openidm-reg\",\"name\":\"openidm-reg\"},{\"description\":\"Authenticated via certificate\",\"id\":\"openidm-cert\",\"name\":\"openidm-cert\"},{\"description\":\"Allowed to reassign workflow tasks\",\"id\":\"openidm-tasks-manager\",\"name\":\"openidm-tasks-manager\"},{\"description\":\"Platform provisioning access\",\"id\":\"platform-provisioning\",\"name\":\"platform-provisioning\"}],\"internal/user\":[{\"id\":\"openidm-admin\",\"password\":\"&{openidm.admin.password}\"},{\"id\":\"anonymous\",\"password\":\"anonymous\"},{\"id\":\"idm-provisioning\"},{\"id\":\"connector-server-client\"}]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "789" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.045Z", + "time": 130, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 130 + } + }, + { + "_id": "42626b5d9ae06814ca0230b793cb2d1f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_expire" + }, + "response": { + "bodySize": 830, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 830, + "text": "{\"_id\":\"schedule/taskscan_expire\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/inactiveDate lt \\\"${Time.nowWithOffset}\\\") AND (!(/activeDate pr) or /activeDate le \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/expireAccount/task-completed\",\"started\":\"/expireAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"inactive\\\" }];\\n\\nlogger.debug(\\\"Performing Expire Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "830" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.046Z", + "time": 94, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 94 + } + }, + { + "_id": "ab8521e6a907278952a8693cbcfb761e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_activate" + }, + "response": { + "bodySize": 838, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 838, + "text": "{\"_id\":\"schedule/taskscan_activate\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/activeDate le \\\"${Time.nowWithOffset}\\\") AND (!(/inactiveDate pr) or /inactiveDate ge \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/activateAccount/task-completed\",\"started\":\"/activateAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"active\\\" }];\\n\\nlogger.debug(\\\"Performing Activate Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "838" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.046Z", + "time": 100, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 100 + } + }, + { + "_id": "5fb111d428ad18346dc15d5fa8e1e840", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 430, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/scheduler" + }, + "response": { + "bodySize": 156, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 156, + "text": "{\"_id\":\"scheduler\",\"scheduler\":{\"executePersistentSchedules\":{\"$bool\":\"&{openidm.scheduler.execute.persistent.schedules}\"}},\"threadPool\":{\"threadCount\":10}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "156" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.047Z", + "time": 122, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 122 + } + }, + { + "_id": "0b8355f1ac5870bd599a7d814921a98f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 427, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/script" + }, + "response": { + "bodySize": 939, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 939, + "text": "{\"_id\":\"script\",\"ECMAScript\":{\"javascript.optimization.level\":9,\"javascript.recompile.minimumInterval\":60000},\"Groovy\":{\"#groovy.disabled.global.ast.transformations\":\"\",\"#groovy.errors.tolerance\":10,\"#groovy.output.debug\":false,\"#groovy.output.verbose\":false,\"#groovy.script.base\":\"#any class extends groovy.lang.Script\",\"#groovy.script.extension\":\".groovy\",\"#groovy.target.bytecode\":\"1.8\",\"#groovy.target.directory\":\"&{idm.data.dir}/classes\",\"#groovy.target.indy\":true,\"#groovy.warnings\":\"likely errors #othere values [none,likely,possible,paranoia]\",\"groovy.classpath\":\"&{idm.install.dir}/lib\",\"groovy.recompile\":true,\"groovy.recompile.minimumInterval\":60000,\"groovy.source.encoding\":\"UTF-8\"},\"properties\":{},\"sources\":{\"default\":{\"directory\":\"&{idm.install.dir}/bin/defaults/script\"},\"install\":{\"directory\":\"&{idm.install.dir}\"},\"project\":{\"directory\":\"&{idm.instance.dir}\"},\"project-script\":{\"directory\":\"&{idm.instance.dir}/script\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "939" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.047Z", + "time": 143, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 143 + } + }, + { + "_id": "372152e7418e4bbb7f1bb2fd5327ca2f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/secrets" + }, + "response": { + "bodySize": 1829, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1829, + "text": "{\"_id\":\"secrets\",\"stores\":[{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}\",\"mappings\":[{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.default\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.config.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.password.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"],\"secretId\":\"idm.jwt.session.module.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}\"],\"secretId\":\"idm.jwt.session.module.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"selfservice\"],\"secretId\":\"idm.selfservice.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}\"],\"secretId\":\"idm.selfservice.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.assignment.attribute.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]}],\"providerName\":\"&{openidm.keystore.provider|SunJCE}\",\"storePassword\":\"&{openidm.keystore.password|changeit}\",\"storetype\":\"&{openidm.keystore.type|JCEKS}\"},\"name\":\"mainKeyStore\"},{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.truststore.location|&{idm.install.dir}/security/truststore}\",\"mappings\":[],\"providerName\":\"&{openidm.truststore.provider|SUN}\",\"storePassword\":\"&{openidm.truststore.password|changeit}\",\"storetype\":\"&{openidm.truststore.type|JKS}\"},\"name\":\"mainTrustStore\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1829" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.048Z", + "time": 64, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 64 + } + }, + { + "_id": "b45a1aa28d4bff434764448f028e4059", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 444, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.propertymap" + }, + "response": { + "bodySize": 713, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 713, + "text": "{\"_id\":\"selfservice.propertymap\",\"properties\":[{\"source\":\"givenName\",\"target\":\"givenName\"},{\"source\":\"familyName\",\"target\":\"sn\"},{\"source\":\"email\",\"target\":\"mail\"},{\"condition\":\"/object/postalAddress pr\",\"source\":\"postalAddress\",\"target\":\"postalAddress\"},{\"condition\":\"/object/addressLocality pr\",\"source\":\"addressLocality\",\"target\":\"city\"},{\"condition\":\"/object/addressRegion pr\",\"source\":\"addressRegion\",\"target\":\"stateProvince\"},{\"condition\":\"/object/postalCode pr\",\"source\":\"postalCode\",\"target\":\"postalCode\"},{\"condition\":\"/object/country pr\",\"source\":\"country\",\"target\":\"country\"},{\"condition\":\"/object/phone pr\",\"source\":\"phone\",\"target\":\"telephoneNumber\"},{\"source\":\"username\",\"target\":\"userName\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "713" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.049Z", + "time": 124, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 124 + } + }, + { + "_id": "31ff64d3e984c38b0c14569db37889ad", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 436, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.kba" + }, + "response": { + "bodySize": 290, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 290, + "text": "{\"_id\":\"selfservice.kba\",\"kbaPropertyName\":\"kbaInfo\",\"minimumAnswersToDefine\":2,\"minimumAnswersToVerify\":1,\"questions\":{\"1\":{\"en\":\"What's your favorite color?\",\"en_GB\":\"What is your favourite colour?\",\"fr\":\"Quelle est votre couleur préférée?\"},\"2\":{\"en\":\"Who was your first employer?\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "290" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.049Z", + "time": 140, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 140 + } + }, + { + "_id": "84ee2e3e3f7cef3023dd7241ced2b77a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 438, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.terms" + }, + "response": { + "bodySize": 730, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 730, + "text": "{\"_id\":\"selfservice.terms\",\"active\":\"0.0\",\"uiConfig\":{\"buttonText\":\"Accept\",\"displayName\":\"We've updated our terms\",\"purpose\":\"You must accept the updated terms in order to proceed.\"},\"versions\":[{\"createDate\":\"2019-10-28T04:20:11.320Z\",\"termsTranslations\":{\"en\":\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"},\"version\":\"0.0\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "730" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.050Z", + "time": 144, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 144 + } + }, + { + "_id": "4734d7816408991b39320106367532a9", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/payload" + }, + "response": { + "bodySize": 191, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 191, + "text": "{\"_id\":\"servletfilter/payload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":5},\"urlPatterns\":[\"&{openidm.servlet.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "191" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.051Z", + "time": 140, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 140 + } + }, + { + "_id": "6cbf25336f75bed9003dbd20bd94c130", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 439, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/cors" + }, + "response": { + "bodySize": 402, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 402, + "text": "{\"_id\":\"servletfilter/cors\",\"filterClass\":\"org.eclipse.jetty.ee10.servlets.CrossOriginFilter\",\"initParams\":{\"allowCredentials\":true,\"allowedHeaders\":\"accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with\",\"allowedMethods\":\"GET,POST,PUT,DELETE,PATCH\",\"allowedOrigins\":\"https://localhost:&{openidm.port.https}\",\"chainPreflight\":false},\"urlPatterns\":[\"/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "402" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.051Z", + "time": 142, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 142 + } + }, + { + "_id": "479d6a831987c6fbbdfccaa366e89114", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 441, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/upload" + }, + "response": { + "bodySize": 198, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 198, + "text": "{\"_id\":\"servletfilter/upload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":50},\"urlPatterns\":[\"&{openidm.servlet.upload.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "198" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.052Z", + "time": 142, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 142 + } + }, + { + "_id": "c6aed7f604cb532801a9b95de9922a3c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 437, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/admin" + }, + "response": { + "bodySize": 244, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 244, + "text": "{\"_id\":\"ui.context/admin\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/admin/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/admin/extension\",\"responseHeaders\":{\"X-Frame-Options\":\"SAMEORIGIN\"},\"urlContextRoot\":\"/admin\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "244" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.053Z", + "time": 110, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 110 + } + }, + { + "_id": "05bacc81732e6f86cfe0b782cdde4f67", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/api" + }, + "response": { + "bodySize": 205, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 205, + "text": "{\"_id\":\"ui.context/api\",\"authEnabled\":true,\"cacheEnabled\":false,\"defaultDir\":\"&{idm.install.dir}/ui/api/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/api/extension\",\"urlContextRoot\":\"/api\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "205" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.054Z", + "time": 94, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 94 + } + }, + { + "_id": "17421c1d759655006a294261cc77fd75", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 439, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/enduser" + }, + "response": { + "bodySize": 174, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 174, + "text": "{\"_id\":\"ui.context/enduser\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/enduser\",\"enabled\":true,\"responseHeaders\":{\"X-Frame-Options\":\"DENY\"},\"urlContextRoot\":\"/\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "174" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.054Z", + "time": 121, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 121 + } + }, + { + "_id": "61e2740b542f064697798e2a02431f03", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 437, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/oauth" + }, + "response": { + "bodySize": 199, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 199, + "text": "{\"_id\":\"ui.context/oauth\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/oauth/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/oauth/extension\",\"urlContextRoot\":\"/oauthReturn\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "199" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.055Z", + "time": 135, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 135 + } + }, + { + "_id": "eadbb4ad948866a207831ff04c796efb", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 437, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/configuration" + }, + "response": { + "bodySize": 588, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 588, + "text": "{\"_id\":\"ui/configuration\",\"configuration\":{\"defaultNotificationType\":\"info\",\"forgotUsername\":false,\"lang\":\"en\",\"notificationTypes\":{\"error\":{\"iconPath\":\"images/notifications/error.png\",\"name\":\"common.notification.types.error\"},\"info\":{\"iconPath\":\"images/notifications/info.png\",\"name\":\"common.notification.types.info\"},\"warning\":{\"iconPath\":\"images/notifications/warning.png\",\"name\":\"common.notification.types.warning\"}},\"passwordReset\":false,\"passwordResetLink\":\"\",\"roles\":{\"internal/role/openidm-admin\":\"ui-admin\",\"internal/role/openidm-authorized\":\"ui-user\"},\"selfRegistration\":false}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "588" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.056Z", + "time": 76, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 76 + } + }, + { + "_id": "dccde179c43e59ffe92f719da481c2cf", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 433, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/dashboard" + }, + "response": { + "bodySize": 1031, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1031, + "text": "[\"H4sIAAAAAAAA/w==\",\"rVbbbtpAEP0VtHk1spNQpeWtTVq1UlKlSao+RFE17A72ivWus5eQi/j3ztqAMRBIqyKBzM6eM7czAy/stxRsyIJMBbhiZMAKljAQpdRniwPHhrcvTLozHENQng29DZgwDSUS9EeQfNK79mA9IadS5OgbBF9iC4tjunrAjdbIvbEuBSFSui/piCxj6AvwMAKHbMn8UYje6QLBZknLU0JVSZ1vkpCB3naCtqU5tQgeexcNpsNj0ZlgOaYlaMhRpNYoTJV0vkvLC+STvrsPYLFvWuqLGta7IpRbC7Dh2wiQclTouzme4YPk2ME7VGOHNp6ngR4s5hSUBS+N7hLmCKu5Gj2WebAU0wriVeoKnJsaK6gO6N/GezmHkAPC7K5mjHxLNePxRg1/0qFbC9R7apjbBW7jun5yHsveJYHRouaxIXcJc/I53lNg86gs/1TFr/dRs41kZ3fR54q4x6Bcq+457YXRkkQY9dPVuMIctbgCTfTDF1Ya7QsyvMuy5Ch+0DujMKaIEzo+zJLjLPlAtpMseX8YLU+xztFCr2RQf9bPDZ7As4SV8Dj3wA6OBoOjY05R0IQuD0eZGPA4uNvThSBk06rtdq4CZWmpID64HfdcXYyvCMoXX4JS9dURWF7ESsb2qHp+t6MVOH+FsZF7an411xFJrDIbW4X0SwsB49YC7uUDNspZen3suxIotjY7EzRl1+TVguOou886zqP4e3Tjermd3ux/a2UWg3NOo7KvOJ+Ckxqd216c3EJV3DSsNCyVxH7TnIRV1jxIEUs1vGWxZpEwXYwzu3s9ASdz/U27pasb6VU9G3Tej4YY8JpnUsXS82u8i+1Tb5JN+u6m2epFUSn+Q4Iap6vrcjOU7zjtdW+sNHOFTpb4bHS9CQrqKEXCspNmVoPH+msWlxfmEOXT/JLO2kIbLkGdm1zqdb01pn+WK23kAGo9yb0ku6XoEOia86v/HDqT+iaxU19aAircfoZfqLihCAg8+wMKiFQxwQgAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.056Z", + "time": 101, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 101 + } + }, + { + "_id": "fb55717b678608c3e9704a46f637ba00", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 431, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/profile" + }, + "response": { + "bodySize": 891, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 891, + "text": "{\"_id\":\"ui/profile\",\"tabs\":[{\"name\":\"personalInfoTab\",\"view\":\"org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab\"},{\"name\":\"signInAndSecurity\",\"view\":\"org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab\"},{\"name\":\"preference\",\"view\":\"org/forgerock/openidm/ui/user/profile/PreferencesTab\"},{\"name\":\"trustedDevice\",\"view\":\"org/forgerock/openidm/ui/user/profile/TrustedDevicesTab\"},{\"name\":\"oauthApplication\",\"view\":\"org/forgerock/openidm/ui/user/profile/OauthApplicationsTab\"},{\"name\":\"privacyAndConsent\",\"view\":\"org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab\"},{\"name\":\"sharing\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/SharingTab\"},{\"name\":\"auditHistory\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/ActivityTab\"},{\"name\":\"accountControls\",\"view\":\"org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "891" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.057Z", + "time": 111, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 111 + } + }, + { + "_id": "2cf6006aa7d3908fe4bd8d43fcbca10d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/themeconfig" + }, + "response": { + "bodySize": 421, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 421, + "text": "{\"_id\":\"ui/themeconfig\",\"icon\":\"favicon.ico\",\"path\":\"\",\"settings\":{\"footer\":{\"mailto\":\"info@pingidentity.com\"},\"loginLogo\":{\"alt\":\"Ping Identity\",\"height\":\"120px\",\"src\":\"images/login-logo-dark.png\",\"title\":\"Ping Identity\",\"width\":\"120px\"},\"logo\":{\"alt\":\"Ping Identity\",\"src\":\"images/logo-horizontal-white.png\",\"title\":\"Ping Identity\"}},\"stylesheets\":[\"css/bootstrap-3.4.1-custom.css\",\"css/structure.css\",\"css/theme.css\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "421" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.058Z", + "time": 60, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 60 + } + }, + { + "_id": "3467e6eff41c0252746cc812803f797c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 430, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver" + }, + "response": { + "bodySize": 169, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 169, + "text": "{\"_id\":\"webserver\",\"gzip\":{\"enabled\":true,\"includedMethods\":[\"GET\"]},\"maxThreads\":{\"$int\":\"&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "169" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.058Z", + "time": 138, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 138 + } + }, + { + "_id": "8c44f974db12734398c806d9a1cbcd18", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/https" + }, + "response": { + "bodySize": 217, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 217, + "text": "{\"_id\":\"webserver.listener/https\",\"enabled\":{\"$bool\":\"&{openidm.https.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.https|8443}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "217" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.059Z", + "time": 79, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 79 + } + }, + { + "_id": "7415ea0af3a4981f3e3feddab0df5329", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 444, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/http" + }, + "response": { + "bodySize": 128, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 128, + "text": "{\"_id\":\"webserver.listener/http\",\"enabled\":{\"$bool\":\"&{openidm.http.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.http|8080}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "128" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.059Z", + "time": 115, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 115 + } + }, + { + "_id": "b400d9fa8acbf142278ba15f3b31ee91", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 450, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/mutualAuth" + }, + "response": { + "bodySize": 250, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 250, + "text": "{\"_id\":\"webserver.listener/mutualAuth\",\"enabled\":{\"$bool\":\"&{openidm.mutualauth.enabled|true}\"},\"mutualAuth\":true,\"port\":{\"$int\":\"&{openidm.port.mutualauth|8444}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "250" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.060Z", + "time": 131, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 131 + } + }, + { + "_id": "1c44d5ed6a798188a1711859e5a9fceb", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-c5c29853-2380-44ff-b254-289f83e360ae" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 534, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "1000" + }, + { + "name": "_fields", + "value": "condition,description,name,privileges,temporalConstraints" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role?_queryFilter=true&_pageSize=1000&_fields=condition%2Cdescription%2Cname%2Cprivileges%2CtemporalConstraints" + }, + "response": { + "bodySize": 1363, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1363, + "text": "{\"result\":[{\"_id\":\"openidm-admin\",\"_rev\":\"d58a3526-b2f3-40b9-8d59-b1e1515ff88c-13257\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-admin\",\"description\":\"Administrative access\",\"temporalConstraints\":[]},{\"_id\":\"openidm-authorized\",\"_rev\":\"d58a3526-b2f3-40b9-8d59-b1e1515ff88c-13258\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-authorized\",\"description\":\"Basic minimum user\",\"temporalConstraints\":[]},{\"_id\":\"openidm-reg\",\"_rev\":\"d58a3526-b2f3-40b9-8d59-b1e1515ff88c-13260\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-reg\",\"description\":\"Anonymous access\",\"temporalConstraints\":[]},{\"_id\":\"openidm-cert\",\"_rev\":\"d58a3526-b2f3-40b9-8d59-b1e1515ff88c-13259\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-cert\",\"description\":\"Authenticated via certificate\",\"temporalConstraints\":[]},{\"_id\":\"openidm-tasks-manager\",\"_rev\":\"d58a3526-b2f3-40b9-8d59-b1e1515ff88c-13261\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-tasks-manager\",\"description\":\"Allowed to reassign workflow tasks\",\"temporalConstraints\":[]},{\"_id\":\"platform-provisioning\",\"_rev\":\"d58a3526-b2f3-40b9-8d59-b1e1515ff88c-13262\",\"privileges\":[],\"condition\":null,\"name\":\"platform-provisioning\",\"description\":\"Platform provisioning access\",\"temporalConstraints\":[]}],\"resultCount\":6,\"pagedResultsCookie\":null,\"totalPagedResultsPolicy\":\"NONE\",\"totalPagedResults\":-1,\"remainingPagedResults\":-1}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:33:04 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1363" + } + ], + "headersSize": 2221, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:33:04.213Z", + "time": 15, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 15 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/config_603940551/export_4211608755/0_aD_f_3100536376/openidm_3290118515/recording.har b/test/e2e/mocks/config_603940551/export_4211608755/0_aD_f_3100536376/openidm_3290118515/recording.har new file mode 100644 index 000000000..055af396c --- /dev/null +++ b/test/e2e/mocks/config_603940551/export_4211608755/0_aD_f_3100536376/openidm_3290118515/recording.har @@ -0,0 +1,8562 @@ +{ + "log": { + "_recordingName": "config/export/0_aD_f/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "4c1fef66c916c8940b0315dddc564b06", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 425, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 539, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 539, + "text": "[\"H4sIAAAAAAAA/w==\",\"7ZZBb4IwGIb/S88k3r2hImmGbUbtwSyGdFhJF2hZWw7O+N9XJi5MXagXTxxbnu9ND++TjyPIxA5MgTnIHASgYnUtZGHA9O3Y+zKpmGQF32FdMCm+mBVKZt1dqkruJnMlDZc25Z+N0NwN7llpeAB2wtQlOyBWcRc2nCNcEJjKpiwDIH2HalWKXPDzs1neEm4uJBs0d1+NsA273M1IhNbgFAxxSZLFGEUe5GoGY4opGUbnGC1huooWw+gSU+SLZWGSRuFikyUQvfiEt1yGUbIZRleQEIjiYZBgms6jDMYIpz5v6Hjv/HWYxtHaP5+i0CXHyI99pWECl7CFt65OWtVc23Oh3NmoRue9Jk5Ur4ptllMk3Fuuz7hluuC2h+u2pe0rekYZzqTlxnbGeRt0O3fHmFtoNGQ05JmGMGNEISvXZw8//uh05UnHkN9G/xzV+wfP7WULUOOiH1xBPoH/7yKf6VG5UblnKmfudfLKPo9/qevdcU/Ypm34aXv6Bt1aPRM+CgAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.557Z", + "time": 14, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 14 + } + }, + { + "_id": "4c963e6ac6a0c10bf75de375d8e3da12", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "_id sw 'mapping'" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=_id%20sw%20%27mapping%27" + }, + "response": { + "bodySize": 138, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 138, + "text": "{\"result\":[],\"resultCount\":0,\"pagedResultsCookie\":null,\"totalPagedResultsPolicy\":\"EXACT\",\"totalPagedResults\":0,\"remainingPagedResults\":-1}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "138" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.583Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "778b519855abd745b38438bc349de829", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 463, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "_id sw 'emailTemplat'" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=_id%20sw%20%27emailTemplat%27" + }, + "response": { + "bodySize": 1099, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1099, + "text": "[\"H4sIAAAAAAAA/w==\",\"rVZtbhMxEL2KMT/yJ02ECn+isFIJ/RGpQBXaAqIIObuzianXXvyxJV2txDU4ASrXyE04CWPvJk1pA2kUKVJT2zNv5r1nT0qqwThhae9jST/zhPYoZIyLE8hywSx0U6UnylqQpwa0ZBnQNk0gZRhzpGImwEdIXATJxgIwgdUO2jTVKsMt3MjAGDbBc6U/2KP9qc1E1B+rZBaV5WOeEjX+ArHtOER4jQhV1c+jD8pp4hpMwg1pleWdc61Ov5tjEhAG/xumZKYc0RADLyAhdophoRvCJQGtlW6TXAAzQBJuNEyYTjpl2eUpQk6fRn1GphrS5+d0ieXZyeB0NKyqcxoNBI8vyBQ0EKuIUBMu+10W9bs+uBs6wu++PeoZ2LjZM2UxpVQZSVrOcsENUo/9g7Eb9P2Wk0I5Q1gBV9j9/KcjMVgCe6H1nGnfO6ZrkwIcFwJPScB1JEcSVJZrEqsst/BQLr46TMVjTnIvVqghVlLiWdDreKnQEDyDk1nunWPhmw0byJdxAWbpk4M4Vk5aMpTowYxZriTZW1piQfDKriEGyxDQdIOH7zBKq6p9v8/RDdxYHRLtwOL70Yl3H35mnpvV7LUlUUE8tBHTh0HHAjRPeVynEFxeLBm+8dp+NACUw9umCJYKkUmLSxNrnvvQB+AecfRHAqSYX69Ah+pvsDfXcxQ4AI3muySsFndR+kDPr3HHSZTMFcBco+G/9DJgj5kxl0onOxGsvtx4r0PqWre8AdictEVJTZb1QjXXJ1wd7J5LbjlDn4JeaKesZ9+XAJvjv1qJQvRawdX8QcXt9LtDy6Kh0Wr9V/fUv15Hlyf4Z6dCnvmbMmteftSzhthCy9PbgX+JuTlzTZ7b1K1l5BIEmn+3cxZnzLs6rSfkTQ5y+PJVhzxgyP5/vCHGC/RbAdJBeImXMNuNt60HR+iqeWDIFMfcGPAaxBoQdWnZuqZmUhRYN5r19/cf819hGS/M/Jo8QpE+tZtfSIPwXvWetWmOLCejsGgGSl1wLEg6IdrUKsvE8cr2scJHZYZwh+8PBif0nhMho/YOkFxObu/sPan+ALjZrOmgCQAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.597Z", + "time": 5, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 5 + } + }, + { + "_id": "4f7c200a37e236805c35afa89036bda0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 438, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=true" + }, + "response": { + "bodySize": 20962, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 20962, + "text": "[\"H4sIAAAAAAAA/w==\",\"7X2Ldhs3kuiv9DI5IynDh/yacTRxdmlKdpRYj4hyMlnb69PqBklEze52PyjRss65v3G/4J65v5E/uV9yq/BqoF9sUpTsmdGcXUdsAIVCoapQVSgAV62IxKmXtHbeXLXeU7e107Idh8Rxq91yAn9ExzErsp2EBj783YKCKUkmgYs/ImK78CG0k4REPnyYENtLJvApCjyCNb5pXbf15t/Ut6f+KOh9U9PeC8bUb8O/QZoUQLV5PQOinSYT4ifUsUVRFeSZ7VHXTogBtQRgmlCvJyv/nJJo/oJ6ULb6oDmheyntAapTwn+uDVynjpxY5qRxEkz7QKeP2HpCnPP9Ud+fvyB2kkZkz7fPPOJuvtmIyJjGScQIudG2NkI7ji+CyD0hMUk23m01Qism3igm0Yw6pHd+Zg/WNljXjidngR25GjDqYzXb6+GHXhASn7rTDrJEENGPxK3t6wPObZE7R5wscR2TApmOIzqjHhmzirUMFcqaq1NBgaiVnTg9m9LkhHxIaQSM4SdxIwnSZww+TeO+78K0uZTDvdX+gENeh0Iqq7opsDCND+bHUTACimwWmbJdnNeQV64l3hKSsgFYbyyQhtwg18WzxX4Ay6ltjOxGHfDvJTQEQYxhipftp5ykIUWuIXFSMn9Grw3G5U6pXzIkcul4qUuOOSgOPAza+E/PHPI3a+jRAOjAMBLSZsyYMu5uu8Qj8B/oxpmUEDeexwmZNpnFitFmncdORMNkfdATmKU2/sM1eZsPjqvllK8VbY/OyHDuO21tMV64zt54zCZruTS2PS+4GATTqe27fVY1x17mTCMrfNbOVxy7wzspIBFxkeraLlfdtndsRzYgQKK4Kxrtu9azZ8+sDc6PnakdhtQfdzzqn8cbi2aM4YxVl0C7XCqYBHBpMHoAFO0xcWsIE3p2MgqiaQd0+ozGgCLgn+upYhUwAa3SRZXM6UMTCjSVq1r9KnTTnqvW2DDwqDNfAx2XW2yWH8DK681qA2i4Kt8YOLOjbkQmGLx7SqZYdaEqJZcCOswO9W7U7Vo1+B3y803tqMzPuEEfAHUJ8lV6rkv2ekZ9sDN8/E9hTQgu/F07sY98b15mKgvp46vBsmZQFT5SrddgYv3pT1YAf+3BSoU29QHX+0dnvxMHPCvoIkooiTc3UhAocEXfvGNNOH33R1ADTJCEuP0kiehZmpDBxPbHeW9A2F7c6CqZgNvjJpDdMACQvTFJgPcx4EJikAQczu25r3qviR2fxzNKLlbvDkyGUPBF0f86Bfg5cpdQ+CKIzkdgF/UQHerHie07dQtgIxLkXArb5x5kCUaaBX7XaNG4jwYhcU+DYWJHyNTIBTkEueFQjpvgG4nejbSSW2OJ5jt0yYj6zIBcniJ5gzQG8QSBRgE8DV5Q4rnx5hsVV8qHlKrtQZSbBtg4oDYWzgwoohPiMZ0bT2gotM18c+M9YGKDshnZXkwW+KWqf8QM262Xe6px9IOEjsSSEQOySZSW4Fqm0RVSOohbRXsQeB7hrtCbDeqGgK8kcn4gJcHFEptwSXaoxJxT51DH4EUQndoRKM7l3KqEtWE+1SaYEAlYYt2YOGlEk3lX9s96QA8sDHxY8K0/Wxu9Dfh3QQPqLtSvOhGXIsc7JIjYDwjpLzAUDuHCjpiNtnMFqwmLduGfX58FgQdV/3QlYHWzRl3RpCvqf2Licw0UBzRYCGbIIhJxY0BmMw2eF4x5KP6ExEEaORjcmQDcN2BKwdwA+gWTCiDFPHavou6ZY+HEMxYoksSCWYbf1EUICUYYZ/B3hGY8BobZf3hV7U9GYv23WOILCgKnkrNv9lcPFCEd+1OOjvwYRGPbF0ygfRYd6TIAP3McwO1k/EMLOgvHExkEAzfyv9h74LBfLBBSdI7KPBr0Ad3UAwH8PTgzfoOuH48ZUtxPxD/mviP+0xOxBgaDOQ7wB7NSYAX3odm7a40n1XzCf4ccA7GTAFxkz8DLQWbrY/HeDMj3g+27Hs4VMAPQrwu2FqASOOddBqI7EeVdmPPuIJ4VWkJnte1+n8bdH6fx8u1i4Owf4Z/VWsaJG6QJAzBkfy4GoySLgaNgw3VPYIJjmgTRfLXm0C+Jlh4AzDJIbHfI/lNs/Q4E0I7JPkojIEdnhBsIOIU9vknZmyRJ2BMKuDeBRYGLY644DlGkVTkAHjE1cYzCQAnTPCOEzdQajwvvj6Cfd0pH8Z/AgS2BPqwHuPfHWrdwKlABkRyrgcHjgRDhyrcyDziKrc/S0Qh65Np3al8OQVW3dh5s4/9AM8MKAcSCYc1sVKHw3ZpSz6Mxw6xWWevocGykskbzQerWXQpqAZmENcaGYDjbXZdG1z0pkD4sfJIgIL5BSB2ugOWmMi5SM9CemfAXdTIfMZf35gRsJAoZNZegiIBcXMDEaHn5bY53aZldaZyo56tHKVaBm47xnRCTUwHnKmvOxJBtpe9o1tibzAtSrppuvjKXQNg+YLa0pPeQaQv5BSX/AhuQrBBbZMS6cfeoIUCDkBB/g46YMlNMgCY8GNMDD8pOvSTu8b0YLjw9cOOc8ySyHaLaAWMjxechtkRTsPc7rG1iB8dYDnPkxkUZNXIyGXAbkg0Jfh4EuBZz3aQ4A4VcTfPwtH+6P3j/erh3wk0DEWtBCALx1wD+hJuSbypsyYiMkdqK8sh9TjQPkwD/FCO67MTIyqRDfFbGcQf1lRKs5dBwgrRr9feGvcHzQe/4p8HwyTHa2T4aaqh9oHT0ce/Bj4+Ov33130fTdJASZ7Dr2z8/e4ZG1gxt4Mn+09c/zKeHJ4PJy/350eDPT4b2mJWfkzlXoo8eouHkQO2/j1789Ze9XvBkOJn9pf/h1wd/J49OObQwjUDkEHEUHc40XQP12MZMmtZs+/AH+3w0in5//uPhq0cff5/sHSW8x5iFs/Zx0iSp4vm0IwjbYvzD/JojXxqxeW8SGTHGn2y6bD/w59MgjTk/3Oacav5Bu6oK29cxJl7XNljalUXXrSWHmts8qh7uQf+w/3Jvt3y8djpGe3oofCpNPhQOMzuyRLXfUE9Yz6yIJzFsbiARepoDuLEF7llSDDjGm9Jr2/qb2RiUepYbAs25jZ99Og1wLjYjQZO2JQG1rWwk8DVlwdADbjVjmQSAmTlZB/qvvnIn8Ls+xK2/1Sia9mpM8k6Rfi6wZPRXbjJCy5Q0m9Wj0VGEoh1cgMXPf7zLryZMeBRbcA4ZRIR5ZczyUbzHywTCDMpH/kMKGQPlqLYdGVEosqXhVbFFLMbYW+BzhYoDE8z346+n74d7w+H+0WGB9zi77s6hKnUEXmydBXmKfwBjFaPfkpnBwjsNzon/io7IAfWRp8Dae7itutYrJ1hzH1bxUzrNaj/avr7WlonM2c3JjYwhDlj6hZ9ZkU+YaZkrPhqB0wcSo5Xsm4LuBy7pUibhssYJeJSwJM0RPzSWADcDtvk9w5ntWMl9rh5aRAGsjP7rbP4Fb74KHJutsMQvDnAUBdOWyMKIY5hJPhvw6btJMvW+/+4scOffX119RUdWwOSqizN9CD1cX38Xfv8b8IElec6isbVxdVWot9H9rhcCEIKG0/X+yJoHKSgOh4Dr4lrJBJqx0VjUt0gUBREIrUfAxbFcGsOCaUdu9+qqR0fQ5eTx99/Z1iQio2dvW6ovzNWcktcn+9fXb1vfD8B7ObdgiSRWElgsMfK7nv39dz1s3GMjgr9xeC2kQOPB/hIkANIPppa7gcmONAbSw/jBx2ow7iG1ZrAcWfaMfITR//F/UsshiYW5BDD0EFQrjB3Ata0ZScE/gVo+ge9AHN+CmaWRhZGwhCxLCxDajxb4c1aIk8VwgDXaR7UcVdEFFMEUGO9UU3xYgAs1V6+KT/qOE6R+Yu37I2adgfxZHUtTQ4zAWmkMGjqyPCJGA5ULFNVNOJPP9UzLNbD4o+9Pkfvg/+ZIGx06Z0mYQajUiNJ7bB5BlFVYycKUD0XhjNcefT8gMB3INjPGUqyluwEizxYWjOk17/cVBf5wiTX74x9a1wz7rO/m83nCaEAiYL4Ly+aTK1EfRH/8A0pSH6YsnRE7FXNYN19oBGTrzs0njAs3yDUDzedNLmzNiSZRElCqJ0qIDxMdGD3b4LGBT0kk5y5IkPqIAmne/4HWCnrnM6jDZ7O42vwVyCIHdKLj/7EE/+p55B7eWifyF5SUudD8MJ+8ixXm8rXZMDeZzSkn4Jikq6TIBfGA+de7zsIa8ysHiwQ5AqNhf/egay2xyC5e3qCP58BvM+KnhGli1c1qy9vKCwcblVAw1gSWuTMCYsBjCoplOU5ipZhR3ARy/9//+t9//F/2GQTmj39Y/2FMkraVr8LdiDM4JtyhaLVlyEFt4FbWrY8zlHZakrVQ0l2+1god6YkKJT2o4mVBi+2GXaAJ9cRxF+4J1tQRCJjfl+05QE8EKHM5L+/VKBc9sm/H+G3Z3iIyBcMbo4W4G/YCBFTfgtUGxRXTovrLdx/aNDoASrFwTUZC3BOfis9DvsWzLGyO8b7wQ9El6Puu/Inu1Z6fsAh9foxNGy6LUPmpoGyKa44OKU8ziebWlVUe/mV+aXeY4CaA1jzuglkdk025E8069JPu+w9Zna0uhmvDZBPtHRM6YiVAg5/Oq/9CWWx5c6tt+annbf3NurYcDHZam2QL8EsmUXAB/91wwNXbsHasx+DMWRtC6+MH0hU/oOV1bXRBkVFstHbFRuskiBNcCtgKSlkkMHMxjcrdfNVrDay2Kct1O49+yqg23zXNx4iSyccDMj1j2zhXLZqQKftDBmWyzAW+yyNPw9heH/dMKTfcxaII+pZgXOK1tiOrHPcQhCwfXxABCLUtxeIjckGC0jE4lL74O2bhNm2iGQulaOO8E86/GGl+J9gYMc9T4EME2z4mMqXkkDc20zEwTqllCGT71jqBPTtOMOmfrYSjEZJrpkegZA848yXFrbaCoNVUQK9Z5oONwMOs+L3YSS+bp9Itd4y3nxP3WCOGDPjv8lg/9sizB122vSCoWbK9HueRydEMd9/jZJfvHejxRhUfzMo71A07jkdsPw03trpcKQ+EO+vuuyHmSm4GnkiJbFtyxDhfbUtoAi30qIHW0aruQ89+adhZbQhR7PnjRoD8s4X7szu9Hm7fdfjHLmilnhvZo6Sz/ain8gSow2ZwZHdk+gQLAkb+Drbl1Xag6Y7SajtCUewI5tyxQ7ojJBAc9I6AGJIgZAoAjGCUnTeMpdu6tGnuRU7wEBJLp3aJ8mjZZhAz9oaJnaRs/QCyh5PAJ4cpapQW5wNQFa4biZO2fPOMfx6ARmWrBsBg0Uj4mBCWbaKn+UE/hrDwcUZi800EOnnuRsQqKCGTRQukDvdHzux9ntkSgmtCIgIICFMJU2SIe5DlbGgh27YZzJ0yRVrya39X7R5KaaO+9vNdXksxdXNlkJurVWt/FxvHx6C6UAursGqotvhBI4WYl8V3+4PojLou8UGyeVJIj+8dsvQYHhYGkyRIOriW2hTkBCraGEoCQWbRXzuCT2doVYiuBOvHbHVmLATzsWugKhhLZjWrpmi/ah+u8zyUbdO0dgS9cly301Ls1pwKERmTyxDa/s8mB/pJkn/r65ZJDV71gG2eFikgYtA0YUZWxvjroAjLQDC4pMABfVZmCRbiETj4jEZWQpmwLqRJNlJmnnVU26rJFmM1u17rgDMR0i0Qbj0MiTfKRmLKCEiqtscqcAGAWHBsVC0VLvwoF32mCsUS4lYwOu5Yii989WdfKgwlaQodmSlstSZRLt2txDRiS3K5FYSGdZT8ROZ8rx9ns9zAYeTmCpMV606PYnA+zEgvamf3BsiZ0ziLdZfAOvV8visFWFCxhql06sTWvtVH3KjYuhFI2FFkz5szk6bhi+JjqP/VV9Ydc0EqkTnFxevpZIfDaxtCIXioVCbMcZ+oJc2yLX1SLQxjwTfRt9gkKch3qUzllHIasuXXkp6udUGTCfXBfyJWjo9yKI8j2094fCkP9SUWWaws8y6Mj0VEy1ZOE3sxTL6Ulsi4YM5j7aiWxUwJax+nwcrRYgmtUO4+veAZeVmpNti+nheb0xdGzuxy2qJGP0yFN1ivIOSqkPEoJ06rsfKoUhcloMuUwQ3Wm8xqLGoIPe/ckvbjTYRYN1FvS1GoPpSe+OfXCmsT45Ip/QxyLGNuDIFMlPPJ82uTYiOw00yUq+i0RpEula41irYjkitNthlwp7O5uwBGyCvij3GGHpjeAZon03Ta8XgxRoa0ZvalbPbwyZNcQ/vSaPguo4pAbxWTms9gkQwFr7VIE1nF0jzbMv0U/0KjJC3TWCqQIDYJMne53KfVC6vwqXNtVvRjTC7P9VMkegPyTrMcL3MQB4oQ1QhkdVbo+1p3UmoInxttNstFJbeS3V7KPSvIcX6QMiggQ0IlbCJjRV+sNCsM1yjQBhHyNNk1YnJfGl2qJcHEe43UKg33Fci2J2tZ/YXeXKYERRqh1IFyLKXA8stnJnJsLc+OcamQo4g7Z7mi37TYCi+L9fVbVXpTGid9135j/n5XJurmjFSRpJFkF6U4F4etmYE6A3kJ2pcaLQ2oXkpWQdWlyLaUSVMkWBZ1L9DqBY3ixBIReZ1MIgrwZYq4gfUaJdwInhdotS9KP0ucNN/5OiOlcpeiMOKfnvctsX9R5I2iwWb78QXfsGfp/T/jppaKOcYi9bxgv4lWRZ9ZQiu4hznwxdWclVsfsv4LIDSECs0l4CoPUDOVtAVa0qpaT6zRkNG3hk3kX0GJhUUWclWc2NOwnC3VrFXsYmXNCzN2w4XwhovcUqvKtT6QAoqnGomWENNFLBE7AauAx0a4tNYIdvmEmaNururZfmpxKljuZLZdukjR50fPMho7Nm/fEXrvlnR7Htc1qne5w1viYMmt3zL9fR/zypxMRqcbRLhyqTy3mbxTFcLKNvRrolc1ApsxS3n4apmV2Ih0lXGstvNftYlZt1/zz7iHKcXuc2xiNtuk+Cy7mElgXUyoM7H2refEC/SYy3Jbmbn8EWSrhb4QUN/i17ZgcmBRLRe9oJGHB7B9ndc47GqnlHMaLCnQD2K22EU15KPGo6qT5nw2zXI0leuulrxzn2xw+3LKyP1Fium+dXThryqa+ml/c7nWTtRoB+aRAYwz9RKAfqr+uiL+oY5cN3f2ny7h7PvpdGCHcSFCYCcdPLOZdP7ecewQKOLFxZaH6bS2pZ9yPW02lJdEa7dT1BkOtelqAZhVMlVtGXNem6h1WK5Sv5gJj0VfmRdYD768KI7apNNQXKNNr6V8FoWGlVkiH/RLi2ArjjGwXCdptJTTIm2MfNS6+AA/68EzZKNz8IL9cTEkkBUVHRfiu+C0WHFIHAoDDfASJvCT4Ku4+kxbdvGCHWIzpSX7rQTokwsOJsMwD6XomtdIrkGRZg54o3mQDkdxh4XdB2WdKIfklhI5BAL3WRxFj9acghsncHwB7m2Wxt4gOaNs+JWO7dJ5GQX+XmNKRlS+91NMrmvdKM8qut0Uq8jIrrrPwvw3y8I0k7Zy95B+nszLKrosoxWycjabeBQ+iNBI8/HSDOon8R5e8+FkrsciTVIq1mvUJnHJLhILzP+z7YzqSK/RlDRPUBX1Axb3tBNWX6qtXUB0jTTKn1Ir7jbJCpY6x1bCV+rq6f95+/bP/7n5Zrvz7du3Hevt2823b7febX3zdWGv6jPRsmQ4a6SmsogKZNRurlp2H0vdNmQS4GaH2dpfkvxrxFnbZOSyA6ttVbH9+M5Ep8SZKnSQP01ec9ZVO9QfjfWTr1+18if6Wvq5V/YyXif+kNoRWdkmPJFXhKvzr1ku1Hv+PEzuHKy6Y01PSstWZPPEj24jJMVVs+F5TkSSmz813m7FGlFykLJuj188K1O1w786kf9tTimteW/WLeZQrMGdvfvTQtLvamCxVg68ucnKGcu81kXtLomNqHoDtVwQchZqWUK9kPdiRNfS3AmLX6tsgdzwaxDlmwjxIKvUYLNroOuXhZJfmx18ipyNikb73MbLp1yGpUvj0LPnltieiLut1VN2K3YwS+SQab7sdMo69JDo618odvaleuT65N2SL/7ZL5RZg7orkunzuuY5mVuk8vxSm15pE59diFKrRqpM/NTHKxgX2McLzR7lzBWtr5IMVYuN0wpGlmyAalu2YEOwM2VdpHZ1Lq0rnv4t2nyqpLifkKoLT2tTFA3gmTsnBqANuToJc4UV05yIsu7q2IcvSrlxSNtC58UyLXHVsuW14nv67rnix5ZhxazH++hzjjYgZ+7IOZmv7IUY5pjmi8xC/z2H28gJUUe3FHHY7TXUP/85Bc0hM32kbsqcFt1NuSB0PEkaeiYo5hk91uijZAMo71OVW4gjXhxpBb51NufWVIZSt1Wa167Kj1hrPvLUL/8uiM1fYShmu5e0KSqWjEaBBrmw+JYr01KyXVchXIyvaNXqu1cPTZgAfmGfm2fOa6PNbv9fWvXk2XRRB7dpnpsy/3mNdG0yP4OpntMmxaMaGhWxrvVBVRZ3N7MHLvNkhTJDVFX4G0Fk/eWZKGPdigYNmKLylC4Sm128i9bABC/rZhULqMNnD63iJKgxZuS78eSSxsmi+6Kqz/42d500GVmbA5XBvHej7syNKk7kv5szZcZUl7ptZnXHqumlM2txlTRt0sBhurk3VJFsIYNeKs9iberCzIv451cWa4/yridjIZeHUCu6a79JZlkpLRn6+gQ0z8orpW8LX6hUZHmZtA1Mj6O5RVtjNv7KO5eov2n5clcW75/GxvXberU+YqkxXe5py7fGzHMAa3KpfUuHa6G9TXxYV9vWxQTUnbpXF5QAey6FTyr4eXozMDX5ZYVdwyM/S6knHsbTfGo3mNrU113qUkKpAwnqGsTMXeYnWtBvnkAPEXv2gVXjB05YU/4nr9nPyviHo3wNcTom51nKZo1O9LDaFnVv8SzPu8XndwS1Vju6w+jE3rswx7Hk0R2BQ9WxnX/a43U5e6z8WN36DLLlLgqVlxnf/PxOhfJUslazebeIt/gbT0GZsdbw3jCJRNHvxRLLODqkG1D/Egx4C8fGTLV7Q0ZUevkLOERWzg+rKbRcSGj1m5KaHKkveePhX+PQ4926s0ueUF6f+lyBVys92GZKUbq1S7uljRhSWVONrCBW+7NbQcJ4XM0KYsbhza0ggcO9FXRHcmy89vClWkGMt1aVc7G8Fo/osO9WqXVQPQDDDf6X4MzbuP5iZfuonDXKWVebk9VuUCnngKrbVFa5NyXnSDdaC6QKxRgNb28pZ/4W1gY77+UrbBusGEK2VlsxGgx0ycUji0o0orTolF8q8uVcJnIjolaNaSVKHi1lxJTMpwpH3QJlC/Eqhe1nYNz8QJci94JsonL9VBLrBJT9hMSJUNZqhyELehorIMZj9cAjbiWc2bF5sIBXEqjgD/PBOILb4uwNKvl+rOAgWUN/o6wnrwXhL9e2cpkN4mnHbCU8CFzcDnf5utEdR0EwQ6KOveAMr+swls3TgL1qzydX3H3xLlsPReNrDdOr1td4QL9lPnivvfTWNfH9xIcmXqybBMIyk2MJ8U0lZRXI9/nwUI18QZc/Iave/VVvyHIQrgrBi7Z8U7dF8eLL61JbsfcN8oP24p96ic6odXUFJSHead2DSbm+1t+fNecnCnASbnl6Fh7cuet32PQLKm7MMjoJ18UxHOaXxzAvbCcJGEmbU0ijSTKJiO0es+rs7Bn+eco+AqEeIjdc/pySlAzpR8Dx4Tb8D2cPyudG1QcS1k+EhH0PX1Xb+cu2hjTPaGH7HTKDALhWxskkZ7NK/KlYtYHDEw9sz0nxFW3XNNqLDz/G4AsM+W0ixyIWt7HVBXLzZ+p5DlsGZHMrU+glTy1q84OAxTUlvUiDxQ7wrQU/fPj+xogBEH6kUH+HUy1Qwhi6laf8tHVQe+jxxndJveN+iRqu8fYoiFP1YIUjVJVZpVZ8BiH7jgMk0zCZLz4c+s2K9ClLKl90ZFW26Wh55SZUPRu3Hhaz/To8WTE3cxGdgTCOSREhRQjkSu65MBsrRwKBLXKuSb87mSSFmzB0a5AzGRZY7YthlXbJlKmJ6TBcDezxPeo4fuHZ4zo2WpmUjaY5X6Lh1JGWsomz3Ntohu8KaBkTTKIpjeOlurxtEuk4GciO5FPmiwRQRcR5Zsdy3eeVQGlzNrAO9zSrVTEmqNSq4i9N4Znj0DObaochH+VeeE02GNVJh6/WJXRzmNfdk499azeJVz/pruTfPFha+lnHGN3iY0OpZz+kD99Bf7jDbdqOy5+2DqLsLeIOf8bb/FbShgePOrbvdrKkFwOCCi+xP8pgaCfiWRXR0DhPlIsnmEF0XccghJrBVyIhBmpgYHxbG+JaDoTu1oeVSF8Z2p79licZstUULfEj35trwQC9luncLais3bAq6/HYqllNe/W1Fpx+B1FtRW1TvraeEYRuAJEHrBoMpknFQp5WfXUtYtYE7lFl9XdttYBKB4oH9nuyC4t8sN62rq6Y+/i2hRlyPRNqrkarbeiMGrGo35HQVzWQsV/2936Fr6+Pd/une/DH7t6rPfiD8fo9J99zcjUni8BuGOU501TIS3Hj4GSv34T7tAjZwqlQru6CmnqobUHVuAEPiEDdOgUkH+ZbUL0YBVxEq1yQcJE88BhiI6AixLgIoopALpqAXIByQfXs1P6CKctu5KyfCP1R30V9a69Y1FbMvZbWvH4/l6Bf20o9SLSwpnxsavEMG/fxLpzi/NOkDRV5loJRPzVm0uriBadYt0xN5t5iWEJNmi35ov7+PahBWNffh57tkEnguSR6/77RGl9qw5dnyZSv9GKBV0v+va6917X3uvZe1/6L6dreNlim7NL5XoZm9vE/NnsZRvBxq8KIVc5GIxXb1Hz9opyn6im4951uy3eSqFdHAfrlNTI2XRQc+/eLAtwz8hcRBCiLyt4HAe4=\",\"DdN7w/TeMP28hmmljvwyYwANtrLuHf97/XqvX+/1671+Lfr94OJneKKLv8jxL80LWNbzN5IEAlSuPa5joQ2oyPORF1z0+QeWmqLyWET2N6b5Js4EcwlaXUxGFjWACOYRt5jdBZRP8hEZxR0UniCiHzF9BTG6tX6QZi3jyAPKYpedrHGCKVDNjfnBCr50ievy8ApBfpDPPPjWwwJM0+aL5NdXogF3fbNLLnfkcsaO0TPQPGu7Q1328H0nIg7PFc/3wAr2XdmB+FndAaa3Ay+4rnaq0HPtcBD4Pj8tyLO8RUrxGb4uscPuYhPFmInNE7SfbLe170PipBFlFAdVGyWnr4aAwoTAn8+BB/eR4DPbGyKCSMS/bGulp3RKgjQ5oJ5HVY0HPAE8jOjUjuavAElMZWbHhYHXJrBIyBgXTJ/7e2cUBW4AVsWs63h405HThSlDXgBl2tp5+Ojpt/w+QwRfAMiOBgUBy5NHdsNHp7MM/ZhOQ+QbTpBdJGhK3WecX9rso3qBFXPi2WW/gXYW9LLDQXS0F3K1m0wdGk7YfPb3hr3B80Hv+KfB8Mkxpq+zjDs8q4Oa+Mfe87+cfku+Hez+9MPg8Onp5fnu4/GzZ1CDzqB8D5bh6OPF3uvX5z+8fPL0ofNq9+LJBSs/J3M+a49Yor2DfSXzb0d/f514j0Ny+dL74cj58+A5h2Y+78szyLoG6rGNZ6daz/dPhz95/jE5fXLuOenef5/544+8x5idgmJ5alK+4vkU5oefu7rG/wHePgycJi8imKodzm74eWpfZhzZTzA7D1PNnqAg88y2A/1CTAZS/+LjRc+ezZV2+mxMQElSp+06zwQu8k+db/CbYB32J6CE4nIZYvadDt7x0hjYmbhM3LioUqEZcj1XVF0ek7bIBxzgZ55RBix4JA99jaIOUpj10lGdnrL+9t3qN1xofKLOoomLFUEu+rrhTPVXhbkggPaP8JQb9bjE82WGrW7suABTQgg+D8xAswTwtTyvss/JWds+q6nA4D1eLcZYbiwSH9Wi/Iu6N1ifI8d/JkXX+oUf8A2iuA2fefsywoNSdkbjjnQUOjPZDkWVl6leO0zIy+quPiWOv+SMsFeIhukZT+EtpazAW7xXlFUtmSHt9E8FFFmjpDHmmzJS1jTHOh3G/2UQ2FKvtUKKHYD8UzbBlUQTsFnrbHpKO6C+opU8N1KJK1pZilzyHEkZW5M4OeHn1o21YvFsi44QQEecfHc7mpOa68pgfpXoP+RHwO6C9VWfnRgsmM/L+Oxh9tc+16V4enGQnXxYhvgMTifVAOlnKEqmO0/4ZVjUIOCXKIDUH2jDqwM01Q+b4HBKABoM61K25Nv8nom7YNesx8+tpO2YDIkfU/TQxQCF/dmYTxEGkFkAkeMwb9rSeHSdq0JGxxfUI0thrU0BO5z5RbL8v8qSwPF5Dozi3pWI8S47eNuA+5mF7HPzkX0pCbyYjezLjFjVXISnThqDBM5cCNLgFln7WB1BqmEZWWk5hlGnteVaa7jfsvgOeUT4k3JYQ2BRe0yGeK1GtbnZXNlx6Nn4Yw6fXz9cbpBmXNMfk6Ysg1cKlACT5TkLuiH2GfQ6C1rW+oHi4OYDDNLXoK2ATnj9DovqlwHOdMaSNlWpeqpj/IiEyBM5g/EutKXsWbMw/90sk8+vpfHsKHFSxDXTqo0Hi3LoZBCaqVr4SD0bY6h3ujhn3d4v0MZquktHYpNqubnX11g3g1E/+fwZwbtXNrzfe1XzGfntdcnUL8VthTlcxGsxiXbJiPrEFZe8GbZAnu1EHe0Rs0Zch72gsYPddGYchmE1iHrForuMD8nG8kml5hEhFeBNzMeV1NSiNt31lzVUsFXHLffXgeRgCyfPycSeUW4DVYmAqNo5k3XrWb/xsGuEQe5gLzdedf1EAd44CtKQE7CiLatRQSxDNBsPr15YQYDCOvObl5ebrekaXIdZ7olDTbiNDe2yjSiW0NKGP2TNtWxBif0YCbPDer9L+cW0mgPtNvgy+obmRbK5VBy+nXhcmhehLocV983Ktfw6d1lexTaVU/KmYhYvM+/LL0x56S35qrW8zryiZ98u9yT12x0ayqmAqFrmN9vaVa8WLwO99PqVkl094z6uMjbH7+tn85KdVsXyDJO73F5Vcb7q6S+GAjMSYk5KGeVYEsttUYt1epdEGtEoTmr3oBGljqxWIirGG6KL4Kj3Q6sgSfuiDkiVIcFTVhYPRtUrXSG8wDkvTVFgBbc28QD8TifeD1xSTyrAqIO1ytIPrmX6Qs/GJyfLyMUKUMOweqvQDZQz9cdDvNKRjMU+V1WSA+uN/6nj63iU+MkuJh+LG5arluYMyg2moQFGuh3o03iCKV2LMjg4KF4/oeUrFo37oGXnMV2YD8Kh0diW9UsjOyqJZzGoaeGB20wkmdFwUnLVfhPAvJU0PZysdWU6zKo98dZNesJBpWcn2UWoV+AfJHwbdhHDpvWsqV1GxhN3OG5EJG7LdhlyeTHsKUwa50CxdrzZerXPtczbbTQBDIOOXTm79vSMjtMgjXmmFh9Kg9wnHbgEweeaU8i84D7z+C4dUmlxVsDP2ty6dDZdcvMoYrvaFXhdYq9uam6MmmxRDWyXJHjuY2mQLm9XZuRP8Fr35gB5/RJADRP5NFA1y0JMk9RekveyNpU6WIrMMlDNhp9Vvcf8ZM4SyKtr0ctXihXokWv4eRchWU0462ULhrZOnQRpwgSbnT4gI3oJbdTCktlt+mKikuTFssLuIo3nvtP7gLePl9l8rABtPqx2W6YywuYY3KW9jFnJ5LJ0dzaPV0fWLUQAOMhdO6lTOxocVl1ci7+Css4g1ehqn1wICjcBBLXzT3TLwS30KDQoFW6FZIATMmsEJ6tdBspzlxgY1K4aWNlLUQ0gNlNsslZDysnqFWtH0pS1eM0yEFCl33yQ+FeV2cbMU3GkoHgqoPdNmQYRhavoDpyusuAih9hhs8lr/Yxng/aYJZTMDzDRGVA7SdmJJ9wU2x/7QUR+lDVZjQEHo5RRE00lu4a67B5oRz3sUxg2K1np3MWIlgey8ftKAOmUnwQqguQlNwBaPuc3ASvjnPm3QvJ96OU3DXtWMJrexU25rSGDGaMurIbZiya5yP574+mR1aP7hUjzlCR2VbQZy26J8ndDbKHJuDQ3pzWjyY1IjOMSyW9lxNWKV5IhiUqpbIrCGwG21SnqijihKG3fpL9K5hAQO1k/d8QvxY6LbNNkd0xDvHajbLrk9l7ubPuK+3v8AoB19sn2RheIROmdQiXMpZffLnvpPd0xgxlEKLCYuDOr6QyZh/xX3fSV92U17FW7h6u0x6DiLdJiz0sKQf4ChBXHu2CXuZRHqraetaeeGwwgd9PCivhnjwEvMwI1a+Lo+U9krlzrJSeyVLjrUjRuV5ixh5sK8QGHdcK12TLyXJ4couvOJbMGjGGZOrj51GnLWNnELS160c0yS3RGqUtyuF1GYcl762EU8RT6MoxSkVIhrfDcLGi3WCwakbBZFzNH0fov542cx7Ei/zLc8r7LEkga7lI5otr6tyKShoqUN1+sUUO216EJNJuSi+16VYGWOnaTqWZgmJ7IZc7lkHX8mknPm5O6xhK3Ut1MVtTVVs0JmFduBS26Pg5cYXobsKBmdqwDSQZu3TjK5K69y5Dy+32qci3Ci3ylRXsD8pKqXRo7duT+CoUk1jt9ZcfJYGL7gGtNr3qNlbuU16A1NXm1q9huxedrIjRy8W8+4ZVirHIgYJxjvF5PBcELdmOh1kphDf3FsNJEMaPCGo0OHe5NjQ79/feGVofePQtn40FMF7optb1U4Uo0Vq3Lo1I3A57ScqgpXQ0cu6azlBNE0QpgxRZv8hCv3zoKldk0nTmOzhpgcmV37PHntY/5QWB2IWACYsON7CSN/MPU814E0QFeYeeP9UeRueSCaB4AfO3nsbjwbkbYs+ZzrWiYniURIbvsHjZ1ZSAmYYr7zfjb6OyM3mmUxgm3cyN+60HrT1d4ZRb18QpLr+vS6Lonm/YSrI4hTZT4UiDyiFcDYAxOyE8qlMLiKaetH3/Ci9gSraC1wzdXrnPX3FGfolhAd4Tvk+QOFby5MpPWW+zubvE29YxY6mpAql/6JU1F7bI27a69dh4mDIM6lniX2RI62wSY3QZYhKrdFFgA3fcDfz4N0rgC04iMixDxYwmo7Iw6ca0ZtS0HWY4Z4SQPF4uKgNnXEsh40wzATAILmJ8ZpJa8atFK7Pi8gDb7qJlruX7M4mKHxyDWoyCa4rvzM4p3QIIM5SgUijodvU7WVXkx3raXy9cHDirljSylXXtHnhV2ZdE1Q521tuU8mi2zz6omP7ig4yRLxMWFAV5Kg3cAdnjaIiaDaFIRpPxsEj+kxC8eBG9wErhsMeF5DC2pKtFlDXxM0QAFJ/VES740z+9s5O/Ni9W+5Kn10E6QYlD4P5vCRPgkibi1+fWnzV73z1tbbBwaIrfSv/lw7NesTyOur7I6N0ViSNcBNQV9wJ8MYevZs2cWKtYt609/sjax12BkycrqRAmrtpH64rDghvXpk8UX6e45mcebhQbdqTAGsudWt7r8jDWDtV3/nD3SKA7xeLYxCnFF6OaG+XQqUm1jq8tZQDbcrO+h6SxqF43Kpb/H5NWx/feYfjDj/AUUAK2PUcm9S3amHCdA+HLqFJ/4Tf1ZcE4GWVqPn3LP63SCqym/RRE7YDEV8zrRzc0e65Wl8lgeYXeKohXf9YOLX2kyORqNYpJcv21tWf3DXWvzPzZ71Nea4MW0+OyH8XFcB2dLWWlFUx0NW5BNtuYm/IpQqPRge8pz0uLzoTSJwbYIcb1GSvYk4fr88mtG0U5Wo80vKK2pK8uvRTeMTfjkwl9jLzgDUsOfKlOwhW8xR1aIbGk9s95cwYDV7atvW9YO/IYlFu9Gf9tqw48RvsgrCnrGJd28nJ30E+WckvDj+t3f3vpvfS8YgybvuuQsHW++bYEpg7oXlXZfDMYSo7FOAXkr8K2ra2vz6noLYVM/TJMuXjXetjjd93e3GFypd9koNmVZ28Lnvtt8bFt/Y+L8txrmB5pc2DQBc2zAKZ7x6rVkTrx2lTKqSWb35TXEMZgTmcvFr8KQd8e2dp7+5fE2vxU2v71QLUYEPeA7FiKD/b2kiRiVCFFTUbwFEeJEayJAJTW/LPGRc9FEgFi05F58PAbOcIMJExn0m1gXQG5Ryry3r8+CwDOMN9W4K1p2Q9VUFcbXnEeYTB0zEFfil7gy6MH2tY4co1G7tTc46A8VQ2Xk6wZg1E5F9AwMghkBiN+29RooD9MQbIaucDEy6vwFSQPovIyCYMYE5qsx+xMcr5iphy7n3a4dJ11wevwY+UaG/vHGbdmARFEQxd0E3CaohlP1YDsrBRlEJmL8pzROrhBk9ozdwJwrFsM4Yxn+ra9sf24xF9tCm8t3Y0vU82x/3B1KguVas7oxN/+7vEirxFN+umfzBGjlYjcPuk+L5eCNMgN6rvxUvKWaO6mOCLgUGlHfVb62LLqwI5/fP9jy6Dnx5hYnn/VVAE4WiCOT5th6A/Y9afMq7TAA1wjmpB3aQOGA2u9a7MYABMh6Fxfdl3jQHj3L6ip+kFjlv1fwiarINRhejh2wy7p3Wq9PX3Se8sPW2vaVUnbiAnl+Czb+WaCjge0Z9XuidtzLLExRZzEAgYjMF66oDDyar93JVPaCRgotXVYJOEdsJ5bFKbjrxC9WAPcvGndBdEAJB855V6kM3kReN/4TmePNa6Dt8PNQRE2yVNORDJHI9ugrYK2uF/CtsE914RNV+3eHnIMiUnnn4ukYj9oiZJj1IDDjt7t3WZVPJXebX6MjxkezL7zQrpxwrnoZ3L3Dwclvx6ctfMyG/8UfsVlzz2W3t981DtJLXwMWkyQJ42yuMYqSwwWn38PnAcow+f0Clh/CnrroTgNchNZOGehC9jCZ2g6gmkMwq4DlHajQEFMMBmWnHRgSw/2Xh/D7l72T/Re/FVCMiTeKhbVQ7EErXTsRdNjxxI6IW6SDVqeKCAaYZUe/FtbN9oS76sqfJajFsxhm1BWvT5UqLFnj0zD1fxzsXUuteVwWFstaidJPDttto4lqJ6y7kjZY8gm6+Gl4neV34cNTvlS3PMxzq4o6C4M3U9VZ/ZyariOu1klG3teH9bTVGzWnrtaK07dIXRaXF/TVgz4ae5+fYZIJ/Hts7mtmjyoJS6TvxxdgS58G/A6v1s7DYtEvJGK7Gg/aLRYNlNssD/i5bgD768RONmJrDjaJNbJnAW67Wk7gBdF/ttAffv/yuahlUa1aquqlrOIIPd6fU+KBhwr9WLMgibAc1BW0CKM//jH64x/wL/lPpMhDrfvAurAlYLyFw8IdpmBOAKxpSGQkkju+wAIt07x6o8Xx9FfZZPq69hFBq7oje0q9eb5y7Ju1iHiZTVVgv3Px0FaP+3w94000i78mqkDlH0xTIM2CKtg2L3+FSxyIRh56rliHz55eWwD2hIzhewVQXmiQyXhSrZ4c+JpbOS3EO285QrCvVSDFo295eNlbcNmoxadK5PCxuwJe+FGHkn8Wz2AODLT4OQZSjw1WCTv4ElOcfh6agMLt7jbuI9CBUpuw0CSBf8riTy18ZIt5cuCKhp4tdcOvZGNGLB79dy0UJQk4e8HntyC1pqB92JZOmFjgU6kWrLZFfQsUHYlwz4k98wWeLru1DD12/iTYlXHEs/Vw+8G3nQfbnYdPT7cf7zzc3nnwoPvo4fZ/Iw0Q5Ck6x16WFMdE/hVov6lFwzidWi4qGiumgNWUJG2LX5aa4G6uZbs0pLGD8RgCXNy2YsDUDSxC0xgMIYvfFQVYO9SlLsZp0sTy7DMAb5GEgybW1B77tgVi8CG1u9ZrUC+gIQE231q0QBtQe9q2PqSg3XxguSh1wYcmEcgJw9tKPc+eOgGHjJVoTLEnBpKGUNkitoWvggWAHBsAdJV0rV0EaYOZYNEoBUz4WIHIEQkjMgEvHV88wg+zwEtDFCJAB0YKCjQG3Uk9T1IIBpRao3RMQQtjHMm2wN2FH2nUtfbYvQyoZWMKNAgcxyawmFpOGuJ1l9gCRgHzCUufj1RESkGnTuqFNo7bCkYj6lDbcgmwJZZOAw/RsJFA1GX6nI0+ner8ILjVZO1o5pGE75GAeEax2jQbaKYEcTyYfnC5SJLMu4Q82O6KlnF3EIFHfxTRMfVfyCsBcUP6GPz7KU8Uxp3RAViSuPHKIojcY7f5jukPxHbZHl2LM3r7siNNPLmWa59gyrltrX2TktxmG05+wi5kagcMJ6gW8Y014nYuKLvMV3R8IPfhWi/3TtvHR0P45/Vpm7+41j7unw5+yCrzEWJl5sjs9HrKXdnJLApMfOKeDlodYIFQ/zgiI4+OJ0kWDUwj75hvNDHzs/dNq3JKQnvuBbZbOitFA4/PzyvUZse84ZBDq5iZqX0pdh3xjbF9/4CMbQwfYZi8iKcWJORQuUF+XYd/Gn4m9Leb4M+xKx8GfzjTiC1kJXJz9UjL+ns/NRLsxeuX2cF/ERA0F4LFcCh7QJAFozPDdFGjUN36jyERR6YoDH87HLSMGz1a/efDvcPTFn+Ft67eq1fvXx4d7jWoefB8/+Xro9fDxVUHR4cv9k8O9nYXV31x9PqwabX3/Vcne/3d396/2j/8qQlwrPf+6PDVb4urHuwPh/uHLxdXHB69PhnsvQdH9+ikCQ6ifmP4p/0TUFvN4b8+7A/R7W5W9+fX/Vf7L/axci6fH503ZUNVZL+yM/sjtquG1TXzW8udNGUNvEbbx3dRspshmklQsV2JxBQr3UvIvYTcpYQYRxQWyYchTjk5EXWGiqPZT+4WyVVAHN1ZaglqArB6LWrS+l7k7kXuLkUuLuPJnPQ1sKXya0eZwLKkDd2xSmlXZL/1ZK6kYzsTsifzVbgLJOLXuxSjcSWh1JTy5r1sG4qYENSW8GIY2e4xS+Vm+XDK+bpq/b3zAgxr0lHJ3a1h/2Dv6GT/5f5hi1vTIq/mhL233OplqcDFQYe0xY9d5UZsUkEqpAZkCOlNiQAQdBKUjAeQLh0NuP4iLWfFScwA5DBvNA+7e4e/lc9AOboB0n11ZFnzGxKbw6gnN6tzwg4CGOPo8S2INJLmpPk724U/1I5PiqR5yiPu6FsGyWsZ4VPH52y20U9YWnuuMY93YQIDy6CHPuXBvSmIeGyc1Yx7rGI31JOpWUTJ7+r12LZCzLNK+Ob/KGgCHes1Bc5gsuwjlo3RBLyo2rQHCflaO052QvCJU0lX4+srdk85ZtVkx7L08wg9M4kcZ1zlk1dUzA4HsNpc27ZZYBaj2/wgQ5ZvZTCTa8eTs8Bmd6qzbnblB26I0HhX5nRw/hb0+Dmlzrk1xJQ4aHlB3TF7MRUjqqrtJCIjqPqVSkqPMSLfU5ZSa2R3MKR3xu/pFJD7rmsNZAvG+RKOWGKKQKAA/j86188JDFhg15IXmelw5JG1nu5w9TwglAlWPA/6IbUj0gky0Py8icUPzJoICms2jyB7Mz4xx7hL2P613l4LpbM1M9JmzwQ4JrY+VqEBACd9vqtAS36MkB+bwVVvNHHOrqUmYl5CTaHhTRqiDopziCZ49WVc1zjDaziPEzK1jtUBw5gZPzFIA9Tz0BBpqbTAD8iznGW5MaIxtxBV0YEAexD4FJiQu8Q6j2Nuvu+e4A4qi7SB5gZ18ubJ9nb7If4D/78NaFwQArL+5sF2+9F2+1so++t2++kDLJkjnbEEc65Y9mL7Ac9hxPbQmB13vhQ9tL56+Pjxw0cO3yxVH8+23ccOy1stHa6dupRPVXm5uO6OJ5jW1IsZMWAJ9pLJC3BuWNUzO8KHmRI2PR6T3/LWno2vweJELqC5vPsUWIxdaGdSHPgXN1LYgRi2ucQ5R/V62YmnmDim3budorbk48oaM6W7p177WbI171ppp8b9l1JGCs4rEJVFxHmextTHfddS4owjO5yIJR6EJaT81Sx+1wtPEmAhXrni91SWwLvqAaBDvs+ubOBdndKEJTwM4XsHCxDhXM/AFarnKrjGalgEb2qa0l48IMUaBuiTC11dFlE5JBeWWUObTA0cnZKPuLUKmmACM4o26fZfuaymLNze2sZdUJ+Mbb4tiivpdUbowKG29yoYC29B4zdetDK7gkZObS8/yIVA6llROny65WBIaiNmh3nJAADhFkP4lXhghBHzKBtYMMAA8nVt+4wDkOf3gCsCMJcwz+TUxuzYGSUXLba/0lP7K9KOQrucLV0CYE9v3jvOwUIUJEGYoPR9dyjP0i7ZUQFAb5j/kusyzA7UL9mXtlLmYLJ0H+IKs2RJsKd64zxk5sn0w9DL7nJZCvhRrn0ePh6gs505kGvAQ3rLEyUHID/DoGu4EbAU2HRq94a8aQ4gW5rFK8KrQGUnoopsIY6MDLKD5EtBzjXv9c3frDMjiNNL8Gln9WSiMtdm+FcX/mmxM4MT7u9Iy44lz4GTy09gYM5REgjf9L/QVmcb+zC4rjiw76FmBPUY8N1yNDmOMYtiX9QD0BPCt5BbDx5uh5fYV+Rk7h0D0IF/A3A3onPh2CVywcnBAk3EMOageP81Xed7CjrMGQOa2V7nYkLxiEhNf+yBkmQORsmEcP3XcuK4dwb0QZ0ddh51H3cfdBwQr2DadVhyFVbAzA4nSTFVWH1js8F+a7N0Qc74UWCoNP5IQ563YoQsqA+moKvt+L/BLf+WsEHV0bCr1tcUD69oO8UKeBcqdvkRl/gTlEfjbhDGj3/vhvAdanWzagLep4fb29fX+mH9DJjHDtQAZ2KuQMt40bF4JAfrdEWNT2xlZdn+4k7kAsoqB+HT0+2n200QiJtgEK+CQvzp6ePHj65b8h4GdVojjr0BiZI+7ryXdNUwTbx2ZNOUvZDKQ2G1w+M1UQcXx6hBkdfX1I46g4VDf3x7Q3/HgodgvogTV0/+iqoIw9bsazwIgnNK5G5NEoC0HmvF6lKOvb/3B5j6XKjBQUaYQ4nhH7Oo8+D6/wPqdIvDy2gBAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.610Z", + "time": 12, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 12 + } + }, + { + "_id": "b184093074ffea48d93b8e1ac0d9ef4a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 427, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/access" + }, + "response": { + "bodySize": 1551, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1551, + "text": "[\"H4sIAAAAAAAA/w==\",\"xVhLb9s4EP4rhg+VNytH9wI5GGkD5NA2m3pPQVDQ4siemiJVkrLrFv3vOxTl1JIl2bKd7sUPipzvm+E89XP4Bfnw7ZDFMRgzDIexkgnOzfDt009atKgk/R7SgxTsQnH3RwPjtJAxa0FLWlgAE3ZBS1oJcDuuhr/C3eNX3edRJiq66jgv1BxlSJ8qt3uiQr+vIpHldgHSYszKR22SV0wgZxYqUhsE5hZFtN38Tw56c4eCnp2utDd0lGNEVFPwfy8mbtxlTvcszo1V6YTs9MOdXkC8vE8mcnMHzOYa3ks2E8BHT4GGORqrC0MG4SDImDFrpfkjGLDB819H0TIgEgN6hTFEyxm7vZiynJnFTDHNd4ShdNuYiNxCpDKQyNOxcwml8QfwTqxv7m73vTPxZjFdTkpmetC4QgHzYmOnQ2Xbnadb4UVEZ+yYfJaifYRvOWpyDGnNURG0e2O0lJqJ5HRtHL3cV8UjD/k3K6OyDWbPhdF82DxolZBFRvtOGe7fa+Y3dxqvR6QExDo4EA01JS/ls/s4xDJlFc3OAvDrDTakQDR0xX1xmk2aofMaMLbh/iqoR+jFU5QNKsH3WOQcHrwoLzxTofuIqipfXQCxIjAmNSyEhTPmhXeHHATQF8HEiwbjmo2xkB5ziy3a/gY3scbMXk66pVsK3YfP5KFXzqfl3NeKUOAKPm9kHO4U44N19mydq67F0TAh1PpWpSmTfFJsrblX9aadK/yv4CfqHnuQPRLah9Q14z51M/HANCMCoM11eeieD25ubgaB98dxyrIM5XwsUC5NcOjGCs5uaw/azVFRRICPhgoCUWRz4B2GyQSzidLpmHL6Cg1RJP41pJYqUBV0CkRbzO2qVibQfFvVuqvQuchtNTZTAuPNBezYr9j0V+DkenOaAkdW5bOFF33UWWYi5fkUUrf1YCqF76V0uh0UZ8FeNIP/QX8+t4/6PWecgUFSe5ivdXLtiTpDSX2GdF97NUGt5Ttm2ScpNk2tchl9vhr0bYPa+GzTegeTwZs3A0W/3lOlcj31B5/3P82+QkyTFUFoi2BGQU4BRaPo03NxxNv3PqEd1IJY4BNrNc5yC7cLJuf1aaDsvXzT1XABr+dNFLuZIpHRHCz5vnvhAoYiwanzeuPrLqplZmlWCOvT4ahlyEq/2J+/piS/Zu4GC6+VXibUF0WODkpjmYy7CuBRJqiNFEz6CbKB0U4H/qdpoZm4hhD4VH22TDundl5QI+gbh2Zupd9s6Z2VlXhHJ1oH5JCgLBrI/hapN6SGwpMC2gXgVN0hCG5GTy/vleqvlNr7QRc3R7CJKW0cvBlKRI8gipxrFpiV2WYzCr4QE0bJJmHCwIG59AXfMXPnLus97RylspiUJcMQWavzBq5NGf2F1K6IV6V9q4QAPwo9Bcgz4rs1cl2RhpeLDT1hT3doZe6t83GXwZ3SU6YpcfYbq2xxppipRtRCWOrErg3EuUa7ud7iFwhuAsuUpII/+HsQRAF9HjiA/GB+3TViL3M8//oPgcmj2Q8YAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.648Z", + "time": 61, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 61 + } + }, + { + "_id": "81d93bfd62ed9b30d11aef04d6706d33", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 431, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/apiVersion" + }, + "response": { + "bodySize": 659, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 659, + "text": "{\"_id\":\"apiVersion\",\"warning\":{\"enabled\":{\"$bool\":\"&{openidm.apiVersion.warning.enabled|false}\"},\"includeScripts\":{\"$bool\":\"&{openidm.apiVersion.warning.includeScripts|false}\"},\"logFilterResourcePaths\":[\"audit\",\"authentication\",\"cluster\",\"config\",\"consent\",\"csv\",\"external/rest\",\"identityProviders\",\"info\",\"internal\",\"internal/role\",\"internal/user\",\"internal/usermeta\",\"managed\",\"managed/assignment\",\"managed/organization\",\"managed/role\",\"managed/user\",\"notification\",\"policy\",\"privilege\",\"profile\",\"recon\",\"recon/assoc\",\"repo\",\"selfservice/kba\",\"selfservice/terms\",\"scheduler/job\",\"scheduler/trigger\",\"schema\",\"sync\",\"sync/mappings\",\"system\",\"taskscanner\"]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "659" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.653Z", + "time": 60, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 60 + } + }, + { + "_id": "37717db1403fe0fca4c76faa7b01295c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/audit" + }, + "response": { + "bodySize": 1806, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1806, + "text": "{\"_id\":\"audit\",\"auditServiceConfig\":{\"availableAuditEventHandlers\":[\"org.forgerock.audit.handlers.csv.CsvAuditEventHandler\",\"org.forgerock.audit.handlers.jms.JmsAuditEventHandler\",\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RouterAuditEventHandler\",\"org.forgerock.audit.handlers.syslog.SyslogAuditEventHandler\"],\"caseInsensitiveFields\":[\"/access/http/request/headers\",\"/access/http/response/headers\"],\"filterPolicies\":{\"field\":{\"excludeIf\":[],\"includeIf\":[]}},\"handlerForQueries\":\"json\"},\"eventHandlers\":[{\"class\":\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"config\":{\"buffering\":{\"maxSize\":100000,\"writeInterval\":\"100 millis\"},\"enabled\":{\"$bool\":\"&{openidm.audit.handler.json.enabled|true}\"},\"logDirectory\":\"&{idm.data.dir}/audit\",\"name\":\"json\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.stdout.enabled|false}\"},\"name\":\"stdout\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.repo.enabled|false}\"},\"name\":\"repo\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}}],\"eventTopics\":{\"activity\":{\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]},\"passwordFields\":[\"password\"],\"watchedFields\":[]},\"config\":{\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]}}},\"exceptionFormatter\":{\"file\":\"bin/defaults/script/audit/stacktraceFormatter.js\",\"type\":\"text/javascript\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1806" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.655Z", + "time": 62, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 62 + } + }, + { + "_id": "653fe2843bcc7fd80db785216049a251", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/authentication" + }, + "response": { + "bodySize": 1574, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1574, + "text": "{\"_id\":\"authentication\",\"serverAuthContext\":{\"authModules\":[{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"defaultUserRoles\":[\"internal/role/openidm-reg\"],\"password\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"fzE1J3P9LZOmuCuecCDnaQ==\",\"iv\":\"nhI8UHymNRChGIyOC+5Sag==\",\"keySize\":32,\"mac\":\"XfF7VE/o5Shv6AqW1Xe3TQ==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"v0NHakffrjBJNL3zjhEOtg==\",\"stableId\":\"openidm-sym-default\"}}},\"queryOnResource\":\"internal/user\",\"username\":\"anonymous\"}},{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"defaultUserRoles\":[\"internal/role/openidm-authorized\",\"internal/role/openidm-admin\"],\"password\":\"&{openidm.admin.password}\",\"queryOnResource\":\"internal/user\",\"username\":\"openidm-admin\"}},{\"enabled\":true,\"name\":\"MANAGED_USER\",\"properties\":{\"augmentSecurityContext\":{\"source\":\"var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield);\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-authorized\"],\"propertyMapping\":{\"additionalUserFields\":[\"adminOfOrg\",\"ownerOfOrg\"],\"authenticationId\":\"username\",\"userCredential\":\"password\",\"userRoles\":\"authzRoles\"},\"queryId\":\"credential-query\",\"queryOnResource\":\"managed/user\"}}],\"sessionModule\":{\"name\":\"JWT_SESSION\",\"properties\":{\"enableDynamicRoles\":false,\"isHttpOnly\":true,\"maxTokenLifeMinutes\":120,\"sessionOnly\":true,\"tokenIdleTimeMinutes\":30}}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1574" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.656Z", + "time": 63, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 63 + } + }, + { + "_id": "aec85c9f6664d9880169fcf8d9d733db", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/cluster" + }, + "response": { + "bodySize": 179, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 179, + "text": "{\"_id\":\"cluster\",\"enabled\":true,\"instanceCheckInInterval\":5000,\"instanceCheckInOffset\":0,\"instanceId\":\"&{openidm.node.id}\",\"instanceRecoveryTimeout\":30000,\"instanceTimeout\":30000}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "179" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.657Z", + "time": 65, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 65 + } + }, + { + "_id": "ba8f08c2397259b7af7094fa4d11c519", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/registration" + }, + "response": { + "bodySize": 431, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 431, + "text": "{\"_id\":\"emailTemplate/registration\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

This is your registration email.

Email verification link

\",\"fr\":\"

Ceci est votre mail d'inscription.

Lien de vérification email

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Register new account\",\"fr\":\"Créer un nouveau compte\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "431" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.659Z", + "time": 61, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 61 + } + }, + { + "_id": "8b83418cf28acd1b939879c72c951589", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 452, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/forgottenUsername" + }, + "response": { + "bodySize": 743, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 743, + "text": "{\"_id\":\"emailTemplate/forgottenUsername\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

\",\"fr\":\"{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Account Information - username\",\"fr\":\"Informations sur le compte - nom d'utilisateur\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "743" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.659Z", + "time": 72, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 72 + } + }, + { + "_id": "71086d44381b7d81178ecc45f4989855", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/resetPassword" + }, + "response": { + "bodySize": 455, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 455, + "text": "{\"_id\":\"emailTemplate/resetPassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Click to reset your password

Password reset link

\",\"fr\":\"

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Reset your password\",\"fr\":\"Réinitialisez votre mot de passe\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "455" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.660Z", + "time": 56, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 56 + } + }, + { + "_id": "82e1f6e62e8145e19f78445f80160a4f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/updatePassword" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 273, + "text": "{\"_id\":\"emailTemplate/updatePassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Verify email to update password

Update password link

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Update your password\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "273" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.661Z", + "time": 60, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 60 + } + }, + { + "_id": "76be78f43255ef6c7f0ec368787fd6fa", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/welcome" + }, + "response": { + "bodySize": 420, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 420, + "text": "{\"_id\":\"emailTemplate/welcome\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Welcome to OpenIDM. Your username is '{{object.userName}}'.

\",\"fr\":\"

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Your account has been created\",\"fr\":\"Votre compte vient d’être créé !\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "420" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.662Z", + "time": 55, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 55 + } + }, + { + "_id": "8996c88e14b7ecbba49105dae49641fe", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 455, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getavailableuserstoassign" + }, + "response": { + "bodySize": 116, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 116, + "text": "{\"_id\":\"endpoint/getavailableuserstoassign\",\"file\":\"workflow/getavailableuserstoassign.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "116" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.663Z", + "time": 55, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 55 + } + }, + { + "_id": "e504a45bf842a314f67c6419cf0b82f3", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getprocessesforuser" + }, + "response": { + "bodySize": 104, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 104, + "text": "{\"_id\":\"endpoint/getprocessesforuser\",\"file\":\"workflow/getprocessesforuser.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "104" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.664Z", + "time": 50, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 50 + } + }, + { + "_id": "340e7202bcebc2ae1e41e59ead8e6dbc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/gettasksview" + }, + "response": { + "bodySize": 90, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 90, + "text": "{\"_id\":\"endpoint/gettasksview\",\"file\":\"workflow/gettasksview.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "90" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.665Z", + "time": 66, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 66 + } + }, + { + "_id": "20416931a8bfbbe57c7d8022c7cdc8d8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 440, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/oauthproxy" + }, + "response": { + "bodySize": 109, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 109, + "text": "{\"_id\":\"endpoint/oauthproxy\",\"context\":\"endpoint/oauthproxy\",\"file\":\"oauthProxy.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "109" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.666Z", + "time": 49, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 49 + } + }, + { + "_id": "050b4885370dd0fec91299f44157fa98", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 444, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/mappingDetails" + }, + "response": { + "bodySize": 121, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 121, + "text": "{\"_id\":\"endpoint/mappingDetails\",\"context\":\"endpoint/mappingDetails\",\"file\":\"mappingDetails.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "121" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.666Z", + "time": 51, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 51 + } + }, + { + "_id": "950d0219de4cf4b9516ef30be6bb5836", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 461, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/removeRepoPathFromRelationships" + }, + "response": { + "bodySize": 126, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 126, + "text": "{\"_id\":\"endpoint/removeRepoPathFromRelationships\",\"file\":\"update/removeRepoPathFromRelationships.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "126" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.667Z", + "time": 62, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 62 + } + }, + { + "_id": "4e2d4c5a497442e856fc60f741d3d798", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 444, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/repairMetadata" + }, + "response": { + "bodySize": 91, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 91, + "text": "{\"_id\":\"endpoint/repairMetadata\",\"file\":\"meta/metadataScanner.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "91" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.668Z", + "time": 69, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 69 + } + }, + { + "_id": "acd8e0a1115f4a5814282f28fd6a895e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 470, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/updateInternalUserAndInternalRoleEntries" + }, + "response": { + "bodySize": 144, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 144, + "text": "{\"_id\":\"endpoint/updateInternalUserAndInternalRoleEntries\",\"file\":\"update/updateInternalUserAndInternalRoleEntries.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "144" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.669Z", + "time": 56, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 56 + } + }, + { + "_id": "0a16240221eeea51a0aa371b1b13ad9b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/validateQueryFilter" + }, + "response": { + "bodySize": 326, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 326, + "text": "{\"_id\":\"endpoint/validateQueryFilter\",\"context\":\"util/validateQueryFilter\",\"source\":\"try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } };\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "326" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.670Z", + "time": 50, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 50 + } + }, + { + "_id": "663ad29a28f7c57cd35b8178c4fdb1a5", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 434, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/external.rest" + }, + "response": { + "bodySize": 86, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 86, + "text": "{\"_id\":\"external.rest\",\"hostnameVerifier\":\"&{openidm.external.rest.hostnameVerifier}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "86" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.671Z", + "time": 72, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 72 + } + }, + { + "_id": "b90c49fb8e97c6a49c1b99e8b28c3228", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 429, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/internal" + }, + "response": { + "bodySize": 353, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 353, + "text": "{\"_id\":\"internal\",\"objects\":[{\"name\":\"role\",\"properties\":{\"authzMembers\":{\"items\":{\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}]}}}},{\"name\":\"notification\",\"properties\":{\"target\":{\"reversePropertyName\":\"_notifications\"}}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "353" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.672Z", + "time": 42, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 42 + } + }, + { + "_id": "06e43b06c5889436306de832c9ef5b8e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/metrics" + }, + "response": { + "bodySize": 33, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 33, + "text": "{\"_id\":\"metrics\",\"enabled\":false}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "33" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.673Z", + "time": 53, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 53 + } + }, + { + "_id": "a691ccd864d3d6bd4cec893c7df77b9c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/managed" + }, + "response": { + "bodySize": 4987, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 4987, + "text": "[\"H4sIAAAAAAAA/w==\",\"7R1rc9y28a9gWM/ETu+kpJ3MtNcPHVmyO5rElmO7aWcsxQMdcTpEPJAGQcmKqv/exYsECJDHO1GW7PhDkhOeu4t9Y8FcJ+9pmsySFWb4jKTJJMlPfyNzUSazd9dJhkvx5orNk9l1QhYLaKcXZK8s6RlbESbKVzwvCBdXsECsG1azKzgj60VvJsmKCCwXL5ru96ptknBS5hWfk/08y+TKOYNOygThDGe7VUm4GSg4np+T1OxAiQQ9mXOCBTmAfwwQ+0vMJIInsCvDKwKLyTWgl+WCLugcyy3KNjB+J8wt8lIckIzAwjBUgwgDOflQUU4ef9P0T2laTOcZwawqvnmyw8kqvwBsGANsSHqYFgAdfpxn6ZGi+ARZjF8CePKvDxUpxZN/xJZ2were46UzauBmkp5XhcRIkI9i9zd8gcs5p4WQuJfzJVmp83pkfyZLIYrZ7u5vJQCiG3dyfrabcrwQ0+/+umsGThI6Vye4wFNDd8V3FWczOVcPm8HU2QL+RXg+P5/BMTCarmaGOWe4oLN/68krLKZmxYLkRSaPOecp9MHhS5aeqOOV2MHPApflJXTDzzNgUWaaS6ZWohn8JyUaT8lnkwTP53nFxBuBRSXZWADZi2XOyMtqdaoAkIeBs700BULKEXMKDGOb9/NUrq/W4LIZGgUBDr2gbC57eJ4ROQt7wqLxlKvjSix/f20GcVLkXA2ohcx2rZE6+Hl+ig/ZIpegcbIgnAAACl6gOYwm6QtcFJSdybb8khF+tDjiZxKEdEWZ/WNFJNqRvw4PFBoKBiNtlDl/nkysOCnBvNbq5toj9yyRh4oOD+Tk8hXhwA84S2YLnJVEkjSjcy3WIJuY45VaCNjklKYpYSDZXMn8rhJuNfzqUDLXHDMQlCmgKjAFOYGBABqsn9wAXCXBHJpOgXfsVob1S8GBIoqF4DwOPFANYz1LqfCmXlBy6TTctHlI4bzAVSZgEU2gFtfNkprdhlOBkzPysYC5vz7Wi/7Pkv/Jo8Snhh76AgsQtZACgleSAFTIPxpIRqGIXPvG45KAA/ZUHzIsBGcLAg7NKfwtqBLWtTRpML3AGU2n9dyuwza4+luPinAjQoAwFUSfmVLeV29Itmgw8WUEJFX+14cFFpQdr7yhUeGSjS+1jdOq0JiQtIPRb27qFm39VUvMACuf4JTAESSAFWb0d2w0pkbK8lGBxbLxKnZzfyzYGtCKUoYpyVIlu8okn5iu5zQTUpMncjGpPUH9/Uiu5MCTG3manFwALxDrVBhcFbm1wlTdr0mm7faSFjWDazS52zXRDKP40pycw1lqOwF26unVgRVgQ8UepnKpU6JDtCdho6VQ2t0AgTnHV8OZydHwofh46n97yzrzDVJE5mouHmeTmV5v4gmF4aGoTPh4v65NGsLIPVS04PkK2szeyPB1wPkxmWop5apQ5hdJdxOYBKNLKpaUIbEkqMVHLZDPOGbirdqwveq/ZBdSfZNapLzGENCY5fShN2hqUxqRccOcyhEpYQHoQMqVQIfyGFCLFhtoBbCxwMFUsgrwYj6niizPpXxLQ2x7HWQblk0CfYHdvs20RY9+0G7LOgVhrULDo5o4yWDl0aUuIkvHlMEt7E3jNYYaAvpybjQSsv7jbYTYdVHvSlHUe9R64vPXCqOJceRI70GOD01IrgBoRLmO1LluHk2KFU+82EiUu+g0okhHpWtE0VbhZcA2+zroHB4ugBPyE2Fn8oS+96MD6Z6sqtU00903E28a/min/eWHH1oT8Udv4klDFQPeNi61PsGQDEHUGtLEDkFOZBvTT+UvlIsqprHqRMJKr9CEy/GY1u3sgqcvtNkyjvG5vLVPSPQB5LX4Bki8qAnRDUAzZou9b9wgpYfwLWybUw6V3FZ+e5R7tpDjNpI2KWBTQhE2sbmiByvNNYQjCrRHhDZNDryc3EOjS7ck+HCPSK1oui8g2zM7Cu2tjeYaJai3rHWgxSW6WNt8NiKnbDkI0YKe6fSU8cRM3vl5bfy/TZSFt92u/a4HvYvmSU8m7/y/T2Ki7p9IF0kGSXYoxa08bM8J9DnIG9A+6rQMoHqUrIaqG5FtI5cmJFiTdQ9o9ZzyUiCTkXfJZLIAD1PEPahHlHAveR7Q6tD03kuetL35mJlSe0sRYPzj0z1k7i9C3ggdNszKS5Vim1elyFc/y0utOueofgLigf9mZoUxs10tCA9by4fWXPWjD83+wRIOQMF0u3BXBOi4So6BtrTq1hMjOjLu1bAP/E/Qg2QXklxVCrwq4mxZn1rHLVYzPTixWxrCWxq5jazKjYtIAOJbh0QbiOk6lijnuRpQcHqhpbVHsOMH5mM9XNWr+9TwKGQzaq5L1yn6NvZEzp9iPX9q9N4d6fY2rCOqd3vDGwmw7NVvTH9/zXk1Qaai0y0yXDZvZQoJWplnU5sQyVY55QStGoKNU1jNhX5P9qpHYBtmiaevNrHEXqYrxrHOzX/XJWbffc3neIdpxe4+LjGHXVLcyy2myNHlks6X6BA9JVnu5lw2u8ps1Y9ItlobCwH1EU3BwFKgNw/VchgFLYA4gjCX1/Ta3UGp5jQwKbCPhGx9iOrJR09E1SfN7WqazWhq7a5TvPO12ODu5VSR+0GK6SE6umTbimZdKReY61dNDR2IA7+qc3ZFxYu8lFvRdLVjF9hxBt105D+ApEIVKg4P9v+2QbDPqtU+LsogQ4AFjAefd/rf6RwXQJGsDGe+rFa9M1ml9bQ/MaUlzrL8kqTPhzgOveVqObhVtlRtE3feOagxPFerX/yCxzBW1h3o+4eXxakv6RwQR/TpnZLPUGhUHzL1oA8tg11zjAflmKRxSk5D2nj1qH35gaqQ+lJXyPJziIIBriAl0HSFgQthKQQtqCzInAKiOcTtHOIkaAUsLujcjSBO81zWU0ulZfftXJCRS71MA2F7lTA075FcjyLDAvBB52ADjvCGBeCCoOt1HZDcUSGHAeBrFUcY0fpHcOsCjgcQ3jZl7AOKM2Lodwa2G9dlBPw9YkkGj9/9hMV1ya3qrPjdllhxr7rqaxXmH6wK0y/asmpi7JqtjSovu+iyiVZo+tVpviUr4B7ppDE4CHCuRfmMgXDMm9BjnSaJivWI2qSM3CKpxPzndjPqAj2iK+m/oAr1g+zedV5YPVRfOwB0RBq1X6mFt012AKrfsUX4SqbNuBz+6/Hxn//5+N13078fH0/R8fHj4+MnJ0++fRTcVd0TLSPojEjN2iMKyCgNJxsmlu17rMpO9Qlwu8dsk4ck/w5xRjuMVnVgt69qrh9PfHAiwVSwwbV9FWxsX89b19qrUi9dnZevf0raL/oS990rjJmfT8sPFeZka5/QGGzn/WtTC/WeMvWC238Haw7Df+DaWGT/xY/rI4jQag58zymB1O5PT7TbYSMiDyn77vhfGNey44Z/eyL/YV4pjXw3m4Y1FCOEs5/+tZCNuwZ4rJ2ID3dZNWO5mzi3S+Yiqt9BjQtCy0ONFdQbeQ8zusgJJ9BC0Q2B3ABL0RIZNUnL/WbQgMuufVe/rJX83urgt5KzpaJxmicIbEOqoExpWWT4CpnriXIn2b5kt+MGMyKHSvM1r1PG0ENmry8od/ZQI3L38O4oFrd810rT9V5ofpqalOHqLiTT/YbmLZlbp/JY1KevtQlTH0TpVSNdLn7F6Idq3TudtW5PHcyF3lekQhUpPFG+QHaCVNt2hkIBN8o6pHZ3LW1acc2ygc9X94T3CbZnTYmit3gTzhkEHJS7izC3sJj+QcS262MfbZRaeFjfwuXFmJa4TiCq5vS0EuSZe3te82PieTHjRB97mqO9lZtw5JxcbR2FeO6YE4tcFOy9XndQEFI/3aqJo75eQ9n5zxVoDlvpY3VTE7S4YcoloWdLMTAykWLe0GPEGKVBIL5n3Y8kjFi+MMsZOr3S3lQD0k4SrWuv+4/UbI15xeLthtigfKvIa8XYnFCxNDTKnZUD4xtXplGy3XQBHOZXnGH922sUgwV+Uc3DK+cdbPeag9pU9bTZdN0Gd+me+zJ/v066c5j34Kq3tEn4VMOhohyLPtSDZcUjeHewNPiOLbJCnyeqdfpbLtHs12aihnU7Jgxgis5XupLYUiCVNwC/zcAAdGjOpFcs8h5nxkyeko+0FOu+F9X99nd46OTIyGgBVLPm1zDqk4VR4UH+0YIpP6e60ddmtg+shn50ZpRQydEmAwKm20dDHcUWNulV11mMpi78uojPX1mMnuUdp2KhVYfQK7qjf0lmUymNoD6egLZZeavybRMLRUVW91nfwI84hnu0PW7jf/TmFvR3CbO3sqzK1KVc/7Veb4wYdabjkbYJqFvvAEYKqRly10XS3yYM7OoEXS5B3dXf1QUlwEkt8hDnudPA1dQfK9zxIvLTimapVoBOTJ3mK0yZG1JHCVU/SKg/g9iEy/pFi4ybl7AD/LbD9IMTNVX/1CP3mj7dcNQeYV7HtCJLO23Qix41GtH0Dt/ynKx/v2Ootd3THUUnafq4j8eGT3cMDF3Pdj7b53Utfyz+rG48h2yzD4Xajxnf/v1Oh/KsZa3n8m4db1GZmBR5zFkb+N0wC0QY98oe5D0dch2oL4IB7+DZmK92b8mItV5+AI/I4vywnUJrpYS2/1LSkCf1TT7hC3v0+GnD2Q1fKI+nPrfg1c4IdphStGHtxmHpIIasvalBXpAafe9ekHEet/OClHN4ey/IwPDVC/pEcuz93x4eqhekeGtbOTfmNXyio9pR1DvoRsALg78IzryLz19s7R/FWSPOus6ZbPcFlTgHdH1NZZvvprQC6UG2wKpQmaPR81EdzN+BbcDtKL+GdoDFMLK1ncUYgOiGxqPJSgyitNlUf1Tk4XxM5FZE7cJpK0oebeTERM6zTkfdAWWDfFUN7T0wbhvRjci9ppoorp8iuU4AmQlSCqOs6xuGJunpWUCZj3UTj/Iq4RSX/sMCPciAIv8ARX3zf9h7AK8wbgAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.673Z", + "time": 57, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 57 + } + }, + { + "_id": "b383c6f86886873c85a44fc34ee9c862", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/passwordUpdate" + }, + "response": { + "bodySize": 415, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 415, + "text": "{\"_id\":\"notification/passwordUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"password\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.passwordUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your password has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "415" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.674Z", + "time": 40, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 40 + } + }, + { + "_id": "01b649998d9398654a57902d252545ba", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/profileUpdate" + }, + "response": { + "bodySize": 560, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 560, + "text": "{\"_id\":\"notification/profileUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"userName\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"preferences\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.profileUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your profile has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "560" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.675Z", + "time": 58, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 58 + } + }, + { + "_id": "fe870654434ff77b9195e8510c2343c5", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 440, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notificationFactory" + }, + "response": { + "bodySize": 180, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 180, + "text": "{\"_id\":\"notificationFactory\",\"enabled\":{\"$bool\":\"&{openidm.notifications|false}\"},\"threadPool\":{\"maxPoolThreads\":2,\"maxQueueSize\":20000,\"steadyPoolThreads\":1,\"threadKeepAlive\":60}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "180" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.676Z", + "time": 66, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 66 + } + }, + { + "_id": "00725d753c390a655105f030d582ccaa", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 427, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/policy" + }, + "response": { + "bodySize": 735, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 735, + "text": "[\"H4sIAAAAAAAA/w==\",\"zZVNb9swDIb/iy79gF1fh1wLFBiwQ7Edh2BgZcZlIEsuJbszgvz3UbabxF7mtOk29GTDpF4+/BC9UT8oVwtVOUO6VYmCPKdAzoK5I4NeLb4vE7WS153TzdqLH6N3NevOY6M0GF0bCJjfs6uQA0XDRvU+cpTxqSbGywuPZvUNuSGN91FOHC+ubgoMX7EgHxhi8L3I5ZXECm0VNQL+DNkaGvCaqQpqu6cQaxT2vXDGB1ri9pf4PIb3g4lIR1QdcEgBLZTRNzYj6ev8YqmAoexgV44fKM/R3j4CR6PK1HI7uLefYxs1WOtCqp0NQDbV4gg6oHhvlzHqEKYC758dz8QqyX5BW4RHtfg0DiEWKusyNb1ZdJejdMlKPBmfrJaks+uZZLvHlGAfaGhJ3ivsv8cEsaxC2xvmynN9Zn2C6DsGc+tsHCNJyc+ANmAoT1/ORPHdoZGqGPq7dVLrqUZuU7l1gjbpHFMjl7HA34F2hYhT2eUPzNBOSzDQxskd1++/NGnHJiUiW8zBjQdWRu3DjEpypGW7xqQd64getOxJf2egmBujs0v5qjZPLQdMqXtYow5T5jipr+c9A2vUYOSSvH9TyH9dokOmEexwMU9fwGHIE2VrY94afroEjh7vEktJlo+fWcXsDM6u4o+28MZ5lGChwPx0Gv0gn0bHBm1I+7/1kboJ94qKbAirovVPf/pfNQjUdkAJAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.679Z", + "time": 58, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 58 + } + }, + { + "_id": "3b7ebd7cf01869d6ce8cf4a5c9da9642", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 441, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privilegeAssignments" + }, + "response": { + "bodySize": 493, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 493, + "text": "{\"_id\":\"privilegeAssignments\",\"privilegeAssignments\":[{\"name\":\"ownerPrivileges\",\"privileges\":[\"owner-view-update-delete-orgs\",\"owner-create-orgs\",\"owner-view-update-delete-admins-and-members\",\"owner-create-admins\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"ownerOfOrg\"},{\"name\":\"adminPrivileges\",\"privileges\":[\"admin-view-update-delete-orgs\",\"admin-create-orgs\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"adminOfOrg\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "493" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.680Z", + "time": 35, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 35 + } + }, + { + "_id": "47768b99c96433fcc0faa9554a4e372e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 431, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privileges" + }, + "response": { + "bodySize": 919, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 919, + "text": "[\"H4sIAAAAAAAA/w==\",\"7VhNj9owEP0raU6tBErP3KKFSkjtstrtx6G7ikw8CVYdO7UdEIv4750EliwsaWarVkKVTxDr+WViP7+Z8SZMBA9HYWnEUkjIwYaD5w+j75uQpSlY+0GyfP/snBHzygHOU6wAnGGA8ZmS63CUMWlhOzhGcbCpEaUTWvWD9UqBsUc4Z6oXMMYLoWw/XQHF/JTvLLBkBpTrx6ULITlCqYzTMfFjKMAdZUyFN2tJ5511wh8GKIN6/2oJ4EMmpAODE6OnVwTwM7gPNxvU03Z7HwbaBNEx6wkCX9KoZx/lcClgNaxKzhwMOUjAH23yRo/MLeqdZIrlwCMcZUo8sr2cSjCFsHYfW/h1OvmGo19uxvHnCf4ZTz5O8M9D88VeyV7JnUrezQxKc6rMFCn+UI1Xt5OYor7KgrkmKbBk1q604f3IXCxB0UgtQQMFE/IvHxBcEV0pd+eYqwi6dugK5UIruK7qk0BYK20dkzFHkVsCfyrcmkp6pTlhXZvPMwRSpHRwY/RSqJTAa7QEimM0GiUsFKvc4vGWRmqg1MYRgJBlgCdtCUTiAz7G85OrAg8jYZZk1t2tVdqP/DFnU5Vpwg4byAC9IKVEneJJx0iBf2JlKVRONvJZNjM5YWtqhyRiG7t6iT1nk89ieKVNHs/cJfUkQRvEvJ6UkqWw0JKDSRJSjt9lvyFTfNgmuBOPrd2xM9PvE/wh5Xuv9V7rvdZ77X/mtdF7rEwDtMkgasNsB9+8jdqIcPBdRxF7aDZIFkstXy+qeereAt87/ave6Sn07luA+DyilWlD4W8BvJAv7RJgJ0x/CeALU1+Y+sL0kgrTTo+8zDuAzgzvG3/vr95fvb96f/1d348tfhtn3eL3Nf5HhesrPfZQsz5sfwGv8MZVJCAAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.681Z", + "time": 59, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 59 + } + }, + { + "_id": "f72fc2cc21d104762b3c16db0f0db1bc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/process/access" + }, + "response": { + "bodySize": 246, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 246, + "text": "{\"_id\":\"process/access\",\"workflowAccess\":[{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-authorized\"}},{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-admin\"}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "246" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.681Z", + "time": 63, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 63 + } + }, + { + "_id": "bc1b98e58c7b710a4bc8518787bef019", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.ds" + }, + "response": { + "bodySize": 4251, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 4251, + "text": "[\"H4sIAAAAAAAA/w==\",\"7Vxtc9s2Ev4rGU7nPtyJcS5tOklm/CGWnCZNnLiW3bu5NJOBSEhCTIEMCNpWPP7v3cULCUkgRUqyfHPXfIlMLJ5d7BsWL+Rt8IXFwctA0Cx9HOdBL4jS2Yxw+PnyNohpQiUNZyTLGJ+ECeOX6vmXbwUV89cskVRA5wNsOJ9n9BH99uiP4Idb0+HujwAA04wKIlnKgXJw/P74/Di461loScSEypDFeThORShohHSrHFTD29gyMH/WMwAOdDaicUxhdGOS5LQXJDHJ+innNELi1ySSqWBUDWjEeIz/R2XzaZomQ/adBi+fPek5z4c0KgSTc+CVg/Dy/P0QRJhS+HlEiXzLQeArkgxRQFTiz0+c1nM2o2khT1iSsJLin0/gXy/IBJsRMX8PQg4Bggpo+nQbTNNccjIDOXCcPP4ajkUap2FMrx5HCclzFj0Gk4EMWSpk8PLpj89f3H3uBbmCXwH8DIoRaSpxsKSQU8oli4zyboOczbKEWoUMUKEFiw9JPGMcOODDU2B5nQqlrR8iMc9kij8lWB+ob0INEVKu2hC3F4A+CoUasWyq7PnqeHjQP+ofnL7rD5+dkjgGbwHCmEgCrcmvB0c/n7+gL/qDd2/6H56f31wOfpocHgIFu4L241hQ8f36+OLi8s0vz54/jd4Prp9dq/ZLOtdW+/FpL5iRCHnJ+Yvxvy9k8lNGb35J3nyM/tE/0mhZIbI0R8FZPAM18jGbPF4QPScJ6Co4ens+fJfwU3r+7DKJiuP/jPjku+YIXjBK6NvYGAiAwnw+A/uMSQF97/AfyM1h4Ey+FmCql9rd8PGM3FQe+UpKOsskmOkZGInmaSEieqJDSUejgnSf8HPokRCp3KM4nFAOXKJeHB0aWexP12/wmXEd9RNEwnC5yRIWMRc+Sooc3JnGKtx0qDKTGZY415B2lwTCefQV9NHHxxicn9AFP6pn0DgWIWpYcQlLpueK31sQ7TMGEiYEaSJbpbfbgOVn9FvBBKYDKQqTDUDjgo0KNQjgAvjGj00g9IJrMBoZsURHfCQgiOlHnsxRYyYJIfwy2IKYHmDoLUuZ1/WvKEuYrzl4p3KsONdue0Bs999ttC3YKOKHNnQfAQWDUEtF3oPHur9P8ZCUo/EkzEy/8Mr2w1DVbSXXUAW5j3Zzk0S8o0WiKY0uh8UoBww+8WrWyK0ow7wi9ViIcoxsr30NiqXwdP5KrohSZUN3pAmV//sQZkRGU6cXauwE4p8pA9cqzWCr3pV5vAwYL3X1nvKJnDbICsSVusJEk/vcmubyjOJsQxfmivXWNowQABxfI5T+tMpqwfmjKREwn1MxpHJfrl/yDHOoYB7W8UmSpNcXXOfSMaNx3wqXd1K+wgkLB6gaptdJlxXfxUUXFPjfGICM953hNQFhdCwMxwO44LAxU1M+1Gf7cteK40MnaZLTIeU5k+yKmgGa+rO1nyIGqNmA2HHoks3jo7ucFSo9wuqEdpLaMcGYJd6c/PAu/78yJWh5jsBR4n2FmGYZjogr5sME2UP7EbmxCl7vRuSmUla9F4G3tYcEz1wLueAtlvo0xUUQXV3juC5jibo5TIa95k7pvLD8ts179BGznrTDGoKLkgkdQhKc1Zeb7ZOdRq/Gn2v8MNcMmr3m1YS2dRnA9IHZ9qUKuqX0FXpTBW2p3jAc3LyfFlw2iF2CTjV9GKkOHuAqZ3SsqbzpqcnxBc3QJ5YKxn1kS8vZqTD/3yqTh8/S/ZTnNCpQ1iqrth4sxmFUIbRLtfCQJQT3UPc6OVds/5qgF2bTARuPqaA86pYhF+bYuMJoNn7B2beC7j/ZaL5/pZoH9LcLj+k7eduKDdf5Wk7FgI4Zp/HvTMiCJAu1wLLbGZpHJVE7r0MuWOwgm/BKYyxUDYZutWmf+0O287nq1GVHqNzgVfw8psVsOuBdCxXsFcb+9TqoHGpheUSn5IrpGqguBAxpOLK0za7fetgNwTA2h5Ldxmt6efAmIi0yrcCavoqiRlkLodl6eM3BCgGUNZXfut1fthY7WDpoGG9wMzxf5SQ5EGmyGsVpcYjP8x78sJQ7OYIy5zEWM1Tc9xm/sFb8foIn2jZvevRrhJl/0MfFqs8ZqiOojhNPCZZ4UPlxWDbFKkVWopgtljNq53IdjDGzU1PNMVVF49svo3kkWFYH4TZ7euuj71rOqtm3MBPsiiV0Quu1VYNY9lw+bMN9rFkGS9gEa2YpCDhDZ3QLoapmi+E51SvdXBnI4+b4fPdu7jlpLV1eSbLP49Vyn6/e/KtbgZUK8U6KT3PqEst9aUsx3aeSxkzksvEMGkUKLZknVLD9NyhM8LTHO9W6ON9KwhokW180gdQVEvrKyvrBlHTeGSJJo0vvFQXVcG+GB/C9Gp6nMW1WFUgUIpXv+sGdvb5wAINKI5+6VANmGEW3id4gOTM+GUKak3RizrnqLjkobvqnK2+UMMrlgH9QUDjuuqm5QtnCDC0kcutAzvIpXulad4NDQ2l6yfwzFstfQZad52ztfRCNxnJi6b07O+UlnvVQltgXkqpoODPFQz9NEn1VqR2w7mVLj6jqXXsdZlNOuncbTjioYmT5KGWDh+lj2HUOWzS7pmWvKim8uKNl0/BVv0q45TA8KCVpfQdK9dPddpt9sOhsbwAlQUhqrUtmIzYp0iLXN7X0UFrcfXLBLYS2tdYQi/03d24iWltx1uBXfe49OttOucsiYr/GGXhXYT+jeU78JzA1otke9WADKglLukPGup+vyJ+SvIuMmt4D1PIinwPVMC3kTBako+9VfWpzsA2ZLqiLHR80vUPUyqJLuJsOtTPFBvpY6viwk5AlM4t134ThzFNnaSFVYH+6hSRPx+wG+pQTS1W3uZNJeUneTCt3ePc7n/Po4FtBPTdEodRTDVjzIdl9lcqIrSXYZ72Mt5Lpjfd0dlmu0NKu7ABoyAGRTWnHwVHkMam5frk2WVdIDbma02uj4TZAQJ1aeywNbu2KwkGpWVZYBzijV61wKmofVBJ3GBhQ1w1MdInnCrFdYrNULTVnyWvmDtnWtTSlDwJIXrUfJP6qK9tUeWpeKVh9K+Dg774MYho3yR1oLt/mokYMlTU11W/4btCxqoTk/AQvOoNoZ0WiymuY499OeCror5ZSUfQ1TJmM2mQqyxpog8/mYIJ5X7zQLRu9dzFm/o1sfL4RIJvpN4FWIXXLFqB+m28Da/c5eSqhqq3eRFrm4bZvu+1Z42gui229raWDLYx6ZTbU9QT+WtrZ/+L222J3f2WneUbx/Sv/bjO23ZPm96Nsk8l0NLfXtdLJVirGcZnLbz7lOs0bxZAVxRubpnErYHw+4TPKvUmlau1tw6/WOQxiWPHZk7+sMl51mzanY47gjQdls47HeyXsVud76rx0pzzV2eiakLC0qZgQzr7Xpn23/X7dy+W0ZwdbUMKKi6mXb9tbCKk/jj+KyVaHvlOWxPBXW64ZEVRdZK3huDDCRs4dg0CTbz3eNafMXh+pO3pOr3mHASjqreU3+u84gtJq5tXzd3ReLq07GtIb3E1XNO43mJHDtkF8orHOdDbrEs/+yyFu7ux4a2BhWIs5uL3pnGnMZ7jOoSe2u1niOkrTJYf7dRR1eW83jnKhB9zFUWquVNgqfMkKzlcs1o3I1KzrnWO1+vf7xtKKY0P/VbItr106CLmwXPIL6sx/Gwq5kCLtly92mCF7u8gETk2pw3a3qcC5OraNqRWMyhNLN+eWhFXX4eqMvlxOuhlLMfNdxewSKwakiwKXk9tKFt2dB25g3hYu6JQduxBSwe1aRnu56/gmY/r7PnV3LbLrZaJ1ZwOCkhhPBgYsj4iI/wWN4OsO0/ckl/0p4SBrA1eXYmOW+Okl0ZAKlkve0l/vac3XJmjs5N/e4LVhXN6BgHFOoHNeboKv1I0rVBttawia6MlnyjLvRbEFgh0WHS7utkXHmYPVsupw2avtbHwRMwY23tqrbNxIx2Vv/67UduAF86MWbDO4DE/ovJ5gmjaANUe88il+futjVpZNs6socl0DSi698sPkcKHYneoXgV+qI0sIG11ky0LwD0WSvE7FCQNWfHLqVI06ciE0TwDf+fMUqjqkvqInaczGc6dpWIykoHSgvsNmZkx9CdN83+xWHU2od/TORZFLXecK/dWD4G+3+MksxiEOk+RxzMTdge16IJEctzQx4r0g9hWvFmAKJ9NvKnix9JXT4Nd3+CE26TRg5DF1kPUnYFalveZOAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.682Z", + "time": 52, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 52 + } + }, + { + "_id": "9f231197089ead48083fbb1440010a11", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 427, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/router" + }, + "response": { + "bodySize": 619, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 619, + "text": "{\"_id\":\"router\",\"filters\":[{\"methods\":[\"create\",\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"},{\"methods\":[\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^config/managed$\"},{\"condition\":{\"source\":\"(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0)\",\"type\":\"text/javascript\"},\"onResponse\":{\"source\":\"require('relationshipFilter').filterResponse()\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "619" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.683Z", + "time": 35, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 35 + } + }, + { + "_id": "bd5d9cbc1b0e2e075e3f77bb51e59736", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 430, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.init" + }, + "response": { + "bodySize": 789, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 789, + "text": "{\"_id\":\"repo.init\",\"insert\":{\"internal/role\":[{\"description\":\"Administrative access\",\"id\":\"openidm-admin\",\"name\":\"openidm-admin\"},{\"description\":\"Basic minimum user\",\"id\":\"openidm-authorized\",\"name\":\"openidm-authorized\"},{\"description\":\"Anonymous access\",\"id\":\"openidm-reg\",\"name\":\"openidm-reg\"},{\"description\":\"Authenticated via certificate\",\"id\":\"openidm-cert\",\"name\":\"openidm-cert\"},{\"description\":\"Allowed to reassign workflow tasks\",\"id\":\"openidm-tasks-manager\",\"name\":\"openidm-tasks-manager\"},{\"description\":\"Platform provisioning access\",\"id\":\"platform-provisioning\",\"name\":\"platform-provisioning\"}],\"internal/user\":[{\"id\":\"openidm-admin\",\"password\":\"&{openidm.admin.password}\"},{\"id\":\"anonymous\",\"password\":\"anonymous\"},{\"id\":\"idm-provisioning\"},{\"id\":\"connector-server-client\"}]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "789" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.683Z", + "time": 62, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 62 + } + }, + { + "_id": "ab8521e6a907278952a8693cbcfb761e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_activate" + }, + "response": { + "bodySize": 838, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 838, + "text": "{\"_id\":\"schedule/taskscan_activate\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/activeDate le \\\"${Time.nowWithOffset}\\\") AND (!(/inactiveDate pr) or /inactiveDate ge \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/activateAccount/task-completed\",\"started\":\"/activateAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"active\\\" }];\\n\\nlogger.debug(\\\"Performing Activate Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "838" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.684Z", + "time": 55, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 55 + } + }, + { + "_id": "42626b5d9ae06814ca0230b793cb2d1f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_expire" + }, + "response": { + "bodySize": 830, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 830, + "text": "{\"_id\":\"schedule/taskscan_expire\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/inactiveDate lt \\\"${Time.nowWithOffset}\\\") AND (!(/activeDate pr) or /activeDate le \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/expireAccount/task-completed\",\"started\":\"/expireAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"inactive\\\" }];\\n\\nlogger.debug(\\\"Performing Expire Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "830" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.685Z", + "time": 53, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 53 + } + }, + { + "_id": "5fb111d428ad18346dc15d5fa8e1e840", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 430, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/scheduler" + }, + "response": { + "bodySize": 156, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 156, + "text": "{\"_id\":\"scheduler\",\"scheduler\":{\"executePersistentSchedules\":{\"$bool\":\"&{openidm.scheduler.execute.persistent.schedules}\"}},\"threadPool\":{\"threadCount\":10}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "156" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.685Z", + "time": 57, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 57 + } + }, + { + "_id": "0b8355f1ac5870bd599a7d814921a98f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 427, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/script" + }, + "response": { + "bodySize": 939, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 939, + "text": "{\"_id\":\"script\",\"ECMAScript\":{\"javascript.optimization.level\":9,\"javascript.recompile.minimumInterval\":60000},\"Groovy\":{\"#groovy.disabled.global.ast.transformations\":\"\",\"#groovy.errors.tolerance\":10,\"#groovy.output.debug\":false,\"#groovy.output.verbose\":false,\"#groovy.script.base\":\"#any class extends groovy.lang.Script\",\"#groovy.script.extension\":\".groovy\",\"#groovy.target.bytecode\":\"1.8\",\"#groovy.target.directory\":\"&{idm.data.dir}/classes\",\"#groovy.target.indy\":true,\"#groovy.warnings\":\"likely errors #othere values [none,likely,possible,paranoia]\",\"groovy.classpath\":\"&{idm.install.dir}/lib\",\"groovy.recompile\":true,\"groovy.recompile.minimumInterval\":60000,\"groovy.source.encoding\":\"UTF-8\"},\"properties\":{},\"sources\":{\"default\":{\"directory\":\"&{idm.install.dir}/bin/defaults/script\"},\"install\":{\"directory\":\"&{idm.install.dir}\"},\"project\":{\"directory\":\"&{idm.instance.dir}\"},\"project-script\":{\"directory\":\"&{idm.instance.dir}/script\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "939" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.686Z", + "time": 58, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 58 + } + }, + { + "_id": "372152e7418e4bbb7f1bb2fd5327ca2f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/secrets" + }, + "response": { + "bodySize": 1829, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1829, + "text": "{\"_id\":\"secrets\",\"stores\":[{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}\",\"mappings\":[{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.default\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.config.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.password.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"],\"secretId\":\"idm.jwt.session.module.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}\"],\"secretId\":\"idm.jwt.session.module.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"selfservice\"],\"secretId\":\"idm.selfservice.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}\"],\"secretId\":\"idm.selfservice.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.assignment.attribute.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]}],\"providerName\":\"&{openidm.keystore.provider|SunJCE}\",\"storePassword\":\"&{openidm.keystore.password|changeit}\",\"storetype\":\"&{openidm.keystore.type|JCEKS}\"},\"name\":\"mainKeyStore\"},{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.truststore.location|&{idm.install.dir}/security/truststore}\",\"mappings\":[],\"providerName\":\"&{openidm.truststore.provider|SUN}\",\"storePassword\":\"&{openidm.truststore.password|changeit}\",\"storetype\":\"&{openidm.truststore.type|JKS}\"},\"name\":\"mainTrustStore\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1829" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.687Z", + "time": 41, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 41 + } + }, + { + "_id": "31ff64d3e984c38b0c14569db37889ad", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 436, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.kba" + }, + "response": { + "bodySize": 290, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 290, + "text": "{\"_id\":\"selfservice.kba\",\"kbaPropertyName\":\"kbaInfo\",\"minimumAnswersToDefine\":2,\"minimumAnswersToVerify\":1,\"questions\":{\"1\":{\"en\":\"What's your favorite color?\",\"en_GB\":\"What is your favourite colour?\",\"fr\":\"Quelle est votre couleur préférée?\"},\"2\":{\"en\":\"Who was your first employer?\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "290" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.688Z", + "time": 50, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 50 + } + }, + { + "_id": "b45a1aa28d4bff434764448f028e4059", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 444, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.propertymap" + }, + "response": { + "bodySize": 713, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 713, + "text": "{\"_id\":\"selfservice.propertymap\",\"properties\":[{\"source\":\"givenName\",\"target\":\"givenName\"},{\"source\":\"familyName\",\"target\":\"sn\"},{\"source\":\"email\",\"target\":\"mail\"},{\"condition\":\"/object/postalAddress pr\",\"source\":\"postalAddress\",\"target\":\"postalAddress\"},{\"condition\":\"/object/addressLocality pr\",\"source\":\"addressLocality\",\"target\":\"city\"},{\"condition\":\"/object/addressRegion pr\",\"source\":\"addressRegion\",\"target\":\"stateProvince\"},{\"condition\":\"/object/postalCode pr\",\"source\":\"postalCode\",\"target\":\"postalCode\"},{\"condition\":\"/object/country pr\",\"source\":\"country\",\"target\":\"country\"},{\"condition\":\"/object/phone pr\",\"source\":\"phone\",\"target\":\"telephoneNumber\"},{\"source\":\"username\",\"target\":\"userName\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "713" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.688Z", + "time": 52, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 52 + } + }, + { + "_id": "84ee2e3e3f7cef3023dd7241ced2b77a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 438, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.terms" + }, + "response": { + "bodySize": 730, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 730, + "text": "{\"_id\":\"selfservice.terms\",\"active\":\"0.0\",\"uiConfig\":{\"buttonText\":\"Accept\",\"displayName\":\"We've updated our terms\",\"purpose\":\"You must accept the updated terms in order to proceed.\"},\"versions\":[{\"createDate\":\"2019-10-28T04:20:11.320Z\",\"termsTranslations\":{\"en\":\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"},\"version\":\"0.0\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "730" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.689Z", + "time": 43, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 43 + } + }, + { + "_id": "6cbf25336f75bed9003dbd20bd94c130", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 439, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/cors" + }, + "response": { + "bodySize": 402, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 402, + "text": "{\"_id\":\"servletfilter/cors\",\"filterClass\":\"org.eclipse.jetty.ee10.servlets.CrossOriginFilter\",\"initParams\":{\"allowCredentials\":true,\"allowedHeaders\":\"accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with\",\"allowedMethods\":\"GET,POST,PUT,DELETE,PATCH\",\"allowedOrigins\":\"https://localhost:&{openidm.port.https}\",\"chainPreflight\":false},\"urlPatterns\":[\"/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "402" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.690Z", + "time": 53, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 53 + } + }, + { + "_id": "4734d7816408991b39320106367532a9", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/payload" + }, + "response": { + "bodySize": 191, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 191, + "text": "{\"_id\":\"servletfilter/payload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":5},\"urlPatterns\":[\"&{openidm.servlet.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "191" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.691Z", + "time": 36, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 36 + } + }, + { + "_id": "479d6a831987c6fbbdfccaa366e89114", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 441, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/upload" + }, + "response": { + "bodySize": 198, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 198, + "text": "{\"_id\":\"servletfilter/upload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":50},\"urlPatterns\":[\"&{openidm.servlet.upload.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "198" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.691Z", + "time": 47, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 47 + } + }, + { + "_id": "c6aed7f604cb532801a9b95de9922a3c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 437, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/admin" + }, + "response": { + "bodySize": 244, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 244, + "text": "{\"_id\":\"ui.context/admin\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/admin/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/admin/extension\",\"responseHeaders\":{\"X-Frame-Options\":\"SAMEORIGIN\"},\"urlContextRoot\":\"/admin\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "244" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.693Z", + "time": 46, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 46 + } + }, + { + "_id": "05bacc81732e6f86cfe0b782cdde4f67", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/api" + }, + "response": { + "bodySize": 205, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 205, + "text": "{\"_id\":\"ui.context/api\",\"authEnabled\":true,\"cacheEnabled\":false,\"defaultDir\":\"&{idm.install.dir}/ui/api/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/api/extension\",\"urlContextRoot\":\"/api\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "205" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.693Z", + "time": 49, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 49 + } + }, + { + "_id": "17421c1d759655006a294261cc77fd75", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 439, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/enduser" + }, + "response": { + "bodySize": 174, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 174, + "text": "{\"_id\":\"ui.context/enduser\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/enduser\",\"enabled\":true,\"responseHeaders\":{\"X-Frame-Options\":\"DENY\"},\"urlContextRoot\":\"/\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "174" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.694Z", + "time": 33, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 33 + } + }, + { + "_id": "61e2740b542f064697798e2a02431f03", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 437, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/oauth" + }, + "response": { + "bodySize": 199, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 199, + "text": "{\"_id\":\"ui.context/oauth\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/oauth/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/oauth/extension\",\"urlContextRoot\":\"/oauthReturn\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "199" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.695Z", + "time": 44, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 44 + } + }, + { + "_id": "eadbb4ad948866a207831ff04c796efb", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 437, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/configuration" + }, + "response": { + "bodySize": 588, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 588, + "text": "{\"_id\":\"ui/configuration\",\"configuration\":{\"defaultNotificationType\":\"info\",\"forgotUsername\":false,\"lang\":\"en\",\"notificationTypes\":{\"error\":{\"iconPath\":\"images/notifications/error.png\",\"name\":\"common.notification.types.error\"},\"info\":{\"iconPath\":\"images/notifications/info.png\",\"name\":\"common.notification.types.info\"},\"warning\":{\"iconPath\":\"images/notifications/warning.png\",\"name\":\"common.notification.types.warning\"}},\"passwordReset\":false,\"passwordResetLink\":\"\",\"roles\":{\"internal/role/openidm-admin\":\"ui-admin\",\"internal/role/openidm-authorized\":\"ui-user\"},\"selfRegistration\":false}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "588" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.696Z", + "time": 34, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 34 + } + }, + { + "_id": "dccde179c43e59ffe92f719da481c2cf", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 433, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/dashboard" + }, + "response": { + "bodySize": 1031, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1031, + "text": "[\"H4sIAAAAAAAA/w==\",\"rVbbbtpAEP0VtHk1spNQpeWtTVq1UlKlSao+RFE17A72ivWus5eQi/j3ztqAMRBIqyKBzM6eM7czAy/stxRsyIJMBbhiZMAKljAQpdRniwPHhrcvTLozHENQng29DZgwDSUS9EeQfNK79mA9IadS5OgbBF9iC4tjunrAjdbIvbEuBSFSui/piCxj6AvwMAKHbMn8UYje6QLBZknLU0JVSZ1vkpCB3naCtqU5tQgeexcNpsNj0ZlgOaYlaMhRpNYoTJV0vkvLC+STvrsPYLFvWuqLGta7IpRbC7Dh2wiQclTouzme4YPk2ME7VGOHNp6ngR4s5hSUBS+N7hLmCKu5Gj2WebAU0wriVeoKnJsaK6gO6N/GezmHkAPC7K5mjHxLNePxRg1/0qFbC9R7apjbBW7jun5yHsveJYHRouaxIXcJc/I53lNg86gs/1TFr/dRs41kZ3fR54q4x6Bcq+457YXRkkQY9dPVuMIctbgCTfTDF1Ya7QsyvMuy5Ch+0DujMKaIEzo+zJLjLPlAtpMseX8YLU+xztFCr2RQf9bPDZ7As4SV8Dj3wA6OBoOjY05R0IQuD0eZGPA4uNvThSBk06rtdq4CZWmpID64HfdcXYyvCMoXX4JS9dURWF7ESsb2qHp+t6MVOH+FsZF7an411xFJrDIbW4X0SwsB49YC7uUDNspZen3suxIotjY7EzRl1+TVguOou886zqP4e3Tjermd3ux/a2UWg3NOo7KvOJ+Ckxqd216c3EJV3DSsNCyVxH7TnIRV1jxIEUs1vGWxZpEwXYwzu3s9ASdz/U27pasb6VU9G3Tej4YY8JpnUsXS82u8i+1Tb5JN+u6m2epFUSn+Q4Iap6vrcjOU7zjtdW+sNHOFTpb4bHS9CQrqKEXCspNmVoPH+msWlxfmEOXT/JLO2kIbLkGdm1zqdb01pn+WK23kAGo9yb0ku6XoEOia86v/HDqT+iaxU19aAircfoZfqLihCAg8+wMKiFQxwQgAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.696Z", + "time": 45, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 45 + } + }, + { + "_id": "fb55717b678608c3e9704a46f637ba00", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 431, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/profile" + }, + "response": { + "bodySize": 891, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 891, + "text": "{\"_id\":\"ui/profile\",\"tabs\":[{\"name\":\"personalInfoTab\",\"view\":\"org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab\"},{\"name\":\"signInAndSecurity\",\"view\":\"org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab\"},{\"name\":\"preference\",\"view\":\"org/forgerock/openidm/ui/user/profile/PreferencesTab\"},{\"name\":\"trustedDevice\",\"view\":\"org/forgerock/openidm/ui/user/profile/TrustedDevicesTab\"},{\"name\":\"oauthApplication\",\"view\":\"org/forgerock/openidm/ui/user/profile/OauthApplicationsTab\"},{\"name\":\"privacyAndConsent\",\"view\":\"org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab\"},{\"name\":\"sharing\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/SharingTab\"},{\"name\":\"auditHistory\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/ActivityTab\"},{\"name\":\"accountControls\",\"view\":\"org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "891" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.697Z", + "time": 35, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 35 + } + }, + { + "_id": "3467e6eff41c0252746cc812803f797c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 430, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver" + }, + "response": { + "bodySize": 169, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 169, + "text": "{\"_id\":\"webserver\",\"gzip\":{\"enabled\":true,\"includedMethods\":[\"GET\"]},\"maxThreads\":{\"$int\":\"&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "169" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.698Z", + "time": 20, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 20 + } + }, + { + "_id": "2cf6006aa7d3908fe4bd8d43fcbca10d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/themeconfig" + }, + "response": { + "bodySize": 421, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 421, + "text": "{\"_id\":\"ui/themeconfig\",\"icon\":\"favicon.ico\",\"path\":\"\",\"settings\":{\"footer\":{\"mailto\":\"info@pingidentity.com\"},\"loginLogo\":{\"alt\":\"Ping Identity\",\"height\":\"120px\",\"src\":\"images/login-logo-dark.png\",\"title\":\"Ping Identity\",\"width\":\"120px\"},\"logo\":{\"alt\":\"Ping Identity\",\"src\":\"images/logo-horizontal-white.png\",\"title\":\"Ping Identity\"}},\"stylesheets\":[\"css/bootstrap-3.4.1-custom.css\",\"css/structure.css\",\"css/theme.css\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "421" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.698Z", + "time": 30, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 30 + } + }, + { + "_id": "7415ea0af3a4981f3e3feddab0df5329", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 444, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/http" + }, + "response": { + "bodySize": 128, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 128, + "text": "{\"_id\":\"webserver.listener/http\",\"enabled\":{\"$bool\":\"&{openidm.http.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.http|8080}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "128" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.699Z", + "time": 34, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 34 + } + }, + { + "_id": "8c44f974db12734398c806d9a1cbcd18", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/https" + }, + "response": { + "bodySize": 217, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 217, + "text": "{\"_id\":\"webserver.listener/https\",\"enabled\":{\"$bool\":\"&{openidm.https.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.https|8443}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "217" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.700Z", + "time": 40, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 40 + } + }, + { + "_id": "b400d9fa8acbf142278ba15f3b31ee91", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 450, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/mutualAuth" + }, + "response": { + "bodySize": 250, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 250, + "text": "{\"_id\":\"webserver.listener/mutualAuth\",\"enabled\":{\"$bool\":\"&{openidm.mutualauth.enabled|true}\"},\"mutualAuth\":true,\"port\":{\"$int\":\"&{openidm.port.mutualauth|8444}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "250" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.701Z", + "time": 37, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 37 + } + }, + { + "_id": "1c44d5ed6a798188a1711859e5a9fceb", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9a549cc1-d685-46f8-93f3-40696d23445f" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 534, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "1000" + }, + { + "name": "_fields", + "value": "condition,description,name,privileges,temporalConstraints" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role?_queryFilter=true&_pageSize=1000&_fields=condition%2Cdescription%2Cname%2Cprivileges%2CtemporalConstraints" + }, + "response": { + "bodySize": 1351, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1351, + "text": "{\"result\":[{\"_id\":\"openidm-admin\",\"_rev\":\"da22e6a2-1430-4eaf-8c07-91b1c05c1cc5-454\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-admin\",\"description\":\"Administrative access\",\"temporalConstraints\":[]},{\"_id\":\"openidm-authorized\",\"_rev\":\"da22e6a2-1430-4eaf-8c07-91b1c05c1cc5-455\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-authorized\",\"description\":\"Basic minimum user\",\"temporalConstraints\":[]},{\"_id\":\"openidm-reg\",\"_rev\":\"da22e6a2-1430-4eaf-8c07-91b1c05c1cc5-457\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-reg\",\"description\":\"Anonymous access\",\"temporalConstraints\":[]},{\"_id\":\"openidm-cert\",\"_rev\":\"da22e6a2-1430-4eaf-8c07-91b1c05c1cc5-456\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-cert\",\"description\":\"Authenticated via certificate\",\"temporalConstraints\":[]},{\"_id\":\"openidm-tasks-manager\",\"_rev\":\"da22e6a2-1430-4eaf-8c07-91b1c05c1cc5-458\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-tasks-manager\",\"description\":\"Allowed to reassign workflow tasks\",\"temporalConstraints\":[]},{\"_id\":\"platform-provisioning\",\"_rev\":\"da22e6a2-1430-4eaf-8c07-91b1c05c1cc5-459\",\"privileges\":[],\"condition\":null,\"name\":\"platform-provisioning\",\"description\":\"Platform provisioning access\",\"temporalConstraints\":[]}],\"resultCount\":6,\"pagedResultsCookie\":null,\"totalPagedResultsPolicy\":\"NONE\",\"totalPagedResults\":-1,\"remainingPagedResults\":-1}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Wed, 07 May 2025 16:07:54 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1351" + } + ], + "headersSize": 2221, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-07T16:07:54.758Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/config_603940551/export_4211608755/0_af_3559436575/openidm_3290118515/recording.har b/test/e2e/mocks/config_603940551/export_4211608755/0_af_3559436575/openidm_3290118515/recording.har new file mode 100644 index 000000000..7b12f7302 --- /dev/null +++ b/test/e2e/mocks/config_603940551/export_4211608755/0_af_3559436575/openidm_3290118515/recording.har @@ -0,0 +1,8562 @@ +{ + "log": { + "_recordingName": "config/export/0_af/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "4c1fef66c916c8940b0315dddc564b06", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 425, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 539, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 539, + "text": "[\"H4sIAAAAAAAA/w==\",\"7ZVBb4IwGIb/S88k3r2hImmGbQZyMIshHVbSBQpry8EZ//vagQtGTOvFE8e2z/e2h/eBM8jYAcyBPPEceKAiTcN4IcH84zw4mUlKuKJS9eeazGsuKVcx/W6ZoBo8klJSDxyYbEpyQqSiZvhujulBMOdtWXqAP4KaumQ5o90zSK6YmQF+skNLfSqZasl1b5EEaAsuno2LoizEKHAgNwsYpjhN7OgSozWMN8HKjq5xilyxzI/iwF/tsgiiN5dww2UYRTs7uoFJAlFoBxOcxssggyHCscsbet45f+vHYbB1z0+Rr5ND5Ma+p34E19DAe10nUTdUqK5Qei3rVuSmeRXhpKCHGZGSFbzSfTZJuvD+UVHRwYqIgqoBXIuCcPbTXWbeMvCkZ/AAyfq9uC6pszf2nBGP7EOTV5NXr/TqRpVbs+6++mOqCVPbccWS//G/Zf35RXN1rXsq9R1PuuYS+Fg6l+nJvsm+V9onxzpp09Cz/kbGRG1Nwy/7yy8hq2ynTwoAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:42:59 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:42:59.960Z", + "time": 19, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 19 + } + }, + { + "_id": "4c963e6ac6a0c10bf75de375d8e3da12", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "_id sw 'mapping'" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=_id%20sw%20%27mapping%27" + }, + "response": { + "bodySize": 138, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 138, + "text": "{\"result\":[],\"resultCount\":0,\"pagedResultsCookie\":null,\"totalPagedResultsPolicy\":\"EXACT\",\"totalPagedResults\":0,\"remainingPagedResults\":-1}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:42:59 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "138" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:42:59.990Z", + "time": 25, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 25 + } + }, + { + "_id": "778b519855abd745b38438bc349de829", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 463, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "_id sw 'emailTemplat'" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=_id%20sw%20%27emailTemplat%27" + }, + "response": { + "bodySize": 1099, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1099, + "text": "[\"H4sIAAAAAAAA/w==\",\"rVZtbhMxEL2KMT/yJ02ECn+isFIJ/RGpQBXaAqIIObuzianXXvyxJV2txDU4ASrXyE04CWPvJk1pA2kUKVJT2zNv5r1nT0qqwThhae9jST/zhPYoZIyLE8hywSx0U6UnylqQpwa0ZBnQNk0gZRhzpGImwEdIXATJxgIwgdUO2jTVKsMt3MjAGDbBc6U/2KP9qc1E1B+rZBaV5WOeEjX+ArHtOER4jQhV1c+jD8pp4hpMwg1pleWdc61Ov5tjEhAG/xumZKYc0RADLyAhdophoRvCJQGtlW6TXAAzQBJuNEyYTjpl2eUpQk6fRn1GphrS5+d0ieXZyeB0NKyqcxoNBI8vyBQ0EKuIUBMu+10W9bs+uBs6wu++PeoZ2LjZM2UxpVQZSVrOcsENUo/9g7Eb9P2Wk0I5Q1gBV9j9/KcjMVgCe6H1nGnfO6ZrkwIcFwJPScB1JEcSVJZrEqsst/BQLr46TMVjTnIvVqghVlLiWdDreKnQEDyDk1nunWPhmw0byJdxAWbpk4M4Vk5aMpTowYxZriTZW1piQfDKriEGyxDQdIOH7zBKq6p9v8/RDdxYHRLtwOL70Yl3H35mnpvV7LUlUUE8tBHTh0HHAjRPeVynEFxeLBm+8dp+NACUw9umCJYKkUmLSxNrnvvQB+AecfRHAqSYX69Ah+pvsDfXcxQ4AI3muySsFndR+kDPr3HHSZTMFcBco+G/9DJgj5kxl0onOxGsvtx4r0PqWre8AdictEVJTZb1QjXXJ1wd7J5LbjlDn4JeaKesZ9+XAJvjv1qJQvRawdX8QcXt9LtDy6Kh0Wr9V/fUv15Hlyf4Z6dCnvmbMmteftSzhthCy9PbgX+JuTlzTZ7b1K1l5BIEmn+3cxZnzLs6rSfkTQ5y+PJVhzxgyP5/vCHGC/RbAdJBeImXMNuNt60HR+iqeWDIFMfcGPAaxBoQdWnZuqZmUhRYN5r19/cf819hGS/M/Jo8QpE+tZtfSIPwXvWetWmOLCejsGgGSl1wLEg6IdrUKsvE8cr2scJHZYZwh+8PBif0nhMho/YOkFxObu/sPan+ALjZrOmgCQAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.022Z", + "time": 17, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 17 + } + }, + { + "_id": "4f7c200a37e236805c35afa89036bda0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 438, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config?_queryFilter=true" + }, + "response": { + "bodySize": 20962, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 20962, + "text": "[\"H4sIAAAAAAAA/w==\",\"7X2Ldtw2kuivcDs5IznTD/mRmUQTZ1duyYkS6xG1nEzW9vpQJLobEZtk+JDclnXO/Y37BffM/Y38yf2SW4UXARJks1st2TOjObuOmgAKhUJVoapQAK46CUnzIOtsv7rqvKV+Z7vjeh5J006340XhmE5SVuR6GY1C+LsDBTOSTSMffyTE9eFD7GYZSUL4MCVukE3hUxIFBGt80bnu6s2/aG5Pw3E0+KKhfRBNaNiFf6M8q4Dq8noGRDfPpiTMqOeKojrIF25AfTcjBlQLwDyjwUBW/iknyfw5DaBs9UFzQg9yOgBUZ4T/XBu4XhM5sczL0yya7QCd3mPrKfHO98c74fw5cbM8IXuhexYQf/PVRkImNM0SRsiNrrMRu2l6GSX+CUlJtvHmQSu0UhKMU5JcUI8Mzs/c4doG67vp9CxyE18DRkOs5gYD/DCIYhJSf9ZDlogS+p74jX39jnNb5c4xJ0vaxKRApuOEXtCATFjFRoaKZc3VqaBANMpOmp/NaHZCfs9pAowRZmkrCdJnDD7N0p3Qh2nzKYd7q/0Bh7yMhVTWdVNhYZoezI+TaAwU2awyZbc6rzGv3Ei8JSRlA7DeWCANpUGui2er/QCWM9cY2Y064N8tNARBTGGKl+3HTtKYIteQNLPMn9Fri3H5MxpahkTeeUHuk2MOigOPoy7+MzCH/MUaejQAejCMjHQZM+aMu7s+CQj8B7rxphbipvM0I7M2s1gz2qLz1EtonK0Pegaz1MV/uCbv8sFxtZzztaIb0AsymodeV1uMF66zNx6zyVo+Td0giC6H0Wzmhv4Oq1piL3OmkRU+aucrjt3jnVSQSLhI9V2fq243OHYTFxAgSdoXjfZ95+nTp84G58fezI1jGk56AQ3P041FM8ZwxqpLoG2XCiYBXBqMHgBFd0L8BsLEgZuNo2TWA51+QVNAEfAv9VSzCpiAVumiTub0oQkFmstVrXkVumnPdWtsHAXUm6+BjsstNssPYOX1ZrUBtFyVbwyc2VE3IhMM3j8lM6y6UJWSdwI6zA4NbtTtWjX4HfLzTe2ows+4QR8AdQny1XquS/Z6RkOwM0L8T2VNiC7DXTdzj8JgbjOVhfTx1WBZM6gOH6nWGzBx/vQnJ4K/9mClQpv6gOv9o7PfiAeeFXSRZJSkmxs5CBS4oq/esCacvvtjqAEmSEb8nSxL6FmekeHUDSdlb0DYXtzoskzA7XETyG4cAcjBhGTA+xhwISlIAg7n9txXvdfMTc/TC0ouV+8OTIZY8EXV/zoF+CVyWyh8GSXnY7CLBogODdPMDb2mBbAVCUouhRtyD9KCkWaB3zVaNN1Bg5D4p9EocxNkauSCEoLccLDjJvhGoncjreQ3WKLlDn0ypiEzIJenSNkgTUE8QaBRAE+j55QEfrr5SsWVyiGlensQ5aYFNh6ojYUzA4rohARM56ZTGgttM9/ceAuYuKBsxm6QkgV+qeofMcN26+WeehzDKKNjsWSkgGyW5BZcbRpdIaWDuFW0h1EQEO4Kvdqgfgz4SiKXB2IJLlpswiXZoRZzTp1DHYPnUXLqJqA4l3OrMtaG+VSbYEJkYIn1U+LlCc3mfdk/6wE9sDgKYcF3/uxsDDbg3wUNqL9Qv+pEXIocb5AgYj8gpj/DUDiESzdhNtr2FawmLNqFf35+FkUBVP3TlYDVLxr1RZO+qP+Bic81UBzQYCGYEYtIpK0Bmc00eEE04aH4E5JGeeJhcGcKcF+BKQVzA+hXTCqAlPLYvYq6F46Fl16wQJEkFswy/KY+QsgwwngBfydoxmNgmP2HV9X+ZCTWf4slvqIgcCo5+xZ/DUAR0kk44+jIj1EycUPBBNpn0ZEuA/CzxAHcTsY/tKCzcDyRQTBwI/+LvUce+8UCIVXnyObRoA/o5wEI4G/RmfEbdP1kwpDifiL+MQ898Z+BiDUwGMxxgD+YlQIreAjN3lxrPKnmE/474hiInQTgIvcCvBxkth0s3rsA8n3vhn6AcwXMAPTrg60FqETeeZ+B6E9FeR/mvD9MLyotobPGdr/N0v4Ps3T5dilw9g/wz2ot08yP8owBGLE/F4NRksXAUbDh+icwwSnNomS+WnPolyRLDwBmGSS2P2L/qbZ+AwLopmQfpRGQoxeEGwg4hQO+STmYZlk8EAp4MIVFgYtjqTiNUaRVOQAeMzVxjMJACdM8Y4TN1BqPC++PoZ83Skfxn8CBHYE+rAe498dad3AqUAGREquBwROAEOHKtzIPeIqtz/LxGHrk2nfmvhuBqu5sP9zC/4FmhhUCiAXDunBRhcJ3Z0aDgKYMs0ZlraPDsZHKGs0HqVt3KagFZBLWGBuC4ez2fZpcD6RAhrDwSYKA+EYx9bgClpvKuEhdgPYshL+qk/mIuby3J2ArUSiouQRFBOTqAiZGy8tvc7xLy+xK40Q9Xz9KsQrcdIxvhJicCjhXRXMmhmwrfVuzxl4VXpBy1XTzlbkEwvYBs6UjvYdCW8gvKPmX2IAUhdiiINaNu0cNARqExPgbdMSMmWICNOHBmAF4UG4eZOmA78Vw4RmAG+edZ4nrEdUOGBspPo+xJZqCg99gbRM7OMZyWCI3LsqokbPpkNuQbEjw8yDCtZjrJsUZKORqmkenO6f7w7cvR3sn3DQQsRaEIBB/CeBPuCn5qsaWTMgEqa0oj9znJfM4i/BPMaJ3vRRZmfRIyMo47qC+coK1PBpPkXadnb3RYPhsODj+cTj68hjt7BANNdQ+UDp+v/fwh8fHX7/476NZPsyJN9wN3Z+ePkUj6wJt4On+Vy+/n88OT4bT7/bnR8M/fzlyJ6z8nMy5En38CA0nD2r/ffz8rz/vDaIvR9OLv+z8/svDv5PHpxxanCcgcog4ig5nmr6BeupiJk3nYuvwe/d8PE5+e/bD4YvH73+b7h1lvMeUhbP2cdIkqdL5rCcI22H8w/yao1AasWVvEhkxxZ9sutwwCuezKE85P9zmnGr+QbeuCtvXMSZe1zZY2pdF150lh1raPKof7sHO4c53e7v28br5BO3pkfCpNPlQOFy4iSOq/Yp6wnnqJDyJYXMDiTDQHMCNB+CeZdWAY7opvbYHfzMbg1IvckOgObfxi0+nEc7FZiJo0nUkoK5TjAS+5iwYesCtZiyTADAzp+hA/7Wj3An8rg/xwd8aFE13NSZ5o0g/F1gy+is3GaEVSprN6tH4KEHRji7B4uc/3pRXEyY8ii04hwwTwrwyZvko3uNlAmEG5T3/IYWMgfJU256MKFTZ0vCq2CKWYuwtCrlCxYEJ5vvhl9O3o73RaP/osMJ7nF1351CVegIvts6CPKXfg7GK0W/JzGDhnUbnJHxBx+SAhshTYO092lJd65UzrLkPq/gpnRW1H29dX2vLROHsluRGxhCHLP0iLKzIL5lpWSo+GoPTBxKjleybgh5GPulTJuGyxgl4lLAkzRE/NJYANwO2+b3Ame1YyX2uAVpEEayM4cti/gVvvog8l62wJKwOcJxEs47IwkhTmEk+G/Dpm2k2C7795izy599eXX1Gx07E5KqPM30IPVxffxN/+yvwgSN5zqGps3F1Vam30f9mEAMQgobT9f7YmUc5KA6PgOviO9kUmrHRODR0SJJECQhtQMDFcXyawoLpJn7/6mpAx9Dl9Mm337jONCHjp687qi/M1ZyRlyf719evO98OwXs5d2CJJE4WOSwx8puB++03A2w8YCOCv3F4HaRA68H+HGUAMoxmjr+ByY40BdLD+MHHajHuEXUuYDly3AvyHkb/x//JHY9kDuYSwNBjUK0wdgDXdS5IDv4J1AoJfAfihA7MLE0cjIRlZFlagNC+d8Cfc2KcLIYDrNEhquWkji6gCGbAeKea4sMCXKi5elV8suN5UR5mzn44ZtYZyJ/TczQ1xAislaagoRMnIGI0ULlCUd2EM/lcz7RcA4s//vYUuQ/+b4600aFzloQZhEqtKL3H5hFEWYWVHEz5UBQueO3xt0MC04Fsc8FYirX0N0Dk2cKCMb32/b6gwB8+cS7++IfWNcO+6Lv9fJ4wGpAEmO/ScfnkStSHyR//gJI8hCnLL4ibizlsmi80Aop15+YTxoUb5JqB5vMmF7b2RJMoCSj1EyXEh4kOjJ5t8LjApySRcxdlSH1EgbTv/0BrBb3zGdThs1lcbf4qZJEDOtHxf2/Bv34euYe31on8GSVlLjQ/zCfvYoW5fGk2LE1me8oJOCbpailySQJg/vWus7DG/MLBIkGOwGjY3z3oO0sssouXN+jjGfDbBQlzwjSx6ma15W3lhYONSigYZwrL3BkBMeAxBcWyHCexUlxQ3ATy/9//+t9//F/2GQTmj384/2FMkraVr8LdiDM4Jtyh6HRlyEFt4NbWbY4zWDu1ZC1YuivXWqEjPVHB0oMqXha02G7YBZrQQBx34Z5gQx2BgPl92Z4j9ESAMu/m9l6NctEj+3aM35btLSEzMLwxWoi7Yc9BQPUtWG1QXDEtqr9897FLkwOgFAvXFCTEPfGZ+DziWzzLwuYY7ws/FF2CndCXP9G92gszFqEvj7Ftw2URsp8KKqa44eiQ8jSzZO5cOfbwL/NL+6MMNwG05mkfzOqUbMqdaNZhmPXf/l7UedDHcG2cbaK9Y0JHrARo8NN59Z8piy1vPug6YR4ED/7mXDseBjudTfIA8MumSXQJ/93wwNXbcLadJ+DMORtC6+MH0hc/oOV1Y3RBkVFstPbFRus0SjNcCtgKSlkksHAxjcr9ctVrDay2Kct1O49+yqg23zUtx4iy6fsDMjtj2zhXHZqRGftDBmWKzAW+yyNPw7jBDu6ZUm64i0UR9C3BuMRLbUdWOe4xCFk5viACEGpbisVH5IIEpRNwKEPxd8rCbdpEMxbK0cZ5I5x/MdLyTrAxYp6nwIcItn1KZErJIW9spmNgnFLLECj2rXUCB26aYdI/WwnHYyTXhR6Bkj3gzFuKO10FQaupgF6zzAcXgcdF8Vuxk26bJ+uWO8bbz4l/rBFDBvx3eawfe+TZgz7bXhDUtGyvp2VkSjTD3fc02+V7B3q8UcUHi/Ie9eOeFxA3zOONB32ulIfCnfX3/RhzJTejQKREdh05YpyvriM0gRZ61EDraNX3oWe/tOysMYQo9vxxI0D+2cH92e3BALfvevxjH7TSwE/ccdbbejxQeQLUYzM4dnsyfYIFAZNwG9vyatvQdFtptW2hKLYFc267Md0WEggOek9AjEkUMwUARjDKzivG0l1d2jT3oiR4CImlU/tEebRsM4gZe6PMzXK2fgDZ42kUksMcNUqH8wGoCt9PxElbvnnGPw9Bo7JVA2CwaCR8zAjLNtHT/KAfQ1j4OBOx+SYCnTx3I2EVlJDJogVSh/sjZ+4+z2yJwTUhCQEEhKmEKTLEPyhyNrSQbdcM5s6YIrX82t9Vu4dS2mio/XxT1lJM3VwZ5OZq1dnfxcbpMagu1MIqrBqrLX7QSDHmZfHd/ig5o75PQpBsnhQy4HuHLD2Gh4XBJImyHq6lLgU5gYouhpJAkFn0103g0xlaFaIrwfopW50ZC8F87BqoCsaSWc2qKdqv2ofrMg8V2zSdbUGvEtdtdxS7tadCQibkXQxt/2eTA/0gyf/g845JDV71gG2eVikgYtA0Y0ZWwfjroAjLQDC4pMIBO6zMESzEI3DwGY2sjDJhXUiTYqTMPOuptnWTLcZqdr3WARcipFsg3HoYkWBcjMSUEZBUbY9V4AIAseDYqGoVLvwoF32mCsUS4tcwOu5Yii989WdfagwlaQodmSlsjSZRKd3NYhqxJdluBaFhnWQ/kjnf68fZtBs4jNxcYbJi3elRDM6HmehF3eLeADlzGmex7jJYp57Nd6UACyo2MJVOndTZd3YQNyq2bgQSbpK48/bMpGn4qvgY6n/1lXXbXJAsMqe4eD2dbHN4XUMoBA9ZZcIc94la0hzX0SfVwTAWfBN9i02SinxbZaqklPOYLb+O9HSdS5pNaQj+E3FKfFRCeZK4YcbjS2Wo32GRw8oK78L4WEXUtnKa2Ith8qXUIuOCOY+1o1oOMyWcfZwGp0SLJbSC3X16zjPyilJtsDt6XmxJXxg5s8tpiwb9MBPeYLOCkKtCwaOcOJ3WyqNOXVhA25TBDdabwmqsagg979yR9uNNhFg3UW9LUag+lJ7459cKaxNjy5R+BDmWMTeGQCHK5eT5tUmxEdhpJ8p1dFqjSFula42i7YnkSpNthtzpbO8ugBHygoQTnKGHpneA5sksn/UCXoyRIa2Z+042e/Tll6WG7juj4ZuCKgK9VUxqPoNVMlS81ipNZBVH82xt+in9mSZZbtNYKpAgNgkKd9nu0+qFdfg0uTYr+jEml5f6qRK9BXlnRY6XOYgDRYh6BIo6K/R9rTspDYQvjbaY5aqSW8lut3LPCnJcHqQMCsiQkIVNZKzok5VmheEaBdogQpkmu0ZM7lOjS70kmHivkVrWcF+FbHuylrOz0JsrlKBII5Q6UI7FCqy8fBYix9by4hiXCjmKuHORK/pFh63wslhfv1WlV9Y46ZvuK/P3G5uomzNSR5JWkl2V4lIctmEGmgzkJWhvNVpaUN1KVkHVpci2lElTJVgRda/Q6jlN0swREXmdTCIK8GmKuIH1GiXcCJ5XaLUvSj9KnLTc+TojpXKXojLiH5/tOGL/osobVYPNDdNLvmHP0vt/wk0tFXNMRep5xX4Trao+s4RWcQ9L4KurOSt3fi/6r4DQEKo0l4DrPEDNVNIWaEmrej2xRkNG3xo2kX8BJQ4WOchVaebOYjtbqlmr2cUqmldm7IYL4Q0XuaVWlWt9IBUUTzUSLSGmi1gi9SJWAY+NcGltEGz7hJmjbq/q2X5qdSpY7mSxXbpI0ZdHzzIaey5v3xN675Z0exnXNap3ucNrcbDk1q9Nf9/HvAonk9HpBhGuUirPbSbv1IWwig39huhVg8AWzGIPXy2zEhuRLhvHajv/dZuYTfs1/4x7mFLsPsYmZrtNio+yi5lFzuWUelNn33lGgkiPuSy3lVnKH0G2WugLAfUdfm0LJgdW1XLVCxoHeAA71HmNw653SjmnwZIC/SBmi11UQz4aPKomaS5n0yxHU7nuask798kGty+njNyfpJjuO0eX4aqiqZ/2N5dr7USNdmAeGcA4Uy8B6Kfqr2viH+rIdXtn/6slnP0wnw3dOK1ECNysh2c2s97fe54bA0WCtNryMJ81tgxzrqfNhvKSaO12iibDoTFdLQKzSqaqLWPOaxO1DstV6hcz4bHqK/MC5+GnF8VRm3Qaimu06bWUz6rQsDJH5IN+ahFsxTEGluskjZZyWqWNkY/aFB/gZz14hmxyDl5wOKmGBIqiquNCQh+cFieNiUdhoBFewgR+EnwVV59pyy5esENcprRkv7UAQ3LJwRQYlqFUXfMGyTUo0s4BbzUP0uGo7rCw+6CcE+WQ3FIih0DgPouj6tGaU3DjBI5PwL0t0thbJGfYhl/r2C6dl1Hh7zWmZCT2vZ9qcl3nRnlWye2mWCVGdtV9Fua/WRammbRVuof042Re1tFlGa1QlLPZxKPwUYJGWoiXZtAwS/fwmg+vcD0WaRKrWK9Rm6SWXSQWmP9n2xnVkV6jKWmeoKrqByweaCesPlVbu4LoGmlUPqVW3W2SFRx1js3CV+rq6f95/frP/7n5aqv39evXPef1683Xrx+8efDF55W9qo9ES8tw1khNZRFVyKjdXLXsPpa6bcgkwM0Os3U/JfnXiLO2yShlB9bbqmL78Y2JjsWZqnRQPk3ecNZVO9SfTPSTr591yif6Ovq5V/YyXi/9PXcTsrJNeCKvCFfnX4tcqLf8eZjSOVh1x5qelFasyOaJH91GyKqrZsvznIgkN38avN2aNcJykLJpj188K1O3w786kf9tTimteW/Wr+ZQrMGdvfvTQtLvamGx1g68vcnKGcu81kXtLomNqGYD1S4IJQvVllAv5L0a0XU0d8Lh1yo7IDf8GkT5JkI6LCq12Owa6vploeQ3ZgefImejotE+d/HyKZ9h6dM0Dty5I7Yn0n5n9ZTdmh1MixwyzVecTlmHHhJ9/QvFzj5Vj1yfvFvyxT/6hTJrUHdVMn1c17wkc4tUXmi16ZU2CdmFKI1qpM7Ez0O8gnGBfbzQ7FHOXNX6smSoOmycTjR2ZANU27IFG4JbKOsqtetzaX3x9G/V5lMl1f2EXF142piiaAAv3DkxAG3I9UmYK6yY5kTYumtiH74olcYhbQudF21a4qrjymvF9/Tdc8WPHcOKWY/3scM52oBcuCPnZL6yF2KYY5ovchGHbzncVk6IOrqliMNur6Hh+U85aA6Z6SN1U+G06G7KJaGTadbSM0ExL+ixRh+lGIC9T1XuII54caQThc7ZnFtTBUr9jjWvXZUfsdZ85Hlo/y6IzV9hqGa7W9pUFUtBo0iDXFl87crUSrbrOoSr8RWtWnP36qEJE8DP7HP7zHlttMXt/0urnjKbLurgNs1zU+Y/rpGuTeZHMNVL2qR6VEOjItZ1fleVxd3N7IHLMlmhzBBVFf5GEEV/ZSYqWLemQQumqD2li8RmF++iNTDFy7pZxQrq8DlAqziLGowZ+W48eUfTbNF9UfVnf9u7TpqMrM2BKmDeu1F35kZVJ/LfzZkyY6pL3TazumPV9tKZtbhKmjZp4TDd3BuqSbaQQS+VZ7E2dWHmRfzzK4u1R3nXk7FQykNoFN213ySzrJRahr4+AS2z8krp28IXsoosL5O2gelxtLdoG8zGX3jnEvVXnVDuyuL909i4eVuv0Ue0GtN2T1u+NWaeA1iTSx06OlwH7W0SwrradS6noO7UvbqgBNhzKXxSwc/Tm4GpyS8r7Bse+VlOA/EwnuZT+9HMpaHuUlsJpQ4kqGsQC3eZn2hBv3kKPSTs2QdWjR84YU35n7zmTlHGPxyVa4jTMSXPUjZrdaKH1Xaof4tned4sPr8jqLXa0R1GJ/behTmOJY/uCBzqju380x6vK9lj9mN16zPIlrsoVF5mfPPzOzXKU8law+bdIt7ibzxFNmOt5b1hEomq34sljnF0SDeg/iUY8BaOjZlq94aMqPTyJ3CIzM4Pqym0Ukho9ZuS2hypt7zx8K9x6PFu3dklTyivT32uwKu1Hmw7pSjd2qXd0lYMqaypVlYQq/3RrSBhPK5mBTHj8OZWkMDh3gq6Izk2Xnv4VK0gxluryrlYXqtHdNh3x2od1A/AcIP/JTjzNq6/WNk+srOGnXW1OVntBhU7B9TdprLKvSklR7rVWiBVKMZoeHtHOfO3sDa4ZS9fYdtixRCytdqK0WKgSy4eRVSiFaVFp/xSkU/nMpEbEbVuTCtR8mgpI8YynyocdQuUrcSrFLYfgXHLA12K3Auyiez6yRLrBJTDjKSZUNZqh6EIehorIMZj9cAjbiWcual5sIBXEqjgD/PBOILb4uwNKvl+rOAgWUN/o2wgrwXhL9d2SpkN4mnHYiU8iHzcDvf5utGfJFF0gUSdBNEZXtdhLJunEXvVnk+uuPviTbEeisbXGqZXnc/xgH7HfPBee+mtb+L7gQ9NvFg3jYRlJscS45tKyiqQ7/PhoRr5gi5/Qla9+6vekOUgfBWCF235pm6H4sWX11ZbcfAF8oP24p96ic6odXUFJTHeaT2ASbm+1t+fNecniXASbnl6Fh7cuet32PQLKm7MMjoJ18UxHOanxzDPXS+LGEnbU0ijSTZNiOsfs+rs7Bn+eco+AqEeITe8+yknORnR94Djoy34H84elM+Nqg8lrB8JiXcCfFVt+y9bGtI8o4Xtd8gMAuBaGSeTnM0q8adi1QYOTzxwAy/HV7R902ivPvyYgi8w4reJHItY3MaDPpCbP1PPc9gKIJsPCoVueWpRmx8ELK4pGSQaLHaAby344cP3N0YMgPAjhfo7nGqBEsbQrTzlp62D2kOPN75L6g33S9RwjbdHQZzqByscobrMKrXiMwjFdxwgmcXZfPHh0C9WpI8tqXzRkVXZpqfllZtQ9WzcZljM9uvxZMXSzCX0AoRxQqoIKUIgV3LPhdlYJRIIbJFzTfrdySQp3ISh24CcybDAap8Mq3QtU6YmpsdwNbDH96jT9HngTprYaGVStprmcomGU09ayibOcm+jHb4roGVMMElmNE2X6vK2SaTjZCA7lk+ZLxJAFRHnmR3LdV9WAtbmbGA97mnWq2JMUGlUxZ+awjPHoWc2NQ5DPsq98JpsMKqzHl+tLXTzmNc9kI99azeJ1z/pruTfPFhq/axjjG7xsaHUix/Sh++hP9zjNm3P509bR0nxFnGPP+NtfrO04cGjnhv6vSLpxYCgwkvsDxsM7UQ8qyIaGueJSvEEM4iu6xiE0DD4WiTEQA0MjG9rQ1zLgdDd+rgW6StD27Pf8iRDsZqiJX4UBnMtGKDXMp27BZW1G1ZlPR5bNatpr742gtPvIGqsqG3KN9YzgtAtIPKAVYvBtKlYydNqrq5FzNrAPaqt/qarFlDpQPHA/kB24ZDfndedqyvmPr7uYIbcwIRaqtHpGjqjQSyadyT0VQ1k7Of9vV/g68vj3Z3TPfhjd+/FHvzBeP2ek+85uZ6TRWA3TsqcaSrkpbhxeLK304b7tAjZwqlQru6CmnqobUHVtAUPiEDdOgWkHOZbUL0aBVxEq1KQcJE88BhiK6AixLgIoopALpqAUoByQfXi1P6CKStu5GyeCP1R30V9a69YNFYsvZbWvv5OKUG/sZV6kGhhTfnY1OIZNu7jXTjF5adJWyryIgWjeWrMpNXFC061rk1Nlt5iWEJNmi35ov72LahBWNffxoHrkWkU+CR5+7bVGm+14e1ZMvaVXizwasm/17X3uvZe197r2n8xXTvYAsuUXTo/KNAsPv7H5qDACD4+qDFilbPRSsW2NV8/Keepfgrufafb8p0k6vVRgB17jYJNFwXH/v2iAPeM/EkEAWxR2fsgwL0=\",\"YXpvmN4bph/XMK3VkZ9mDKDFVta943+vX+/1671+vdevVb8fXPwCT3TxFzn+1ryAZT1/I0kgQuU64DoW2oCKPB8H0eUO/8BSU1Qei8j+xjTfzJtiLkGnj8nIogYQwTzilrK7gMpJPiKjuIfCEyX0PaavIEa31g/SrGMceUBZ7LOTNV40A6r5KT9YwZcucV0eXiHID/KZB98GWIBp2nyR/PxKNOCub3HJ5bZcztgxegaaZ233qM8evu8lxOO54uUeWMG+LzsQP+s7wPR24AXf104VBr4bD6Mw5KcFeZa3SCk+w9clttldbKIYM7F5gvaXW13t+4h4eUIZxUHVJtnpixGgMCXw5zPgwX0k+IUbjBBBJOJftrTSUzojUZ4d0CCgqsZDngAeJ3TmJvMXgCSmMrPjwsBrU1gkZIwLps//rTdOIj8Cq+Ki7wV405HXhylDXgBl2tl+9Pirr/l9hgi+ApAdDYoilieP7IaPThcZ+imdxcg3nCC7SNCc+k85v3TZR/UCK+bEs8t+I+0s6LseB9HTXsjVbjL1aDxl87mzNxoMnw0Hxz8OR18eY/o6y7jDszqoiX8YPPvL6dfk6+Huj98PD786fXe++2Ty9CnUoBdQvgfLcPL+cu/ly/Pvv/vyq0fei93LLy9Z+TmZ81l7zBLtPewrm389/vvLLHgSk3ffBd8feX8ePuPQzOd9eQZZ30A9dfHsVOfZ/unoxyA8JqdfngdevvffZ+HkPe8xZaegWJ6alK90PoP54eeurvF/gHcIA6fZ8wSmapuzG36eue8KjtzJMDsPU82+REHmmW0H+oWYDKT+JcSLngOXK+386YSAkqRe1/eeClzknzrf4DfBOuxPQAnF5V2M2Xc6eC/IU2Bn4jNx46JKhWYo9VxTdXlMuiIfcIifeUYZsOCRPPQ1TnpIYdZLT3V6yvrb9+vfcKHpiTqLJi5WBLnY0Q1nqr8qzAUBtH+Cp9xowCWeLzNsdWPHBZgSQvBlYAaaFsDX8rzKPidnY/uipgKD93h1GGP5qUh8VIvyz+reYH2OvPCpFF3nZ37AN0rSLnzm7W2EB6XsjSc96Sj0LmQ7FFVepnrtMSG31V19SrxwyRlhrxCN8jOewmulrMBbvFdUVLXMkHb6pwaKrGFpjPmmjJQNzbFOj/G/DQJb6rVWSLEDkH/KJriWaAI2a11Mj7UDGipayXMjtbiilaXIJc+R2NiapNkJP7durBWLZ1t0hAB64uS739Oc1FJXBvOrRP8RPwJ2F6yv+uylYMF8XMZnD7O/DLkuxdOLw+LkwzLEZ3B6uQZIP0Nhme4y4ZdhUYOAn6IA0nCoDa8J0Ew/bILDsQA0GNanbMl3+T0Td8GuRY8fW0m7KRmRMKXooYsBCvuzNZ8iDCCzACLHYd60pfHoOleFgo7PaUCWwlqbAnY485Nk+X+VJYHj8wwYxb8rEeNd9vC2Af8jC9nH5iP3nSTwYjZy3xXEquciPHXSGiRw5kKQBrfI2sfqCFIDy8hKyzGMOq0t11rD/ZbFd8gjwp+UwxoBi7oTMsJrNerNzfbKjkMvxp9y+Pz6YbtBWnDNzoS0ZRm8UsACTJaXLOiW2BfQmyxoWet7ioObDzFI34C2Ajrl9Xssqm8DXOiMJW0qq3pqYvyExMgTJYPxLrSl7FmzMP/dLJOPr6Xx7CjxcsS10KqtB4ty6BUQ2qla+EgDF2Ood7o4F93eL9DGarpLx2KTarm519dYv4DRPPn8GcG7Vza833tV8xH57aVl6pfitsocLuK1lCS7ZExD4otL3gxboMx2oo72iFkrrsNe0NjBbnoXHIZhNYh61aK7jA/JxvJJpfYRIRXgzczHldTUojbdDZc1VLBVz7f760BysIWzZ2TqXlBuA9WJgKjaO5N1m1m/9bAbhEHuYC83XnX9RAXeJInymBOwpi2rUUMsQzRbD69ZWEGA4ibzm5fbzdZ8Da7DRemJQ024jQ1t20YUS2jpwh+y5lq2oMR+jITZY73fpfxiWs2Bdhu8jb6xeZFsKRWHbyceW/Mi1OWw4r5ZuZZfly7Lq9mm8ixvKhbxMvO+/MqUW2/JV63ldeY1PYeu3ZPUb3doKacCompZ3mzr1r1avAx06/Urll094z4uG5vj9/WzuWWnVbE8w+Qut1dVnK9++quhwIKEmJNioxxLYrktarFO75JIY5qkWeMeNKLUk9UsomK8IboIjno/tA6StC+agNQZEjxlZfFgVD3rChFE3rk1RYEV3NrEA/A7nfgw8kkzqQCjHtaypR9cy/SFgYtPTtrIxQpQw7B6q9ANlDMNJyO80pFMxD5XXZID643/qePrBZSE2S4mH4sbluuW5gLKDaahBUa6HRjSdIopXYsyODgoXj+j9hWLpjugZecpXZgPwqHR1JX1rZEdlcSzGNSs8sBtIZLMaDixXLXfBjBvJU0Pr2hdmw6zak+8dZuecFD52UlxEeoV+AcZ34ZdxLB5M2tql5HxxB2OGxGJ27JdgVxZDAcKk9Y5UKwdb7Ze7XMt83ZbTQDDoOfWzq47O6OTPMpTnqnFh9Ii90kHLkHwueYUMi+4Lzy+dx6ptThr4Bdtbl062y65ZRSxXeMKvC6xVzc1t0ZNtqgHtksyPPexNEift7MZ+VO81r09QF7fAqhlIp8GqmFZSGmWu0vyXtGmVgdLkVkGqtnwo6r3lJ/MWQJ5dS26faVYgR6lhh93EZLVhLNuWzC0deokyjMm2Oz0ARnTd9BGLSyF3aYvJipJXiwr7C7SdB56g9/x9nGbzccK0ObDardlKiNsjsFd2suYlUzeWXdny3j1ZN1KBICD3HWzJrWjwWHVxbX4KyjrAlKDrg7JpaBwG0BQu/xEtxzcQo9Cg1LjVkgGOCEXreAUtW2gAn+JgUHtuoHZXopqAbGdYpO1WlJOVq9ZO7K2rMVr2kBAlZ32g8S/6sw2Zp6KIwXVUwGDL2waRBSuojtwumzBRQ6xx2aT1/oJzwbtMUsomx9gojOgdpKzE0+4KbY/CaOE/CBrshpDDkYpozaaSnYNddk90J562KcybFay0rmLMbUHsvH7SgDpjJ8EqoLkJTcAap/zm4CVcc7yWyHlPvTym4Y9axhN7+Km3NaSwYxRV1bD4kWTUmT/rfH0yOrR/UqkeUYyty7ajGW3RPm7IbbQZFya29Oa0eRGJMZxieQ3G3G14pVkSKJilU1ReCPArjpFXRMnFKXdm/RXyxwCYq/o5474pdpxlW3a7I5piDdulM2W3N4rnW1fcX+PXwCwzj7Z3ugCkbDeKWRhLr38dtlL7+mOGcwgQoXFxJ1ZbWfIPOS/6qavvC+rZa/aPVzWHqOat0irPS8pBOULEFYc74JdZiuP1G09a089txhA6aaFFfEvHgNeZgRq1sTR8x/JXLnWS06kVbibUjRuV5ixh5sK8QGHdcK12TLybE8O0XXnklkDxrBMHdx+6rRlzDZxS4tecrPMEp1RmpIcbpdRWPLeehhFPIW+DKPUpFRIK7w0C9otFotGJGzWxcxRtf7tvFHyOFbkX4Zb2XdZAknDXbIjqq1/KyJpqEh588UaNWR3HZpAsym52K5XFWipYzeZagaG6YlS5lwJWS9smPSyOalrLHEr1c1kRV1t1Z6AZeVW0aLr48AVprcFC2pmxzqQZODWjaNM7tp7F1N+v09drkV8Wa60aG9AXlK1S1PPTfxfoJCkeqcv3DQbTt0QcG3oVa+xcpfyGrS2Jq92Fdut+HxthEYu/u0nvFaMVQ4EjHOC1+upIHjFbqzUWimsob8YZk0UMyqs0ejQ4d7U6NDff29pdejds3A2HsT0oRur7aUKV6Kxam2PSt0MeE7tUHO6Gjh2TaeVE0TRCmDFFm/2CK/fOoqV2TS78DydNcDkKu7Y489rH/ODwOxCwAzEhhvZWZ6Eh3kQPI+SA7zCLpzojyJzyQXRPAD42s9jceHdBWHPms+1olF+liWE7LJ72NSVgZiEKe4342+jszN6p0meZtzOTfitB50/XeGVWTTEKyyDvk+T64FsOsiwOoY0UeKtQOQRrxbAGJyYn1SwwuIpp50ffsSL2DKtoLPNN1euS9fc0ZCiWEB3hO+TlA4VvLoyk9Y77O5u8Tb1BXHU1YBUv/RLmoraZW3aXXvdMkwYBvUc8S6zI3S2CbC4DbAKVbspsAJ6J4zC+SzK0xpMEzKpQsSPFlDFGXXiOxfUdTxkOWaEkzJcLKoCZl8tkPGmGYCZRQ4wPzNIHXnVopO56XkFbfZRM9dK/ZjF1Q6PQazHUTLDd+cvKN4BCTJUolAs6vT0OkVX9mK8ba+Urw8cZOWNIqVde0eeFfZl0TVDnbV25TyaLYvPqiY/uKDjJEvExYURXkqDdwD2eNoiJoNoUhHl/GwSP6TELx4Eb3Aa+Wwx4XkMHakq0WWNQkzRAAUn9URHvjTP72zk782L1d7y1HrsZkgxKPyfTWEifJBEfLD5+YfNQf/PDx6wcWiI3Er/5sOxn7M+jbi+yurcFIkhfQ/UFPQBfzKEnadPnzqoWB84f/qTs4m9RmNHVlYnSli1jTwUhwU3nA8fHL5I98/JPN2sNOjPhDFQPLf6oM/PWDNYW83P2SON0hiPZxujEFeEbm6YT6ci1TYe9DkLyIabzT20nUXtolG59A+YvHpu+BbTDy44fwEFQOtjVHLvHTtTjhMgfDl1ik/8puFFdE6GRVpPmHPP63SKqym/RRE7YDEV8zrRzc0B65Wl8jgBYXeKohXfD6PLX2g2PRqPU5Jdv+48cHYOd53N/9gc0FBrghfT4rMfxsdJE5wHykqrmupo2IJssjU341eEQqWHWzOek5aej6RJDLZFjOs1UnIgCbfDL79mFO0VNbr8gtKGurL8WnTD2IRPLvw1CaIzIDX8qTIFO/gWc+LEyJbOU+fVFQxY3b76uuNsw29YYvFu9NedLvwY44u8omBgXNLNy9lJP1HOKQk/rt/87XX4OgyiCWjyvk/O8snm6w6YMqh7UWnviME4YjTOKSDvRKFzde1sXl0/QNg0jPOsj1eNdx1O9/3dBwyu1LtsFJuyrOvgc99dPrYHf2Pi/LcG5geaXLo0A3NsyCle8Oq1ZE68dpUyqklmD+U1xCmYE4XLxa/CkHfHdra/+suTLX4rbHl7oV6MCHrAdyxEBvsHWRsxsghRW1G8BRHiRGsjQJaan5b4yLloI0AsWnIvPgEDZ7jBhIkM+k2sCyC3KGXe2+dnURQYxptq3Bct+7FqqgrTa84jTKaOGYgr8UtcGfRw61pHjtGo29kbHuyMFEMV5OtHYNTORPQMDIILAhC/7uo1UB5mMdgMfeFiFNT5C5IG0PkuiaILJjCfTdif4HilTD30Oe/23TTrg9MTpsg3MvSPN27LBiRJoiTtZ+A2QTWcqodbRSnIIDIR4z+lcUqFILNn7AbmUrEYxhnL8O985oZzh7nYDtpcoZ86ol7ghpP+SBKs1JrVTbn53+dFWiWe8tM/m2dAKx+7edj/qloO3igzoOfKT8VbqrmT6omAS6URDX3la8uiSzcJ+f2DnYCek2DucPI5n0XgZIE4MmlOnVdg35Mur9KNI3CNYE66sQsUjqj7psNuDECArHdx0b3Fgw7oWVFX8YPEqvy9hk9URa7B8HLsiF3Wvd15efq89xU/bK1tXyllJy6Q57dg458VOhrYntFwIGqng8LCFHUWAxCIyHzhmsrAo+XavUJlL2ik0NJllYBzxHZiWZyCu078YgVw/5JJH0QHlHDknfeVyuBN5HXjP5I53rwG2g4/j0TUpEg1HcsQiWyPvgLW6gcR3wr70BQ+UbV/88g5KCKVdy6ejgmoK0KGRQ8CM367e59V+WC52/waHTE+mn3hhfblhHPVy+DuHQ5Pfj0+7eBjNvwv/ojNmnu23d5+1zhIL30NWEyzLE6LucYoSgkXnP4AnwewYfLbJSw/hD110Z9FuAitnTLQhexhOnM9QLWEYFEBy3tQoSWmGAwqTjswJEb73x3C75/3Tvaf/1pBMSXBOBXWQrUHrXTtRNBhp1M3IX6VDlqdOiIYYJYd/VpYt9gT7qsrf5agFs9iuKC+eH3KqrBkjQ+jPPxhuHctteaxLSxWtBKlHzy220Yz1U5Yd5Y2WPIBuvhxdF3kd+HDU6FUtzzMc6uKugiDt1PVRf2Smm4irtZJQd6Xh8201Ru1p67WitO3Sl0Wlxf01YM+Gnufn2GSCfx7bO5rFo8qCUtkJ0wvwZY+jfgdXp3tR9Win0nCdjUedjssGii3WR7yc90A9pepm22kzhxsEmfsXkS47ep4URAl/9lBf/jtd89ELYdq1XJVL2cVx+jx/pSTADxU6Me5iLIEy0FdQYs4+eMf4z/+Af+S/0SKPNK6j5xLVwLGWzgc3GGK5gTAmoZEQSK54wss0DHNq1daHE9/lU2mr2sfEbSqO3ZnNJiXK6ehWYuIl9lUBfa7FA/tDLjPNzDeRHP4a6IKVPnBNAXSLKiD7fLyF7jEgWiUoZeKdfjs6bUFYE/IBL7XAOWFBpmMJ9WayYGvudlpId55KxGCfa0DKR59K8Mr3oIrRi0+1SKHj91V8MKPOpTys3gGc2CgJSwxkHpssE7YwZeY4fTz0AQUbvW3cB+BDpXahIUmi8JTFn/q4CNbzJMDVzQOXKkbfiEbF8Th0X/fQVGSgIsXfH6NcmcG2odt6cSZAz6VasFqOzR0QNGRBPec2DNf4OmyW8vQY+dPgl0ZRzw7j7Yeft17uNV79NXp1pPtR1vbDx/2Hz/a+m+kAYI8Rec4KJLimMi/AO03c2ic5jPHR0XjpBSwmpGs6/DLUjPczXVcn8Y09TAeQ4CLu04KmPqRQ2iegiHk8LuiAGuP+tTHOE2eOYF7BuAdknHQxJm5k9B1QAx+z92+8xLUC2hIgM23Fh3QBtSddZ3fc9BuIbBckvvgQ5ME5ITh7eRB4M68iEPGSjSl2BMDSWOo7BDXwVfBIkCODQC6yvrOLoJ0wUxwaJIDJnysQOSExAmZgpeOLx7hh4soyGMUIkAHRgoKNAXdSYNAUggGlDvjfEJBC2McyXXA3YUfedJ39ti9DKhlUwo0iDzPJbCYOl4e43WX2AJGAfMJS1+IVERKQadeHsQujtuJxmPqUdfxCbAlls6iANFwkUDUZ/qcjT6f6fwguNVk7eQiIBnfIwHxTFK1aTbUTAniBTD94HKRLJv3CXm41Rct0/4wAY/+KKETGj6XVwLihvQx+PczniiMO6NDsCRx45VFELnH7vId0++J67M9ug5n9O67njTx5FqufYIp57a19k1KcpdtOIUZu5CpGzGcoFrCN9aI37uk7DJf0fGB3IfrfLd32j0+GsE/L0+7/MW17vHO6fD7ojIfIVZmjsz2YKDcle3CosDEJ+7poNUBFggNjxMyDuhkmhXRwDwJjvlGEzM/B190aqckdudB5PrWWakaeHx+XqA2O+YNRxxazczM3Hdi1xHfGNsPD8jExfARhsmreGpBQg6VG+TXTfjn8UdCf6sN/hw7+zD4w5lGbKEoARvXDfEVh+Icu3jtsjjoLwKApuKvtqPsgUAWbJaGZ7VSrG7xxxCHJ1MORr8eDjvGDR2dnWejvcPTDn9Vt6neixdvvzs63GtR8+DZ/ncvj16OFlcdHh0+3z852NtdXPX50cvDttXe7rw42dvZ/fXti/3DH9sAx3pvjw5f/Lq46sH+aLR/+N3iiqOjlyfDvbfguB6dtMFB1G8N/3TnBNRQe/gvD3dG6Ea3q/vTy50X+8/3sXIpPx+dMWUTWROq2Qn8Mdsjw8qaMW1JfTUlSCYhHGlV3s6Mgyjt5GYxHIscLW50L1f3cnWXclXKEtclq6L1baLG8vnsIjZSzdlP7idJdhdneZaStTYA64WuTet76buXvruUvtTGk4vEsLtwGbEJKsvi0D2tnPZFOtxAJk96rjclezKBhftEIqC9SzE8Z4mt5pQ3HxT7UsSEoPaIF8MotpNZbjdLkFPe2FXn773nYGmTnsr27ox2DvaOTva/2z/scPNaJNqcsAeYO4MiN7g66Jh2+Dms0ohNKkiF1IIMMb0pEQCCTgLLeABp62hI6Is8nRUnsQBQwrzVPOzuHf5qnwE7uhHSfXVkWfMbEpvDaCY3q3PCTgYY4xjwPYk8keum+bvYlj/UzlOKLHrKQ/DobEbZSxnyU+fpXLbzT1iee6kxD4BhRgNLqYc+5Um+GYh4ahzeTAesYj/Ws6tZiCns6/XYPkPK00x4NsA4agMd67UFzmCydCSWntEGvKjatgcJ+Vo7X3ZC8M1TSVfj6wt2cTmm2RTntPQDCgMzqxxnXCWY11QsTguw2lzbdlmkFsPd/GRDkYBlMJPvptOzyGWXrLNuduUHbojQdFcmeXD+FvT4KafeuTPCHDloeUn9CXtCFUOsqu00IWOo+pnKUk8xRD9QllJn7PYwxnfGL+4UkHd83xnKFozzJRyxCFWBQAH8f3KuHxwYskivI2820+HIM2wD3ZAcBEAoE6x4L/T33E1ILypA8wMoDj9BayIoHMYyguwR+cwc4y5hG9p6ey22ztbMRJs9E+CEuPpYhQYAnPT5rgMt+TFBfmwHVz3axDm7kZqIuYWaQsObNEQdlJYQzfAuzLSpcYHXaJ5mZOYcqxOHKTN+UpAGqBegIdJReYK/I89yluXGiMbcQlRFBwLsQRRSYEJu+Og8jsn6oX+CW6os9AaaG9TJqy+3trqP8B/4/y1A45IQkPVXD7e6j7e6X0PZX7e6Xz3EkjnSGUswCYulM3Yf8qRGbA+N2fnnd6KHzmePnjx59Njju6fq49mW/8RjiazW4bq5T/lU2cvF/Xc847ShXsqIAUtwkE2fg3PDqp65Cb7UlLHpCZj82lsHLj4PixO5gObyMlRgMXbDnUlx4F/cWWEnZNhuE+cc1eu7XjrDTDLtIu4ctSUfV9GYKd099fzPkq1510o7te7fShkpOC9AVBYR51me0hA3Yq3EmSRuPBVLPAhLTPkzWvzyF541wGK+csUfqLSBN/UDwJjXPrvDgXd1SjOWATGC7z0sQIRLPQNXqJ7r4BqrYRW8qWmsvQRAijUMMCSXurqsonJILh2zhjaZGjg6I+9xrxU0wRRmFG3Srb9yWc1Z/L2zhduiIZm4fJ8UV9LrgtCRR93gRTQR3oLGb7xoZXYFjZy7QXmQC4E0s6J0CXXLwZDUVswO81IAAMIthvALCcAII+bZNrBggAHkc9vuGQcgD/QBV0RgLmHiyamL6bIXlFx22IbLQG24SDsK7XK2dAmAA7354LgEC1GQBGGCshP6I3m4dsmOKgAGo/KXUpdxccJ+yb60lbIEk+X/EF+YJUuCPdUblyEzT2YnjoPicpelgB+V2pfh44k615sDuYY8pLc8UUoAyjMMuoYbAUuBzWfuYMSblgCypVk8K7wKVHZEqsoW4gzJsDhZvhTkUvPBjvmbdWYEcQYZvvWs3lBU5toF/tWHfzrsEOGU+zvSsmPZdODk8iMZmISURcI3/S+01dlOPwyuL07wB6gZQT1GfPscTY5jTKvYF/UA9JTwPeXOw0db8TvsK/EK944B6MG/Ebgbyblw7DK54JRggSZiGHNQvP+Grss9RT3mjAHN3KB3OaV4ZqShP/ZiSTYHo2RKuP7reGk6OAP6oM6Oe4/7T/oPex6IVzTreyzbCitgqoeX5Zg7rL6x2WC/tVm6JGf8bDBUmrynMU9kMUIWNART0NdSAF5hDkBH2KDqrNhV53OKp1m0rWMFvA8V+/zMS/oBypNJP4rTJ7/1Y/gOtfpFNQHvw6Otretr/fR+ASxgJ2yAMzF5oGM88Vg9o4N1+qLGB7aysvR/cUlyBWWVlPDhq62vttogkLbBIF0FhfTDV0+ePL7uyIsZ1PGNNA2GJMl2cCve0lXLvPHGkc1y9mQqD4U1Do/XRB1cHaMGRd5n0zjqAhYO/cntDf0NCx6C+SKOYH35V1RFGKRmX9NhFJ1TIndrsgik9VgrVrd07P19Z4i50JUaHGSCSZUY/jGLeg+v/z8hqTBZ3GgBAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.046Z", + "time": 24, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 24 + } + }, + { + "_id": "b184093074ffea48d93b8e1ac0d9ef4a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 427, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/access" + }, + "response": { + "bodySize": 1551, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1551, + "text": "[\"H4sIAAAAAAAA/w==\",\"xVhLb9s4EP4rhg+VNytH9wI5GGkD5NA2m3pPQVDQ4siemiJVkrLrFv3vOxTl1JIl2bKd7sUPipzvm+E89XP4Bfnw7ZDFMRgzDIexkgnOzfDt009atKgk/R7SgxTsQnH3RwPjtJAxa0FLWlgAE3ZBS1oJcDuuhr/C3eNX3edRJiq66jgv1BxlSJ8qt3uiQr+vIpHldgHSYszKR22SV0wgZxYqUhsE5hZFtN38Tw56c4eCnp2utDd0lGNEVFPwfy8mbtxlTvcszo1V6YTs9MOdXkC8vE8mcnMHzOYa3ks2E8BHT4GGORqrC0MG4SDImDFrpfkjGLDB819H0TIgEgN6hTFEyxm7vZiynJnFTDHNd4ShdNuYiNxCpDKQyNOxcwml8QfwTqxv7m73vTPxZjFdTkpmetC4QgHzYmOnQ2Xbnadb4UVEZ+yYfJaifYRvOWpyDGnNURG0e2O0lJqJ5HRtHL3cV8UjD/k3K6OyDWbPhdF82DxolZBFRvtOGe7fa+Y3dxqvR6QExDo4EA01JS/ls/s4xDJlFc3OAvDrDTakQDR0xX1xmk2aofMaMLbh/iqoR+jFU5QNKsH3WOQcHrwoLzxTofuIqipfXQCxIjAmNSyEhTPmhXeHHATQF8HEiwbjmo2xkB5ziy3a/gY3scbMXk66pVsK3YfP5KFXzqfl3NeKUOAKPm9kHO4U44N19mydq67F0TAh1PpWpSmTfFJsrblX9aadK/yv4CfqHnuQPRLah9Q14z51M/HANCMCoM11eeieD25ubgaB98dxyrIM5XwsUC5NcOjGCs5uaw/azVFRRICPhgoCUWRz4B2GyQSzidLpmHL6Cg1RJP41pJYqUBV0CkRbzO2qVibQfFvVuqvQuchtNTZTAuPNBezYr9j0V+DkenOaAkdW5bOFF33UWWYi5fkUUrf1YCqF76V0uh0UZ8FeNIP/QX8+t4/6PWecgUFSe5ivdXLtiTpDSX2GdF97NUGt5Ttm2ScpNk2tchl9vhr0bYPa+GzTegeTwZs3A0W/3lOlcj31B5/3P82+QkyTFUFoi2BGQU4BRaPo03NxxNv3PqEd1IJY4BNrNc5yC7cLJuf1aaDsvXzT1XABr+dNFLuZIpHRHCz5vnvhAoYiwanzeuPrLqplZmlWCOvT4ahlyEq/2J+/piS/Zu4GC6+VXibUF0WODkpjmYy7CuBRJqiNFEz6CbKB0U4H/qdpoZm4hhD4VH22TDundl5QI+gbh2Zupd9s6Z2VlXhHJ1oH5JCgLBrI/hapN6SGwpMC2gXgVN0hCG5GTy/vleqvlNr7QRc3R7CJKW0cvBlKRI8gipxrFpiV2WYzCr4QE0bJJmHCwIG59AXfMXPnLus97RylspiUJcMQWavzBq5NGf2F1K6IV6V9q4QAPwo9Bcgz4rs1cl2RhpeLDT1hT3doZe6t83GXwZ3SU6YpcfYbq2xxppipRtRCWOrErg3EuUa7ud7iFwhuAsuUpII/+HsQRAF9HjiA/GB+3TViL3M8//oPgcmj2Q8YAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.095Z", + "time": 49, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 49 + } + }, + { + "_id": "81d93bfd62ed9b30d11aef04d6706d33", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 431, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/apiVersion" + }, + "response": { + "bodySize": 659, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 659, + "text": "{\"_id\":\"apiVersion\",\"warning\":{\"enabled\":{\"$bool\":\"&{openidm.apiVersion.warning.enabled|false}\"},\"includeScripts\":{\"$bool\":\"&{openidm.apiVersion.warning.includeScripts|false}\"},\"logFilterResourcePaths\":[\"audit\",\"authentication\",\"cluster\",\"config\",\"consent\",\"csv\",\"external/rest\",\"identityProviders\",\"info\",\"internal\",\"internal/role\",\"internal/user\",\"internal/usermeta\",\"managed\",\"managed/assignment\",\"managed/organization\",\"managed/role\",\"managed/user\",\"notification\",\"policy\",\"privilege\",\"profile\",\"recon\",\"recon/assoc\",\"repo\",\"selfservice/kba\",\"selfservice/terms\",\"scheduler/job\",\"scheduler/trigger\",\"schema\",\"sync\",\"sync/mappings\",\"system\",\"taskscanner\"]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "659" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.096Z", + "time": 72, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 72 + } + }, + { + "_id": "37717db1403fe0fca4c76faa7b01295c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 426, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/audit" + }, + "response": { + "bodySize": 1806, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1806, + "text": "{\"_id\":\"audit\",\"auditServiceConfig\":{\"availableAuditEventHandlers\":[\"org.forgerock.audit.handlers.csv.CsvAuditEventHandler\",\"org.forgerock.audit.handlers.jms.JmsAuditEventHandler\",\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RouterAuditEventHandler\",\"org.forgerock.audit.handlers.syslog.SyslogAuditEventHandler\"],\"caseInsensitiveFields\":[\"/access/http/request/headers\",\"/access/http/response/headers\"],\"filterPolicies\":{\"field\":{\"excludeIf\":[],\"includeIf\":[]}},\"handlerForQueries\":\"json\"},\"eventHandlers\":[{\"class\":\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"config\":{\"buffering\":{\"maxSize\":100000,\"writeInterval\":\"100 millis\"},\"enabled\":{\"$bool\":\"&{openidm.audit.handler.json.enabled|true}\"},\"logDirectory\":\"&{idm.data.dir}/audit\",\"name\":\"json\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.stdout.enabled|false}\"},\"name\":\"stdout\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.repo.enabled|false}\"},\"name\":\"repo\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}}],\"eventTopics\":{\"activity\":{\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]},\"passwordFields\":[\"password\"],\"watchedFields\":[]},\"config\":{\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]}}},\"exceptionFormatter\":{\"file\":\"bin/defaults/script/audit/stacktraceFormatter.js\",\"type\":\"text/javascript\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1806" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.097Z", + "time": 53, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 53 + } + }, + { + "_id": "653fe2843bcc7fd80db785216049a251", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/authentication" + }, + "response": { + "bodySize": 1574, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1574, + "text": "{\"_id\":\"authentication\",\"serverAuthContext\":{\"authModules\":[{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"defaultUserRoles\":[\"internal/role/openidm-reg\"],\"password\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"fzE1J3P9LZOmuCuecCDnaQ==\",\"iv\":\"nhI8UHymNRChGIyOC+5Sag==\",\"keySize\":32,\"mac\":\"XfF7VE/o5Shv6AqW1Xe3TQ==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"v0NHakffrjBJNL3zjhEOtg==\",\"stableId\":\"openidm-sym-default\"}}},\"queryOnResource\":\"internal/user\",\"username\":\"anonymous\"}},{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"defaultUserRoles\":[\"internal/role/openidm-authorized\",\"internal/role/openidm-admin\"],\"password\":\"&{openidm.admin.password}\",\"queryOnResource\":\"internal/user\",\"username\":\"openidm-admin\"}},{\"enabled\":true,\"name\":\"MANAGED_USER\",\"properties\":{\"augmentSecurityContext\":{\"source\":\"var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield);\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-authorized\"],\"propertyMapping\":{\"additionalUserFields\":[\"adminOfOrg\",\"ownerOfOrg\"],\"authenticationId\":\"username\",\"userCredential\":\"password\",\"userRoles\":\"authzRoles\"},\"queryId\":\"credential-query\",\"queryOnResource\":\"managed/user\"}}],\"sessionModule\":{\"name\":\"JWT_SESSION\",\"properties\":{\"enableDynamicRoles\":false,\"isHttpOnly\":true,\"maxTokenLifeMinutes\":120,\"sessionOnly\":true,\"tokenIdleTimeMinutes\":30}}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1574" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.100Z", + "time": 51, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 51 + } + }, + { + "_id": "aec85c9f6664d9880169fcf8d9d733db", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/cluster" + }, + "response": { + "bodySize": 179, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 179, + "text": "{\"_id\":\"cluster\",\"enabled\":true,\"instanceCheckInInterval\":5000,\"instanceCheckInOffset\":0,\"instanceId\":\"&{openidm.node.id}\",\"instanceRecoveryTimeout\":30000,\"instanceTimeout\":30000}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "179" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.101Z", + "time": 51, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 51 + } + }, + { + "_id": "8b83418cf28acd1b939879c72c951589", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 452, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/forgottenUsername" + }, + "response": { + "bodySize": 743, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 743, + "text": "{\"_id\":\"emailTemplate/forgottenUsername\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

\",\"fr\":\"{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Account Information - username\",\"fr\":\"Informations sur le compte - nom d'utilisateur\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "743" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.102Z", + "time": 88, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 88 + } + }, + { + "_id": "ba8f08c2397259b7af7094fa4d11c519", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/registration" + }, + "response": { + "bodySize": 431, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 431, + "text": "{\"_id\":\"emailTemplate/registration\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

This is your registration email.

Email verification link

\",\"fr\":\"

Ceci est votre mail d'inscription.

Lien de vérification email

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Register new account\",\"fr\":\"Créer un nouveau compte\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "431" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.103Z", + "time": 47, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 47 + } + }, + { + "_id": "71086d44381b7d81178ecc45f4989855", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/resetPassword" + }, + "response": { + "bodySize": 455, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 455, + "text": "{\"_id\":\"emailTemplate/resetPassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Click to reset your password

Password reset link

\",\"fr\":\"

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Reset your password\",\"fr\":\"Réinitialisez votre mot de passe\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "455" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.104Z", + "time": 55, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 55 + } + }, + { + "_id": "82e1f6e62e8145e19f78445f80160a4f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/updatePassword" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 273, + "text": "{\"_id\":\"emailTemplate/updatePassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Verify email to update password

Update password link

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Update your password\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "273" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.105Z", + "time": 49, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 49 + } + }, + { + "_id": "76be78f43255ef6c7f0ec368787fd6fa", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/welcome" + }, + "response": { + "bodySize": 420, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 420, + "text": "{\"_id\":\"emailTemplate/welcome\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Welcome to OpenIDM. Your username is '{{object.userName}}'.

\",\"fr\":\"

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Your account has been created\",\"fr\":\"Votre compte vient d’être créé !\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "420" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.107Z", + "time": 50, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 50 + } + }, + { + "_id": "8996c88e14b7ecbba49105dae49641fe", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 455, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getavailableuserstoassign" + }, + "response": { + "bodySize": 116, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 116, + "text": "{\"_id\":\"endpoint/getavailableuserstoassign\",\"file\":\"workflow/getavailableuserstoassign.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "116" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.108Z", + "time": 49, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 49 + } + }, + { + "_id": "e504a45bf842a314f67c6419cf0b82f3", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getprocessesforuser" + }, + "response": { + "bodySize": 104, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 104, + "text": "{\"_id\":\"endpoint/getprocessesforuser\",\"file\":\"workflow/getprocessesforuser.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "104" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.109Z", + "time": 59, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 59 + } + }, + { + "_id": "050b4885370dd0fec91299f44157fa98", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 444, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/mappingDetails" + }, + "response": { + "bodySize": 121, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 121, + "text": "{\"_id\":\"endpoint/mappingDetails\",\"context\":\"endpoint/mappingDetails\",\"file\":\"mappingDetails.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "121" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.110Z", + "time": 51, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 51 + } + }, + { + "_id": "340e7202bcebc2ae1e41e59ead8e6dbc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/gettasksview" + }, + "response": { + "bodySize": 90, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 90, + "text": "{\"_id\":\"endpoint/gettasksview\",\"file\":\"workflow/gettasksview.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "90" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.110Z", + "time": 73, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 73 + } + }, + { + "_id": "20416931a8bfbbe57c7d8022c7cdc8d8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 440, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/oauthproxy" + }, + "response": { + "bodySize": 109, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 109, + "text": "{\"_id\":\"endpoint/oauthproxy\",\"context\":\"endpoint/oauthproxy\",\"file\":\"oauthProxy.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "109" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.111Z", + "time": 76, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 76 + } + }, + { + "_id": "4e2d4c5a497442e856fc60f741d3d798", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 444, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/repairMetadata" + }, + "response": { + "bodySize": 91, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 91, + "text": "{\"_id\":\"endpoint/repairMetadata\",\"file\":\"meta/metadataScanner.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "91" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.112Z", + "time": 46, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 46 + } + }, + { + "_id": "950d0219de4cf4b9516ef30be6bb5836", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 461, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/removeRepoPathFromRelationships" + }, + "response": { + "bodySize": 126, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 126, + "text": "{\"_id\":\"endpoint/removeRepoPathFromRelationships\",\"file\":\"update/removeRepoPathFromRelationships.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "126" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.112Z", + "time": 62, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 62 + } + }, + { + "_id": "acd8e0a1115f4a5814282f28fd6a895e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 470, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/updateInternalUserAndInternalRoleEntries" + }, + "response": { + "bodySize": 144, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 144, + "text": "{\"_id\":\"endpoint/updateInternalUserAndInternalRoleEntries\",\"file\":\"update/updateInternalUserAndInternalRoleEntries.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "144" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.113Z", + "time": 41, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 41 + } + }, + { + "_id": "0a16240221eeea51a0aa371b1b13ad9b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/validateQueryFilter" + }, + "response": { + "bodySize": 326, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 326, + "text": "{\"_id\":\"endpoint/validateQueryFilter\",\"context\":\"util/validateQueryFilter\",\"source\":\"try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } };\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "326" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.114Z", + "time": 38, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 38 + } + }, + { + "_id": "663ad29a28f7c57cd35b8178c4fdb1a5", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 434, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/external.rest" + }, + "response": { + "bodySize": 86, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 86, + "text": "{\"_id\":\"external.rest\",\"hostnameVerifier\":\"&{openidm.external.rest.hostnameVerifier}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "86" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.114Z", + "time": 65, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 65 + } + }, + { + "_id": "b90c49fb8e97c6a49c1b99e8b28c3228", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 429, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/internal" + }, + "response": { + "bodySize": 353, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 353, + "text": "{\"_id\":\"internal\",\"objects\":[{\"name\":\"role\",\"properties\":{\"authzMembers\":{\"items\":{\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}]}}}},{\"name\":\"notification\",\"properties\":{\"target\":{\"reversePropertyName\":\"_notifications\"}}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "353" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.116Z", + "time": 49, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 49 + } + }, + { + "_id": "06e43b06c5889436306de832c9ef5b8e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/metrics" + }, + "response": { + "bodySize": 33, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 33, + "text": "{\"_id\":\"metrics\",\"enabled\":false}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "33" + } + ], + "headersSize": 2267, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.117Z", + "time": 38, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 38 + } + }, + { + "_id": "a691ccd864d3d6bd4cec893c7df77b9c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/managed" + }, + "response": { + "bodySize": 4987, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 4987, + "text": "[\"H4sIAAAAAAAA/w==\",\"7R1rc9y28a9gWM/ETu+kpJ3MtNcPHVmyO5rElmO7aWcsxQMdcTpEPJAGQcmKqv/exYsECJDHO1GW7PhDkhOeu4t9Y8FcJ+9pmsySFWb4jKTJJMlPfyNzUSazd9dJhkvx5orNk9l1QhYLaKcXZK8s6RlbESbKVzwvCBdXsECsG1azKzgj60VvJsmKCCwXL5ru96ptknBS5hWfk/08y+TKOYNOygThDGe7VUm4GSg4np+T1OxAiQQ9mXOCBTmAfwwQ+0vMJIInsCvDKwKLyTWgl+WCLugcyy3KNjB+J8wt8lIckIzAwjBUgwgDOflQUU4ef9P0T2laTOcZwawqvnmyw8kqvwBsGANsSHqYFgAdfpxn6ZGi+ARZjF8CePKvDxUpxZN/xJZ2were46UzauBmkp5XhcRIkI9i9zd8gcs5p4WQuJfzJVmp83pkfyZLIYrZ7u5vJQCiG3dyfrabcrwQ0+/+umsGThI6Vye4wFNDd8V3FWczOVcPm8HU2QL+RXg+P5/BMTCarmaGOWe4oLN/68krLKZmxYLkRSaPOecp9MHhS5aeqOOV2MHPApflJXTDzzNgUWaaS6ZWohn8JyUaT8lnkwTP53nFxBuBRSXZWADZi2XOyMtqdaoAkIeBs700BULKEXMKDGOb9/NUrq/W4LIZGgUBDr2gbC57eJ4ROQt7wqLxlKvjSix/f20GcVLkXA2ohcx2rZE6+Hl+ig/ZIpegcbIgnAAACl6gOYwm6QtcFJSdybb8khF+tDjiZxKEdEWZ/WNFJNqRvw4PFBoKBiNtlDl/nkysOCnBvNbq5toj9yyRh4oOD+Tk8hXhwA84S2YLnJVEkjSjcy3WIJuY45VaCNjklKYpYSDZXMn8rhJuNfzqUDLXHDMQlCmgKjAFOYGBABqsn9wAXCXBHJpOgXfsVob1S8GBIoqF4DwOPFANYz1LqfCmXlBy6TTctHlI4bzAVSZgEU2gFtfNkprdhlOBkzPysYC5vz7Wi/7Pkv/Jo8Snhh76AgsQtZACgleSAFTIPxpIRqGIXPvG45KAA/ZUHzIsBGcLAg7NKfwtqBLWtTRpML3AGU2n9dyuwza4+luPinAjQoAwFUSfmVLeV29Itmgw8WUEJFX+14cFFpQdr7yhUeGSjS+1jdOq0JiQtIPRb27qFm39VUvMACuf4JTAESSAFWb0d2w0pkbK8lGBxbLxKnZzfyzYGtCKUoYpyVIlu8okn5iu5zQTUpMncjGpPUH9/Uiu5MCTG3manFwALxDrVBhcFbm1wlTdr0mm7faSFjWDazS52zXRDKP40pycw1lqOwF26unVgRVgQ8UepnKpU6JDtCdho6VQ2t0AgTnHV8OZydHwofh46n97yzrzDVJE5mouHmeTmV5v4gmF4aGoTPh4v65NGsLIPVS04PkK2szeyPB1wPkxmWop5apQ5hdJdxOYBKNLKpaUIbEkqMVHLZDPOGbirdqwveq/ZBdSfZNapLzGENCY5fShN2hqUxqRccOcyhEpYQHoQMqVQIfyGFCLFhtoBbCxwMFUsgrwYj6niizPpXxLQ2x7HWQblk0CfYHdvs20RY9+0G7LOgVhrULDo5o4yWDl0aUuIkvHlMEt7E3jNYYaAvpybjQSsv7jbYTYdVHvSlHUe9R64vPXCqOJceRI70GOD01IrgBoRLmO1LluHk2KFU+82EiUu+g0okhHpWtE0VbhZcA2+zroHB4ugBPyE2Fn8oS+96MD6Z6sqtU00903E28a/min/eWHH1oT8Udv4klDFQPeNi61PsGQDEHUGtLEDkFOZBvTT+UvlIsqprHqRMJKr9CEy/GY1u3sgqcvtNkyjvG5vLVPSPQB5LX4Bki8qAnRDUAzZou9b9wgpYfwLWybUw6V3FZ+e5R7tpDjNpI2KWBTQhE2sbmiByvNNYQjCrRHhDZNDryc3EOjS7ck+HCPSK1oui8g2zM7Cu2tjeYaJai3rHWgxSW6WNt8NiKnbDkI0YKe6fSU8cRM3vl5bfy/TZSFt92u/a4HvYvmSU8m7/y/T2Ki7p9IF0kGSXYoxa08bM8J9DnIG9A+6rQMoHqUrIaqG5FtI5cmJFiTdQ9o9ZzyUiCTkXfJZLIAD1PEPahHlHAveR7Q6tD03kuetL35mJlSe0sRYPzj0z1k7i9C3ggdNszKS5Vim1elyFc/y0utOueofgLigf9mZoUxs10tCA9by4fWXPWjD83+wRIOQMF0u3BXBOi4So6BtrTq1hMjOjLu1bAP/E/Qg2QXklxVCrwq4mxZn1rHLVYzPTixWxrCWxq5jazKjYtIAOJbh0QbiOk6lijnuRpQcHqhpbVHsOMH5mM9XNWr+9TwKGQzaq5L1yn6NvZEzp9iPX9q9N4d6fY2rCOqd3vDGwmw7NVvTH9/zXk1Qaai0y0yXDZvZQoJWplnU5sQyVY55QStGoKNU1jNhX5P9qpHYBtmiaevNrHEXqYrxrHOzX/XJWbffc3neIdpxe4+LjGHXVLcyy2myNHlks6X6BA9JVnu5lw2u8ps1Y9ItlobCwH1EU3BwFKgNw/VchgFLYA4gjCX1/Ta3UGp5jQwKbCPhGx9iOrJR09E1SfN7WqazWhq7a5TvPO12ODu5VSR+0GK6SE6umTbimZdKReY61dNDR2IA7+qc3ZFxYu8lFvRdLVjF9hxBt105D+ApEIVKg4P9v+2QbDPqtU+LsogQ4AFjAefd/rf6RwXQJGsDGe+rFa9M1ml9bQ/MaUlzrL8kqTPhzgOveVqObhVtlRtE3feOagxPFerX/yCxzBW1h3o+4eXxakv6RwQR/TpnZLPUGhUHzL1oA8tg11zjAflmKRxSk5D2nj1qH35gaqQ+lJXyPJziIIBriAl0HSFgQthKQQtqCzInAKiOcTtHOIkaAUsLujcjSBO81zWU0ulZfftXJCRS71MA2F7lTA075FcjyLDAvBB52ADjvCGBeCCoOt1HZDcUSGHAeBrFUcY0fpHcOsCjgcQ3jZl7AOKM2Lodwa2G9dlBPw9YkkGj9/9hMV1ya3qrPjdllhxr7rqaxXmH6wK0y/asmpi7JqtjSovu+iyiVZo+tVpviUr4B7ppDE4CHCuRfmMgXDMm9BjnSaJivWI2qSM3CKpxPzndjPqAj2iK+m/oAr1g+zedV5YPVRfOwB0RBq1X6mFt012AKrfsUX4SqbNuBz+6/Hxn//5+N13078fH0/R8fHj4+MnJ0++fRTcVd0TLSPojEjN2iMKyCgNJxsmlu17rMpO9Qlwu8dsk4ck/w5xRjuMVnVgt69qrh9PfHAiwVSwwbV9FWxsX89b19qrUi9dnZevf0raL/oS990rjJmfT8sPFeZka5/QGGzn/WtTC/WeMvWC238Haw7Df+DaWGT/xY/rI4jQag58zymB1O5PT7TbYSMiDyn77vhfGNey44Z/eyL/YV4pjXw3m4Y1FCOEs5/+tZCNuwZ4rJ2ID3dZNWO5mzi3S+Yiqt9BjQtCy0ONFdQbeQ8zusgJJ9BC0Q2B3ABL0RIZNUnL/WbQgMuufVe/rJX83urgt5KzpaJxmicIbEOqoExpWWT4CpnriXIn2b5kt+MGMyKHSvM1r1PG0ENmry8od/ZQI3L38O4oFrd810rT9V5ofpqalOHqLiTT/YbmLZlbp/JY1KevtQlTH0TpVSNdLn7F6Idq3TudtW5PHcyF3lekQhUpPFG+QHaCVNt2hkIBN8o6pHZ3LW1acc2ygc9X94T3CbZnTYmit3gTzhkEHJS7izC3sJj+QcS262MfbZRaeFjfwuXFmJa4TiCq5vS0EuSZe3te82PieTHjRB97mqO9lZtw5JxcbR2FeO6YE4tcFOy9XndQEFI/3aqJo75eQ9n5zxVoDlvpY3VTE7S4YcoloWdLMTAykWLe0GPEGKVBIL5n3Y8kjFi+MMsZOr3S3lQD0k4SrWuv+4/UbI15xeLthtigfKvIa8XYnFCxNDTKnZUD4xtXplGy3XQBHOZXnGH922sUgwV+Uc3DK+cdbPeag9pU9bTZdN0Gd+me+zJ/v066c5j34Kq3tEn4VMOhohyLPtSDZcUjeHewNPiOLbJCnyeqdfpbLtHs12aihnU7Jgxgis5XupLYUiCVNwC/zcAAdGjOpFcs8h5nxkyeko+0FOu+F9X99nd46OTIyGgBVLPm1zDqk4VR4UH+0YIpP6e60ddmtg+shn50ZpRQydEmAwKm20dDHcUWNulV11mMpi78uojPX1mMnuUdp2KhVYfQK7qjf0lmUymNoD6egLZZeavybRMLRUVW91nfwI84hnu0PW7jf/TmFvR3CbO3sqzK1KVc/7Veb4wYdabjkbYJqFvvAEYKqRly10XS3yYM7OoEXS5B3dXf1QUlwEkt8hDnudPA1dQfK9zxIvLTimapVoBOTJ3mK0yZG1JHCVU/SKg/g9iEy/pFi4ybl7AD/LbD9IMTNVX/1CP3mj7dcNQeYV7HtCJLO23Qix41GtH0Dt/ynKx/v2Ootd3THUUnafq4j8eGT3cMDF3Pdj7b53Utfyz+rG48h2yzD4Xajxnf/v1Oh/KsZa3n8m4db1GZmBR5zFkb+N0wC0QY98oe5D0dch2oL4IB7+DZmK92b8mItV5+AI/I4vywnUJrpYS2/1LSkCf1TT7hC3v0+GnD2Q1fKI+nPrfg1c4IdphStGHtxmHpIIasvalBXpAafe9ekHEet/OClHN4ey/IwPDVC/pEcuz93x4eqhekeGtbOTfmNXyio9pR1DvoRsALg78IzryLz19s7R/FWSPOus6ZbPcFlTgHdH1NZZvvprQC6UG2wKpQmaPR81EdzN+BbcDtKL+GdoDFMLK1ncUYgOiGxqPJSgyitNlUf1Tk4XxM5FZE7cJpK0oebeTERM6zTkfdAWWDfFUN7T0wbhvRjci9ppoorp8iuU4AmQlSCqOs6xuGJunpWUCZj3UTj/Iq4RSX/sMCPciAIv8ARX3zf9h7AK8wbgAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.117Z", + "time": 71, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 71 + } + }, + { + "_id": "01b649998d9398654a57902d252545ba", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/profileUpdate" + }, + "response": { + "bodySize": 560, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 560, + "text": "{\"_id\":\"notification/profileUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"userName\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"preferences\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.profileUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your profile has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "560" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.118Z", + "time": 41, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 41 + } + }, + { + "_id": "b383c6f86886873c85a44fc34ee9c862", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/passwordUpdate" + }, + "response": { + "bodySize": 415, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 415, + "text": "{\"_id\":\"notification/passwordUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"password\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.passwordUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your password has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "415" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.118Z", + "time": 58, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 58 + } + }, + { + "_id": "fe870654434ff77b9195e8510c2343c5", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 440, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notificationFactory" + }, + "response": { + "bodySize": 180, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 180, + "text": "{\"_id\":\"notificationFactory\",\"enabled\":{\"$bool\":\"&{openidm.notifications|false}\"},\"threadPool\":{\"maxPoolThreads\":2,\"maxQueueSize\":20000,\"steadyPoolThreads\":1,\"threadKeepAlive\":60}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "180" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.119Z", + "time": 59, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 59 + } + }, + { + "_id": "00725d753c390a655105f030d582ccaa", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 427, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/policy" + }, + "response": { + "bodySize": 735, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 735, + "text": "[\"H4sIAAAAAAAA/w==\",\"zZVNb9swDIb/iy79gF1fh1wLFBiwQ7Edh2BgZcZlIEsuJbszgvz3UbabxF7mtOk29GTDpF4+/BC9UT8oVwtVOUO6VYmCPKdAzoK5I4NeLb4vE7WS153TzdqLH6N3NevOY6M0GF0bCJjfs6uQA0XDRvU+cpTxqSbGywuPZvUNuSGN91FOHC+ubgoMX7EgHxhi8L3I5ZXECm0VNQL+DNkaGvCaqQpqu6cQaxT2vXDGB1ri9pf4PIb3g4lIR1QdcEgBLZTRNzYj6ev8YqmAoexgV44fKM/R3j4CR6PK1HI7uLefYxs1WOtCqp0NQDbV4gg6oHhvlzHqEKYC758dz8QqyX5BW4RHtfg0DiEWKusyNb1ZdJejdMlKPBmfrJaks+uZZLvHlGAfaGhJ3ivsv8cEsaxC2xvmynN9Zn2C6DsGc+tsHCNJyc+ANmAoT1/ORPHdoZGqGPq7dVLrqUZuU7l1gjbpHFMjl7HA34F2hYhT2eUPzNBOSzDQxskd1++/NGnHJiUiW8zBjQdWRu3DjEpypGW7xqQd64getOxJf2egmBujs0v5qjZPLQdMqXtYow5T5jipr+c9A2vUYOSSvH9TyH9dokOmEexwMU9fwGHIE2VrY94afroEjh7vEktJlo+fWcXsDM6u4o+28MZ5lGChwPx0Gv0gn0bHBm1I+7/1kboJ94qKbAirovVPf/pfNQjUdkAJAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.122Z", + "time": 53, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 53 + } + }, + { + "_id": "3b7ebd7cf01869d6ce8cf4a5c9da9642", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 441, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privilegeAssignments" + }, + "response": { + "bodySize": 493, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 493, + "text": "{\"_id\":\"privilegeAssignments\",\"privilegeAssignments\":[{\"name\":\"ownerPrivileges\",\"privileges\":[\"owner-view-update-delete-orgs\",\"owner-create-orgs\",\"owner-view-update-delete-admins-and-members\",\"owner-create-admins\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"ownerOfOrg\"},{\"name\":\"adminPrivileges\",\"privileges\":[\"admin-view-update-delete-orgs\",\"admin-create-orgs\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"adminOfOrg\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "493" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.122Z", + "time": 67, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 67 + } + }, + { + "_id": "47768b99c96433fcc0faa9554a4e372e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 431, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privileges" + }, + "response": { + "bodySize": 919, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 919, + "text": "[\"H4sIAAAAAAAA/w==\",\"7VhNj9owEP0raU6tBErP3KKFSkjtstrtx6G7ikw8CVYdO7UdEIv4750EliwsaWarVkKVTxDr+WViP7+Z8SZMBA9HYWnEUkjIwYaD5w+j75uQpSlY+0GyfP/snBHzygHOU6wAnGGA8ZmS63CUMWlhOzhGcbCpEaUTWvWD9UqBsUc4Z6oXMMYLoWw/XQHF/JTvLLBkBpTrx6ULITlCqYzTMfFjKMAdZUyFN2tJ5511wh8GKIN6/2oJ4EMmpAODE6OnVwTwM7gPNxvU03Z7HwbaBNEx6wkCX9KoZx/lcClgNaxKzhwMOUjAH23yRo/MLeqdZIrlwCMcZUo8sr2cSjCFsHYfW/h1OvmGo19uxvHnCf4ZTz5O8M9D88VeyV7JnUrezQxKc6rMFCn+UI1Xt5OYor7KgrkmKbBk1q604f3IXCxB0UgtQQMFE/IvHxBcEV0pd+eYqwi6dugK5UIruK7qk0BYK20dkzFHkVsCfyrcmkp6pTlhXZvPMwRSpHRwY/RSqJTAa7QEimM0GiUsFKvc4vGWRmqg1MYRgJBlgCdtCUTiAz7G85OrAg8jYZZk1t2tVdqP/DFnU5Vpwg4byAC9IKVEneJJx0iBf2JlKVRONvJZNjM5YWtqhyRiG7t6iT1nk89ieKVNHs/cJfUkQRvEvJ6UkqWw0JKDSRJSjt9lvyFTfNgmuBOPrd2xM9PvE/wh5Xuv9V7rvdZ77X/mtdF7rEwDtMkgasNsB9+8jdqIcPBdRxF7aDZIFkstXy+qeereAt87/ave6Sn07luA+DyilWlD4W8BvJAv7RJgJ0x/CeALU1+Y+sL0kgrTTo+8zDuAzgzvG3/vr95fvb96f/1d348tfhtn3eL3Nf5HhesrPfZQsz5sfwGv8MZVJCAAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.123Z", + "time": 61, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 61 + } + }, + { + "_id": "f72fc2cc21d104762b3c16db0f0db1bc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/process/access" + }, + "response": { + "bodySize": 246, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 246, + "text": "{\"_id\":\"process/access\",\"workflowAccess\":[{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-authorized\"}},{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-admin\"}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "246" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.123Z", + "time": 65, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 65 + } + }, + { + "_id": "bc1b98e58c7b710a4bc8518787bef019", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.ds" + }, + "response": { + "bodySize": 4251, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 4251, + "text": "[\"H4sIAAAAAAAA/w==\",\"7Vxtc9s2Ev4rGU7nPtyJcS5tOklm/CGWnCZNnLiW3bu5NJOBSEhCTIEMCNpWPP7v3cULCUkgRUqyfHPXfIlMLJ5d7BsWL+Rt8IXFwctA0Cx9HOdBL4jS2Yxw+PnyNohpQiUNZyTLGJ+ECeOX6vmXbwUV89cskVRA5wNsOJ9n9BH99uiP4Idb0+HujwAA04wKIlnKgXJw/P74/Di461loScSEypDFeThORShohHSrHFTD29gyMH/WMwAOdDaicUxhdGOS5LQXJDHJ+innNELi1ySSqWBUDWjEeIz/R2XzaZomQ/adBi+fPek5z4c0KgSTc+CVg/Dy/P0QRJhS+HlEiXzLQeArkgxRQFTiz0+c1nM2o2khT1iSsJLin0/gXy/IBJsRMX8PQg4Bggpo+nQbTNNccjIDOXCcPP4ajkUap2FMrx5HCclzFj0Gk4EMWSpk8PLpj89f3H3uBbmCXwH8DIoRaSpxsKSQU8oli4zyboOczbKEWoUMUKEFiw9JPGMcOODDU2B5nQqlrR8iMc9kij8lWB+ob0INEVKu2hC3F4A+CoUasWyq7PnqeHjQP+ofnL7rD5+dkjgGbwHCmEgCrcmvB0c/n7+gL/qDd2/6H56f31wOfpocHgIFu4L241hQ8f36+OLi8s0vz54/jd4Prp9dq/ZLOtdW+/FpL5iRCHnJ+Yvxvy9k8lNGb35J3nyM/tE/0mhZIbI0R8FZPAM18jGbPF4QPScJ6Co4ens+fJfwU3r+7DKJiuP/jPjku+YIXjBK6NvYGAiAwnw+A/uMSQF97/AfyM1h4Ey+FmCql9rd8PGM3FQe+UpKOsskmOkZGInmaSEieqJDSUejgnSf8HPokRCp3KM4nFAOXKJeHB0aWexP12/wmXEd9RNEwnC5yRIWMRc+Sooc3JnGKtx0qDKTGZY415B2lwTCefQV9NHHxxicn9AFP6pn0DgWIWpYcQlLpueK31sQ7TMGEiYEaSJbpbfbgOVn9FvBBKYDKQqTDUDjgo0KNQjgAvjGj00g9IJrMBoZsURHfCQgiOlHnsxRYyYJIfwy2IKYHmDoLUuZ1/WvKEuYrzl4p3KsONdue0Bs999ttC3YKOKHNnQfAQWDUEtF3oPHur9P8ZCUo/EkzEy/8Mr2w1DVbSXXUAW5j3Zzk0S8o0WiKY0uh8UoBww+8WrWyK0ow7wi9ViIcoxsr30NiqXwdP5KrohSZUN3pAmV//sQZkRGU6cXauwE4p8pA9cqzWCr3pV5vAwYL3X1nvKJnDbICsSVusJEk/vcmubyjOJsQxfmivXWNowQABxfI5T+tMpqwfmjKREwn1MxpHJfrl/yDHOoYB7W8UmSpNcXXOfSMaNx3wqXd1K+wgkLB6gaptdJlxXfxUUXFPjfGICM953hNQFhdCwMxwO44LAxU1M+1Gf7cteK40MnaZLTIeU5k+yKmgGa+rO1nyIGqNmA2HHoks3jo7ucFSo9wuqEdpLaMcGYJd6c/PAu/78yJWh5jsBR4n2FmGYZjogr5sME2UP7EbmxCl7vRuSmUla9F4G3tYcEz1wLueAtlvo0xUUQXV3juC5jibo5TIa95k7pvLD8ts179BGznrTDGoKLkgkdQhKc1Zeb7ZOdRq/Gn2v8MNcMmr3m1YS2dRnA9IHZ9qUKuqX0FXpTBW2p3jAc3LyfFlw2iF2CTjV9GKkOHuAqZ3SsqbzpqcnxBc3QJ5YKxn1kS8vZqTD/3yqTh8/S/ZTnNCpQ1iqrth4sxmFUIbRLtfCQJQT3UPc6OVds/5qgF2bTARuPqaA86pYhF+bYuMJoNn7B2beC7j/ZaL5/pZoH9LcLj+k7eduKDdf5Wk7FgI4Zp/HvTMiCJAu1wLLbGZpHJVE7r0MuWOwgm/BKYyxUDYZutWmf+0O287nq1GVHqNzgVfw8psVsOuBdCxXsFcb+9TqoHGpheUSn5IrpGqguBAxpOLK0za7fetgNwTA2h5Ldxmt6efAmIi0yrcCavoqiRlkLodl6eM3BCgGUNZXfut1fthY7WDpoGG9wMzxf5SQ5EGmyGsVpcYjP8x78sJQ7OYIy5zEWM1Tc9xm/sFb8foIn2jZvevRrhJl/0MfFqs8ZqiOojhNPCZZ4UPlxWDbFKkVWopgtljNq53IdjDGzU1PNMVVF49svo3kkWFYH4TZ7euuj71rOqtm3MBPsiiV0Quu1VYNY9lw+bMN9rFkGS9gEa2YpCDhDZ3QLoapmi+E51SvdXBnI4+b4fPdu7jlpLV1eSbLP49Vyn6/e/KtbgZUK8U6KT3PqEst9aUsx3aeSxkzksvEMGkUKLZknVLD9NyhM8LTHO9W6ON9KwhokW180gdQVEvrKyvrBlHTeGSJJo0vvFQXVcG+GB/C9Gp6nMW1WFUgUIpXv+sGdvb5wAINKI5+6VANmGEW3id4gOTM+GUKak3RizrnqLjkobvqnK2+UMMrlgH9QUDjuuqm5QtnCDC0kcutAzvIpXulad4NDQ2l6yfwzFstfQZad52ztfRCNxnJi6b07O+UlnvVQltgXkqpoODPFQz9NEn1VqR2w7mVLj6jqXXsdZlNOuncbTjioYmT5KGWDh+lj2HUOWzS7pmWvKim8uKNl0/BVv0q45TA8KCVpfQdK9dPddpt9sOhsbwAlQUhqrUtmIzYp0iLXN7X0UFrcfXLBLYS2tdYQi/03d24iWltx1uBXfe49OttOucsiYr/GGXhXYT+jeU78JzA1otke9WADKglLukPGup+vyJ+SvIuMmt4D1PIinwPVMC3kTBako+9VfWpzsA2ZLqiLHR80vUPUyqJLuJsOtTPFBvpY6viwk5AlM4t134ThzFNnaSFVYH+6hSRPx+wG+pQTS1W3uZNJeUneTCt3ePc7n/Po4FtBPTdEodRTDVjzIdl9lcqIrSXYZ72Mt5Lpjfd0dlmu0NKu7ABoyAGRTWnHwVHkMam5frk2WVdIDbma02uj4TZAQJ1aeywNbu2KwkGpWVZYBzijV61wKmofVBJ3GBhQ1w1MdInnCrFdYrNULTVnyWvmDtnWtTSlDwJIXrUfJP6qK9tUeWpeKVh9K+Dg774MYho3yR1oLt/mokYMlTU11W/4btCxqoTk/AQvOoNoZ0WiymuY499OeCror5ZSUfQ1TJmM2mQqyxpog8/mYIJ5X7zQLRu9dzFm/o1sfL4RIJvpN4FWIXXLFqB+m28Da/c5eSqhqq3eRFrm4bZvu+1Z42gui229raWDLYx6ZTbU9QT+WtrZ/+L222J3f2WneUbx/Sv/bjO23ZPm96Nsk8l0NLfXtdLJVirGcZnLbz7lOs0bxZAVxRubpnErYHw+4TPKvUmlau1tw6/WOQxiWPHZk7+sMl51mzanY47gjQdls47HeyXsVud76rx0pzzV2eiakLC0qZgQzr7Xpn23/X7dy+W0ZwdbUMKKi6mXb9tbCKk/jj+KyVaHvlOWxPBXW64ZEVRdZK3huDDCRs4dg0CTbz3eNafMXh+pO3pOr3mHASjqreU3+u84gtJq5tXzd3ReLq07GtIb3E1XNO43mJHDtkF8orHOdDbrEs/+yyFu7ux4a2BhWIs5uL3pnGnMZ7jOoSe2u1niOkrTJYf7dRR1eW83jnKhB9zFUWquVNgqfMkKzlcs1o3I1KzrnWO1+vf7xtKKY0P/VbItr106CLmwXPIL6sx/Gwq5kCLtly92mCF7u8gETk2pw3a3qcC5OraNqRWMyhNLN+eWhFXX4eqMvlxOuhlLMfNdxewSKwakiwKXk9tKFt2dB25g3hYu6JQduxBSwe1aRnu56/gmY/r7PnV3LbLrZaJ1ZwOCkhhPBgYsj4iI/wWN4OsO0/ckl/0p4SBrA1eXYmOW+Okl0ZAKlkve0l/vac3XJmjs5N/e4LVhXN6BgHFOoHNeboKv1I0rVBttawia6MlnyjLvRbEFgh0WHS7utkXHmYPVsupw2avtbHwRMwY23tqrbNxIx2Vv/67UduAF86MWbDO4DE/ovJ5gmjaANUe88il+futjVpZNs6socl0DSi698sPkcKHYneoXgV+qI0sIG11ky0LwD0WSvE7FCQNWfHLqVI06ciE0TwDf+fMUqjqkvqInaczGc6dpWIykoHSgvsNmZkx9CdN83+xWHU2od/TORZFLXecK/dWD4G+3+MksxiEOk+RxzMTdge16IJEctzQx4r0g9hWvFmAKJ9NvKnix9JXT4Nd3+CE26TRg5DF1kPUnYFalveZOAAA=\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.124Z", + "time": 58, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 58 + } + }, + { + "_id": "9f231197089ead48083fbb1440010a11", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 427, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/router" + }, + "response": { + "bodySize": 619, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 619, + "text": "{\"_id\":\"router\",\"filters\":[{\"methods\":[\"create\",\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"},{\"methods\":[\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^config/managed$\"},{\"condition\":{\"source\":\"(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0)\",\"type\":\"text/javascript\"},\"onResponse\":{\"source\":\"require('relationshipFilter').filterResponse()\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "619" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.125Z", + "time": 32, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 32 + } + }, + { + "_id": "bd5d9cbc1b0e2e075e3f77bb51e59736", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 430, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.init" + }, + "response": { + "bodySize": 789, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 789, + "text": "{\"_id\":\"repo.init\",\"insert\":{\"internal/role\":[{\"description\":\"Administrative access\",\"id\":\"openidm-admin\",\"name\":\"openidm-admin\"},{\"description\":\"Basic minimum user\",\"id\":\"openidm-authorized\",\"name\":\"openidm-authorized\"},{\"description\":\"Anonymous access\",\"id\":\"openidm-reg\",\"name\":\"openidm-reg\"},{\"description\":\"Authenticated via certificate\",\"id\":\"openidm-cert\",\"name\":\"openidm-cert\"},{\"description\":\"Allowed to reassign workflow tasks\",\"id\":\"openidm-tasks-manager\",\"name\":\"openidm-tasks-manager\"},{\"description\":\"Platform provisioning access\",\"id\":\"platform-provisioning\",\"name\":\"platform-provisioning\"}],\"internal/user\":[{\"id\":\"openidm-admin\",\"password\":\"&{openidm.admin.password}\"},{\"id\":\"anonymous\",\"password\":\"anonymous\"},{\"id\":\"idm-provisioning\"},{\"id\":\"connector-server-client\"}]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "789" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.125Z", + "time": 34, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 34 + } + }, + { + "_id": "ab8521e6a907278952a8693cbcfb761e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_activate" + }, + "response": { + "bodySize": 838, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 838, + "text": "{\"_id\":\"schedule/taskscan_activate\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/activeDate le \\\"${Time.nowWithOffset}\\\") AND (!(/inactiveDate pr) or /inactiveDate ge \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/activateAccount/task-completed\",\"started\":\"/activateAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"active\\\" }];\\n\\nlogger.debug(\\\"Performing Activate Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "838" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.126Z", + "time": 55, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 55 + } + }, + { + "_id": "42626b5d9ae06814ca0230b793cb2d1f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_expire" + }, + "response": { + "bodySize": 830, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 830, + "text": "{\"_id\":\"schedule/taskscan_expire\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/inactiveDate lt \\\"${Time.nowWithOffset}\\\") AND (!(/activeDate pr) or /activeDate le \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/expireAccount/task-completed\",\"started\":\"/expireAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"inactive\\\" }];\\n\\nlogger.debug(\\\"Performing Expire Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "830" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.126Z", + "time": 57, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 57 + } + }, + { + "_id": "0b8355f1ac5870bd599a7d814921a98f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 427, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/script" + }, + "response": { + "bodySize": 939, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 939, + "text": "{\"_id\":\"script\",\"ECMAScript\":{\"javascript.optimization.level\":9,\"javascript.recompile.minimumInterval\":60000},\"Groovy\":{\"#groovy.disabled.global.ast.transformations\":\"\",\"#groovy.errors.tolerance\":10,\"#groovy.output.debug\":false,\"#groovy.output.verbose\":false,\"#groovy.script.base\":\"#any class extends groovy.lang.Script\",\"#groovy.script.extension\":\".groovy\",\"#groovy.target.bytecode\":\"1.8\",\"#groovy.target.directory\":\"&{idm.data.dir}/classes\",\"#groovy.target.indy\":true,\"#groovy.warnings\":\"likely errors #othere values [none,likely,possible,paranoia]\",\"groovy.classpath\":\"&{idm.install.dir}/lib\",\"groovy.recompile\":true,\"groovy.recompile.minimumInterval\":60000,\"groovy.source.encoding\":\"UTF-8\"},\"properties\":{},\"sources\":{\"default\":{\"directory\":\"&{idm.install.dir}/bin/defaults/script\"},\"install\":{\"directory\":\"&{idm.install.dir}\"},\"project\":{\"directory\":\"&{idm.instance.dir}\"},\"project-script\":{\"directory\":\"&{idm.instance.dir}/script\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "939" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.127Z", + "time": 29, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 29 + } + }, + { + "_id": "5fb111d428ad18346dc15d5fa8e1e840", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 430, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/scheduler" + }, + "response": { + "bodySize": 156, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 156, + "text": "{\"_id\":\"scheduler\",\"scheduler\":{\"executePersistentSchedules\":{\"$bool\":\"&{openidm.scheduler.execute.persistent.schedules}\"}},\"threadPool\":{\"threadCount\":10}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "156" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.127Z", + "time": 52, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 52 + } + }, + { + "_id": "372152e7418e4bbb7f1bb2fd5327ca2f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 428, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/secrets" + }, + "response": { + "bodySize": 1829, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1829, + "text": "{\"_id\":\"secrets\",\"stores\":[{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}\",\"mappings\":[{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.default\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.config.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.password.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"],\"secretId\":\"idm.jwt.session.module.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}\"],\"secretId\":\"idm.jwt.session.module.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"selfservice\"],\"secretId\":\"idm.selfservice.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}\"],\"secretId\":\"idm.selfservice.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.assignment.attribute.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]}],\"providerName\":\"&{openidm.keystore.provider|SunJCE}\",\"storePassword\":\"&{openidm.keystore.password|changeit}\",\"storetype\":\"&{openidm.keystore.type|JCEKS}\"},\"name\":\"mainKeyStore\"},{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.truststore.location|&{idm.install.dir}/security/truststore}\",\"mappings\":[],\"providerName\":\"&{openidm.truststore.provider|SUN}\",\"storePassword\":\"&{openidm.truststore.password|changeit}\",\"storetype\":\"&{openidm.truststore.type|JKS}\"},\"name\":\"mainTrustStore\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1829" + } + ], + "headersSize": 2269, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.128Z", + "time": 41, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 41 + } + }, + { + "_id": "31ff64d3e984c38b0c14569db37889ad", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 436, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.kba" + }, + "response": { + "bodySize": 290, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 290, + "text": "{\"_id\":\"selfservice.kba\",\"kbaPropertyName\":\"kbaInfo\",\"minimumAnswersToDefine\":2,\"minimumAnswersToVerify\":1,\"questions\":{\"1\":{\"en\":\"What's your favorite color?\",\"en_GB\":\"What is your favourite colour?\",\"fr\":\"Quelle est votre couleur préférée?\"},\"2\":{\"en\":\"Who was your first employer?\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "290" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.128Z", + "time": 48, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 48 + } + }, + { + "_id": "b45a1aa28d4bff434764448f028e4059", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 444, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.propertymap" + }, + "response": { + "bodySize": 713, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 713, + "text": "{\"_id\":\"selfservice.propertymap\",\"properties\":[{\"source\":\"givenName\",\"target\":\"givenName\"},{\"source\":\"familyName\",\"target\":\"sn\"},{\"source\":\"email\",\"target\":\"mail\"},{\"condition\":\"/object/postalAddress pr\",\"source\":\"postalAddress\",\"target\":\"postalAddress\"},{\"condition\":\"/object/addressLocality pr\",\"source\":\"addressLocality\",\"target\":\"city\"},{\"condition\":\"/object/addressRegion pr\",\"source\":\"addressRegion\",\"target\":\"stateProvince\"},{\"condition\":\"/object/postalCode pr\",\"source\":\"postalCode\",\"target\":\"postalCode\"},{\"condition\":\"/object/country pr\",\"source\":\"country\",\"target\":\"country\"},{\"condition\":\"/object/phone pr\",\"source\":\"phone\",\"target\":\"telephoneNumber\"},{\"source\":\"username\",\"target\":\"userName\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "713" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.129Z", + "time": 45, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 45 + } + }, + { + "_id": "84ee2e3e3f7cef3023dd7241ced2b77a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 438, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.terms" + }, + "response": { + "bodySize": 730, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 730, + "text": "{\"_id\":\"selfservice.terms\",\"active\":\"0.0\",\"uiConfig\":{\"buttonText\":\"Accept\",\"displayName\":\"We've updated our terms\",\"purpose\":\"You must accept the updated terms in order to proceed.\"},\"versions\":[{\"createDate\":\"2019-10-28T04:20:11.320Z\",\"termsTranslations\":{\"en\":\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"},\"version\":\"0.0\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "730" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.130Z", + "time": 28, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 28 + } + }, + { + "_id": "6cbf25336f75bed9003dbd20bd94c130", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 439, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/cors" + }, + "response": { + "bodySize": 402, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 402, + "text": "{\"_id\":\"servletfilter/cors\",\"filterClass\":\"org.eclipse.jetty.ee10.servlets.CrossOriginFilter\",\"initParams\":{\"allowCredentials\":true,\"allowedHeaders\":\"accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with\",\"allowedMethods\":\"GET,POST,PUT,DELETE,PATCH\",\"allowedOrigins\":\"https://localhost:&{openidm.port.https}\",\"chainPreflight\":false},\"urlPatterns\":[\"/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "402" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.130Z", + "time": 37, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 37 + } + }, + { + "_id": "4734d7816408991b39320106367532a9", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 442, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/payload" + }, + "response": { + "bodySize": 191, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 191, + "text": "{\"_id\":\"servletfilter/payload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":5},\"urlPatterns\":[\"&{openidm.servlet.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "191" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.131Z", + "time": 59, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 59 + } + }, + { + "_id": "479d6a831987c6fbbdfccaa366e89114", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 441, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/upload" + }, + "response": { + "bodySize": 198, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 198, + "text": "{\"_id\":\"servletfilter/upload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":50},\"urlPatterns\":[\"&{openidm.servlet.upload.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "198" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.131Z", + "time": 61, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 61 + } + }, + { + "_id": "c6aed7f604cb532801a9b95de9922a3c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 437, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/admin" + }, + "response": { + "bodySize": 244, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 244, + "text": "{\"_id\":\"ui.context/admin\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/admin/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/admin/extension\",\"responseHeaders\":{\"X-Frame-Options\":\"SAMEORIGIN\"},\"urlContextRoot\":\"/admin\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "244" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.132Z", + "time": 23, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 23 + } + }, + { + "_id": "17421c1d759655006a294261cc77fd75", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 439, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/enduser" + }, + "response": { + "bodySize": 174, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 174, + "text": "{\"_id\":\"ui.context/enduser\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/enduser\",\"enabled\":true,\"responseHeaders\":{\"X-Frame-Options\":\"DENY\"},\"urlContextRoot\":\"/\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "174" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.133Z", + "time": 33, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 33 + } + }, + { + "_id": "05bacc81732e6f86cfe0b782cdde4f67", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/api" + }, + "response": { + "bodySize": 205, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 205, + "text": "{\"_id\":\"ui.context/api\",\"authEnabled\":true,\"cacheEnabled\":false,\"defaultDir\":\"&{idm.install.dir}/ui/api/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/api/extension\",\"urlContextRoot\":\"/api\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "205" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.133Z", + "time": 33, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 33 + } + }, + { + "_id": "61e2740b542f064697798e2a02431f03", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 437, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/oauth" + }, + "response": { + "bodySize": 199, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 199, + "text": "{\"_id\":\"ui.context/oauth\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/oauth/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/oauth/extension\",\"urlContextRoot\":\"/oauthReturn\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "199" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.134Z", + "time": 47, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 47 + } + }, + { + "_id": "eadbb4ad948866a207831ff04c796efb", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 437, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/configuration" + }, + "response": { + "bodySize": 588, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 588, + "text": "{\"_id\":\"ui/configuration\",\"configuration\":{\"defaultNotificationType\":\"info\",\"forgotUsername\":false,\"lang\":\"en\",\"notificationTypes\":{\"error\":{\"iconPath\":\"images/notifications/error.png\",\"name\":\"common.notification.types.error\"},\"info\":{\"iconPath\":\"images/notifications/info.png\",\"name\":\"common.notification.types.info\"},\"warning\":{\"iconPath\":\"images/notifications/warning.png\",\"name\":\"common.notification.types.warning\"}},\"passwordReset\":false,\"passwordResetLink\":\"\",\"roles\":{\"internal/role/openidm-admin\":\"ui-admin\",\"internal/role/openidm-authorized\":\"ui-user\"},\"selfRegistration\":false}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "588" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.134Z", + "time": 55, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 55 + } + }, + { + "_id": "dccde179c43e59ffe92f719da481c2cf", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 433, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/dashboard" + }, + "response": { + "bodySize": 1031, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 1031, + "text": "[\"H4sIAAAAAAAA/w==\",\"rVbbbtpAEP0VtHk1spNQpeWtTVq1UlKlSao+RFE17A72ivWus5eQi/j3ztqAMRBIqyKBzM6eM7czAy/stxRsyIJMBbhiZMAKljAQpdRniwPHhrcvTLozHENQng29DZgwDSUS9EeQfNK79mA9IadS5OgbBF9iC4tjunrAjdbIvbEuBSFSui/piCxj6AvwMAKHbMn8UYje6QLBZknLU0JVSZ1vkpCB3naCtqU5tQgeexcNpsNj0ZlgOaYlaMhRpNYoTJV0vkvLC+STvrsPYLFvWuqLGta7IpRbC7Dh2wiQclTouzme4YPk2ME7VGOHNp6ngR4s5hSUBS+N7hLmCKu5Gj2WebAU0wriVeoKnJsaK6gO6N/GezmHkAPC7K5mjHxLNePxRg1/0qFbC9R7apjbBW7jun5yHsveJYHRouaxIXcJc/I53lNg86gs/1TFr/dRs41kZ3fR54q4x6Bcq+457YXRkkQY9dPVuMIctbgCTfTDF1Ya7QsyvMuy5Ch+0DujMKaIEzo+zJLjLPlAtpMseX8YLU+xztFCr2RQf9bPDZ7As4SV8Dj3wA6OBoOjY05R0IQuD0eZGPA4uNvThSBk06rtdq4CZWmpID64HfdcXYyvCMoXX4JS9dURWF7ESsb2qHp+t6MVOH+FsZF7an411xFJrDIbW4X0SwsB49YC7uUDNspZen3suxIotjY7EzRl1+TVguOou886zqP4e3Tjermd3ux/a2UWg3NOo7KvOJ+Ckxqd216c3EJV3DSsNCyVxH7TnIRV1jxIEUs1vGWxZpEwXYwzu3s9ASdz/U27pasb6VU9G3Tej4YY8JpnUsXS82u8i+1Tb5JN+u6m2epFUSn+Q4Iap6vrcjOU7zjtdW+sNHOFTpb4bHS9CQrqKEXCspNmVoPH+msWlxfmEOXT/JLO2kIbLkGdm1zqdb01pn+WK23kAGo9yb0ku6XoEOia86v/HDqT+iaxU19aAircfoZfqLihCAg8+wMKiFQxwQgAAA==\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.135Z", + "time": 34, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 34 + } + }, + { + "_id": "fb55717b678608c3e9704a46f637ba00", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 431, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/profile" + }, + "response": { + "bodySize": 891, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 891, + "text": "{\"_id\":\"ui/profile\",\"tabs\":[{\"name\":\"personalInfoTab\",\"view\":\"org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab\"},{\"name\":\"signInAndSecurity\",\"view\":\"org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab\"},{\"name\":\"preference\",\"view\":\"org/forgerock/openidm/ui/user/profile/PreferencesTab\"},{\"name\":\"trustedDevice\",\"view\":\"org/forgerock/openidm/ui/user/profile/TrustedDevicesTab\"},{\"name\":\"oauthApplication\",\"view\":\"org/forgerock/openidm/ui/user/profile/OauthApplicationsTab\"},{\"name\":\"privacyAndConsent\",\"view\":\"org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab\"},{\"name\":\"sharing\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/SharingTab\"},{\"name\":\"auditHistory\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/ActivityTab\"},{\"name\":\"accountControls\",\"view\":\"org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "891" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.135Z", + "time": 48, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 48 + } + }, + { + "_id": "2cf6006aa7d3908fe4bd8d43fcbca10d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 435, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/themeconfig" + }, + "response": { + "bodySize": 421, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 421, + "text": "{\"_id\":\"ui/themeconfig\",\"icon\":\"favicon.ico\",\"path\":\"\",\"settings\":{\"footer\":{\"mailto\":\"info@pingidentity.com\"},\"loginLogo\":{\"alt\":\"Ping Identity\",\"height\":\"120px\",\"src\":\"images/login-logo-dark.png\",\"title\":\"Ping Identity\",\"width\":\"120px\"},\"logo\":{\"alt\":\"Ping Identity\",\"src\":\"images/logo-horizontal-white.png\",\"title\":\"Ping Identity\"}},\"stylesheets\":[\"css/bootstrap-3.4.1-custom.css\",\"css/structure.css\",\"css/theme.css\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "421" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.136Z", + "time": 37, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 37 + } + }, + { + "_id": "3467e6eff41c0252746cc812803f797c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 430, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver" + }, + "response": { + "bodySize": 169, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 169, + "text": "{\"_id\":\"webserver\",\"gzip\":{\"enabled\":true,\"includedMethods\":[\"GET\"]},\"maxThreads\":{\"$int\":\"&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "169" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.136Z", + "time": 46, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 46 + } + }, + { + "_id": "8c44f974db12734398c806d9a1cbcd18", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/https" + }, + "response": { + "bodySize": 217, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 217, + "text": "{\"_id\":\"webserver.listener/https\",\"enabled\":{\"$bool\":\"&{openidm.https.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.https|8443}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "217" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.137Z", + "time": 16, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 16 + } + }, + { + "_id": "7415ea0af3a4981f3e3feddab0df5329", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 444, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/http" + }, + "response": { + "bodySize": 128, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 128, + "text": "{\"_id\":\"webserver.listener/http\",\"enabled\":{\"$bool\":\"&{openidm.http.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.http|8080}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "128" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.137Z", + "time": 51, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 51 + } + }, + { + "_id": "b400d9fa8acbf142278ba15f3b31ee91", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 450, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/mutualAuth" + }, + "response": { + "bodySize": 250, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 250, + "text": "{\"_id\":\"webserver.listener/mutualAuth\",\"enabled\":{\"$bool\":\"&{openidm.mutualauth.enabled|true}\"},\"mutualAuth\":true,\"port\":{\"$int\":\"&{openidm.port.mutualauth|8444}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "250" + } + ], + "headersSize": 2268, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.138Z", + "time": 46, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 46 + } + }, + { + "_id": "1c44d5ed6a798188a1711859e5a9fceb", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.0.4-0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-43939b00-212a-4976-9de4-7141e3d98e5d" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 534, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "1000" + }, + { + "name": "_fields", + "value": "condition,description,name,privileges,temporalConstraints" + } + ], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role?_queryFilter=true&_pageSize=1000&_fields=condition%2Cdescription%2Cname%2Cprivileges%2CtemporalConstraints" + }, + "response": { + "bodySize": 1363, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1363, + "text": "{\"result\":[{\"_id\":\"openidm-admin\",\"_rev\":\"d58a3526-b2f3-40b9-8d59-b1e1515ff88c-13257\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-admin\",\"description\":\"Administrative access\",\"temporalConstraints\":[]},{\"_id\":\"openidm-authorized\",\"_rev\":\"d58a3526-b2f3-40b9-8d59-b1e1515ff88c-13258\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-authorized\",\"description\":\"Basic minimum user\",\"temporalConstraints\":[]},{\"_id\":\"openidm-reg\",\"_rev\":\"d58a3526-b2f3-40b9-8d59-b1e1515ff88c-13260\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-reg\",\"description\":\"Anonymous access\",\"temporalConstraints\":[]},{\"_id\":\"openidm-cert\",\"_rev\":\"d58a3526-b2f3-40b9-8d59-b1e1515ff88c-13259\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-cert\",\"description\":\"Authenticated via certificate\",\"temporalConstraints\":[]},{\"_id\":\"openidm-tasks-manager\",\"_rev\":\"d58a3526-b2f3-40b9-8d59-b1e1515ff88c-13261\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-tasks-manager\",\"description\":\"Allowed to reassign workflow tasks\",\"temporalConstraints\":[]},{\"_id\":\"platform-provisioning\",\"_rev\":\"d58a3526-b2f3-40b9-8d59-b1e1515ff88c-13262\",\"privileges\":[],\"condition\":null,\"name\":\"platform-provisioning\",\"description\":\"Platform provisioning access\",\"temporalConstraints\":[]}],\"resultCount\":6,\"pagedResultsCookie\":null,\"totalPagedResultsPolicy\":\"NONE\",\"totalPagedResults\":-1,\"remainingPagedResults\":-1}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Tue, 06 May 2025 22:43:00 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1363" + } + ], + "headersSize": 2221, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-06T22:43:00.195Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/config_603940551/import_288002260/0_af_3559436575/openidm_3290118515/recording.har b/test/e2e/mocks/config_603940551/import_288002260/0_af_3559436575/openidm_3290118515/recording.har new file mode 100644 index 000000000..d61034d38 --- /dev/null +++ b/test/e2e/mocks/config_603940551/import_288002260/0_af_3559436575/openidm_3290118515/recording.har @@ -0,0 +1,9821 @@ +{ + "log": { + "_recordingName": "config/import/0_af/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "de3566e649dc89e93a6365b0fdaecd4e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 393, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/serverinfo/*" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:14 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-05-23T19:56:14.927Z", + "time": 13, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 13 + } + }, + { + "_id": "3f3b03432a833cfcbe27438276bb566b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "accept-api-version", + "value": "resource=2.0, protocol=1.0" + }, + { + "name": "x-openam-username", + "value": "openidm-admin" + }, + { + "name": "x-openam-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 507, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/realms/root/authenticate" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:14 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-05-23T19:56:14.947Z", + "time": 3, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 3 + } + }, + { + "_id": "ea1a070c27903f4e71c8acb5d274be1e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 6159, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "6159" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"access\",\"configs\":[{\"actions\":\"\",\"methods\":\"read\",\"pattern\":\"health\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"info/*\",\"roles\":\"*\"},{\"actions\":\"login,logout\",\"methods\":\"read,action\",\"pattern\":\"authentication\",\"roles\":\"*\"},{\"actions\":\"validate\",\"methods\":\"action\",\"pattern\":\"util/validateQueryFilter\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/themeconfig\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/theme-*\",\"roles\":\"*\"},{\"actions\":\"*\",\"customAuthz\":\"checkIfAnyFeatureEnabled(['registration', 'passwordReset'])\",\"methods\":\"read\",\"pattern\":\"config/selfservice/kbaConfig\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/dashboard\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"query\",\"pattern\":\"info/features\",\"roles\":\"*\"},{\"actions\":\"listPrivileges\",\"methods\":\"action\",\"pattern\":\"privilege\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"privilege/*\",\"roles\":\"*\"},{\"actions\":\"submitRequirements\",\"methods\":\"read,action\",\"pattern\":\"selfservice/termsAndConditions\",\"roles\":\"*\"},{\"actions\":\"submitRequirements\",\"methods\":\"read,action\",\"pattern\":\"selfservice/kbaUpdate\",\"roles\":\"*\"},{\"actions\":\"\",\"customAuthz\":\"isMyProfile()\",\"methods\":\"read,query\",\"pattern\":\"profile/*\",\"roles\":\"*\"},{\"actions\":\"*\",\"customAuthz\":\"checkIfAnyFeatureEnabled('kba')\",\"methods\":\"read\",\"pattern\":\"selfservice/kba\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"schema/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"action,query\",\"pattern\":\"consent\",\"roles\":\"internal/role/openidm-authorized\"},{\"customAuthz\":\"checkIfApiRequest()\",\"methods\":\"read\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"excludePatterns\":\"repo,repo/*\",\"methods\":\"*\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"\",\"methods\":\"create,read,update,delete,patch,query\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"methods\":\"script\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"test,testConfig,createconfiguration,liveSync,authenticate\",\"methods\":\"action\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"customAuthz\":\"disallowCommandAction()\",\"methods\":\"*\",\"pattern\":\"repo\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"customAuthz\":\"disallowCommandAction()\",\"methods\":\"*\",\"pattern\":\"repo/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"command\",\"customAuthz\":\"request.additionalParameters.commandId === 'delete-mapping-links'\",\"methods\":\"action\",\"pattern\":\"repo/link\",\"roles\":\"internal/role/openidm-admin\"},{\"methods\":\"create,read,query,patch\",\"pattern\":\"managed/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read,query\",\"pattern\":\"internal/role/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"create,read,action,update\",\"pattern\":\"profile/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"read,action\",\"pattern\":\"policy/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"schema/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"action,query\",\"pattern\":\"consent\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"selfservice/kba\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"selfservice/terms\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"sendTemplate\",\"methods\":\"action\",\"pattern\":\"external/email\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"authenticate\",\"methods\":\"action\",\"pattern\":\"system/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"read,action\",\"pattern\":\"policy/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"reauthenticate\",\"methods\":\"action\",\"pattern\":\"authentication\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"bind,unbind\",\"customAuthz\":\"ownDataOnly()\",\"methods\":\"read,action,delete\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"patch\",\"customAuthz\":\"ownDataOnly() && onlyEditableManagedObjectProperties('user', []) && reauthIfProtectedAttributeChange()\",\"methods\":\"update,patch,action\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"endpoint/getprocessesforuser\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"query\",\"pattern\":\"endpoint/gettasksview\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"complete\",\"customAuthz\":\"isMyTask()\",\"methods\":\"action\",\"pattern\":\"workflow/taskinstance/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"canUpdateTask()\",\"methods\":\"read,update\",\"pattern\":\"workflow/taskinstance/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"isAllowedToStartProcess()\",\"methods\":\"create\",\"pattern\":\"workflow/processinstance\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"read\",\"methods\":\"*\",\"pattern\":\"workflow/processdefinition/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"customAuthz\":\"restrictPatchToFields(['password'])\",\"methods\":\"patch\",\"pattern\":\"managed/user/*\",\"roles\":\"internal/role/openidm-cert\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipProperty('_meta', false)\",\"methods\":\"read\",\"pattern\":\"internal/usermeta/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipProperty('_notifications', true)\",\"methods\":\"read,delete\",\"pattern\":\"internal/notification/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipCollection(['idps','_meta','_notifications'])\",\"methods\":\"read,query\",\"pattern\":\"managed/user/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"deleteNotificationsForTarget\",\"customAuthz\":\"request.additionalParameters.target === (context.security.authorization.component + '/' + context.security.authorization.id)\",\"methods\":\"action\",\"pattern\":\"notification\",\"roles\":\"internal/role/openidm-authorized\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/access" + }, + "response": { + "bodySize": 6159, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 6159, + "text": "{\"_id\":\"access\",\"configs\":[{\"actions\":\"\",\"methods\":\"read\",\"pattern\":\"health\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"info/*\",\"roles\":\"*\"},{\"actions\":\"login,logout\",\"methods\":\"read,action\",\"pattern\":\"authentication\",\"roles\":\"*\"},{\"actions\":\"validate\",\"methods\":\"action\",\"pattern\":\"util/validateQueryFilter\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/themeconfig\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/theme-*\",\"roles\":\"*\"},{\"actions\":\"*\",\"customAuthz\":\"checkIfAnyFeatureEnabled(['registration', 'passwordReset'])\",\"methods\":\"read\",\"pattern\":\"config/selfservice/kbaConfig\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/dashboard\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"query\",\"pattern\":\"info/features\",\"roles\":\"*\"},{\"actions\":\"listPrivileges\",\"methods\":\"action\",\"pattern\":\"privilege\",\"roles\":\"*\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"privilege/*\",\"roles\":\"*\"},{\"actions\":\"submitRequirements\",\"methods\":\"read,action\",\"pattern\":\"selfservice/termsAndConditions\",\"roles\":\"*\"},{\"actions\":\"submitRequirements\",\"methods\":\"read,action\",\"pattern\":\"selfservice/kbaUpdate\",\"roles\":\"*\"},{\"actions\":\"\",\"customAuthz\":\"isMyProfile()\",\"methods\":\"read,query\",\"pattern\":\"profile/*\",\"roles\":\"*\"},{\"actions\":\"*\",\"customAuthz\":\"checkIfAnyFeatureEnabled('kba')\",\"methods\":\"read\",\"pattern\":\"selfservice/kba\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"schema/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"action,query\",\"pattern\":\"consent\",\"roles\":\"internal/role/openidm-authorized\"},{\"customAuthz\":\"checkIfApiRequest()\",\"methods\":\"read\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"excludePatterns\":\"repo,repo/*\",\"methods\":\"*\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"\",\"methods\":\"create,read,update,delete,patch,query\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"methods\":\"script\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"test,testConfig,createconfiguration,liveSync,authenticate\",\"methods\":\"action\",\"pattern\":\"system/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"customAuthz\":\"disallowCommandAction()\",\"methods\":\"*\",\"pattern\":\"repo\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"*\",\"customAuthz\":\"disallowCommandAction()\",\"methods\":\"*\",\"pattern\":\"repo/*\",\"roles\":\"internal/role/openidm-admin\"},{\"actions\":\"command\",\"customAuthz\":\"request.additionalParameters.commandId === 'delete-mapping-links'\",\"methods\":\"action\",\"pattern\":\"repo/link\",\"roles\":\"internal/role/openidm-admin\"},{\"methods\":\"create,read,query,patch\",\"pattern\":\"managed/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read,query\",\"pattern\":\"internal/role/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"create,read,action,update\",\"pattern\":\"profile/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"read,action\",\"pattern\":\"policy/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"schema/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"action,query\",\"pattern\":\"consent\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"selfservice/kba\",\"roles\":\"internal/role/platform-provisioning\"},{\"methods\":\"read\",\"pattern\":\"selfservice/terms\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"sendTemplate\",\"methods\":\"action\",\"pattern\":\"external/email\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"authenticate\",\"methods\":\"action\",\"pattern\":\"system/*\",\"roles\":\"internal/role/platform-provisioning\"},{\"actions\":\"*\",\"methods\":\"read,action\",\"pattern\":\"policy/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"config/ui/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"reauthenticate\",\"methods\":\"action\",\"pattern\":\"authentication\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"bind,unbind\",\"customAuthz\":\"ownDataOnly()\",\"methods\":\"read,action,delete\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"patch\",\"customAuthz\":\"ownDataOnly() && onlyEditableManagedObjectProperties('user', []) && reauthIfProtectedAttributeChange()\",\"methods\":\"update,patch,action\",\"pattern\":\"*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"read\",\"pattern\":\"endpoint/getprocessesforuser\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"methods\":\"query\",\"pattern\":\"endpoint/gettasksview\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"complete\",\"customAuthz\":\"isMyTask()\",\"methods\":\"action\",\"pattern\":\"workflow/taskinstance/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"canUpdateTask()\",\"methods\":\"read,update\",\"pattern\":\"workflow/taskinstance/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"isAllowedToStartProcess()\",\"methods\":\"create\",\"pattern\":\"workflow/processinstance\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"read\",\"methods\":\"*\",\"pattern\":\"workflow/processdefinition/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"customAuthz\":\"restrictPatchToFields(['password'])\",\"methods\":\"patch\",\"pattern\":\"managed/user/*\",\"roles\":\"internal/role/openidm-cert\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipProperty('_meta', false)\",\"methods\":\"read\",\"pattern\":\"internal/usermeta/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipProperty('_notifications', true)\",\"methods\":\"read,delete\",\"pattern\":\"internal/notification/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"*\",\"customAuthz\":\"ownRelationshipCollection(['idps','_meta','_notifications'])\",\"methods\":\"read,query\",\"pattern\":\"managed/user/*\",\"roles\":\"internal/role/openidm-authorized\"},{\"actions\":\"deleteNotificationsForTarget\",\"customAuthz\":\"request.additionalParameters.target === (context.security.authorization.component + '/' + context.security.authorization.id)\",\"methods\":\"action\",\"pattern\":\"notification\",\"roles\":\"internal/role/openidm-authorized\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:14 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:14.959Z", + "time": 82, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 82 + } + }, + { + "_id": "1a0ce7aa1d685f1d6105fc3fb872f60d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 659, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "659" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 450, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"apiVersion\",\"warning\":{\"enabled\":{\"$bool\":\"&{openidm.apiVersion.warning.enabled|false}\"},\"includeScripts\":{\"$bool\":\"&{openidm.apiVersion.warning.includeScripts|false}\"},\"logFilterResourcePaths\":[\"audit\",\"authentication\",\"cluster\",\"config\",\"consent\",\"csv\",\"external/rest\",\"identityProviders\",\"info\",\"internal\",\"internal/role\",\"internal/user\",\"internal/usermeta\",\"managed\",\"managed/assignment\",\"managed/organization\",\"managed/role\",\"managed/user\",\"notification\",\"policy\",\"privilege\",\"profile\",\"recon\",\"recon/assoc\",\"repo\",\"selfservice/kba\",\"selfservice/terms\",\"scheduler/job\",\"scheduler/trigger\",\"schema\",\"sync\",\"sync/mappings\",\"system\",\"taskscanner\"]}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/apiVersion" + }, + "response": { + "bodySize": 659, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 659, + "text": "{\"_id\":\"apiVersion\",\"warning\":{\"enabled\":{\"$bool\":\"&{openidm.apiVersion.warning.enabled|false}\"},\"includeScripts\":{\"$bool\":\"&{openidm.apiVersion.warning.includeScripts|false}\"},\"logFilterResourcePaths\":[\"audit\",\"authentication\",\"cluster\",\"config\",\"consent\",\"csv\",\"external/rest\",\"identityProviders\",\"info\",\"internal\",\"internal/role\",\"internal/user\",\"internal/usermeta\",\"managed\",\"managed/assignment\",\"managed/organization\",\"managed/role\",\"managed/user\",\"notification\",\"policy\",\"privilege\",\"profile\",\"recon\",\"recon/assoc\",\"repo\",\"selfservice/kba\",\"selfservice/terms\",\"scheduler/job\",\"scheduler/trigger\",\"schema\",\"sync\",\"sync/mappings\",\"system\",\"taskscanner\"]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "659" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.046Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "b6f4684a6808d67f5addd3251973f9ad", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2216, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2216" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"audit\",\"auditServiceConfig\":{\"availableAuditEventHandlers\":[\"org.forgerock.audit.handlers.csv.CsvAuditEventHandler\",\"org.forgerock.audit.handlers.jms.JmsAuditEventHandler\",\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RouterAuditEventHandler\",\"org.forgerock.audit.handlers.syslog.SyslogAuditEventHandler\"],\"caseInsensitiveFields\":[\"/access/http/request/headers\",\"/access/http/response/headers\"],\"filterPolicies\":{\"field\":{\"excludeIf\":[],\"includeIf\":[]}},\"handlerForQueries\":\"json\"},\"eventHandlers\":[{\"class\":\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"config\":{\"buffering\":{\"maxSize\":100000,\"writeInterval\":\"100 millis\"},\"enabled\":{\"$bool\":\"&{openidm.audit.handler.json.enabled|true}\"},\"logDirectory\":\"&{idm.data.dir}/audit\",\"name\":\"json\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.stdout.enabled|false}\"},\"name\":\"stdout\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.repo.enabled|false}\"},\"name\":\"repo\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}}],\"eventTopics\":{\"access\":{\"defaultEvents\":true,\"filter\":{\"script\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"}},\"name\":\"access\"},\"activity\":{\"defaultEvents\":true,\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]},\"name\":\"activity\",\"passwordFields\":[\"password\"],\"watchedFields\":[]},\"authentication\":{\"defaultEvents\":true,\"filter\":{\"script\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"}},\"name\":\"authentication\"},\"config\":{\"defaultEvents\":true,\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]},\"name\":\"config\"},\"recon\":{\"defaultEvents\":true,\"name\":\"recon\"},\"sync\":{\"defaultEvents\":true,\"name\":\"sync\"}},\"exceptionFormatter\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/audit" + }, + "response": { + "bodySize": 2216, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 2216, + "text": "{\"_id\":\"audit\",\"auditServiceConfig\":{\"availableAuditEventHandlers\":[\"org.forgerock.audit.handlers.csv.CsvAuditEventHandler\",\"org.forgerock.audit.handlers.jms.JmsAuditEventHandler\",\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"org.forgerock.openidm.audit.impl.RouterAuditEventHandler\",\"org.forgerock.audit.handlers.syslog.SyslogAuditEventHandler\"],\"caseInsensitiveFields\":[\"/access/http/request/headers\",\"/access/http/response/headers\"],\"filterPolicies\":{\"field\":{\"excludeIf\":[],\"includeIf\":[]}},\"handlerForQueries\":\"json\"},\"eventHandlers\":[{\"class\":\"org.forgerock.audit.handlers.json.JsonAuditEventHandler\",\"config\":{\"buffering\":{\"maxSize\":100000,\"writeInterval\":\"100 millis\"},\"enabled\":{\"$bool\":\"&{openidm.audit.handler.json.enabled|true}\"},\"logDirectory\":\"&{idm.data.dir}/audit\",\"name\":\"json\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.stdout.enabled|false}\"},\"name\":\"stdout\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}},{\"class\":\"org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler\",\"config\":{\"enabled\":{\"$bool\":\"&{openidm.audit.handler.repo.enabled|false}\"},\"name\":\"repo\",\"topics\":[\"access\",\"activity\",\"sync\",\"authentication\",\"config\"]}}],\"eventTopics\":{\"access\":{\"defaultEvents\":true,\"filter\":{\"script\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"}},\"name\":\"access\"},\"activity\":{\"defaultEvents\":true,\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]},\"name\":\"activity\",\"passwordFields\":[\"password\"],\"watchedFields\":[]},\"authentication\":{\"defaultEvents\":true,\"filter\":{\"script\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"}},\"name\":\"authentication\"},\"config\":{\"defaultEvents\":true,\"filter\":{\"actions\":[\"create\",\"update\",\"delete\",\"patch\",\"action\"]},\"name\":\"config\"},\"recon\":{\"defaultEvents\":true,\"name\":\"recon\"},\"sync\":{\"defaultEvents\":true,\"name\":\"sync\"}},\"exceptionFormatter\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.061Z", + "time": 15, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 15 + } + }, + { + "_id": "3322bf0192ae7a058cb5bce4e4518614", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1661, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "1661" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 455, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"authentication\",\"serverAuthContext\":{\"authModules\":[{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"augmentSecurityContext\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-reg\"],\"password\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"fzE1J3P9LZOmuCuecCDnaQ==\",\"iv\":\"nhI8UHymNRChGIyOC+5Sag==\",\"keySize\":32,\"mac\":\"XfF7VE/o5Shv6AqW1Xe3TQ==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"v0NHakffrjBJNL3zjhEOtg==\",\"stableId\":\"openidm-sym-default\"}}},\"queryOnResource\":\"internal/user\",\"username\":\"anonymous\"}},{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"defaultUserRoles\":[\"internal/role/openidm-authorized\",\"internal/role/openidm-admin\"],\"password\":\"&{openidm.admin.password}\",\"queryOnResource\":\"internal/user\",\"username\":\"openidm-admin\"}},{\"enabled\":true,\"name\":\"MANAGED_USER\",\"properties\":{\"augmentSecurityContext\":{\"source\":\"var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield);\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-authorized\"],\"propertyMapping\":{\"additionalUserFields\":[\"adminOfOrg\",\"ownerOfOrg\"],\"authenticationId\":\"username\",\"userCredential\":\"password\",\"userRoles\":\"authzRoles\"},\"queryId\":\"credential-query\",\"queryOnResource\":\"managed/user\"}}],\"sessionModule\":{\"name\":\"JWT_SESSION\",\"properties\":{\"enableDynamicRoles\":false,\"isHttpOnly\":true,\"maxTokenLifeMinutes\":120,\"sessionOnly\":true,\"tokenIdleTimeMinutes\":30}}}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/authentication" + }, + "response": { + "bodySize": 1661, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1661, + "text": "{\"_id\":\"authentication\",\"serverAuthContext\":{\"authModules\":[{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"augmentSecurityContext\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-reg\"],\"password\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"fzE1J3P9LZOmuCuecCDnaQ==\",\"iv\":\"nhI8UHymNRChGIyOC+5Sag==\",\"keySize\":32,\"mac\":\"XfF7VE/o5Shv6AqW1Xe3TQ==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"v0NHakffrjBJNL3zjhEOtg==\",\"stableId\":\"openidm-sym-default\"}}},\"queryOnResource\":\"internal/user\",\"username\":\"anonymous\"}},{\"enabled\":true,\"name\":\"STATIC_USER\",\"properties\":{\"defaultUserRoles\":[\"internal/role/openidm-authorized\",\"internal/role/openidm-admin\"],\"password\":\"&{openidm.admin.password}\",\"queryOnResource\":\"internal/user\",\"username\":\"openidm-admin\"}},{\"enabled\":true,\"name\":\"MANAGED_USER\",\"properties\":{\"augmentSecurityContext\":{\"source\":\"var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield);\",\"type\":\"text/javascript\"},\"defaultUserRoles\":[\"internal/role/openidm-authorized\"],\"propertyMapping\":{\"additionalUserFields\":[\"adminOfOrg\",\"ownerOfOrg\"],\"authenticationId\":\"username\",\"userCredential\":\"password\",\"userRoles\":\"authzRoles\"},\"queryId\":\"credential-query\",\"queryOnResource\":\"managed/user\"}}],\"sessionModule\":{\"name\":\"JWT_SESSION\",\"properties\":{\"enableDynamicRoles\":false,\"isHttpOnly\":true,\"maxTokenLifeMinutes\":120,\"sessionOnly\":true,\"tokenIdleTimeMinutes\":30}}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1661" + } + ], + "headersSize": 2252, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.082Z", + "time": 12, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 12 + } + }, + { + "_id": "cffcfbec868c6d577abdd6dfb2546c66", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 179, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "179" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"cluster\",\"enabled\":true,\"instanceCheckInInterval\":5000,\"instanceCheckInOffset\":0,\"instanceId\":\"&{openidm.node.id}\",\"instanceRecoveryTimeout\":30000,\"instanceTimeout\":30000}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/cluster" + }, + "response": { + "bodySize": 179, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 179, + "text": "{\"_id\":\"cluster\",\"enabled\":true,\"instanceCheckInInterval\":5000,\"instanceCheckInOffset\":0,\"instanceId\":\"&{openidm.node.id}\",\"instanceRecoveryTimeout\":30000,\"instanceTimeout\":30000}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "179" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.099Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "ffb92165ac6b6a54193c1984e5d08a82", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 116, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "116" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 474, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/getavailableuserstoassign\",\"file\":\"workflow/getavailableuserstoassign.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getavailableuserstoassign" + }, + "response": { + "bodySize": 116, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 116, + "text": "{\"_id\":\"endpoint/getavailableuserstoassign\",\"file\":\"workflow/getavailableuserstoassign.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "116" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.115Z", + "time": 12, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 12 + } + }, + { + "_id": "67f7c32d59739e6e62de077c4ac38587", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 104, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "104" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/getprocessesforuser\",\"file\":\"workflow/getprocessesforuser.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/getprocessesforuser" + }, + "response": { + "bodySize": 104, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 104, + "text": "{\"_id\":\"endpoint/getprocessesforuser\",\"file\":\"workflow/getprocessesforuser.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "104" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.132Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "a58bd28b08317f836ebe6fc592eea139", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 90, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "90" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 460, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/gettasksview\",\"file\":\"workflow/gettasksview.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/gettasksview" + }, + "response": { + "bodySize": 90, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 90, + "text": "{\"_id\":\"endpoint/gettasksview\",\"file\":\"workflow/gettasksview.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "90" + } + ], + "headersSize": 2250, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.148Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "190fb94af98292c04b2a125fbed0f974", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 121, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "121" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 463, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/mappingDetails\",\"context\":\"endpoint/mappingDetails\",\"file\":\"mappingDetails.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/mappingDetails" + }, + "response": { + "bodySize": 121, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 121, + "text": "{\"_id\":\"endpoint/mappingDetails\",\"context\":\"endpoint/mappingDetails\",\"file\":\"mappingDetails.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "121" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.162Z", + "time": 12, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 12 + } + }, + { + "_id": "7caf7b29cf8511e14fac45895389c849", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 109, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "109" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/oauthproxy\",\"context\":\"endpoint/oauthproxy\",\"file\":\"oauthProxy.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/oauthproxy" + }, + "response": { + "bodySize": 109, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 109, + "text": "{\"_id\":\"endpoint/oauthproxy\",\"context\":\"endpoint/oauthproxy\",\"file\":\"oauthProxy.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "109" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.180Z", + "time": 12, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 12 + } + }, + { + "_id": "765c2ef8259b3e3418e7c3a5a5b10c3e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 126, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "126" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 480, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/removeRepoPathFromRelationships\",\"file\":\"update/removeRepoPathFromRelationships.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/removeRepoPathFromRelationships" + }, + "response": { + "bodySize": 126, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 126, + "text": "{\"_id\":\"endpoint/removeRepoPathFromRelationships\",\"file\":\"update/removeRepoPathFromRelationships.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "126" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.198Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "4bdc8b47251097ee4051909112972e59", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 91, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "91" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 462, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/repairMetadata\",\"file\":\"meta/metadataScanner.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/repairMetadata" + }, + "response": { + "bodySize": 91, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 91, + "text": "{\"_id\":\"endpoint/repairMetadata\",\"file\":\"meta/metadataScanner.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "91" + } + ], + "headersSize": 2250, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.214Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "d2deb2d1663797facc0aec2b49b105d0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 144, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "144" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 489, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/updateInternalUserAndInternalRoleEntries\",\"file\":\"update/updateInternalUserAndInternalRoleEntries.js\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/updateInternalUserAndInternalRoleEntries" + }, + "response": { + "bodySize": 144, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 144, + "text": "{\"_id\":\"endpoint/updateInternalUserAndInternalRoleEntries\",\"file\":\"update/updateInternalUserAndInternalRoleEntries.js\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "144" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.227Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "09f96900530f528cc6caad3270bdf518", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 326, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "326" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"endpoint/validateQueryFilter\",\"context\":\"util/validateQueryFilter\",\"source\":\"try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } };\",\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/endpoint/validateQueryFilter" + }, + "response": { + "bodySize": 326, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 326, + "text": "{\"_id\":\"endpoint/validateQueryFilter\",\"context\":\"util/validateQueryFilter\",\"source\":\"try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } };\",\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "326" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.240Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "1835c2635e9c3818cf24fd460159b6e7", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 86, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "86" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 452, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"external.rest\",\"hostnameVerifier\":\"&{openidm.external.rest.hostnameVerifier}\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/external.rest" + }, + "response": { + "bodySize": 86, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 86, + "text": "{\"_id\":\"external.rest\",\"hostnameVerifier\":\"&{openidm.external.rest.hostnameVerifier}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "86" + } + ], + "headersSize": 2250, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.254Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "c3e432390b418bf9a27e761d92966735", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 353, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "353" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"internal\",\"objects\":[{\"name\":\"role\",\"properties\":{\"authzMembers\":{\"items\":{\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}]}}}},{\"name\":\"notification\",\"properties\":{\"target\":{\"reversePropertyName\":\"_notifications\"}}}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/internal" + }, + "response": { + "bodySize": 353, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 353, + "text": "{\"_id\":\"internal\",\"objects\":[{\"name\":\"role\",\"properties\":{\"authzMembers\":{\"items\":{\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}]}}}},{\"name\":\"notification\",\"properties\":{\"target\":{\"reversePropertyName\":\"_notifications\"}}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "353" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.268Z", + "time": 12, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 12 + } + }, + { + "_id": "80df31f756ec3532329ed08ab69f20f3", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 28289, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "28289" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"managed\",\"objects\":[{\"lastSync\":{\"effectiveAssignmentsProperty\":\"effectiveAssignments\",\"lastSyncProperty\":\"lastSync\"},\"name\":\"user\",\"notifications\":{\"property\":\"_notifications\"},\"postDelete\":{\"source\":\"require('postDelete-idp-cleanup').removeConnectedIdpData(oldObject, resourceName, request);require('postDelete-notification-cleanup').removeConnectedNotificationData(oldObject, resourceName, request);\",\"type\":\"text/javascript\"},\"schema\":{\"$schema\":\"http://json-schema.org/draft-03/schema\",\"icon\":\"fa-user\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User\",\"mat-icon\":\"people\",\"order\":[\"_id\",\"userName\",\"password\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"roles\",\"assignments\",\"manager\",\"authzRoles\",\"reports\",\"effectiveRoles\",\"effectiveAssignments\",\"lastSync\",\"kbaInfo\",\"preferences\",\"consentedMappings\",\"ownerOfOrg\",\"adminOfOrg\",\"memberOfOrg\",\"memberOfOrgIDs\",\"activeDate\",\"inactiveDate\"],\"properties\":{\"_id\":{\"description\":\"User ID\",\"isPersonal\":false,\"policies\":[{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"}],\"searchable\":false,\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":false},\"accountStatus\":{\"default\":\"active\",\"description\":\"Status\",\"isPersonal\":false,\"policies\":[{\"params\":{\"regexp\":\"^(active|inactive)$\"},\"policyId\":\"regexpMatches\"}],\"searchable\":true,\"title\":\"Status\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"activeDate\":{\"description\":\"Active Date\",\"format\":\"datetime\",\"isPersonal\":false,\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":false,\"title\":\"Active Date\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"adminOfOrg\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"admins\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations I Administer\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"assignments\":{\"description\":\"Assignments\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Provisioning Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Assignment\",\"path\":\"managed/assignment\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"title\":\"Assignments Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Assignments\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"authzRoles\":{\"description\":\"Authorization Roles\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Authorization Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Internal Role\",\"path\":\"internal/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"authzMembers\",\"reverseRelationship\":true,\"title\":\"Authorization Roles Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Authorization Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"city\":{\"description\":\"City\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"City\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"consentedMappings\":{\"description\":\"Consented Mappings\",\"isPersonal\":false,\"isVirtual\":false,\"items\":{\"order\":[\"mapping\",\"consentDate\"],\"properties\":{\"consentDate\":{\"description\":\"Consent Date\",\"format\":\"datetime\",\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":true,\"title\":\"Consent Date\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"mapping\":{\"description\":\"Mapping\",\"searchable\":true,\"title\":\"Mapping\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true}},\"required\":[\"mapping\",\"consentDate\"],\"title\":\"Consented Mapping\",\"type\":\"object\"},\"returnByDefault\":false,\"searchable\":false,\"title\":\"Consented Mappings\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"country\":{\"description\":\"Country\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Country\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"description\":{\"description\":\"Description\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"effectiveAssignments\":{\"description\":\"Effective Assignments\",\"isPersonal\":false,\"isVirtual\":true,\"items\":{\"title\":\"Effective Assignments Items\",\"type\":\"object\"},\"queryConfig\":{\"referencedObjectFields\":[\"*\"],\"referencedRelationshipFields\":[[\"roles\",\"assignments\"],[\"assignments\"]]},\"returnByDefault\":true,\"title\":\"Effective Assignments\",\"type\":\"array\",\"usageDescription\":\"\",\"viewable\":false},\"effectiveRoles\":{\"description\":\"Effective Roles\",\"isPersonal\":false,\"isVirtual\":true,\"items\":{\"title\":\"Effective Roles Items\",\"type\":\"object\"},\"queryConfig\":{\"referencedRelationshipFields\":[\"roles\"]},\"returnByDefault\":true,\"title\":\"Effective Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"viewable\":false},\"givenName\":{\"description\":\"First Name\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"First Name\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"inactiveDate\":{\"description\":\"Inactive Date\",\"format\":\"datetime\",\"isPersonal\":false,\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":false,\"title\":\"Inactive Date\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"kbaInfo\":{\"description\":\"KBA Info\",\"isPersonal\":true,\"items\":{\"order\":[\"answer\",\"customQuestion\",\"questionId\"],\"properties\":{\"answer\":{\"description\":\"Answer\",\"type\":\"string\"},\"customQuestion\":{\"description\":\"Custom question\",\"type\":\"string\"},\"questionId\":{\"description\":\"Question ID\",\"type\":\"string\"}},\"required\":[],\"title\":\"KBA Info Items\",\"type\":\"object\"},\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"lastSync\":{\"description\":\"Last Sync timestamp\",\"isPersonal\":false,\"order\":[\"effectiveAssignments\",\"timestamp\"],\"properties\":{\"effectiveAssignments\":{\"description\":\"Effective Assignments\",\"items\":{\"title\":\"Effective Assignments Items\",\"type\":\"object\"},\"title\":\"Effective Assignments\",\"type\":\"array\"},\"timestamp\":{\"description\":\"Timestamp\",\"policies\":[{\"policyId\":\"valid-datetime\"}],\"type\":\"string\"}},\"required\":[],\"scope\":\"private\",\"searchable\":false,\"title\":\"Last Sync timestamp\",\"type\":\"object\",\"usageDescription\":\"\",\"viewable\":false},\"mail\":{\"description\":\"Email Address\",\"isPersonal\":true,\"policies\":[{\"policyId\":\"valid-email-address-format\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Email Address\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"manager\":{\"description\":\"Manager\",\"isPersonal\":false,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Manager _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"reports\",\"reverseRelationship\":true,\"searchable\":false,\"title\":\"Manager\",\"type\":\"relationship\",\"usageDescription\":\"\",\"userEditable\":false,\"validate\":true,\"viewable\":true},\"memberOfOrg\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":false,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations to which I Belong\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"memberOfOrgIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"org identifiers\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\",\"parentIDs\"],\"referencedRelationshipFields\":[\"memberOfOrg\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"MemberOfOrgIDs\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"ownerOfOrg\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"owners\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations I Own\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"password\":{\"description\":\"Password\",\"encryption\":{\"purpose\":\"idm.password.encryption\"},\"isPersonal\":false,\"isProtected\":true,\"policies\":[{\"params\":{\"minLength\":8},\"policyId\":\"minimum-length\"},{\"params\":{\"numCaps\":1},\"policyId\":\"at-least-X-capitals\"},{\"params\":{\"numNums\":1},\"policyId\":\"at-least-X-numbers\"},{\"params\":{\"disallowedFields\":[\"userName\",\"givenName\",\"sn\"]},\"policyId\":\"cannot-contain-others\"}],\"scope\":\"private\",\"searchable\":false,\"title\":\"Password\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"postalAddress\":{\"description\":\"Address 1\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Address 1\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"postalCode\":{\"description\":\"Postal Code\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Postal Code\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"preferences\":{\"description\":\"Preferences\",\"isPersonal\":false,\"order\":[\"updates\",\"marketing\"],\"properties\":{\"marketing\":{\"description\":\"Send me special offers and services\",\"type\":\"boolean\"},\"updates\":{\"description\":\"Send me news and updates\",\"type\":\"boolean\"}},\"required\":[],\"searchable\":false,\"title\":\"Preferences\",\"type\":\"object\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"reports\":{\"description\":\"Direct Reports\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Direct Reports Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"manager\",\"reverseRelationship\":true,\"title\":\"Direct Reports Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Direct Reports\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"roles\":{\"description\":\"Provisioning Roles\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:roles\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Provisioning Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Role\",\"path\":\"managed/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"title\":\"Provisioning Roles Items\",\"type\":\"relationship\",\"validate\":true},\"relationshipGrantTemporalConstraintsEnforced\":true,\"returnByDefault\":false,\"title\":\"Provisioning Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"sn\":{\"description\":\"Last Name\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Last Name\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"stateProvince\":{\"description\":\"State/Province\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"State/Province\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"telephoneNumber\":{\"description\":\"Telephone Number\",\"isPersonal\":true,\"pattern\":\"^\\\\+?([0-9\\\\- \\\\(\\\\)])*$\",\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Telephone Number\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"userName\":{\"description\":\"Username\",\"isPersonal\":true,\"policies\":[{\"policyId\":\"valid-username\"},{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"},{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Username\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true}},\"required\":[\"userName\",\"givenName\",\"sn\",\"mail\"],\"title\":\"User\",\"type\":\"object\",\"viewable\":true}},{\"name\":\"role\",\"onCreate\":{\"globals\":{},\"source\":\"//asdfasdfadsfasdf\",\"type\":\"text/javascript\"},\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"icon\":\"fa-check-square\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role\",\"mat-icon\":\"assignment_ind\",\"order\":[\"_id\",\"name\",\"description\",\"members\",\"assignments\",\"condition\",\"temporalConstraints\"],\"properties\":{\"_id\":{\"description\":\"Role ID\",\"searchable\":false,\"title\":\"Name\",\"type\":\"string\",\"viewable\":false},\"assignments\":{\"description\":\"Managed Assignments\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Managed Assignments Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Assignment\",\"path\":\"managed/assignment\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"roles\",\"reverseRelationship\":true,\"title\":\"Managed Assignments Items\",\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"members\"],\"returnByDefault\":false,\"title\":\"Managed Assignments\",\"type\":\"array\",\"viewable\":true},\"condition\":{\"description\":\"A conditional filter for this role\",\"isConditional\":true,\"searchable\":false,\"title\":\"Condition\",\"type\":\"string\",\"viewable\":false},\"description\":{\"description\":\"The role description, used for display purposes.\",\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"viewable\":true},\"members\":{\"description\":\"Role Members\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Role Members Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"roles\",\"reverseRelationship\":true,\"title\":\"Role Members Items\",\"type\":\"relationship\",\"validate\":true},\"relationshipGrantTemporalConstraintsEnforced\":true,\"returnByDefault\":false,\"title\":\"Role Members\",\"type\":\"array\",\"viewable\":true},\"name\":{\"description\":\"The role name, used for display purposes.\",\"policies\":[{\"policyId\":\"unique\"}],\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"viewable\":true},\"temporalConstraints\":{\"description\":\"An array of temporal constraints for a role\",\"isTemporalConstraint\":true,\"items\":{\"order\":[\"duration\"],\"properties\":{\"duration\":{\"description\":\"Duration\",\"type\":\"string\"}},\"required\":[\"duration\"],\"title\":\"Temporal Constraints Items\",\"type\":\"object\"},\"notifyRelationships\":[\"members\"],\"returnByDefault\":true,\"title\":\"Temporal Constraints\",\"type\":\"array\",\"viewable\":false}},\"required\":[\"name\"],\"title\":\"Role\",\"type\":\"object\"}},{\"attributeEncryption\":{},\"name\":\"assignment\",\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"description\":\"A role assignment\",\"icon\":\"fa-key\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment\",\"mat-icon\":\"vpn_key\",\"order\":[\"_id\",\"name\",\"description\",\"mapping\",\"attributes\",\"linkQualifiers\",\"roles\",\"members\",\"condition\",\"weight\"],\"properties\":{\"_id\":{\"description\":\"The assignment ID\",\"searchable\":false,\"title\":\"Name\",\"type\":\"string\",\"viewable\":false},\"attributes\":{\"description\":\"The attributes operated on by this assignment.\",\"items\":{\"order\":[\"assignmentOperation\",\"unassignmentOperation\",\"name\",\"value\"],\"properties\":{\"assignmentOperation\":{\"description\":\"Assignment operation\",\"type\":\"string\"},\"name\":{\"description\":\"Name\",\"type\":\"string\"},\"unassignmentOperation\":{\"description\":\"Unassignment operation\",\"type\":\"string\"},\"value\":{\"description\":\"Value\",\"type\":\"string\"}},\"required\":[],\"title\":\"Assignment Attributes Items\",\"type\":\"object\"},\"notifyRelationships\":[\"roles\",\"members\"],\"title\":\"Assignment Attributes\",\"type\":\"array\",\"viewable\":true},\"condition\":{\"description\":\"A conditional filter for this assignment\",\"isConditional\":true,\"searchable\":false,\"title\":\"Condition\",\"type\":\"string\",\"viewable\":false},\"description\":{\"description\":\"The assignment description, used for display purposes.\",\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"viewable\":true},\"linkQualifiers\":{\"description\":\"Conditional link qualifiers to restrict this assignment to.\",\"items\":{\"title\":\"Link Qualifiers Items\",\"type\":\"string\"},\"title\":\"Link Qualifiers\",\"type\":\"array\",\"viewable\":true},\"mapping\":{\"description\":\"The name of the mapping this assignment applies to\",\"policies\":[{\"policyId\":\"mapping-exists\"}],\"searchable\":true,\"title\":\"Mapping\",\"type\":\"string\",\"viewable\":true},\"members\":{\"description\":\"Assignment Members\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Assignment Members Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"assignments\",\"reverseRelationship\":true,\"title\":\"Assignment Members Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Assignment Members\",\"type\":\"array\",\"viewable\":true},\"name\":{\"description\":\"The assignment name, used for display purposes.\",\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"viewable\":true},\"roles\":{\"description\":\"Managed Roles\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Managed Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Role\",\"notify\":true,\"path\":\"managed/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"assignments\",\"reverseRelationship\":true,\"title\":\"Managed Roles Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Managed Roles\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"weight\":{\"description\":\"The weight of the assignment.\",\"notifyRelationships\":[\"roles\",\"members\"],\"searchable\":false,\"title\":\"Weight\",\"type\":[\"number\",\"null\"],\"viewable\":true}},\"required\":[\"name\",\"description\",\"mapping\"],\"title\":\"Assignment\",\"type\":\"object\"}},{\"name\":\"organization\",\"onCreate\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"onRead\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"description\":\"An organization or tenant, whose resources are managed by organizational admins.\",\"icon\":\"fa-building\",\"mat-icon\":\"domain\",\"order\":[\"name\",\"description\",\"owners\",\"admins\",\"members\",\"parent\",\"children\",\"adminIDs\",\"ownerIDs\",\"parentAdminIDs\",\"parentOwnerIDs\",\"parentIDs\"],\"properties\":{\"adminIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"admin ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\"],\"referencedRelationshipFields\":[\"admins\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"Admin user ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"admins\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":false,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"adminOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"children\"],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Administrators\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"children\":{\"description\":\"Child Organizations\",\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\",\"description\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"parent\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Child Organizations\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"description\":{\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"members\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"memberOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"searchable\":false,\"title\":\"Members\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"name\":{\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"ownerIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"owner ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\"],\"referencedRelationshipFields\":[\"owners\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"Owner user ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"owners\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":false,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"ownerOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"children\"],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Owner\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"parent\":{\"description\":\"Parent Organization\",\"notifyRelationships\":[\"children\",\"members\"],\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":false,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\",\"description\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"returnByDefault\":false,\"reversePropertyName\":\"children\",\"reverseRelationship\":true,\"searchable\":false,\"title\":\"Parent Organization\",\"type\":\"relationship\",\"userEditable\":false,\"validate\":true,\"viewable\":true},\"parentAdminIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"user ids of parent admins\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"adminIDs\",\"parentAdminIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"user ids of parent admins\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"parentIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"parent org ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\",\"parentIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"parent org ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"parentOwnerIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"user ids of parent owners\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"ownerIDs\",\"parentOwnerIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"user ids of parent owners\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false}},\"required\":[\"name\"],\"title\":\"Organization\",\"type\":\"object\"}},{\"name\":\"seantestmanagedobject\",\"schema\":{\"description\":null,\"icon\":\"fa-database\",\"mat-icon\":null,\"title\":null}}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/managed" + }, + "response": { + "bodySize": 28289, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 28289, + "text": "{\"_id\":\"managed\",\"objects\":[{\"lastSync\":{\"effectiveAssignmentsProperty\":\"effectiveAssignments\",\"lastSyncProperty\":\"lastSync\"},\"name\":\"user\",\"notifications\":{\"property\":\"_notifications\"},\"postDelete\":{\"source\":\"require('postDelete-idp-cleanup').removeConnectedIdpData(oldObject, resourceName, request);require('postDelete-notification-cleanup').removeConnectedNotificationData(oldObject, resourceName, request);\",\"type\":\"text/javascript\"},\"schema\":{\"$schema\":\"http://json-schema.org/draft-03/schema\",\"icon\":\"fa-user\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User\",\"mat-icon\":\"people\",\"order\":[\"_id\",\"userName\",\"password\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"roles\",\"assignments\",\"manager\",\"authzRoles\",\"reports\",\"effectiveRoles\",\"effectiveAssignments\",\"lastSync\",\"kbaInfo\",\"preferences\",\"consentedMappings\",\"ownerOfOrg\",\"adminOfOrg\",\"memberOfOrg\",\"memberOfOrgIDs\",\"activeDate\",\"inactiveDate\"],\"properties\":{\"_id\":{\"description\":\"User ID\",\"isPersonal\":false,\"policies\":[{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"}],\"searchable\":false,\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":false},\"accountStatus\":{\"default\":\"active\",\"description\":\"Status\",\"isPersonal\":false,\"policies\":[{\"params\":{\"regexp\":\"^(active|inactive)$\"},\"policyId\":\"regexpMatches\"}],\"searchable\":true,\"title\":\"Status\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"activeDate\":{\"description\":\"Active Date\",\"format\":\"datetime\",\"isPersonal\":false,\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":false,\"title\":\"Active Date\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"adminOfOrg\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"admins\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations I Administer\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"assignments\":{\"description\":\"Assignments\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Provisioning Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Assignment\",\"path\":\"managed/assignment\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"title\":\"Assignments Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Assignments\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"authzRoles\":{\"description\":\"Authorization Roles\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Authorization Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Internal Role\",\"path\":\"internal/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"authzMembers\",\"reverseRelationship\":true,\"title\":\"Authorization Roles Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Authorization Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"city\":{\"description\":\"City\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"City\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"consentedMappings\":{\"description\":\"Consented Mappings\",\"isPersonal\":false,\"isVirtual\":false,\"items\":{\"order\":[\"mapping\",\"consentDate\"],\"properties\":{\"consentDate\":{\"description\":\"Consent Date\",\"format\":\"datetime\",\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":true,\"title\":\"Consent Date\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"mapping\":{\"description\":\"Mapping\",\"searchable\":true,\"title\":\"Mapping\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true}},\"required\":[\"mapping\",\"consentDate\"],\"title\":\"Consented Mapping\",\"type\":\"object\"},\"returnByDefault\":false,\"searchable\":false,\"title\":\"Consented Mappings\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"country\":{\"description\":\"Country\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Country\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"description\":{\"description\":\"Description\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"effectiveAssignments\":{\"description\":\"Effective Assignments\",\"isPersonal\":false,\"isVirtual\":true,\"items\":{\"title\":\"Effective Assignments Items\",\"type\":\"object\"},\"queryConfig\":{\"referencedObjectFields\":[\"*\"],\"referencedRelationshipFields\":[[\"roles\",\"assignments\"],[\"assignments\"]]},\"returnByDefault\":true,\"title\":\"Effective Assignments\",\"type\":\"array\",\"usageDescription\":\"\",\"viewable\":false},\"effectiveRoles\":{\"description\":\"Effective Roles\",\"isPersonal\":false,\"isVirtual\":true,\"items\":{\"title\":\"Effective Roles Items\",\"type\":\"object\"},\"queryConfig\":{\"referencedRelationshipFields\":[\"roles\"]},\"returnByDefault\":true,\"title\":\"Effective Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"viewable\":false},\"givenName\":{\"description\":\"First Name\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"First Name\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"inactiveDate\":{\"description\":\"Inactive Date\",\"format\":\"datetime\",\"isPersonal\":false,\"policies\":[{\"policyId\":\"valid-datetime\"}],\"searchable\":false,\"title\":\"Inactive Date\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"kbaInfo\":{\"description\":\"KBA Info\",\"isPersonal\":true,\"items\":{\"order\":[\"answer\",\"customQuestion\",\"questionId\"],\"properties\":{\"answer\":{\"description\":\"Answer\",\"type\":\"string\"},\"customQuestion\":{\"description\":\"Custom question\",\"type\":\"string\"},\"questionId\":{\"description\":\"Question ID\",\"type\":\"string\"}},\"required\":[],\"title\":\"KBA Info Items\",\"type\":\"object\"},\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"lastSync\":{\"description\":\"Last Sync timestamp\",\"isPersonal\":false,\"order\":[\"effectiveAssignments\",\"timestamp\"],\"properties\":{\"effectiveAssignments\":{\"description\":\"Effective Assignments\",\"items\":{\"title\":\"Effective Assignments Items\",\"type\":\"object\"},\"title\":\"Effective Assignments\",\"type\":\"array\"},\"timestamp\":{\"description\":\"Timestamp\",\"policies\":[{\"policyId\":\"valid-datetime\"}],\"type\":\"string\"}},\"required\":[],\"scope\":\"private\",\"searchable\":false,\"title\":\"Last Sync timestamp\",\"type\":\"object\",\"usageDescription\":\"\",\"viewable\":false},\"mail\":{\"description\":\"Email Address\",\"isPersonal\":true,\"policies\":[{\"policyId\":\"valid-email-address-format\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Email Address\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"manager\":{\"description\":\"Manager\",\"isPersonal\":false,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Manager _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"reports\",\"reverseRelationship\":true,\"searchable\":false,\"title\":\"Manager\",\"type\":\"relationship\",\"usageDescription\":\"\",\"userEditable\":false,\"validate\":true,\"viewable\":true},\"memberOfOrg\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":false,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations to which I Belong\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"memberOfOrgIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"org identifiers\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\",\"parentIDs\"],\"referencedRelationshipFields\":[\"memberOfOrg\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"MemberOfOrgIDs\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"ownerOfOrg\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"owners\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Organizations I Own\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"password\":{\"description\":\"Password\",\"encryption\":{\"purpose\":\"idm.password.encryption\"},\"isPersonal\":false,\"isProtected\":true,\"policies\":[{\"params\":{\"minLength\":8},\"policyId\":\"minimum-length\"},{\"params\":{\"numCaps\":1},\"policyId\":\"at-least-X-capitals\"},{\"params\":{\"numNums\":1},\"policyId\":\"at-least-X-numbers\"},{\"params\":{\"disallowedFields\":[\"userName\",\"givenName\",\"sn\"]},\"policyId\":\"cannot-contain-others\"}],\"scope\":\"private\",\"searchable\":false,\"title\":\"Password\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":false},\"postalAddress\":{\"description\":\"Address 1\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Address 1\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"postalCode\":{\"description\":\"Postal Code\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Postal Code\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"preferences\":{\"description\":\"Preferences\",\"isPersonal\":false,\"order\":[\"updates\",\"marketing\"],\"properties\":{\"marketing\":{\"description\":\"Send me special offers and services\",\"type\":\"boolean\"},\"updates\":{\"description\":\"Send me news and updates\",\"type\":\"boolean\"}},\"required\":[],\"searchable\":false,\"title\":\"Preferences\",\"type\":\"object\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"reports\":{\"description\":\"Direct Reports\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Direct Reports Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"manager\",\"reverseRelationship\":true,\"title\":\"Direct Reports Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Direct Reports\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"roles\":{\"description\":\"Provisioning Roles\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:roles\",\"isPersonal\":false,\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Provisioning Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociationField\":\"condition\",\"label\":\"Role\",\"path\":\"managed/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"members\",\"reverseRelationship\":true,\"title\":\"Provisioning Roles Items\",\"type\":\"relationship\",\"validate\":true},\"relationshipGrantTemporalConstraintsEnforced\":true,\"returnByDefault\":false,\"title\":\"Provisioning Roles\",\"type\":\"array\",\"usageDescription\":\"\",\"userEditable\":false,\"viewable\":true},\"sn\":{\"description\":\"Last Name\",\"isPersonal\":true,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Last Name\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"stateProvince\":{\"description\":\"State/Province\",\"isPersonal\":false,\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"State/Province\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"telephoneNumber\":{\"description\":\"Telephone Number\",\"isPersonal\":true,\"pattern\":\"^\\\\+?([0-9\\\\- \\\\(\\\\)])*$\",\"policies\":[{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"title\":\"Telephone Number\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true},\"userName\":{\"description\":\"Username\",\"isPersonal\":true,\"policies\":[{\"policyId\":\"valid-username\"},{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"},{\"params\":{\"minLength\":1},\"policyId\":\"minimum-length\"},{\"params\":{\"maxLength\":255},\"policyId\":\"maximum-length\"}],\"searchable\":true,\"title\":\"Username\",\"type\":\"string\",\"usageDescription\":\"\",\"userEditable\":true,\"viewable\":true}},\"required\":[\"userName\",\"givenName\",\"sn\",\"mail\"],\"title\":\"User\",\"type\":\"object\",\"viewable\":true}},{\"name\":\"role\",\"onCreate\":{\"globals\":{},\"source\":\"//asdfasdfadsfasdf\",\"type\":\"text/javascript\"},\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"icon\":\"fa-check-square\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role\",\"mat-icon\":\"assignment_ind\",\"order\":[\"_id\",\"name\",\"description\",\"members\",\"assignments\",\"condition\",\"temporalConstraints\"],\"properties\":{\"_id\":{\"description\":\"Role ID\",\"searchable\":false,\"title\":\"Name\",\"type\":\"string\",\"viewable\":false},\"assignments\":{\"description\":\"Managed Assignments\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items\",\"notifySelf\":true,\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Managed Assignments Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Assignment\",\"path\":\"managed/assignment\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"roles\",\"reverseRelationship\":true,\"title\":\"Managed Assignments Items\",\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"members\"],\"returnByDefault\":false,\"title\":\"Managed Assignments\",\"type\":\"array\",\"viewable\":true},\"condition\":{\"description\":\"A conditional filter for this role\",\"isConditional\":true,\"searchable\":false,\"title\":\"Condition\",\"type\":\"string\",\"viewable\":false},\"description\":{\"description\":\"The role description, used for display purposes.\",\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"viewable\":true},\"members\":{\"description\":\"Role Members\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Role Members Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"roles\",\"reverseRelationship\":true,\"title\":\"Role Members Items\",\"type\":\"relationship\",\"validate\":true},\"relationshipGrantTemporalConstraintsEnforced\":true,\"returnByDefault\":false,\"title\":\"Role Members\",\"type\":\"array\",\"viewable\":true},\"name\":{\"description\":\"The role name, used for display purposes.\",\"policies\":[{\"policyId\":\"unique\"}],\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"viewable\":true},\"temporalConstraints\":{\"description\":\"An array of temporal constraints for a role\",\"isTemporalConstraint\":true,\"items\":{\"order\":[\"duration\"],\"properties\":{\"duration\":{\"description\":\"Duration\",\"type\":\"string\"}},\"required\":[\"duration\"],\"title\":\"Temporal Constraints Items\",\"type\":\"object\"},\"notifyRelationships\":[\"members\"],\"returnByDefault\":true,\"title\":\"Temporal Constraints\",\"type\":\"array\",\"viewable\":false}},\"required\":[\"name\"],\"title\":\"Role\",\"type\":\"object\"}},{\"attributeEncryption\":{},\"name\":\"assignment\",\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"description\":\"A role assignment\",\"icon\":\"fa-key\",\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment\",\"mat-icon\":\"vpn_key\",\"order\":[\"_id\",\"name\",\"description\",\"mapping\",\"attributes\",\"linkQualifiers\",\"roles\",\"members\",\"condition\",\"weight\"],\"properties\":{\"_id\":{\"description\":\"The assignment ID\",\"searchable\":false,\"title\":\"Name\",\"type\":\"string\",\"viewable\":false},\"attributes\":{\"description\":\"The attributes operated on by this assignment.\",\"items\":{\"order\":[\"assignmentOperation\",\"unassignmentOperation\",\"name\",\"value\"],\"properties\":{\"assignmentOperation\":{\"description\":\"Assignment operation\",\"type\":\"string\"},\"name\":{\"description\":\"Name\",\"type\":\"string\"},\"unassignmentOperation\":{\"description\":\"Unassignment operation\",\"type\":\"string\"},\"value\":{\"description\":\"Value\",\"type\":\"string\"}},\"required\":[],\"title\":\"Assignment Attributes Items\",\"type\":\"object\"},\"notifyRelationships\":[\"roles\",\"members\"],\"title\":\"Assignment Attributes\",\"type\":\"array\",\"viewable\":true},\"condition\":{\"description\":\"A conditional filter for this assignment\",\"isConditional\":true,\"searchable\":false,\"title\":\"Condition\",\"type\":\"string\",\"viewable\":false},\"description\":{\"description\":\"The assignment description, used for display purposes.\",\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"viewable\":true},\"linkQualifiers\":{\"description\":\"Conditional link qualifiers to restrict this assignment to.\",\"items\":{\"title\":\"Link Qualifiers Items\",\"type\":\"string\"},\"title\":\"Link Qualifiers\",\"type\":\"array\",\"viewable\":true},\"mapping\":{\"description\":\"The name of the mapping this assignment applies to\",\"policies\":[{\"policyId\":\"mapping-exists\"}],\"searchable\":true,\"title\":\"Mapping\",\"type\":\"string\",\"viewable\":true},\"members\":{\"description\":\"Assignment Members\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_grantType\":{\"description\":\"Grant Type\",\"label\":\"Grant Type\",\"type\":\"string\"},\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Assignment Members Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"conditionalAssociation\":true,\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"assignments\",\"reverseRelationship\":true,\"title\":\"Assignment Members Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Assignment Members\",\"type\":\"array\",\"viewable\":true},\"name\":{\"description\":\"The assignment name, used for display purposes.\",\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"viewable\":true},\"roles\":{\"description\":\"Managed Roles\",\"items\":{\"id\":\"urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items\",\"properties\":{\"_ref\":{\"description\":\"References a relationship from a managed object\",\"type\":\"string\"},\"_refProperties\":{\"description\":\"Supports metadata within the relationship\",\"properties\":{\"_id\":{\"description\":\"_refProperties object ID\",\"type\":\"string\"}},\"title\":\"Managed Roles Items _refProperties\",\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Role\",\"notify\":true,\"path\":\"managed/role\",\"query\":{\"fields\":[\"name\"],\"queryFilter\":\"true\"}}],\"reversePropertyName\":\"assignments\",\"reverseRelationship\":true,\"title\":\"Managed Roles Items\",\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"title\":\"Managed Roles\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"weight\":{\"description\":\"The weight of the assignment.\",\"notifyRelationships\":[\"roles\",\"members\"],\"searchable\":false,\"title\":\"Weight\",\"type\":[\"number\",\"null\"],\"viewable\":true}},\"required\":[\"name\",\"description\",\"mapping\"],\"title\":\"Assignment\",\"type\":\"object\"}},{\"name\":\"organization\",\"onCreate\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"onRead\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"schema\":{\"$schema\":\"http://forgerock.org/json-schema#\",\"description\":\"An organization or tenant, whose resources are managed by organizational admins.\",\"icon\":\"fa-building\",\"mat-icon\":\"domain\",\"order\":[\"name\",\"description\",\"owners\",\"admins\",\"members\",\"parent\",\"children\",\"adminIDs\",\"ownerIDs\",\"parentAdminIDs\",\"parentOwnerIDs\",\"parentIDs\"],\"properties\":{\"adminIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"admin ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\"],\"referencedRelationshipFields\":[\"admins\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"Admin user ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"admins\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":false,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"adminOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"children\"],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Administrators\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"children\":{\"description\":\"Child Organizations\",\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":true,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\",\"description\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"parent\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"policies\":[],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Child Organizations\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"description\":{\"searchable\":true,\"title\":\"Description\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"members\":{\"items\":{\"notifySelf\":false,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":true,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"memberOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"returnByDefault\":false,\"searchable\":false,\"title\":\"Members\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"name\":{\"searchable\":true,\"title\":\"Name\",\"type\":\"string\",\"userEditable\":true,\"viewable\":true},\"ownerIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"owner ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\"],\"referencedRelationshipFields\":[\"owners\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"Owner user ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"owners\":{\"items\":{\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"User\",\"notify\":false,\"path\":\"managed/user\",\"query\":{\"fields\":[\"userName\",\"givenName\",\"sn\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"reversePropertyName\":\"ownerOfOrg\",\"reverseRelationship\":true,\"type\":\"relationship\",\"validate\":true},\"notifyRelationships\":[\"children\"],\"returnByDefault\":false,\"searchable\":false,\"title\":\"Owner\",\"type\":\"array\",\"userEditable\":false,\"viewable\":true},\"parent\":{\"description\":\"Parent Organization\",\"notifyRelationships\":[\"children\",\"members\"],\"notifySelf\":true,\"properties\":{\"_ref\":{\"type\":\"string\"},\"_refProperties\":{\"properties\":{\"_id\":{\"propName\":\"_id\",\"required\":false,\"type\":\"string\"}},\"type\":\"object\"}},\"resourceCollection\":[{\"label\":\"Organization\",\"notify\":false,\"path\":\"managed/organization\",\"query\":{\"fields\":[\"name\",\"description\"],\"queryFilter\":\"true\",\"sortKeys\":[]}}],\"returnByDefault\":false,\"reversePropertyName\":\"children\",\"reverseRelationship\":true,\"searchable\":false,\"title\":\"Parent Organization\",\"type\":\"relationship\",\"userEditable\":false,\"validate\":true,\"viewable\":true},\"parentAdminIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"user ids of parent admins\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"adminIDs\",\"parentAdminIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"user ids of parent admins\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"parentIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"parent org ids\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"_id\",\"parentIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"parent org ids\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false},\"parentOwnerIDs\":{\"isVirtual\":true,\"items\":{\"title\":\"user ids of parent owners\",\"type\":\"string\"},\"queryConfig\":{\"flattenProperties\":true,\"referencedObjectFields\":[\"ownerIDs\",\"parentOwnerIDs\"],\"referencedRelationshipFields\":[\"parent\"]},\"returnByDefault\":true,\"searchable\":false,\"title\":\"user ids of parent owners\",\"type\":\"array\",\"userEditable\":false,\"viewable\":false}},\"required\":[\"name\"],\"title\":\"Organization\",\"type\":\"object\"}},{\"name\":\"seantestmanagedobject\",\"schema\":{\"description\":null,\"icon\":\"fa-database\",\"mat-icon\":null,\"title\":null}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.287Z", + "time": 29, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 29 + } + }, + { + "_id": "c8847f8b05e82ff97b9901f9ef21711f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 33, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "33" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"metrics\",\"enabled\":false}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/metrics" + }, + "response": { + "bodySize": 33, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 33, + "text": "{\"_id\":\"metrics\",\"enabled\":false}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "33" + } + ], + "headersSize": 2250, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.321Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "481b9d20ca5295bab85a70f228c051a0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 415, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "415" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 467, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"notification/passwordUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"password\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.passwordUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your password has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/passwordUpdate" + }, + "response": { + "bodySize": 415, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 415, + "text": "{\"_id\":\"notification/passwordUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"password\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.passwordUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your password has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "415" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.337Z", + "time": 15, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 15 + } + }, + { + "_id": "8761a76489fd8c69e300a2d045819497", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 560, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "560" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 466, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"notification/profileUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"userName\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"preferences\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.profileUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your profile has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notification/profileUpdate" + }, + "response": { + "bodySize": 560, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 560, + "text": "{\"_id\":\"notification/profileUpdate\",\"condition\":{\"file\":\"propertiesModifiedFilter.groovy\",\"globals\":{\"propertiesToCheck\":[\"userName\",\"givenName\",\"sn\",\"mail\",\"description\",\"accountStatus\",\"telephoneNumber\",\"postalAddress\",\"city\",\"postalCode\",\"country\",\"stateProvince\",\"preferences\"]},\"type\":\"groovy\"},\"enabled\":{\"$bool\":\"&{openidm.notifications.profileUpdate|false}\"},\"methods\":[\"update\",\"patch\"],\"notification\":{\"message\":\"Your profile has been updated.\",\"notificationType\":\"info\"},\"path\":\"managed/user/*\",\"target\":{\"resource\":\"managed/user/{{response/_id}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "560" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.356Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "409aa8b57ce9b97a4e7b4c72a690bb5b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 180, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "180" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"notificationFactory\",\"enabled\":{\"$bool\":\"&{openidm.notifications|false}\"},\"threadPool\":{\"maxPoolThreads\":2,\"maxQueueSize\":20000,\"steadyPoolThreads\":1,\"threadKeepAlive\":60}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/notificationFactory" + }, + "response": { + "bodySize": 180, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 180, + "text": "{\"_id\":\"notificationFactory\",\"enabled\":{\"$bool\":\"&{openidm.notifications|false}\"},\"threadPool\":{\"maxPoolThreads\":2,\"maxQueueSize\":20000,\"steadyPoolThreads\":1,\"threadKeepAlive\":60}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "180" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.372Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "5f5545d40340b0d7eeccc0b7536b62f1", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2368, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2368" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 447, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"policy\",\"additionalFiles\":[],\"file\":\"policy.js\",\"resources\":[{\"calculatedProperties\":{\"source\":\"require('selfServicePolicies').getRegistrationProperties()\",\"type\":\"text/javascript\"},\"resource\":\"selfservice/registration\"},{\"calculatedProperties\":{\"source\":\"require('selfServicePolicies').getResetProperties()\",\"type\":\"text/javascript\"},\"resource\":\"selfservice/reset\"},{\"properties\":[{\"name\":\"_id\",\"policies\":[{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"}]},{\"name\":\"password\",\"policies\":[{\"params\":{\"minLength\":8},\"policyId\":\"minimum-length\"}]}],\"resource\":\"internal/user/*\"},{\"properties\":[{\"name\":\"name\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"forbiddenChars\":[\"/*\"]},\"policyId\":\"cannot-contain-characters\"}]},{\"name\":\"temporalConstraints\",\"policies\":[{\"policyId\":\"valid-temporal-constraints\"}]},{\"name\":\"condition\",\"policies\":[{\"policyId\":\"valid-query-filter\"}]},{\"name\":\"privileges\",\"policies\":[{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"params\":{\"properties\":[{\"name\":\"name\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"string\"]},\"policyId\":\"valid-type\"}]},{\"name\":\"path\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"forbiddenChars\":[\"/*\"]},\"policyId\":\"cannot-contain-characters\"},{\"policyId\":\"valid-privilege-path\"}]},{\"name\":\"accessFlags\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-accessFlags-object\"}]},{\"name\":\"actions\",\"policies\":[{\"policyId\":\"required\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"}]},{\"name\":\"permissions\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-permissions\"}]},{\"name\":\"filter\",\"policies\":[{\"params\":{\"types\":[\"string\",\"null\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-query-filter\"}]}]},\"policyId\":\"valid-array-items\"}]}],\"resource\":\"internal/role/*\"},{\"properties\":[{\"name\":\"temporalConstraints\",\"policies\":[{\"policyId\":\"valid-temporal-constraints\"}]},{\"name\":\"condition\",\"policies\":[{\"policyId\":\"valid-query-filter\"}]}],\"resource\":\"managed/role/*\"},{\"properties\":[{\"name\":\"objects\",\"policies\":[{\"policyId\":\"valid-event-scripts\"}]}],\"resource\":\"config/managed\"}],\"type\":\"text/javascript\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/policy" + }, + "response": { + "bodySize": 2368, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 2368, + "text": "{\"_id\":\"policy\",\"additionalFiles\":[],\"file\":\"policy.js\",\"resources\":[{\"calculatedProperties\":{\"source\":\"require('selfServicePolicies').getRegistrationProperties()\",\"type\":\"text/javascript\"},\"resource\":\"selfservice/registration\"},{\"calculatedProperties\":{\"source\":\"require('selfServicePolicies').getResetProperties()\",\"type\":\"text/javascript\"},\"resource\":\"selfservice/reset\"},{\"properties\":[{\"name\":\"_id\",\"policies\":[{\"params\":{\"forbiddenChars\":[\"/\"]},\"policyId\":\"cannot-contain-characters\"}]},{\"name\":\"password\",\"policies\":[{\"params\":{\"minLength\":8},\"policyId\":\"minimum-length\"}]}],\"resource\":\"internal/user/*\"},{\"properties\":[{\"name\":\"name\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"forbiddenChars\":[\"/*\"]},\"policyId\":\"cannot-contain-characters\"}]},{\"name\":\"temporalConstraints\",\"policies\":[{\"policyId\":\"valid-temporal-constraints\"}]},{\"name\":\"condition\",\"policies\":[{\"policyId\":\"valid-query-filter\"}]},{\"name\":\"privileges\",\"policies\":[{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"params\":{\"properties\":[{\"name\":\"name\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"string\"]},\"policyId\":\"valid-type\"}]},{\"name\":\"path\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"forbiddenChars\":[\"/*\"]},\"policyId\":\"cannot-contain-characters\"},{\"policyId\":\"valid-privilege-path\"}]},{\"name\":\"accessFlags\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-accessFlags-object\"}]},{\"name\":\"actions\",\"policies\":[{\"policyId\":\"required\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"}]},{\"name\":\"permissions\",\"policies\":[{\"policyId\":\"required\"},{\"policyId\":\"not-empty\"},{\"params\":{\"types\":[\"array\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-permissions\"}]},{\"name\":\"filter\",\"policies\":[{\"params\":{\"types\":[\"string\",\"null\"]},\"policyId\":\"valid-type\"},{\"policyId\":\"valid-query-filter\"}]}]},\"policyId\":\"valid-array-items\"}]}],\"resource\":\"internal/role/*\"},{\"properties\":[{\"name\":\"temporalConstraints\",\"policies\":[{\"policyId\":\"valid-temporal-constraints\"}]},{\"name\":\"condition\",\"policies\":[{\"policyId\":\"valid-query-filter\"}]}],\"resource\":\"managed/role/*\"},{\"properties\":[{\"name\":\"objects\",\"policies\":[{\"policyId\":\"valid-event-scripts\"}]}],\"resource\":\"config/managed\"}],\"type\":\"text/javascript\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.388Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "85aa7f57d20e37b9a3d0385b7306304b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 493, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "493" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 460, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"privilegeAssignments\",\"privilegeAssignments\":[{\"name\":\"ownerPrivileges\",\"privileges\":[\"owner-view-update-delete-orgs\",\"owner-create-orgs\",\"owner-view-update-delete-admins-and-members\",\"owner-create-admins\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"ownerOfOrg\"},{\"name\":\"adminPrivileges\",\"privileges\":[\"admin-view-update-delete-orgs\",\"admin-create-orgs\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"adminOfOrg\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privilegeAssignments" + }, + "response": { + "bodySize": 493, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 493, + "text": "{\"_id\":\"privilegeAssignments\",\"privilegeAssignments\":[{\"name\":\"ownerPrivileges\",\"privileges\":[\"owner-view-update-delete-orgs\",\"owner-create-orgs\",\"owner-view-update-delete-admins-and-members\",\"owner-create-admins\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"ownerOfOrg\"},{\"name\":\"adminPrivileges\",\"privileges\":[\"admin-view-update-delete-orgs\",\"admin-create-orgs\",\"admin-view-update-delete-members\",\"admin-create-members\"],\"relationshipField\":\"adminOfOrg\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "493" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.405Z", + "time": 12, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 12 + } + }, + { + "_id": "cbec42ff637072f3ce8377be01511efe", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 8228, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "8228" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 451, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"privileges\",\"privileges\":[{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":false},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/ownerIDs eq \\\"{{_id}}\\\" or /parentOwnerIDs eq \\\"{{_id}}\\\"\",\"name\":\"owner-view-update-delete-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"VIEW\",\"UPDATE\",\"DELETE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":false},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/parent pr\",\"name\":\"owner-create-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":false},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrgIDs eq \\\"__org_id_placeholder__\\\"\",\"name\":\"owner-view-update-delete-admins-and-members\",\"path\":\"managed/user\",\"permissions\":[\"VIEW\",\"DELETE\",\"UPDATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":false},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrg/0 pr and /adminOfOrg/0 pr and !(/ownerOfOrg pr)\",\"name\":\"owner-create-admins\",\"path\":\"managed/user\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":true},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/adminIDs eq \\\"{{_id}}\\\" or /parentAdminIDs eq \\\"{{_id}}\\\"\",\"name\":\"admin-view-update-delete-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"VIEW\",\"UPDATE\",\"DELETE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":true},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/parent pr\",\"name\":\"admin-create-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":true},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrgIDs eq \\\"__org_id_placeholder__\\\"\",\"name\":\"admin-view-update-delete-members\",\"path\":\"managed/user\",\"permissions\":[\"VIEW\",\"DELETE\",\"UPDATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":true},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrg/0 pr and !(/adminOfOrg pr) and !(/ownerOfOrg pr)\",\"name\":\"admin-create-members\",\"path\":\"managed/user\",\"permissions\":[\"CREATE\"]}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/privileges" + }, + "response": { + "bodySize": 8228, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 8228, + "text": "{\"_id\":\"privileges\",\"privileges\":[{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":false},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/ownerIDs eq \\\"{{_id}}\\\" or /parentOwnerIDs eq \\\"{{_id}}\\\"\",\"name\":\"owner-view-update-delete-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"VIEW\",\"UPDATE\",\"DELETE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":false},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/parent pr\",\"name\":\"owner-create-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":false},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrgIDs eq \\\"__org_id_placeholder__\\\"\",\"name\":\"owner-view-update-delete-admins-and-members\",\"path\":\"managed/user\",\"permissions\":[\"VIEW\",\"DELETE\",\"UPDATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":false},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrg/0 pr and /adminOfOrg/0 pr and !(/ownerOfOrg pr)\",\"name\":\"owner-create-admins\",\"path\":\"managed/user\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":true},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/adminIDs eq \\\"{{_id}}\\\" or /parentAdminIDs eq \\\"{{_id}}\\\"\",\"name\":\"admin-view-update-delete-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"VIEW\",\"UPDATE\",\"DELETE\"]},{\"accessFlags\":[{\"attribute\":\"name\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"owners\",\"readOnly\":true},{\"attribute\":\"admins\",\"readOnly\":true},{\"attribute\":\"members\",\"readOnly\":false},{\"attribute\":\"parent\",\"readOnly\":false},{\"attribute\":\"children\",\"readOnly\":false},{\"attribute\":\"parentIDs\",\"readOnly\":true},{\"attribute\":\"adminIDs\",\"readOnly\":true},{\"attribute\":\"parentAdminIDs\",\"readOnly\":true},{\"attribute\":\"ownerIDs\",\"readOnly\":true},{\"attribute\":\"parentOwnerIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/parent pr\",\"name\":\"admin-create-orgs\",\"path\":\"managed/organization\",\"permissions\":[\"CREATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":true},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrgIDs eq \\\"__org_id_placeholder__\\\"\",\"name\":\"admin-view-update-delete-members\",\"path\":\"managed/user\",\"permissions\":[\"VIEW\",\"DELETE\",\"UPDATE\"]},{\"accessFlags\":[{\"attribute\":\"userName\",\"readOnly\":false},{\"attribute\":\"password\",\"readOnly\":false},{\"attribute\":\"givenName\",\"readOnly\":false},{\"attribute\":\"sn\",\"readOnly\":false},{\"attribute\":\"mail\",\"readOnly\":false},{\"attribute\":\"description\",\"readOnly\":false},{\"attribute\":\"accountStatus\",\"readOnly\":false},{\"attribute\":\"telephoneNumber\",\"readOnly\":false},{\"attribute\":\"postalAddress\",\"readOnly\":false},{\"attribute\":\"city\",\"readOnly\":false},{\"attribute\":\"postalCode\",\"readOnly\":false},{\"attribute\":\"country\",\"readOnly\":false},{\"attribute\":\"stateProvince\",\"readOnly\":false},{\"attribute\":\"roles\",\"readOnly\":false},{\"attribute\":\"manager\",\"readOnly\":false},{\"attribute\":\"authzRoles\",\"readOnly\":false},{\"attribute\":\"reports\",\"readOnly\":false},{\"attribute\":\"effectiveRoles\",\"readOnly\":false},{\"attribute\":\"effectiveAssignments\",\"readOnly\":false},{\"attribute\":\"lastSync\",\"readOnly\":false},{\"attribute\":\"kbaInfo\",\"readOnly\":false},{\"attribute\":\"preferences\",\"readOnly\":false},{\"attribute\":\"consentedMappings\",\"readOnly\":false},{\"attribute\":\"memberOfOrg\",\"readOnly\":false},{\"attribute\":\"adminOfOrg\",\"readOnly\":true},{\"attribute\":\"ownerOfOrg\",\"readOnly\":true},{\"attribute\":\"memberOfOrgIDs\",\"readOnly\":true}],\"actions\":[],\"filter\":\"/memberOfOrg/0 pr and !(/adminOfOrg pr) and !(/ownerOfOrg pr)\",\"name\":\"admin-create-members\",\"path\":\"managed/user\",\"permissions\":[\"CREATE\"]}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.423Z", + "time": 12, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 12 + } + }, + { + "_id": "e113b4988a44660730d55e50b60c01f7", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 246, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "246" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 454, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"process/access\",\"workflowAccess\":[{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-authorized\"}},{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-admin\"}}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/process/access" + }, + "response": { + "bodySize": 246, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 246, + "text": "{\"_id\":\"process/access\",\"workflowAccess\":[{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-authorized\"}},{\"propertiesCheck\":{\"matches\":\".*\",\"property\":\"_id\",\"requiresRole\":\"internal/role/openidm-admin\"}}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "246" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.439Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "eb131157f5058c14dd4e167f0cdcbc5a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 20198, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "20198" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"repo.ds\",\"commands\":{\"delete-mapping-links\":{\"_queryFilter\":\"/linkType eq \\\"${mapping}\\\"\",\"operation\":\"DELETE\"},\"delete-target-ids-for-recon\":{\"_queryFilter\":\"/reconId eq \\\"${reconId}\\\"\",\"operation\":\"DELETE\"}},\"embedded\":false,\"ldapConnectionFactories\":{\"bind\":{\"connectionPoolSize\":50,\"connectionSecurity\":\"startTLS\",\"heartBeatIntervalSeconds\":60,\"heartBeatTimeoutMilliSeconds\":10000,\"primaryLdapServers\":[{\"hostname\":\"opendj-frodo-dev.classic.com\",\"port\":2389}],\"secondaryLdapServers\":[]},\"root\":{\"authentication\":{\"simple\":{\"bindDn\":\"uid=admin\",\"bindPassword\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"lJ/B6T9e9CDKHCN8TxkD4g==\",\"iv\":\"EdrerzwEUUkHG582cLDw5w==\",\"keySize\":32,\"mac\":\"Aty9fXUtl4pexGlHOc+CBg==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"BITSKlnPeT5klcuEZbngzw==\",\"stableId\":\"openidm-sym-default\"}}}}},\"inheritFrom\":\"bind\"}},\"maxConnectionAttempts\":5,\"resourceMapping\":{\"defaultMapping\":{\"dnTemplate\":\"ou=generic,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"explicitMapping\":{\"clusteredrecontargetids\":{\"dnTemplate\":\"ou=clusteredrecontargetids,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-recon-clusteredTargetIds\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"reconId\":{\"ldapAttribute\":\"fr-idm-recon-id\",\"type\":\"simple\"},\"targetIds\":{\"ldapAttribute\":\"fr-idm-recon-targetIds\",\"type\":\"json\"}}},\"dsconfig/attributeValue\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-attribute-value-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"checkSubstrings\":{\"ldapAttribute\":\"ds-cfg-check-substrings\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"matchAttribute\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-match-attribute\",\"type\":\"simple\"},\"minSubstringLength\":{\"ldapAttribute\":\"ds-cfg-min-substring-length\",\"type\":\"simple\"},\"testReversedPassword\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-test-reversed-password\",\"type\":\"simple\"}}},\"dsconfig/characterSet\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-character-set-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"allowUnclassifiedCharacters\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-allow-unclassified-characters\",\"type\":\"simple\"},\"characterSet\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-character-set\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minCharacterSets\":{\"ldapAttribute\":\"ds-cfg-min-character-sets\",\"type\":\"simple\"}}},\"dsconfig/dictionary\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-dictionary-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"checkSubstrings\":{\"ldapAttribute\":\"ds-cfg-check-substrings\",\"type\":\"simple\"},\"dictionaryFile\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-dictionary-file\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minSubstringLength\":{\"ldapAttribute\":\"ds-cfg-min-substring-length\",\"type\":\"simple\"},\"testReversedPassword\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-test-reversed-password\",\"type\":\"simple\"}}},\"dsconfig/lengthBased\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-length-based-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"maxPasswordLength\":{\"ldapAttribute\":\"ds-cfg-max-password-length\",\"type\":\"simple\"},\"minPasswordLength\":{\"ldapAttribute\":\"ds-cfg-min-password-length\",\"type\":\"simple\"}}},\"dsconfig/passwordPolicies\":{\"dnTemplate\":\"cn=Password Policies,cn=config\",\"objectClasses\":[\"ds-cfg-password-policy\",\"ds-cfg-authentication-policy\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"defaultPasswordStorageScheme\":{\"isMultiValued\":true,\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-default-password-storage-scheme\",\"type\":\"simple\"},\"maxPasswordAge\":{\"ldapAttribute\":\"ds-cfg-max-password-age\",\"type\":\"simple\"},\"passwordAttribute\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-password-attribute\",\"type\":\"simple\"},\"passwordHistoryCount\":{\"ldapAttribute\":\"ds-cfg-password-history-count\",\"type\":\"simple\"},\"validator\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-password-validator\",\"type\":\"simple\"}}},\"dsconfig/repeatedCharacters\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-repeated-characters-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"maxConsecutiveLength\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-max-consecutive-length\",\"type\":\"simple\"}}},\"dsconfig/similarityBased\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-similarity-based-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minPasswordDifference\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-min-password-difference\",\"type\":\"simple\"}}},\"dsconfig/uniqueCharacters\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-unique-characters-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minUniqueCharacters\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-min-unique-characters\",\"type\":\"simple\"}}},\"dsconfig/userDefinedVirtualAttribute\":{\"dnTemplate\":\"cn=Virtual Attributes,cn=config\",\"objectClasses\":[\"ds-cfg-user-defined-virtual-attribute\",\"ds-cfg-virtual-attribute\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"attributeType\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-attribute-type\",\"type\":\"simple\"},\"baseDn\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-base-dn\",\"type\":\"simple\"},\"conflictBehavior\":{\"ldapAttribute\":\"ds-cfg-conflict-behavior\",\"type\":\"simple\"},\"enabled\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"filter\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-filter\",\"type\":\"simple\"},\"groupDn\":{\"ldapAttribute\":\"ds-cfg-group-dn\",\"type\":\"simple\"},\"javaClass\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"scope\":{\"ldapAttribute\":\"ds-cfg-scope\",\"type\":\"simple\"},\"value\":{\"isMultiValued\":true,\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-value\",\"type\":\"simple\"}}},\"internal/role\":{\"dnTemplate\":\"ou=roles,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"fr-idm-internal-role\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"authzMembers\":{\"isMultiValued\":true,\"propertyName\":\"authzRoles\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"condition\":{\"ldapAttribute\":\"fr-idm-condition\",\"type\":\"simple\"},\"description\":{\"ldapAttribute\":\"description\",\"type\":\"simple\"},\"name\":{\"ldapAttribute\":\"fr-idm-name\",\"type\":\"simple\"},\"privileges\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-privilege\",\"type\":\"json\"},\"temporalConstraints\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-temporal-constraints\",\"type\":\"json\"}}},\"internal/user\":{\"dnTemplate\":\"ou=users,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-internal-user\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"password\":{\"ldapAttribute\":\"fr-idm-password\",\"type\":\"json\"}}},\"link\":{\"dnTemplate\":\"ou=links,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-link\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"firstId\":{\"ldapAttribute\":\"fr-idm-link-firstId\",\"type\":\"simple\"},\"linkQualifier\":{\"ldapAttribute\":\"fr-idm-link-qualifier\",\"type\":\"simple\"},\"linkType\":{\"ldapAttribute\":\"fr-idm-link-type\",\"type\":\"simple\"},\"secondId\":{\"ldapAttribute\":\"fr-idm-link-secondId\",\"type\":\"simple\"}}},\"locks\":{\"dnTemplate\":\"ou=locks,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-lock\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"nodeId\":{\"ldapAttribute\":\"fr-idm-lock-nodeid\",\"type\":\"simple\"}}},\"recon/assoc\":{\"dnTemplate\":\"ou=assoc,ou=recon,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"namingStrategy\":{\"dnAttribute\":\"fr-idm-reconassoc-reconid\",\"type\":\"clientDnNaming\"},\"objectClasses\":[\"fr-idm-reconassoc\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"fr-idm-reconassoc-reconid\",\"type\":\"simple\"},\"finishTime\":{\"ldapAttribute\":\"fr-idm-reconassoc-finishtime\",\"type\":\"simple\"},\"isAnalysis\":{\"ldapAttribute\":\"fr-idm-reconassoc-isanalysis\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-reconassoc-mapping\",\"type\":\"simple\"},\"sourceResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-sourceresourcecollection\",\"type\":\"simple\"},\"targetResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-targetresourcecollection\",\"type\":\"simple\"}},\"subResources\":{\"entry\":{\"namingStrategy\":{\"dnAttribute\":\"uid\",\"type\":\"clientDnNaming\"},\"resource\":\"recon-assoc-entry\",\"type\":\"collection\"}}},\"recon/assoc/entry\":{\"objectClasses\":[\"uidObject\",\"fr-idm-reconassocentry\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\"},\"action\":{\"ldapAttribute\":\"fr-idm-reconassocentry-action\",\"type\":\"simple\"},\"ambiguousTargetObjectIds\":{\"ldapAttribute\":\"fr-idm-reconassocentry-ambiguoustargetobjectids\",\"type\":\"simple\"},\"exception\":{\"ldapAttribute\":\"fr-idm-reconassocentry-exception\",\"type\":\"simple\"},\"isAnalysis\":{\"ldapAttribute\":\"fr-idm-reconassoc-isanalysis\",\"type\":\"simple\"},\"linkQualifier\":{\"ldapAttribute\":\"fr-idm-reconassocentry-linkqualifier\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-reconassoc-mapping\",\"type\":\"simple\"},\"message\":{\"ldapAttribute\":\"fr-idm-reconassocentry-message\",\"type\":\"simple\"},\"messageDetail\":{\"ldapAttribute\":\"fr-idm-reconassocentry-messagedetail\",\"type\":\"simple\"},\"phase\":{\"ldapAttribute\":\"fr-idm-reconassocentry-phase\",\"type\":\"simple\"},\"reconId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-reconid\",\"type\":\"simple\"},\"situation\":{\"ldapAttribute\":\"fr-idm-reconassocentry-situation\",\"type\":\"simple\"},\"sourceObjectId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-sourceObjectId\",\"type\":\"simple\"},\"sourceResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-sourceresourcecollection\",\"type\":\"simple\"},\"status\":{\"ldapAttribute\":\"fr-idm-reconassocentry-status\",\"type\":\"simple\"},\"targetObjectId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-targetObjectId\",\"type\":\"simple\"},\"targetResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-targetresourcecollection\",\"type\":\"simple\"}},\"resourceName\":\"recon-assoc-entry\",\"subResourceRouting\":[{\"prefix\":\"entry\",\"template\":\"recon/assoc/{reconId}/entry\"}]},\"sync/queue\":{\"dnTemplate\":\"ou=queue,ou=sync,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-syncqueue\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"context\":{\"ldapAttribute\":\"fr-idm-syncqueue-context\",\"type\":\"json\"},\"createDate\":{\"ldapAttribute\":\"fr-idm-syncqueue-createdate\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-syncqueue-mapping\",\"type\":\"simple\"},\"newObject\":{\"ldapAttribute\":\"fr-idm-syncqueue-newobject\",\"type\":\"json\"},\"nodeId\":{\"ldapAttribute\":\"fr-idm-syncqueue-nodeid\",\"type\":\"simple\"},\"objectRev\":{\"ldapAttribute\":\"fr-idm-syncqueue-objectRev\",\"type\":\"simple\"},\"oldObject\":{\"ldapAttribute\":\"fr-idm-syncqueue-oldobject\",\"type\":\"json\"},\"resourceCollection\":{\"ldapAttribute\":\"fr-idm-syncqueue-resourcecollection\",\"type\":\"simple\"},\"resourceId\":{\"ldapAttribute\":\"fr-idm-syncqueue-resourceid\",\"type\":\"simple\"},\"state\":{\"ldapAttribute\":\"fr-idm-syncqueue-state\",\"type\":\"simple\"},\"syncAction\":{\"ldapAttribute\":\"fr-idm-syncqueue-syncaction\",\"type\":\"simple\"}}}},\"genericMapping\":{\"cluster/*\":{\"dnTemplate\":\"ou=cluster,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-cluster-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchClusterObject\",\"objectClasses\":[\"uidObject\",\"fr-idm-cluster-obj\"]},\"config\":{\"dnTemplate\":\"ou=config,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"file\":{\"dnTemplate\":\"ou=file,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"import\":{\"dnTemplate\":\"ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"import/*\":{\"dnTemplate\":\"ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"internal/notification\":{\"dnTemplate\":\"ou=notification,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-notification-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-notification\"],\"properties\":{\"target\":{\"propertyName\":\"_notifications\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"internal/usermeta\":{\"dnTemplate\":\"ou=usermeta,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-generic-obj\"],\"properties\":{\"target\":{\"propertyName\":\"_meta\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"jsonstorage\":{\"dnTemplate\":\"ou=jsonstorage,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"managed/*\":{\"dnTemplate\":\"ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"managed/assignment\":{\"dnTemplate\":\"ou=assignment,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-assignment-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-assignment\"],\"properties\":{\"condition\":{\"ldapAttribute\":\"fr-idm-assignment-condition\",\"type\":\"simple\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"assignments\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"roles\":{\"isMultiValued\":true,\"propertyName\":\"assignments\",\"resourcePath\":\"managed/role\",\"type\":\"reverseReference\"}}},\"managed/organization\":{\"dnTemplate\":\"ou=organization,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-organization-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-organization\"],\"properties\":{\"admins\":{\"isMultiValued\":true,\"propertyName\":\"adminOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"children\":{\"isMultiValued\":true,\"propertyName\":\"parent\",\"resourcePath\":\"managed/organization\",\"type\":\"reverseReference\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"memberOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"name\":{\"ldapAttribute\":\"fr-idm-managed-organization-name\",\"type\":\"simple\"},\"owners\":{\"isMultiValued\":true,\"propertyName\":\"ownerOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"parent\":{\"ldapAttribute\":\"fr-idm-managed-organization-parent\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"}}},\"managed/role\":{\"dnTemplate\":\"ou=role,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-role-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchManagedRole\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-role\"],\"properties\":{\"assignments\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-role-assignments\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/assignment\",\"type\":\"reference\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"roles\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"managed/user\":{\"dnTemplate\":\"ou=user,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-user-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchManagedUser\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-user\"],\"properties\":{\"_meta\":{\"isMultiValued\":false,\"ldapAttribute\":\"fr-idm-managed-user-meta\",\"primaryKey\":\"uid\",\"resourcePath\":\"internal/usermeta\",\"type\":\"reference\"},\"_notifications\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-notifications\",\"primaryKey\":\"uid\",\"resourcePath\":\"internal/notification\",\"type\":\"reference\"},\"adminOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-admin\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"assignments\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-assignment-member\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/assignment\",\"type\":\"reference\"},\"authzRoles\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-authzroles-internal-role\",\"primaryKey\":\"cn\",\"resourcePath\":\"internal/role\",\"type\":\"reference\"},\"manager\":{\"isMultiValued\":false,\"ldapAttribute\":\"fr-idm-managed-user-manager\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/user\",\"type\":\"reference\"},\"memberOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-member\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"ownerOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-owner\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"passwordExpirationTime\":{\"ldapAttribute\":\"pwdExpirationTime\",\"type\":\"simple\",\"writability\":\"readOnlyDiscardWrites\"},\"passwordLastChangedTime\":{\"ldapAttribute\":\"pwdChangedTime\",\"type\":\"simple\",\"writability\":\"readOnlyDiscardWrites\"},\"reports\":{\"isMultiValued\":true,\"propertyName\":\"manager\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"roles\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-roles\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/role\",\"type\":\"reference\"}}},\"reconprogressstate\":{\"dnTemplate\":\"ou=reconprogressstate,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"relationships\":{\"dnTemplate\":\"ou=relationships,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-relationship-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchRelationship\",\"objectClasses\":[\"uidObject\",\"fr-idm-relationship\"]},\"scheduler\":{\"dnTemplate\":\"ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"scheduler/*\":{\"dnTemplate\":\"ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"ui/*\":{\"dnTemplate\":\"ou=ui,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"updates\":{\"dnTemplate\":\"ou=updates,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"}}},\"rest2LdapOptions\":{\"mvccAttribute\":\"etag\",\"readOnUpdatePolicy\":\"controls\",\"returnNullForMissingProperties\":true,\"useMvcc\":true,\"usePermissiveModify\":true,\"useSubtreeDelete\":false},\"security\":{\"fileBasedTrustManagerFile\":\"&{idm.install.dir}/security/truststore\",\"fileBasedTrustManagerPasswordFile\":\"&{idm.install.dir}/security/storepass\",\"fileBasedTrustManagerType\":\"JKS\",\"trustManager\":\"file\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.ds" + }, + "response": { + "bodySize": 20198, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 20198, + "text": "{\"_id\":\"repo.ds\",\"commands\":{\"delete-mapping-links\":{\"_queryFilter\":\"/linkType eq \\\"${mapping}\\\"\",\"operation\":\"DELETE\"},\"delete-target-ids-for-recon\":{\"_queryFilter\":\"/reconId eq \\\"${reconId}\\\"\",\"operation\":\"DELETE\"}},\"embedded\":false,\"ldapConnectionFactories\":{\"bind\":{\"connectionPoolSize\":50,\"connectionSecurity\":\"startTLS\",\"heartBeatIntervalSeconds\":60,\"heartBeatTimeoutMilliSeconds\":10000,\"primaryLdapServers\":[{\"hostname\":\"opendj-frodo-dev.classic.com\",\"port\":2389}],\"secondaryLdapServers\":[]},\"root\":{\"authentication\":{\"simple\":{\"bindDn\":\"uid=admin\",\"bindPassword\":{\"$crypto\":{\"type\":\"x-simple-encryption\",\"value\":{\"cipher\":\"AES/CBC/PKCS5Padding\",\"data\":\"lJ/B6T9e9CDKHCN8TxkD4g==\",\"iv\":\"EdrerzwEUUkHG582cLDw5w==\",\"keySize\":32,\"mac\":\"Aty9fXUtl4pexGlHOc+CBg==\",\"purpose\":\"idm.config.encryption\",\"salt\":\"BITSKlnPeT5klcuEZbngzw==\",\"stableId\":\"openidm-sym-default\"}}}}},\"inheritFrom\":\"bind\"}},\"maxConnectionAttempts\":5,\"resourceMapping\":{\"defaultMapping\":{\"dnTemplate\":\"ou=generic,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"explicitMapping\":{\"clusteredrecontargetids\":{\"dnTemplate\":\"ou=clusteredrecontargetids,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-recon-clusteredTargetIds\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"reconId\":{\"ldapAttribute\":\"fr-idm-recon-id\",\"type\":\"simple\"},\"targetIds\":{\"ldapAttribute\":\"fr-idm-recon-targetIds\",\"type\":\"json\"}}},\"dsconfig/attributeValue\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-attribute-value-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"checkSubstrings\":{\"ldapAttribute\":\"ds-cfg-check-substrings\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"matchAttribute\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-match-attribute\",\"type\":\"simple\"},\"minSubstringLength\":{\"ldapAttribute\":\"ds-cfg-min-substring-length\",\"type\":\"simple\"},\"testReversedPassword\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-test-reversed-password\",\"type\":\"simple\"}}},\"dsconfig/characterSet\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-character-set-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"allowUnclassifiedCharacters\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-allow-unclassified-characters\",\"type\":\"simple\"},\"characterSet\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-character-set\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minCharacterSets\":{\"ldapAttribute\":\"ds-cfg-min-character-sets\",\"type\":\"simple\"}}},\"dsconfig/dictionary\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-dictionary-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"checkSubstrings\":{\"ldapAttribute\":\"ds-cfg-check-substrings\",\"type\":\"simple\"},\"dictionaryFile\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-dictionary-file\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minSubstringLength\":{\"ldapAttribute\":\"ds-cfg-min-substring-length\",\"type\":\"simple\"},\"testReversedPassword\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-test-reversed-password\",\"type\":\"simple\"}}},\"dsconfig/lengthBased\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-length-based-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"maxPasswordLength\":{\"ldapAttribute\":\"ds-cfg-max-password-length\",\"type\":\"simple\"},\"minPasswordLength\":{\"ldapAttribute\":\"ds-cfg-min-password-length\",\"type\":\"simple\"}}},\"dsconfig/passwordPolicies\":{\"dnTemplate\":\"cn=Password Policies,cn=config\",\"objectClasses\":[\"ds-cfg-password-policy\",\"ds-cfg-authentication-policy\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"defaultPasswordStorageScheme\":{\"isMultiValued\":true,\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-default-password-storage-scheme\",\"type\":\"simple\"},\"maxPasswordAge\":{\"ldapAttribute\":\"ds-cfg-max-password-age\",\"type\":\"simple\"},\"passwordAttribute\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-password-attribute\",\"type\":\"simple\"},\"passwordHistoryCount\":{\"ldapAttribute\":\"ds-cfg-password-history-count\",\"type\":\"simple\"},\"validator\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-password-validator\",\"type\":\"simple\"}}},\"dsconfig/repeatedCharacters\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-repeated-characters-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"maxConsecutiveLength\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-max-consecutive-length\",\"type\":\"simple\"}}},\"dsconfig/similarityBased\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-similarity-based-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minPasswordDifference\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-min-password-difference\",\"type\":\"simple\"}}},\"dsconfig/uniqueCharacters\":{\"dnTemplate\":\"cn=Password Validators,cn=config\",\"objectClasses\":[\"ds-cfg-password-validator\",\"ds-cfg-unique-characters-password-validator\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"caseSensitiveValidation\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-case-sensitive-validation\",\"type\":\"simple\"},\"enabled\":{\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"javaClass\":{\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"minUniqueCharacters\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-min-unique-characters\",\"type\":\"simple\"}}},\"dsconfig/userDefinedVirtualAttribute\":{\"dnTemplate\":\"cn=Virtual Attributes,cn=config\",\"objectClasses\":[\"ds-cfg-user-defined-virtual-attribute\",\"ds-cfg-virtual-attribute\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"attributeType\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-attribute-type\",\"type\":\"simple\"},\"baseDn\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-base-dn\",\"type\":\"simple\"},\"conflictBehavior\":{\"ldapAttribute\":\"ds-cfg-conflict-behavior\",\"type\":\"simple\"},\"enabled\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-enabled\",\"type\":\"simple\"},\"filter\":{\"isMultiValued\":true,\"ldapAttribute\":\"ds-cfg-filter\",\"type\":\"simple\"},\"groupDn\":{\"ldapAttribute\":\"ds-cfg-group-dn\",\"type\":\"simple\"},\"javaClass\":{\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-java-class\",\"type\":\"simple\"},\"scope\":{\"ldapAttribute\":\"ds-cfg-scope\",\"type\":\"simple\"},\"value\":{\"isMultiValued\":true,\"isRequired\":true,\"ldapAttribute\":\"ds-cfg-value\",\"type\":\"simple\"}}},\"internal/role\":{\"dnTemplate\":\"ou=roles,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"fr-idm-internal-role\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"cn\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"authzMembers\":{\"isMultiValued\":true,\"propertyName\":\"authzRoles\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"condition\":{\"ldapAttribute\":\"fr-idm-condition\",\"type\":\"simple\"},\"description\":{\"ldapAttribute\":\"description\",\"type\":\"simple\"},\"name\":{\"ldapAttribute\":\"fr-idm-name\",\"type\":\"simple\"},\"privileges\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-privilege\",\"type\":\"json\"},\"temporalConstraints\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-temporal-constraints\",\"type\":\"json\"}}},\"internal/user\":{\"dnTemplate\":\"ou=users,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-internal-user\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"password\":{\"ldapAttribute\":\"fr-idm-password\",\"type\":\"json\"}}},\"link\":{\"dnTemplate\":\"ou=links,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-link\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"firstId\":{\"ldapAttribute\":\"fr-idm-link-firstId\",\"type\":\"simple\"},\"linkQualifier\":{\"ldapAttribute\":\"fr-idm-link-qualifier\",\"type\":\"simple\"},\"linkType\":{\"ldapAttribute\":\"fr-idm-link-type\",\"type\":\"simple\"},\"secondId\":{\"ldapAttribute\":\"fr-idm-link-secondId\",\"type\":\"simple\"}}},\"locks\":{\"dnTemplate\":\"ou=locks,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-lock\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"nodeId\":{\"ldapAttribute\":\"fr-idm-lock-nodeid\",\"type\":\"simple\"}}},\"recon/assoc\":{\"dnTemplate\":\"ou=assoc,ou=recon,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"namingStrategy\":{\"dnAttribute\":\"fr-idm-reconassoc-reconid\",\"type\":\"clientDnNaming\"},\"objectClasses\":[\"fr-idm-reconassoc\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"fr-idm-reconassoc-reconid\",\"type\":\"simple\"},\"finishTime\":{\"ldapAttribute\":\"fr-idm-reconassoc-finishtime\",\"type\":\"simple\"},\"isAnalysis\":{\"ldapAttribute\":\"fr-idm-reconassoc-isanalysis\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-reconassoc-mapping\",\"type\":\"simple\"},\"sourceResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-sourceresourcecollection\",\"type\":\"simple\"},\"targetResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-targetresourcecollection\",\"type\":\"simple\"}},\"subResources\":{\"entry\":{\"namingStrategy\":{\"dnAttribute\":\"uid\",\"type\":\"clientDnNaming\"},\"resource\":\"recon-assoc-entry\",\"type\":\"collection\"}}},\"recon/assoc/entry\":{\"objectClasses\":[\"uidObject\",\"fr-idm-reconassocentry\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\"},\"action\":{\"ldapAttribute\":\"fr-idm-reconassocentry-action\",\"type\":\"simple\"},\"ambiguousTargetObjectIds\":{\"ldapAttribute\":\"fr-idm-reconassocentry-ambiguoustargetobjectids\",\"type\":\"simple\"},\"exception\":{\"ldapAttribute\":\"fr-idm-reconassocentry-exception\",\"type\":\"simple\"},\"isAnalysis\":{\"ldapAttribute\":\"fr-idm-reconassoc-isanalysis\",\"type\":\"simple\"},\"linkQualifier\":{\"ldapAttribute\":\"fr-idm-reconassocentry-linkqualifier\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-reconassoc-mapping\",\"type\":\"simple\"},\"message\":{\"ldapAttribute\":\"fr-idm-reconassocentry-message\",\"type\":\"simple\"},\"messageDetail\":{\"ldapAttribute\":\"fr-idm-reconassocentry-messagedetail\",\"type\":\"simple\"},\"phase\":{\"ldapAttribute\":\"fr-idm-reconassocentry-phase\",\"type\":\"simple\"},\"reconId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-reconid\",\"type\":\"simple\"},\"situation\":{\"ldapAttribute\":\"fr-idm-reconassocentry-situation\",\"type\":\"simple\"},\"sourceObjectId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-sourceObjectId\",\"type\":\"simple\"},\"sourceResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-sourceresourcecollection\",\"type\":\"simple\"},\"status\":{\"ldapAttribute\":\"fr-idm-reconassocentry-status\",\"type\":\"simple\"},\"targetObjectId\":{\"ldapAttribute\":\"fr-idm-reconassocentry-targetObjectId\",\"type\":\"simple\"},\"targetResourceCollection\":{\"ldapAttribute\":\"fr-idm-reconassoc-targetresourcecollection\",\"type\":\"simple\"}},\"resourceName\":\"recon-assoc-entry\",\"subResourceRouting\":[{\"prefix\":\"entry\",\"template\":\"recon/assoc/{reconId}/entry\"}]},\"sync/queue\":{\"dnTemplate\":\"ou=queue,ou=sync,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"objectClasses\":[\"uidObject\",\"fr-idm-syncqueue\"],\"properties\":{\"_id\":{\"isRequired\":true,\"ldapAttribute\":\"uid\",\"type\":\"simple\",\"writability\":\"createOnly\"},\"context\":{\"ldapAttribute\":\"fr-idm-syncqueue-context\",\"type\":\"json\"},\"createDate\":{\"ldapAttribute\":\"fr-idm-syncqueue-createdate\",\"type\":\"simple\"},\"mapping\":{\"ldapAttribute\":\"fr-idm-syncqueue-mapping\",\"type\":\"simple\"},\"newObject\":{\"ldapAttribute\":\"fr-idm-syncqueue-newobject\",\"type\":\"json\"},\"nodeId\":{\"ldapAttribute\":\"fr-idm-syncqueue-nodeid\",\"type\":\"simple\"},\"objectRev\":{\"ldapAttribute\":\"fr-idm-syncqueue-objectRev\",\"type\":\"simple\"},\"oldObject\":{\"ldapAttribute\":\"fr-idm-syncqueue-oldobject\",\"type\":\"json\"},\"resourceCollection\":{\"ldapAttribute\":\"fr-idm-syncqueue-resourcecollection\",\"type\":\"simple\"},\"resourceId\":{\"ldapAttribute\":\"fr-idm-syncqueue-resourceid\",\"type\":\"simple\"},\"state\":{\"ldapAttribute\":\"fr-idm-syncqueue-state\",\"type\":\"simple\"},\"syncAction\":{\"ldapAttribute\":\"fr-idm-syncqueue-syncaction\",\"type\":\"simple\"}}}},\"genericMapping\":{\"cluster/*\":{\"dnTemplate\":\"ou=cluster,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-cluster-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchClusterObject\",\"objectClasses\":[\"uidObject\",\"fr-idm-cluster-obj\"]},\"config\":{\"dnTemplate\":\"ou=config,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"file\":{\"dnTemplate\":\"ou=file,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"import\":{\"dnTemplate\":\"ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"import/*\":{\"dnTemplate\":\"ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"internal/notification\":{\"dnTemplate\":\"ou=notification,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-notification-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-notification\"],\"properties\":{\"target\":{\"propertyName\":\"_notifications\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"internal/usermeta\":{\"dnTemplate\":\"ou=usermeta,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-generic-obj\"],\"properties\":{\"target\":{\"propertyName\":\"_meta\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"jsonstorage\":{\"dnTemplate\":\"ou=jsonstorage,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"managed/*\":{\"dnTemplate\":\"ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"managed/assignment\":{\"dnTemplate\":\"ou=assignment,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-assignment-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-assignment\"],\"properties\":{\"condition\":{\"ldapAttribute\":\"fr-idm-assignment-condition\",\"type\":\"simple\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"assignments\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"roles\":{\"isMultiValued\":true,\"propertyName\":\"assignments\",\"resourcePath\":\"managed/role\",\"type\":\"reverseReference\"}}},\"managed/organization\":{\"dnTemplate\":\"ou=organization,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-organization-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatch\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-organization\"],\"properties\":{\"admins\":{\"isMultiValued\":true,\"propertyName\":\"adminOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"children\":{\"isMultiValued\":true,\"propertyName\":\"parent\",\"resourcePath\":\"managed/organization\",\"type\":\"reverseReference\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"memberOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"name\":{\"ldapAttribute\":\"fr-idm-managed-organization-name\",\"type\":\"simple\"},\"owners\":{\"isMultiValued\":true,\"propertyName\":\"ownerOfOrg\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"parent\":{\"ldapAttribute\":\"fr-idm-managed-organization-parent\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"}}},\"managed/role\":{\"dnTemplate\":\"ou=role,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-role-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchManagedRole\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-role\"],\"properties\":{\"assignments\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-role-assignments\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/assignment\",\"type\":\"reference\"},\"members\":{\"isMultiValued\":true,\"propertyName\":\"roles\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"}}},\"managed/user\":{\"dnTemplate\":\"ou=user,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-managed-user-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchManagedUser\",\"objectClasses\":[\"uidObject\",\"fr-idm-managed-user\"],\"properties\":{\"_meta\":{\"isMultiValued\":false,\"ldapAttribute\":\"fr-idm-managed-user-meta\",\"primaryKey\":\"uid\",\"resourcePath\":\"internal/usermeta\",\"type\":\"reference\"},\"_notifications\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-notifications\",\"primaryKey\":\"uid\",\"resourcePath\":\"internal/notification\",\"type\":\"reference\"},\"adminOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-admin\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"assignments\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-assignment-member\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/assignment\",\"type\":\"reference\"},\"authzRoles\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-authzroles-internal-role\",\"primaryKey\":\"cn\",\"resourcePath\":\"internal/role\",\"type\":\"reference\"},\"manager\":{\"isMultiValued\":false,\"ldapAttribute\":\"fr-idm-managed-user-manager\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/user\",\"type\":\"reference\"},\"memberOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-member\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"ownerOfOrg\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-organization-owner\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/organization\",\"type\":\"reference\"},\"passwordExpirationTime\":{\"ldapAttribute\":\"pwdExpirationTime\",\"type\":\"simple\",\"writability\":\"readOnlyDiscardWrites\"},\"passwordLastChangedTime\":{\"ldapAttribute\":\"pwdChangedTime\",\"type\":\"simple\",\"writability\":\"readOnlyDiscardWrites\"},\"reports\":{\"isMultiValued\":true,\"propertyName\":\"manager\",\"resourcePath\":\"managed/user\",\"type\":\"reverseReference\"},\"roles\":{\"isMultiValued\":true,\"ldapAttribute\":\"fr-idm-managed-user-roles\",\"primaryKey\":\"uid\",\"resourcePath\":\"managed/role\",\"type\":\"reference\"}}},\"reconprogressstate\":{\"dnTemplate\":\"ou=reconprogressstate,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"relationships\":{\"dnTemplate\":\"ou=relationships,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\",\"jsonAttribute\":\"fr-idm-relationship-json\",\"jsonQueryEqualityMatchingRule\":\"caseIgnoreJsonQueryMatchRelationship\",\"objectClasses\":[\"uidObject\",\"fr-idm-relationship\"]},\"scheduler\":{\"dnTemplate\":\"ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"scheduler/*\":{\"dnTemplate\":\"ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"ui/*\":{\"dnTemplate\":\"ou=ui,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"},\"updates\":{\"dnTemplate\":\"ou=updates,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com\"}}},\"rest2LdapOptions\":{\"mvccAttribute\":\"etag\",\"readOnUpdatePolicy\":\"controls\",\"returnNullForMissingProperties\":true,\"useMvcc\":true,\"usePermissiveModify\":true,\"useSubtreeDelete\":false},\"security\":{\"fileBasedTrustManagerFile\":\"&{idm.install.dir}/security/truststore\",\"fileBasedTrustManagerPasswordFile\":\"&{idm.install.dir}/security/storepass\",\"fileBasedTrustManagerType\":\"JKS\",\"trustManager\":\"file\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.459Z", + "time": 17, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 17 + } + }, + { + "_id": "713d28bcb7fbcf706532db458785e079", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 789, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "789" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"repo.init\",\"insert\":{\"internal/role\":[{\"description\":\"Administrative access\",\"id\":\"openidm-admin\",\"name\":\"openidm-admin\"},{\"description\":\"Basic minimum user\",\"id\":\"openidm-authorized\",\"name\":\"openidm-authorized\"},{\"description\":\"Anonymous access\",\"id\":\"openidm-reg\",\"name\":\"openidm-reg\"},{\"description\":\"Authenticated via certificate\",\"id\":\"openidm-cert\",\"name\":\"openidm-cert\"},{\"description\":\"Allowed to reassign workflow tasks\",\"id\":\"openidm-tasks-manager\",\"name\":\"openidm-tasks-manager\"},{\"description\":\"Platform provisioning access\",\"id\":\"platform-provisioning\",\"name\":\"platform-provisioning\"}],\"internal/user\":[{\"id\":\"openidm-admin\",\"password\":\"&{openidm.admin.password}\"},{\"id\":\"anonymous\",\"password\":\"anonymous\"},{\"id\":\"idm-provisioning\"},{\"id\":\"connector-server-client\"}]}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/repo.init" + }, + "response": { + "bodySize": 789, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 789, + "text": "{\"_id\":\"repo.init\",\"insert\":{\"internal/role\":[{\"description\":\"Administrative access\",\"id\":\"openidm-admin\",\"name\":\"openidm-admin\"},{\"description\":\"Basic minimum user\",\"id\":\"openidm-authorized\",\"name\":\"openidm-authorized\"},{\"description\":\"Anonymous access\",\"id\":\"openidm-reg\",\"name\":\"openidm-reg\"},{\"description\":\"Authenticated via certificate\",\"id\":\"openidm-cert\",\"name\":\"openidm-cert\"},{\"description\":\"Allowed to reassign workflow tasks\",\"id\":\"openidm-tasks-manager\",\"name\":\"openidm-tasks-manager\"},{\"description\":\"Platform provisioning access\",\"id\":\"platform-provisioning\",\"name\":\"platform-provisioning\"}],\"internal/user\":[{\"id\":\"openidm-admin\",\"password\":\"&{openidm.admin.password}\"},{\"id\":\"anonymous\",\"password\":\"anonymous\"},{\"id\":\"idm-provisioning\"},{\"id\":\"connector-server-client\"}]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "789" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.482Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "42c6e3613a1d003bb03982859b13f769", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 619, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "619" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"router\",\"filters\":[{\"methods\":[\"create\",\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"},{\"methods\":[\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^config/managed$\"},{\"condition\":{\"source\":\"(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0)\",\"type\":\"text/javascript\"},\"onResponse\":{\"source\":\"require('relationshipFilter').filterResponse()\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/router" + }, + "response": { + "bodySize": 619, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 619, + "text": "{\"_id\":\"router\",\"filters\":[{\"methods\":[\"create\",\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"},{\"methods\":[\"update\"],\"onRequest\":{\"file\":\"policyFilter.js\",\"type\":\"text/javascript\"},\"pattern\":\"^config/managed$\"},{\"condition\":{\"source\":\"(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0)\",\"type\":\"text/javascript\"},\"onResponse\":{\"source\":\"require('relationshipFilter').filterResponse()\",\"type\":\"text/javascript\"},\"pattern\":\"^(managed|internal)($|(/.+))\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "619" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.500Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "424494959b5c9b3055c3c7adfdbd139c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 459, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "459" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 457, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"schedule/seantest\",\"concurrentExecution\":false,\"enabled\":false,\"endTime\":null,\"invokeContext\":{\"script\":{\"globals\":{},\"source\":\"//sean has changed this script. Let's see if it is still working. qqqqqqqqqqqqqqSchedule1\\n\",\"type\":\"text/javascript\"}},\"invokeLogLevel\":\"info\",\"invokeService\":\"script\",\"misfirePolicy\":\"fireAndProceed\",\"persisted\":true,\"recoverable\":false,\"repeatCount\":0,\"repeatInterval\":0,\"schedule\":null,\"startTime\":null,\"type\":\"simple\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/seantest" + }, + "response": { + "bodySize": 459, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 459, + "text": "{\"_id\":\"schedule/seantest\",\"concurrentExecution\":false,\"enabled\":false,\"endTime\":null,\"invokeContext\":{\"script\":{\"globals\":{},\"source\":\"//sean has changed this script. Let's see if it is still working. qqqqqqqqqqqqqqSchedule1\\n\",\"type\":\"text/javascript\"}},\"invokeLogLevel\":\"info\",\"invokeService\":\"script\",\"misfirePolicy\":\"fireAndProceed\",\"persisted\":true,\"recoverable\":false,\"repeatCount\":0,\"repeatInterval\":0,\"schedule\":null,\"startTime\":null,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "459" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.515Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "b72f7bad2fb70bd3408d023227d6c0a1", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 838, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "838" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 466, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"schedule/taskscan_activate\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/activeDate le \\\"${Time.nowWithOffset}\\\") AND (!(/inactiveDate pr) or /inactiveDate ge \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/activateAccount/task-completed\",\"started\":\"/activateAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"active\\\" }];\\n\\nlogger.debug(\\\"Performing Activate Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_activate" + }, + "response": { + "bodySize": 838, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 838, + "text": "{\"_id\":\"schedule/taskscan_activate\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/activeDate le \\\"${Time.nowWithOffset}\\\") AND (!(/inactiveDate pr) or /inactiveDate ge \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/activateAccount/task-completed\",\"started\":\"/activateAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"active\\\" }];\\n\\nlogger.debug(\\\"Performing Activate Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "838" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.532Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "4b0af8e512d690c0f8ba8f746dc7f7f0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 830, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "830" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 464, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"schedule/taskscan_expire\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/inactiveDate lt \\\"${Time.nowWithOffset}\\\") AND (!(/activeDate pr) or /activeDate le \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/expireAccount/task-completed\",\"started\":\"/expireAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"inactive\\\" }];\\n\\nlogger.debug(\\\"Performing Expire Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/schedule/taskscan_expire" + }, + "response": { + "bodySize": 830, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 830, + "text": "{\"_id\":\"schedule/taskscan_expire\",\"concurrentExecution\":false,\"enabled\":false,\"invokeContext\":{\"numberOfThreads\":5,\"scan\":{\"_queryFilter\":\"((/inactiveDate lt \\\"${Time.nowWithOffset}\\\") AND (!(/activeDate pr) or /activeDate le \\\"${Time.nowWithOffset}\\\"))\",\"object\":\"managed/user\",\"recovery\":{\"timeout\":\"10m\"},\"taskState\":{\"completed\":\"/expireAccount/task-completed\",\"started\":\"/expireAccount/task-started\"}},\"task\":{\"script\":{\"globals\":{},\"source\":\"var patch = [{ \\\"operation\\\" : \\\"replace\\\", \\\"field\\\" : \\\"/accountStatus\\\", \\\"value\\\" : \\\"inactive\\\" }];\\n\\nlogger.debug(\\\"Performing Expire Account Task on {} ({})\\\", input.mail, objectID);\\n\\nopenidm.patch(objectID, null, patch); true;\",\"type\":\"text/javascript\"}},\"waitForCompletion\":false},\"invokeService\":\"taskscanner\",\"persisted\":true,\"repeatInterval\":86400000,\"type\":\"simple\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "830" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.547Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "1024d424442077395a76f0ae65915bbe", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 156, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "156" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"scheduler\",\"scheduler\":{\"executePersistentSchedules\":{\"$bool\":\"&{openidm.scheduler.execute.persistent.schedules}\"}},\"threadPool\":{\"threadCount\":10}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/scheduler" + }, + "response": { + "bodySize": 156, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 156, + "text": "{\"_id\":\"scheduler\",\"scheduler\":{\"executePersistentSchedules\":{\"$bool\":\"&{openidm.scheduler.execute.persistent.schedules}\"}},\"threadPool\":{\"threadCount\":10}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "156" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.560Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "940e52bd5df8ce79327cf7ca6c2a4b70", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 939, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "939" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 446, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"ECMAScript\":{\"javascript.optimization.level\":9,\"javascript.recompile.minimumInterval\":60000},\"Groovy\":{\"#groovy.disabled.global.ast.transformations\":\"\",\"#groovy.errors.tolerance\":10,\"#groovy.output.debug\":false,\"#groovy.output.verbose\":false,\"#groovy.script.base\":\"#any class extends groovy.lang.Script\",\"#groovy.script.extension\":\".groovy\",\"#groovy.target.bytecode\":\"1.8\",\"#groovy.target.directory\":\"&{idm.data.dir}/classes\",\"#groovy.target.indy\":true,\"#groovy.warnings\":\"likely errors #othere values [none,likely,possible,paranoia]\",\"groovy.classpath\":\"&{idm.install.dir}/lib\",\"groovy.recompile\":true,\"groovy.recompile.minimumInterval\":60000,\"groovy.source.encoding\":\"UTF-8\"},\"_id\":\"script\",\"properties\":{},\"sources\":{\"default\":{\"directory\":\"&{idm.install.dir}/bin/defaults/script\"},\"install\":{\"directory\":\"&{idm.install.dir}\"},\"project\":{\"directory\":\"&{idm.instance.dir}\"},\"project-script\":{\"directory\":\"&{idm.instance.dir}/script\"}}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/script" + }, + "response": { + "bodySize": 939, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 939, + "text": "{\"_id\":\"script\",\"ECMAScript\":{\"javascript.optimization.level\":9,\"javascript.recompile.minimumInterval\":60000},\"Groovy\":{\"#groovy.disabled.global.ast.transformations\":\"\",\"#groovy.errors.tolerance\":10,\"#groovy.output.debug\":false,\"#groovy.output.verbose\":false,\"#groovy.script.base\":\"#any class extends groovy.lang.Script\",\"#groovy.script.extension\":\".groovy\",\"#groovy.target.bytecode\":\"1.8\",\"#groovy.target.directory\":\"&{idm.data.dir}/classes\",\"#groovy.target.indy\":true,\"#groovy.warnings\":\"likely errors #othere values [none,likely,possible,paranoia]\",\"groovy.classpath\":\"&{idm.install.dir}/lib\",\"groovy.recompile\":true,\"groovy.recompile.minimumInterval\":60000,\"groovy.source.encoding\":\"UTF-8\"},\"properties\":{},\"sources\":{\"default\":{\"directory\":\"&{idm.install.dir}/bin/defaults/script\"},\"install\":{\"directory\":\"&{idm.install.dir}\"},\"project\":{\"directory\":\"&{idm.instance.dir}\"},\"project-script\":{\"directory\":\"&{idm.instance.dir}/script\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "939" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.577Z", + "time": 13, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 13 + } + }, + { + "_id": "e743b381506753be0f13b78ef7ba632d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1829, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "1829" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 448, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"secrets\",\"stores\":[{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}\",\"mappings\":[{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.default\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.config.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.password.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"],\"secretId\":\"idm.jwt.session.module.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}\"],\"secretId\":\"idm.jwt.session.module.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"selfservice\"],\"secretId\":\"idm.selfservice.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}\"],\"secretId\":\"idm.selfservice.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.assignment.attribute.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]}],\"providerName\":\"&{openidm.keystore.provider|SunJCE}\",\"storePassword\":\"&{openidm.keystore.password|changeit}\",\"storetype\":\"&{openidm.keystore.type|JCEKS}\"},\"name\":\"mainKeyStore\"},{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.truststore.location|&{idm.install.dir}/security/truststore}\",\"mappings\":[],\"providerName\":\"&{openidm.truststore.provider|SUN}\",\"storePassword\":\"&{openidm.truststore.password|changeit}\",\"storetype\":\"&{openidm.truststore.type|JKS}\"},\"name\":\"mainTrustStore\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/secrets" + }, + "response": { + "bodySize": 1829, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1829, + "text": "{\"_id\":\"secrets\",\"stores\":[{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}\",\"mappings\":[{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.default\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.config.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.password.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"],\"secretId\":\"idm.jwt.session.module.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}\"],\"secretId\":\"idm.jwt.session.module.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"selfservice\"],\"secretId\":\"idm.selfservice.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]},{\"aliases\":[\"&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}\"],\"secretId\":\"idm.selfservice.signing\",\"types\":[\"SIGN\",\"VERIFY\"]},{\"aliases\":[\"&{openidm.config.crypto.alias|openidm-sym-default}\"],\"secretId\":\"idm.assignment.attribute.encryption\",\"types\":[\"ENCRYPT\",\"DECRYPT\"]}],\"providerName\":\"&{openidm.keystore.provider|SunJCE}\",\"storePassword\":\"&{openidm.keystore.password|changeit}\",\"storetype\":\"&{openidm.keystore.type|JCEKS}\"},\"name\":\"mainKeyStore\"},{\"class\":\"org.forgerock.openidm.secrets.config.KeyStoreSecretStore\",\"config\":{\"file\":\"&{openidm.truststore.location|&{idm.install.dir}/security/truststore}\",\"mappings\":[],\"providerName\":\"&{openidm.truststore.provider|SUN}\",\"storePassword\":\"&{openidm.truststore.password|changeit}\",\"storetype\":\"&{openidm.truststore.type|JKS}\"},\"name\":\"mainTrustStore\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1829" + } + ], + "headersSize": 2252, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.596Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "075665a037e3c1ea3d5c043d72cebd9b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 290, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "290" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 455, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"selfservice.kba\",\"kbaPropertyName\":\"kbaInfo\",\"minimumAnswersToDefine\":2,\"minimumAnswersToVerify\":1,\"questions\":{\"1\":{\"en\":\"What's your favorite color?\",\"en_GB\":\"What is your favourite colour?\",\"fr\":\"Quelle est votre couleur préférée?\"},\"2\":{\"en\":\"Who was your first employer?\"}}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.kba" + }, + "response": { + "bodySize": 290, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 290, + "text": "{\"_id\":\"selfservice.kba\",\"kbaPropertyName\":\"kbaInfo\",\"minimumAnswersToDefine\":2,\"minimumAnswersToVerify\":1,\"questions\":{\"1\":{\"en\":\"What's your favorite color?\",\"en_GB\":\"What is your favourite colour?\",\"fr\":\"Quelle est votre couleur préférée?\"},\"2\":{\"en\":\"Who was your first employer?\"}}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "290" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.612Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "886ef232f84c623d0f2daf1d8668ce6e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 713, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "713" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 463, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"selfservice.propertymap\",\"properties\":[{\"source\":\"givenName\",\"target\":\"givenName\"},{\"source\":\"familyName\",\"target\":\"sn\"},{\"source\":\"email\",\"target\":\"mail\"},{\"condition\":\"/object/postalAddress pr\",\"source\":\"postalAddress\",\"target\":\"postalAddress\"},{\"condition\":\"/object/addressLocality pr\",\"source\":\"addressLocality\",\"target\":\"city\"},{\"condition\":\"/object/addressRegion pr\",\"source\":\"addressRegion\",\"target\":\"stateProvince\"},{\"condition\":\"/object/postalCode pr\",\"source\":\"postalCode\",\"target\":\"postalCode\"},{\"condition\":\"/object/country pr\",\"source\":\"country\",\"target\":\"country\"},{\"condition\":\"/object/phone pr\",\"source\":\"phone\",\"target\":\"telephoneNumber\"},{\"source\":\"username\",\"target\":\"userName\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.propertymap" + }, + "response": { + "bodySize": 713, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 713, + "text": "{\"_id\":\"selfservice.propertymap\",\"properties\":[{\"source\":\"givenName\",\"target\":\"givenName\"},{\"source\":\"familyName\",\"target\":\"sn\"},{\"source\":\"email\",\"target\":\"mail\"},{\"condition\":\"/object/postalAddress pr\",\"source\":\"postalAddress\",\"target\":\"postalAddress\"},{\"condition\":\"/object/addressLocality pr\",\"source\":\"addressLocality\",\"target\":\"city\"},{\"condition\":\"/object/addressRegion pr\",\"source\":\"addressRegion\",\"target\":\"stateProvince\"},{\"condition\":\"/object/postalCode pr\",\"source\":\"postalCode\",\"target\":\"postalCode\"},{\"condition\":\"/object/country pr\",\"source\":\"country\",\"target\":\"country\"},{\"condition\":\"/object/phone pr\",\"source\":\"phone\",\"target\":\"telephoneNumber\"},{\"source\":\"username\",\"target\":\"userName\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "713" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.629Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "6e5e53c9330c498d5a944251e0e8323f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 730, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "730" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 457, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"selfservice.terms\",\"active\":\"0.0\",\"uiConfig\":{\"buttonText\":\"Accept\",\"displayName\":\"We've updated our terms\",\"purpose\":\"You must accept the updated terms in order to proceed.\"},\"versions\":[{\"createDate\":\"2019-10-28T04:20:11.320Z\",\"termsTranslations\":{\"en\":\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"},\"version\":\"0.0\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/selfservice.terms" + }, + "response": { + "bodySize": 730, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 730, + "text": "{\"_id\":\"selfservice.terms\",\"active\":\"0.0\",\"uiConfig\":{\"buttonText\":\"Accept\",\"displayName\":\"We've updated our terms\",\"purpose\":\"You must accept the updated terms in order to proceed.\"},\"versions\":[{\"createDate\":\"2019-10-28T04:20:11.320Z\",\"termsTranslations\":{\"en\":\"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"},\"version\":\"0.0\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "730" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.643Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "3f77ccba1a46c8634dcf686cc6848c1a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 402, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "402" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"servletfilter/cors\",\"filterClass\":\"org.eclipse.jetty.ee10.servlets.CrossOriginFilter\",\"initParams\":{\"allowCredentials\":true,\"allowedHeaders\":\"accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with\",\"allowedMethods\":\"GET,POST,PUT,DELETE,PATCH\",\"allowedOrigins\":\"https://localhost:&{openidm.port.https}\",\"chainPreflight\":false},\"urlPatterns\":[\"/*\"]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/cors" + }, + "response": { + "bodySize": 402, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 402, + "text": "{\"_id\":\"servletfilter/cors\",\"filterClass\":\"org.eclipse.jetty.ee10.servlets.CrossOriginFilter\",\"initParams\":{\"allowCredentials\":true,\"allowedHeaders\":\"accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with\",\"allowedMethods\":\"GET,POST,PUT,DELETE,PATCH\",\"allowedOrigins\":\"https://localhost:&{openidm.port.https}\",\"chainPreflight\":false},\"urlPatterns\":[\"/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "402" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.657Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "11cc10c6d2f5a6faeed47d54f9af0abc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 191, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "191" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 461, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"servletfilter/payload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":5},\"urlPatterns\":[\"&{openidm.servlet.alias}/*\"]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/payload" + }, + "response": { + "bodySize": 191, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 191, + "text": "{\"_id\":\"servletfilter/payload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":5},\"urlPatterns\":[\"&{openidm.servlet.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "191" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.671Z", + "time": 12, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 12 + } + }, + { + "_id": "2cf4a8279922f2f68ba3daaf00d920cc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 198, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "198" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 460, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"servletfilter/upload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":50},\"urlPatterns\":[\"&{openidm.servlet.upload.alias}/*\"]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/servletfilter/upload" + }, + "response": { + "bodySize": 198, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 198, + "text": "{\"_id\":\"servletfilter/upload\",\"filterClass\":\"org.forgerock.openidm.jetty.LargePayloadServletFilter\",\"initParams\":{\"maxRequestSizeInMegabytes\":50},\"urlPatterns\":[\"&{openidm.servlet.upload.alias}/*\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "198" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.688Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "f9398fa965ae2c914addd884d1c11499", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 244, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "244" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 456, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui.context/admin\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/admin/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/admin/extension\",\"responseHeaders\":{\"X-Frame-Options\":\"SAMEORIGIN\"},\"urlContextRoot\":\"/admin\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/admin" + }, + "response": { + "bodySize": 244, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 244, + "text": "{\"_id\":\"ui.context/admin\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/admin/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/admin/extension\",\"responseHeaders\":{\"X-Frame-Options\":\"SAMEORIGIN\"},\"urlContextRoot\":\"/admin\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "244" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.704Z", + "time": 9, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 9 + } + }, + { + "_id": "2531d9e46a98d59bb2310cfaf6e0c434", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 205, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "205" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 454, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui.context/api\",\"authEnabled\":true,\"cacheEnabled\":false,\"defaultDir\":\"&{idm.install.dir}/ui/api/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/api/extension\",\"urlContextRoot\":\"/api\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/api" + }, + "response": { + "bodySize": 205, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 205, + "text": "{\"_id\":\"ui.context/api\",\"authEnabled\":true,\"cacheEnabled\":false,\"defaultDir\":\"&{idm.install.dir}/ui/api/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/api/extension\",\"urlContextRoot\":\"/api\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "205" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.718Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "8e4d55d902fda9dcf6cb28a38f8b05c3", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 174, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "174" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui.context/enduser\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/enduser\",\"enabled\":true,\"responseHeaders\":{\"X-Frame-Options\":\"DENY\"},\"urlContextRoot\":\"/\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/enduser" + }, + "response": { + "bodySize": 174, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 174, + "text": "{\"_id\":\"ui.context/enduser\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/enduser\",\"enabled\":true,\"responseHeaders\":{\"X-Frame-Options\":\"DENY\"},\"urlContextRoot\":\"/\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "174" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.731Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "856e10b34afe79e55e6c6744c87c36e4", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 199, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "199" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 456, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui.context/oauth\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/oauth/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/oauth/extension\",\"urlContextRoot\":\"/oauthReturn\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui.context/oauth" + }, + "response": { + "bodySize": 199, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 199, + "text": "{\"_id\":\"ui.context/oauth\",\"cacheEnabled\":true,\"defaultDir\":\"&{idm.install.dir}/ui/oauth/default\",\"enabled\":true,\"extensionDir\":\"&{idm.install.dir}/ui/oauth/extension\",\"urlContextRoot\":\"/oauthReturn\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "199" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.744Z", + "time": 7, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 7 + } + }, + { + "_id": "ffedaec2f8530b2951b4fe52409794b2", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 588, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "588" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 456, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui/configuration\",\"configuration\":{\"defaultNotificationType\":\"info\",\"forgotUsername\":false,\"lang\":\"en\",\"notificationTypes\":{\"error\":{\"iconPath\":\"images/notifications/error.png\",\"name\":\"common.notification.types.error\"},\"info\":{\"iconPath\":\"images/notifications/info.png\",\"name\":\"common.notification.types.info\"},\"warning\":{\"iconPath\":\"images/notifications/warning.png\",\"name\":\"common.notification.types.warning\"}},\"passwordReset\":false,\"passwordResetLink\":\"\",\"roles\":{\"internal/role/openidm-admin\":\"ui-admin\",\"internal/role/openidm-authorized\":\"ui-user\"},\"selfRegistration\":false}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/configuration" + }, + "response": { + "bodySize": 588, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 588, + "text": "{\"_id\":\"ui/configuration\",\"configuration\":{\"defaultNotificationType\":\"info\",\"forgotUsername\":false,\"lang\":\"en\",\"notificationTypes\":{\"error\":{\"iconPath\":\"images/notifications/error.png\",\"name\":\"common.notification.types.error\"},\"info\":{\"iconPath\":\"images/notifications/info.png\",\"name\":\"common.notification.types.info\"},\"warning\":{\"iconPath\":\"images/notifications/warning.png\",\"name\":\"common.notification.types.warning\"}},\"passwordReset\":false,\"passwordResetLink\":\"\",\"roles\":{\"internal/role/openidm-admin\":\"ui-admin\",\"internal/role/openidm-authorized\":\"ui-user\"},\"selfRegistration\":false}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "588" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.756Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "7ca95a1b42482427cd49ea83db0aecb0", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2241, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2241" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui/dashboard\",\"adminDashboards\":[{\"isDefault\":true,\"name\":\"Quick Start\",\"widgets\":[{\"cards\":[{\"href\":\"#connectors/add/\",\"icon\":\"fa-database\",\"name\":\"Add Connector\"},{\"href\":\"#mapping/add/\",\"icon\":\"fa-map-marker\",\"name\":\"Create Mapping\"},{\"href\":\"#resource/managed/role/list/\",\"icon\":\"fa-check-square-o\",\"name\":\"Manage Roles\"},{\"href\":\"#managed/add/\",\"icon\":\"fa-tablet\",\"name\":\"Add Device\"},{\"href\":\"#selfservice/userregistration/\",\"icon\":\"fa-gear\",\"name\":\"Configure Registration\"},{\"href\":\"#selfservice/passwordreset/\",\"icon\":\"fa-gear\",\"name\":\"Configure Password Reset\"},{\"href\":\"#resource/managed/user/list/\",\"icon\":\"fa-user\",\"name\":\"Manage Users\"},{\"href\":\"#settings/\",\"icon\":\"fa-user\",\"name\":\"Configure System Preferences\"}],\"size\":\"large\",\"type\":\"quickStart\"}]},{\"isDefault\":false,\"name\":\"System Monitoring\",\"widgets\":[{\"legendRange\":{\"month\":[500,2500,5000],\"week\":[10,30,90,270,810],\"year\":[10000,40000,100000,250000]},\"maxRange\":\"#24423c\",\"minRange\":\"#b0d4cd\",\"size\":\"large\",\"type\":\"audit\"},{\"size\":\"large\",\"type\":\"clusterStatus\"},{\"size\":\"large\",\"type\":\"systemHealthFull\"},{\"barchart\":\"false\",\"size\":\"large\",\"type\":\"lastRecon\"}]},{\"isDefault\":false,\"name\":\"Resource Report\",\"widgets\":[{\"selected\":\"activeUsers\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"rolesEnabled\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"activeConnectors\",\"size\":\"x-small\",\"type\":\"counter\"},{\"size\":\"large\",\"type\":\"resourceList\"}]},{\"isDefault\":false,\"name\":\"Business Report\",\"widgets\":[{\"graphType\":\"fa-pie-chart\",\"providers\":[\"Username/Password\"],\"size\":\"x-small\",\"type\":\"signIns\",\"widgetTitle\":\"Sign-Ins\"},{\"graphType\":\"fa-bar-chart\",\"size\":\"x-small\",\"type\":\"passwordResets\",\"widgetTitle\":\"Password Resets\"},{\"graphType\":\"fa-line-chart\",\"providers\":[\"Username/Password\"],\"size\":\"x-small\",\"type\":\"newRegistrations\",\"widgetTitle\":\"New Registrations\"},{\"size\":\"x-small\",\"timezone\":{\"hours\":\"07\",\"minutes\":\"00\",\"negative\":true},\"type\":\"socialLogin\"},{\"selected\":\"socialEnabled\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"manualRegistrations\",\"size\":\"x-small\",\"type\":\"counter\"}]},{\"isDefault\":false,\"name\":\"seantestdashboard\",\"widgets\":[{\"size\":\"large\",\"type\":\"resourceList\"}]}],\"dashboard\":{\"widgets\":[{\"size\":\"large\",\"type\":\"Welcome\"}]}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/dashboard" + }, + "response": { + "bodySize": 2241, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 2241, + "text": "{\"_id\":\"ui/dashboard\",\"adminDashboards\":[{\"isDefault\":true,\"name\":\"Quick Start\",\"widgets\":[{\"cards\":[{\"href\":\"#connectors/add/\",\"icon\":\"fa-database\",\"name\":\"Add Connector\"},{\"href\":\"#mapping/add/\",\"icon\":\"fa-map-marker\",\"name\":\"Create Mapping\"},{\"href\":\"#resource/managed/role/list/\",\"icon\":\"fa-check-square-o\",\"name\":\"Manage Roles\"},{\"href\":\"#managed/add/\",\"icon\":\"fa-tablet\",\"name\":\"Add Device\"},{\"href\":\"#selfservice/userregistration/\",\"icon\":\"fa-gear\",\"name\":\"Configure Registration\"},{\"href\":\"#selfservice/passwordreset/\",\"icon\":\"fa-gear\",\"name\":\"Configure Password Reset\"},{\"href\":\"#resource/managed/user/list/\",\"icon\":\"fa-user\",\"name\":\"Manage Users\"},{\"href\":\"#settings/\",\"icon\":\"fa-user\",\"name\":\"Configure System Preferences\"}],\"size\":\"large\",\"type\":\"quickStart\"}]},{\"isDefault\":false,\"name\":\"System Monitoring\",\"widgets\":[{\"legendRange\":{\"month\":[500,2500,5000],\"week\":[10,30,90,270,810],\"year\":[10000,40000,100000,250000]},\"maxRange\":\"#24423c\",\"minRange\":\"#b0d4cd\",\"size\":\"large\",\"type\":\"audit\"},{\"size\":\"large\",\"type\":\"clusterStatus\"},{\"size\":\"large\",\"type\":\"systemHealthFull\"},{\"barchart\":\"false\",\"size\":\"large\",\"type\":\"lastRecon\"}]},{\"isDefault\":false,\"name\":\"Resource Report\",\"widgets\":[{\"selected\":\"activeUsers\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"rolesEnabled\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"activeConnectors\",\"size\":\"x-small\",\"type\":\"counter\"},{\"size\":\"large\",\"type\":\"resourceList\"}]},{\"isDefault\":false,\"name\":\"Business Report\",\"widgets\":[{\"graphType\":\"fa-pie-chart\",\"providers\":[\"Username/Password\"],\"size\":\"x-small\",\"type\":\"signIns\",\"widgetTitle\":\"Sign-Ins\"},{\"graphType\":\"fa-bar-chart\",\"size\":\"x-small\",\"type\":\"passwordResets\",\"widgetTitle\":\"Password Resets\"},{\"graphType\":\"fa-line-chart\",\"providers\":[\"Username/Password\"],\"size\":\"x-small\",\"type\":\"newRegistrations\",\"widgetTitle\":\"New Registrations\"},{\"size\":\"x-small\",\"timezone\":{\"hours\":\"07\",\"minutes\":\"00\",\"negative\":true},\"type\":\"socialLogin\"},{\"selected\":\"socialEnabled\",\"size\":\"x-small\",\"type\":\"counter\"},{\"selected\":\"manualRegistrations\",\"size\":\"x-small\",\"type\":\"counter\"}]},{\"isDefault\":false,\"name\":\"seantestdashboard\",\"widgets\":[{\"size\":\"large\",\"type\":\"resourceList\"}]}],\"dashboard\":{\"widgets\":[{\"size\":\"large\",\"type\":\"Welcome\"}]}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.769Z", + "time": 13, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 13 + } + }, + { + "_id": "df3eb8ec5f2f8390ee9bda4e21313f01", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 891, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "891" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 450, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui/profile\",\"tabs\":[{\"name\":\"personalInfoTab\",\"view\":\"org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab\"},{\"name\":\"signInAndSecurity\",\"view\":\"org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab\"},{\"name\":\"preference\",\"view\":\"org/forgerock/openidm/ui/user/profile/PreferencesTab\"},{\"name\":\"trustedDevice\",\"view\":\"org/forgerock/openidm/ui/user/profile/TrustedDevicesTab\"},{\"name\":\"oauthApplication\",\"view\":\"org/forgerock/openidm/ui/user/profile/OauthApplicationsTab\"},{\"name\":\"privacyAndConsent\",\"view\":\"org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab\"},{\"name\":\"sharing\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/SharingTab\"},{\"name\":\"auditHistory\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/ActivityTab\"},{\"name\":\"accountControls\",\"view\":\"org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/profile" + }, + "response": { + "bodySize": 891, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 891, + "text": "{\"_id\":\"ui/profile\",\"tabs\":[{\"name\":\"personalInfoTab\",\"view\":\"org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab\"},{\"name\":\"signInAndSecurity\",\"view\":\"org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab\"},{\"name\":\"preference\",\"view\":\"org/forgerock/openidm/ui/user/profile/PreferencesTab\"},{\"name\":\"trustedDevice\",\"view\":\"org/forgerock/openidm/ui/user/profile/TrustedDevicesTab\"},{\"name\":\"oauthApplication\",\"view\":\"org/forgerock/openidm/ui/user/profile/OauthApplicationsTab\"},{\"name\":\"privacyAndConsent\",\"view\":\"org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab\"},{\"name\":\"sharing\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/SharingTab\"},{\"name\":\"auditHistory\",\"view\":\"org/forgerock/openidm/ui/user/profile/uma/ActivityTab\"},{\"name\":\"accountControls\",\"view\":\"org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "891" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.789Z", + "time": 22, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 22 + } + }, + { + "_id": "927933d6d1d6362ba93eab1026e492e6", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 421, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "421" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 454, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"ui/themeconfig\",\"icon\":\"favicon.ico\",\"path\":\"\",\"settings\":{\"footer\":{\"mailto\":\"info@pingidentity.com\"},\"loginLogo\":{\"alt\":\"Ping Identity\",\"height\":\"120px\",\"src\":\"images/login-logo-dark.png\",\"title\":\"Ping Identity\",\"width\":\"120px\"},\"logo\":{\"alt\":\"Ping Identity\",\"src\":\"images/logo-horizontal-white.png\",\"title\":\"Ping Identity\"}},\"stylesheets\":[\"css/bootstrap-3.4.1-custom.css\",\"css/structure.css\",\"css/theme.css\"]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/ui/themeconfig" + }, + "response": { + "bodySize": 421, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 421, + "text": "{\"_id\":\"ui/themeconfig\",\"icon\":\"favicon.ico\",\"path\":\"\",\"settings\":{\"footer\":{\"mailto\":\"info@pingidentity.com\"},\"loginLogo\":{\"alt\":\"Ping Identity\",\"height\":\"120px\",\"src\":\"images/login-logo-dark.png\",\"title\":\"Ping Identity\",\"width\":\"120px\"},\"logo\":{\"alt\":\"Ping Identity\",\"src\":\"images/logo-horizontal-white.png\",\"title\":\"Ping Identity\"}},\"stylesheets\":[\"css/bootstrap-3.4.1-custom.css\",\"css/structure.css\",\"css/theme.css\"]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "421" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.815Z", + "time": 13, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 13 + } + }, + { + "_id": "aae156524eceaac7659d29ccabfa6b7e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 169, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "169" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 449, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"webserver\",\"gzip\":{\"enabled\":true,\"includedMethods\":[\"GET\"]},\"maxThreads\":{\"$int\":\"&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver" + }, + "response": { + "bodySize": 169, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 169, + "text": "{\"_id\":\"webserver\",\"gzip\":{\"enabled\":true,\"includedMethods\":[\"GET\"]},\"maxThreads\":{\"$int\":\"&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "169" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.835Z", + "time": 25, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 25 + } + }, + { + "_id": "3b9fc03ddabd674233d649150dbf0931", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 128, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "128" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 463, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"webserver.listener/http\",\"enabled\":{\"$bool\":\"&{openidm.http.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.http|8080}\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/http" + }, + "response": { + "bodySize": 128, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 128, + "text": "{\"_id\":\"webserver.listener/http\",\"enabled\":{\"$bool\":\"&{openidm.http.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.http|8080}\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "128" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.865Z", + "time": 12, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 12 + } + }, + { + "_id": "0ef4585bbfb32a7b30964a6d50210a3d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 217, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "217" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 464, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"webserver.listener/https\",\"enabled\":{\"$bool\":\"&{openidm.https.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.https|8443}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/https" + }, + "response": { + "bodySize": 217, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 217, + "text": "{\"_id\":\"webserver.listener/https\",\"enabled\":{\"$bool\":\"&{openidm.https.enabled|true}\"},\"port\":{\"$int\":\"&{openidm.port.https|8443}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "217" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.881Z", + "time": 13, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 13 + } + }, + { + "_id": "50bbd6ee40df0dd745b9fec4c55bb37c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 250, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "250" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 469, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"webserver.listener/mutualAuth\",\"enabled\":{\"$bool\":\"&{openidm.mutualauth.enabled|true}\"},\"mutualAuth\":true,\"port\":{\"$int\":\"&{openidm.port.mutualauth|8444}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/webserver.listener/mutualAuth" + }, + "response": { + "bodySize": 250, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 250, + "text": "{\"_id\":\"webserver.listener/mutualAuth\",\"enabled\":{\"$bool\":\"&{openidm.mutualauth.enabled|true}\"},\"mutualAuth\":true,\"port\":{\"$int\":\"&{openidm.port.mutualauth|8444}\"},\"secure\":true,\"sslCertAlias\":\"&{openidm.https.keystore.cert.alias|openidm-localhost}\"}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "250" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.899Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "047f43a49dff3686ec2e9da2c2dd2a16", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 743, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "743" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 471, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/forgottenUsername\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

\",\"fr\":\"{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Account Information - username\",\"fr\":\"Informations sur le compte - nom d'utilisateur\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/forgottenUsername" + }, + "response": { + "bodySize": 743, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 743, + "text": "{\"_id\":\"emailTemplate/forgottenUsername\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

\",\"fr\":\"{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Account Information - username\",\"fr\":\"Informations sur le compte - nom d'utilisateur\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "743" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.915Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "63b37e07e202b68dc9889582625abf16", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 431, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "431" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 466, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/registration\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

This is your registration email.

Email verification link

\",\"fr\":\"

Ceci est votre mail d'inscription.

Lien de vérification email

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Register new account\",\"fr\":\"Créer un nouveau compte\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/registration" + }, + "response": { + "bodySize": 431, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 431, + "text": "{\"_id\":\"emailTemplate/registration\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

This is your registration email.

Email verification link

\",\"fr\":\"

Ceci est votre mail d'inscription.

Lien de vérification email

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Register new account\",\"fr\":\"Créer un nouveau compte\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "431" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.930Z", + "time": 10, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 10 + } + }, + { + "_id": "6f03115777dabeb2ee464972baac6d91", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 455, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "455" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 467, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/resetPassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Click to reset your password

Password reset link

\",\"fr\":\"

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Reset your password\",\"fr\":\"Réinitialisez votre mot de passe\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/resetPassword" + }, + "response": { + "bodySize": 455, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 455, + "text": "{\"_id\":\"emailTemplate/resetPassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Click to reset your password

Password reset link

\",\"fr\":\"

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Reset your password\",\"fr\":\"Réinitialisez votre mot de passe\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "455" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.944Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "45e0b48dbb5854c86c7df3d75efcda80", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 273, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/updatePassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Verify email to update password

Update password link

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Update your password\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/updatePassword" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 273, + "text": "{\"_id\":\"emailTemplate/updatePassword\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Verify email to update password

Update password link

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Update your password\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "273" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.959Z", + "time": 8, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 8 + } + }, + { + "_id": "fbc9263fd25ddd47ab77bcc419cd03de", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 420, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "420" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 461, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"emailTemplate/welcome\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Welcome to OpenIDM. Your username is '{{object.userName}}'.

\",\"fr\":\"

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Your account has been created\",\"fr\":\"Votre compte vient d’être créé !\"}}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/emailTemplate/welcome" + }, + "response": { + "bodySize": 420, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 420, + "text": "{\"_id\":\"emailTemplate/welcome\",\"defaultLocale\":\"en\",\"enabled\":true,\"from\":\"\",\"message\":{\"en\":\"

Welcome to OpenIDM. Your username is '{{object.userName}}'.

\",\"fr\":\"

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

\"},\"mimeType\":\"text/html\",\"subject\":{\"en\":\"Your account has been created\",\"fr\":\"Votre compte vient d’être créé !\"}}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "420" + } + ], + "headersSize": 2251, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.971Z", + "time": 11, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 11 + } + }, + { + "_id": "4c1fef66c916c8940b0315dddc564b06", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 423, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 811, + "content": { + "encoding": "base64", + "mimeType": "application/json;charset=utf-8", + "size": 811, + "text": "[\"H4sIAAAAAAAA/w==\",\"7VfRjqIwFP2XPpP47ltHkZDFkgV5MBtDOlBJJ9iytE7GMf77tqOzq2sZihLmxQcThXNPr3jPucc9SGkOxkDsWAYcsMFVRVkhwPjX/uzOaIMZLkge1gVm9B1Lyll6uhbxkqjKjDNBmIzI7y2tiSpc41IQB+RUVCXeIbwhiqydhyoiMGbbsnQAsy2qeEkzSo5t40wjwHgPipI/qy7U24MDBN/WmaYbjQTBTBIhVaXcVfqaJG9y9IJfschqWkmg8VRu8ZEJwPmT7yVhEqsbvR2gvmhOe281DpNo4qZzP4595N3cb1Fz/rrT5BUXEt7FcN6eqS8A4yWagEvgLEzQNIVB5MLpMg189MOdtlcl6GcCA3/m24GhasZDNljdQBqiYNkOXcDIcxepIg4jG+rTL2aNh0GQeiFy25GTEM38aG5D+vG4Lc5+il20AIeVmouaV6SWR9WtzobhJM0RP9OrplE+AteS1Ee4xHVB5Bm81lLWDdjZTnwauNNH/vxCMtmHDzURdzOmJhajU335qPsbB7OLDTQ5t+m5g+ysnaWr3r5w1F7038WGLvztThG27lWTSoVxrs2yhULQgm2UGj9pE6FO7qjRRpZmQTaWdMwJWORr/Wpbal3jwSfvJfetEcHM1nWBW/Vzjyy+afP38Cs8MsNgmQH/VW5Xs3K6b2OTv221UfxnZ/887+PPkbWBXdcZLOsa9IgIj4gwZEQYVHNOy442afIiw5ijhvGwe1KHDWFzALGpfsj8IfMhZW5O7t+veOdqBTbv5dXhD+46tPKwFAAA\"]" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:15 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-encoding", + "value": "gzip" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2299, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:15.988Z", + "time": 4, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 4 + } + }, + { + "_id": "2eb6e1b577722143657744b884f00830", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 5283, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "5283" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 445, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"mappings\":[{\"_id\":\"sync/managedOrganization_managedRole\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedRole\",\"icon\":null,\"name\":\"managedOrganization_managedRole\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[],\"target\":\"managed/role\"},{\"_id\":\"sync/managedOrganization_managedSeantestmanagedobject\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedSeantestmanagedobject\",\"icon\":null,\"name\":\"managedOrganization_managedSeantestmanagedobject\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[\"managedOrganization_managedRole\"],\"target\":\"managed/seantestmanagedobject\"},{\"_id\":\"sync/managedAssignment_managedUser\",\"consentRequired\":false,\"displayName\":\"managedAssignment_managedUser\",\"icon\":null,\"name\":\"managedAssignment_managedUser\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"groovy\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\"],\"target\":\"managed/user\"},{\"_id\":\"sync/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\"],\"target\":\"managed/organization\"},{\"_id\":\"sync/managedSeantestmanagedobject_managedUser\",\"consentRequired\":false,\"displayName\":\"managedSeantestmanagedobject_managedUser\",\"icon\":null,\"name\":\"managedSeantestmanagedobject_managedUser\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/seantestmanagedobject\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\",\"seantestmapping\"],\"target\":\"managed/user\"}]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/config/sync" + }, + "response": { + "bodySize": 5296, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 5296, + "text": "{\"_id\":\"sync\",\"mappings\":[{\"_id\":\"sync/managedOrganization_managedRole\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedRole\",\"icon\":null,\"name\":\"managedOrganization_managedRole\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//seantest\",\"type\":\"groovy\"},\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[],\"target\":\"managed/role\"},{\"_id\":\"sync/managedOrganization_managedSeantestmanagedobject\",\"consentRequired\":false,\"displayName\":\"managedOrganization_managedSeantestmanagedobject\",\"icon\":null,\"name\":\"managedOrganization_managedSeantestmanagedobject\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/organization\",\"syncAfter\":[\"managedOrganization_managedRole\"],\"target\":\"managed/seantestmanagedobject\"},{\"_id\":\"sync/managedAssignment_managedUser\",\"consentRequired\":false,\"displayName\":\"managedAssignment_managedUser\",\"icon\":null,\"name\":\"managedAssignment_managedUser\",\"policies\":[{\"action\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"groovy\"},\"situation\":\"AMBIGUOUS\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"condition\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"groovy\"},\"postAction\":{\"globals\":{},\"source\":\"//asdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"},{\"action\":{\"globals\":{},\"source\":\"//asdfasdfasdf\",\"type\":\"text/javascript\"},\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\"],\"target\":\"managed/user\"},{\"_id\":\"sync/seantestmapping\",\"consentRequired\":false,\"displayName\":\"seantestmapping\",\"icon\":null,\"name\":\"seantestmapping\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/assignment\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\"],\"target\":\"managed/organization\"},{\"_id\":\"sync/managedSeantestmanagedobject_managedUser\",\"consentRequired\":false,\"displayName\":\"managedSeantestmanagedobject_managedUser\",\"icon\":null,\"name\":\"managedSeantestmanagedobject_managedUser\",\"policies\":[{\"action\":\"ASYNC\",\"situation\":\"ABSENT\"},{\"action\":\"ASYNC\",\"situation\":\"ALL_GONE\"},{\"action\":\"ASYNC\",\"situation\":\"AMBIGUOUS\"},{\"action\":\"ASYNC\",\"situation\":\"CONFIRMED\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND\"},{\"action\":\"ASYNC\",\"situation\":\"FOUND_ALREADY_LINKED\"},{\"action\":\"ASYNC\",\"situation\":\"LINK_ONLY\"},{\"action\":\"ASYNC\",\"situation\":\"MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"SOURCE_MISSING\"},{\"action\":\"ASYNC\",\"situation\":\"TARGET_IGNORED\"},{\"action\":\"ASYNC\",\"situation\":\"UNASSIGNED\"},{\"action\":\"ASYNC\",\"situation\":\"UNQUALIFIED\"}],\"properties\":[],\"source\":\"managed/seantestmanagedobject\",\"syncAfter\":[\"managedOrganization_managedRole\",\"managedOrganization_managedSeantestmanagedobject\",\"managedAssignment_managedUser\",\"seantestmapping\"],\"target\":\"managed/user\"}]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:16 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 2258, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:16.000Z", + "time": 12, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 12 + } + }, + { + "_id": "6787041b9e28fc782af01d1a938d5c61", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 117, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "117" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 460, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"openidm-admin\",\"condition\":null,\"description\":\"Administrative access\",\"name\":\"openidm-admin\",\"privileges\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role/openidm-admin" + }, + "response": { + "bodySize": 193, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 193, + "text": "{\"_id\":\"openidm-admin\",\"_rev\":\"59a9cc49-ce29-4914-8b0c-f231482e578d-4217\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-admin\",\"description\":\"Administrative access\",\"temporalConstraints\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:16 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"59a9cc49-ce29-4914-8b0c-f231482e578d-4217\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "193" + } + ], + "headersSize": 2254, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:16.127Z", + "time": 20, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 20 + } + }, + { + "_id": "4b1a0a65d562ca6a9f68f3aa3364e99c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 124, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "124" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 465, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"openidm-authorized\",\"condition\":null,\"description\":\"Basic minimum user\",\"name\":\"openidm-authorized\",\"privileges\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role/openidm-authorized" + }, + "response": { + "bodySize": 200, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 200, + "text": "{\"_id\":\"openidm-authorized\",\"_rev\":\"59a9cc49-ce29-4914-8b0c-f231482e578d-4218\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-authorized\",\"description\":\"Basic minimum user\",\"temporalConstraints\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:16 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"59a9cc49-ce29-4914-8b0c-f231482e578d-4218\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "200" + } + ], + "headersSize": 2254, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:16.154Z", + "time": 14, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 14 + } + }, + { + "_id": "2bfff6c7e2c8069aca3368f98758ec42", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 123, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "123" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"openidm-cert\",\"condition\":null,\"description\":\"Authenticated via certificate\",\"name\":\"openidm-cert\",\"privileges\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role/openidm-cert" + }, + "response": { + "bodySize": 199, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 199, + "text": "{\"_id\":\"openidm-cert\",\"_rev\":\"59a9cc49-ce29-4914-8b0c-f231482e578d-4219\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-cert\",\"description\":\"Authenticated via certificate\",\"temporalConstraints\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:16 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"59a9cc49-ce29-4914-8b0c-f231482e578d-4219\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "199" + } + ], + "headersSize": 2254, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:16.172Z", + "time": 28, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 28 + } + }, + { + "_id": "75d6976246a9dc1f1ab1849bbcfbcc40", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 108, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "108" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"openidm-reg\",\"condition\":null,\"description\":\"Anonymous access\",\"name\":\"openidm-reg\",\"privileges\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role/openidm-reg" + }, + "response": { + "bodySize": 184, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 184, + "text": "{\"_id\":\"openidm-reg\",\"_rev\":\"59a9cc49-ce29-4914-8b0c-f231482e578d-4220\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-reg\",\"description\":\"Anonymous access\",\"temporalConstraints\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:16 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"59a9cc49-ce29-4914-8b0c-f231482e578d-4220\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "184" + } + ], + "headersSize": 2254, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:16.207Z", + "time": 21, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 21 + } + }, + { + "_id": "2b8a77d0354a870267b704fc6f7b358f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 146, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "146" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"openidm-tasks-manager\",\"condition\":null,\"description\":\"Allowed to reassign workflow tasks\",\"name\":\"openidm-tasks-manager\",\"privileges\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role/openidm-tasks-manager" + }, + "response": { + "bodySize": 222, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 222, + "text": "{\"_id\":\"openidm-tasks-manager\",\"_rev\":\"59a9cc49-ce29-4914-8b0c-f231482e578d-4221\",\"privileges\":[],\"condition\":null,\"name\":\"openidm-tasks-manager\",\"description\":\"Allowed to reassign workflow tasks\",\"temporalConstraints\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:16 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"59a9cc49-ce29-4914-8b0c-f231482e578d-4221\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "222" + } + ], + "headersSize": 2254, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:16.234Z", + "time": 18, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 18 + } + }, + { + "_id": "ee2c366c33d54481795486a93f74a3a7", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 140, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-1fb9504b-1f3b-4c3a-a0ae-f3f68ad54ece" + }, + { + "name": "x-openidm-username", + "value": "openidm-admin" + }, + { + "name": "x-openidm-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "140" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 468, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"_id\":\"platform-provisioning\",\"condition\":null,\"description\":\"Platform provisioning access\",\"name\":\"platform-provisioning\",\"privileges\":[]}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/internal/role/platform-provisioning" + }, + "response": { + "bodySize": 216, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 216, + "text": "{\"_id\":\"platform-provisioning\",\"_rev\":\"59a9cc49-ce29-4914-8b0c-f231482e578d-4222\",\"privileges\":[],\"condition\":null,\"name\":\"platform-provisioning\",\"description\":\"Platform provisioning access\",\"temporalConstraints\":[]}" + }, + "cookies": [ + { + "httpOnly": true, + "name": "session-jwt", + "path": "/", + "value": "" + } + ], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:16 GMT" + }, + { + "name": "vary", + "value": "Origin" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-security-policy", + "value": "default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"59a9cc49-ce29-4914-8b0c-f231482e578d-4222\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "_fromType": "array", + "name": "set-cookie", + "value": "session-jwt=; Path=/; HttpOnly" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "216" + } + ], + "headersSize": 2254, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2025-05-23T19:56:16.257Z", + "time": 19, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 19 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/config_603940551/import_288002260/1_AD_909783044/openidm_3290118515/recording.har b/test/e2e/mocks/config_603940551/import_288002260/1_AD_909783044/openidm_3290118515/recording.har new file mode 100644 index 000000000..36beb38c5 --- /dev/null +++ b/test/e2e/mocks/config_603940551/import_288002260/1_AD_909783044/openidm_3290118515/recording.har @@ -0,0 +1,205 @@ +{ + "log": { + "_recordingName": "config/import/1_AD/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "de3566e649dc89e93a6365b0fdaecd4e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-72aa4182-a705-44e3-aca4-da58b2d8a735" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 393, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/serverinfo/*" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:31 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-05-23T19:56:31.132Z", + "time": 13, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 13 + } + }, + { + "_id": "3f3b03432a833cfcbe27438276bb566b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 2, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/3.1.0" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-72aa4182-a705-44e3-aca4-da58b2d8a735" + }, + { + "name": "accept-api-version", + "value": "resource=2.0, protocol=1.0" + }, + { + "name": "x-openam-username", + "value": "openidm-admin" + }, + { + "name": "x-openam-password", + "value": "openidm-admin" + }, + { + "name": "content-length", + "value": "2" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openidm-frodo-dev.classic.com:9080" + } + ], + "headersSize": 507, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{}" + }, + "queryString": [], + "url": "http://openidm-frodo-dev.classic.com:9080/openidm/json/realms/root/authenticate" + }, + "response": { + "bodySize": 62, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 62, + "text": "{\"code\":401,\"reason\":\"Unauthorized\",\"message\":\"Access Denied\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Fri, 23 May 2025 19:56:31 GMT" + }, + { + "name": "vary", + "value": "Accept-Encoding, Origin" + }, + { + "name": "content-type", + "value": "application/json;charset=utf-8" + }, + { + "name": "content-length", + "value": "62" + } + ], + "headersSize": 136, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 401, + "statusText": "Unauthorized" + }, + "startedDateTime": "2025-05-23T19:56:31.151Z", + "time": 3, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 3 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/utils/TestUtils.js b/test/e2e/utils/TestUtils.js index 371c3131b..29a63feb1 100644 --- a/test/e2e/utils/TestUtils.js +++ b/test/e2e/utils/TestUtils.js @@ -250,7 +250,7 @@ export function getEnv(connection = undefined) { ...(connection?.saId && { FRODO_SA_ID: connection.saId }), ...(connection?.saJwk && { FRODO_SA_JWK: connection.saJwk }), ...(connection?.user && { FRODO_USERNAME: connection.user }), - ...(connection?.pass && { FRODO_PASSWORD: connection.pass }), + ...(connection?.pass && { FRODO_PASSWORD: connection.pass }), }, }; } From d9c1a08b919601cd0aad07390345d95a6fcdc096 Mon Sep 17 00:00:00 2001 From: Sean Koo Date: Tue, 28 Oct 2025 17:43:30 -0600 Subject: [PATCH 3/3] Updated tests after rebased. Modified some code corresponding to rebased frodo-lib. --- package-lock.json | 6 +- src/cli/agent/agent-describe.ts | 15 +- src/cli/agent/agent-export.ts | 15 +- src/ops/ConfigOps.ts | 11 +- .../config-import.e2e.test.js.snap | 4 - .../email-template-export.e2e.test.js.snap | 202 + .../__snapshots__/idm-export.e2e.test.js.snap | 58379 ++++++++++++---- .../__snapshots__/idm-import.e2e.test.js.snap | 2 +- .../mapping-export.e2e.test.js.snap | 3895 +- .../mapping-import.e2e.test.js.snap | 115 +- .../role-export.e2e.test.js.snap | 160 + .../server-export.e2e.test.js.snap | 222 +- .../server-import.e2e.test.js.snap | 26 +- .../server-list.e2e.test.js.snap | 26 +- test/e2e/config-export.e2e.test.js | 7 + test/e2e/config-import.e2e.test.js | 8 + .../forgottenUsername.emailTemplate.json | 24 + .../registration.emailTemplate.json | 24 + .../resetPassword.emailTemplate.json | 19 + .../updatePassword.emailTemplate.json | 21 + .../emailTemplate/welcome.emailTemplate.json | 21 + .../cloud/global/idm/access.idm.json | 316 + .../global/idm/alphaOrgPrivileges.idm.json | 761 + .../cloud/global/idm/audit.idm.json | 104 + .../cloud/global/idm/authentication.idm.json | 36 + .../rsFilter.augmentSecurityContext.script.js | 1 + .../global/idm/bravoOrgPrivileges.idm.json | 761 + .../idm/endpoint/extractscripttest.idm.json | 11 + .../idm/endpoint/extractscripttest.script.js | 3 + .../cloud/global/idm/external.email.idm.json | 27 + .../global/idm/external.emailDefault.idm.json | 27 + .../idm/fieldPolicy/alpha_user.idm.json | 50 + .../idm/fieldPolicy/bravo_user.idm.json | 50 + .../cloud/global/idm/internal.idm.json | 34 + .../managed/alpha_application.managed.json | 335 + .../idm/managed/alpha_assignment.managed.json | 254 + .../idm/managed/alpha_group.managed.json | 137 + .../managed/alpha_organization.managed.json | 395 + .../idm/managed/alpha_role.managed.json | 247 + .../idm/managed/alpha_user.managed.json | 1818 + .../onCreate.script.js | 5 + .../managed/bravo_application.managed.json | 332 + .../idm/managed/bravo_assignment.managed.json | 254 + .../idm/managed/bravo_group.managed.json | 137 + .../managed/bravo_organization.managed.json | 395 + .../idm/managed/bravo_role.managed.json | 251 + .../onValidate.script.js | 3 + .../idm/managed/bravo_user.managed.json | 1817 + .../postUpdate.script.js | 4 + .../cloud/global/idm/managed/managed.idm.json | 21 + .../cloud/global/idm/policy.idm.json | 9 + .../global/idm/privilegeAssignments.idm.json | 31 + .../cloud/global/idm/privileges.idm.json | 8 + .../cloud/global/idm/repo.ds.idm.json | 1437 + .../cloud/global/idm/router.idm.json | 8 + .../cloud/global/idm/secrets.idm.json | 113 + .../cloud/global/idm/selfservice.kba.idm.json | 15 + .../global/idm/selfservice.terms.idm.json | 22 + .../global/idm/servletfilter/cors.idm.json | 18 + .../global/idm/servletfilter/payload.idm.json | 13 + .../global/idm/servletfilter/upload.idm.json | 13 + .../global/idm/ui.context/admin.idm.json | 14 + .../cloud/global/idm/ui.context/api.idm.json | 13 + .../global/idm/ui.context/enduser.idm.json | 13 + .../global/idm/ui.context/oauth.idm.json | 12 + .../global/idm/ui/configuration.idm.json | 41 + .../cloud/global/idm/ui/dashboard.idm.json | 178 + .../cloud/global/idm/ui/profile.idm.json | 45 + .../cloud/global/idm/ui/themeconfig.idm.json | 31 + .../openidm-admin.internalRole.json | 12 + .../openidm-authorized.internalRole.json | 12 + .../openidm-cert.internalRole.json | 12 + .../openidm-reg.internalRole.json | 12 + .../openidm-tasks-manager.internalRole.json | 12 + .../platform-provisioning.internalRole.json | 12 + .../cloud/global/realm/alpha.realm.json | 11 + .../cloud/global/realm/bravo.realm.json | 11 + .../cloud/global/realm/root.realm.json | 11 + ...AUTHENTICATION_CLIENT_SIDE.scripttype.json | 31 + ...AUTHENTICATION_SERVER_SIDE.scripttype.json | 348 + ...ICATION_TREE_DECISION_NODE.scripttype.json | 420 + .../CONFIG_PROVIDER_NODE.scripttype.json | 407 + ...FIG_PROVIDER_NODE_NEXT_GEN.scripttype.json | 1631 + .../DEVICE_MATCH_NODE.scripttype.json | 3152 + .../global/scripttype/LIBRARY.scripttype.json | 1452 + .../scripttype/NODE_DESIGNER.scripttype.json | 3170 + ..._ACCESS_TOKEN_MODIFICATION.scripttype.json | 377 + ...OKEN_MODIFICATION_NEXT_GEN.scripttype.json | 2055 + ...IZE_ENDPOINT_DATA_PROVIDER.scripttype.json | 361 + ...YNAMIC_CLIENT_REGISTRATION.scripttype.json | 1538 + .../OAUTH2_EVALUATE_SCOPE.scripttype.json | 371 + .../scripttype/OAUTH2_MAY_ACT.scripttype.json | 373 + ...OAUTH2_SCRIPTED_JWT_ISSUER.scripttype.json | 207 + .../OAUTH2_VALIDATE_SCOPE.scripttype.json | 361 + .../scripttype/OIDC_CLAIMS.scripttype.json | 368 + ...Y_COMPLETION_DECISION_NODE.scripttype.json | 1759 + .../POLICY_CONDITION.scripttype.json | 283 + .../POLICY_CONDITION_NEXT_GEN.scripttype.json | 1573 + .../SAML2_IDP_ADAPTER.scripttype.json | 214 + ...SAML2_IDP_ATTRIBUTE_MAPPER.scripttype.json | 350 + .../SAML2_NAMEID_MAPPER.scripttype.json | 1590 + .../SAML2_SP_ADAPTER.scripttype.json | 245 + .../SCRIPTED_DECISION_NODE.scripttype.json | 3173 + ...IDP_PROFILE_TRANSFORMATION.scripttype.json | 346 + .../information.serverInformation.json | 36 + .../serverVersion/version.serverVersion.json | 11 + .../global/service/CorsService.service.json | 15 + .../global/service/dashboard.service.json | 60 + .../global/sync/extract_script_test.sync.json | 95 + .../correlationScript.script.js | 1 + .../onCreate.script.js | 1 + ...erties.SOURCE.name.transform.script.groovy | 1 + .../result.script.js | 1 + .../validSource.script.js | 1 + .../cloud/global/sync/sync.idm.json | 10 + ...netAMWebAgentService.applicationTypes.json | 21 + ...nAMDelegationService.applicationTypes.json | 17 + .../umaApplicationType.applicationTypes.json | 13 + .../root-alpha.authentication.settings.json | 69 + .../Federation.authenticationModules.json | 13 + .../amster.authenticationModules.json | 15 + .../datastore.authenticationModules.json | 13 + .../federation.authenticationModules.json | 13 + .../hotp.authenticationModules.json | 27 + .../ldap.authenticationModules.json | 39 + .../oath.authenticationModules.json | 24 + .../sae.authenticationModules.json | 13 + .../AMIdentityMembership.conditionTypes.json | 20 + .../conditionTypes/AND.conditionTypes.json | 17 + .../AuthLevel.conditionTypes.json | 17 + .../AuthScheme.conditionTypes.json | 26 + .../AuthenticateToRealm.conditionTypes.json | 17 + .../AuthenticateToService.conditionTypes.json | 17 + .../conditionTypes/IPv4.conditionTypes.json | 26 + .../conditionTypes/IPv6.conditionTypes.json | 26 + .../IdmUser.conditionTypes.json | 36 + .../LDAPFilter.conditionTypes.json | 17 + .../LEAuthLevel.conditionTypes.json | 17 + .../conditionTypes/NOT.conditionTypes.json | 18 + .../OAuth2Scope.conditionTypes.json | 20 + .../conditionTypes/OR.conditionTypes.json | 17 + .../conditionTypes/Policy.conditionTypes.json | 20 + .../ResourceEnvIP.conditionTypes.json | 20 + .../conditionTypes/Script.conditionTypes.json | 17 + .../Session.conditionTypes.json | 21 + .../SessionProperty.conditionTypes.json | 21 + .../SimpleTime.conditionTypes.json | 35 + .../Transaction.conditionTypes.json | 27 + .../DenyOverride.decisionCombiners.json | 8 + .../root-alpha/journey/Agent.journey.json | 181 + .../journey/ForgottenUsername.journey.json | 198 + .../root-alpha/journey/Login.journey.json | 282 + .../journey/ProgressiveProfile.journey.json | 200 + .../journey/Registration.journey.json | 283 + .../journey/ResetPassword.journey.json | 254 + .../journey/UpdatePassword.journey.json | 307 + .../oauth2.app/RCSClient.oauth2.app.json | 562 + .../policyset/oauth2Scopes.policyset.json | 53 + .../OAuth2-Scope.resourcetype.json | 21 + .../resourcetype/URL.resourcetype.json | 26 + ...Access-Token-Modification-Script.script.js | 135 + ...cess-Token-Modification-Script.script.json | 18 + .../script/Alpha-OIDC-Claims-Script.script.js | 620 + .../Alpha-OIDC-Claims-Script.script.json | 18 + ...Access-Token-Modification-Script.script.js | 12 + ...cess-Token-Modification-Script.script.json | 18 + ...dUserUIClient-OIDC-Claims-Script.script.js | 621 + ...serUIClient-OIDC-Claims-Script.script.json | 18 + ...Amazon-Profile-Normalization.script.groovy | 18 + .../Amazon-Profile-Normalization.script.json | 18 + .../Apple-Profile-Normalization.script.groovy | 53 + .../Apple-Profile-Normalization.script.json | 18 + ...cation-Tree-Decision-Node-Script.script.js | 6 + ...tion-Tree-Decision-Node-Script.script.json | 18 + .../Config-Provider-Node-Script.script.js | 67 + .../Config-Provider-Node-Script.script.json | 18 + .../Device-Id-(Match)-Client-Side.script.js | 254 + .../Device-Id-(Match)-Client-Side.script.json | 18 + .../Device-Id-(Match)-Server-Side.script.js | 831 + .../Device-Id-(Match)-Server-Side.script.json | 18 + ...ch-Template-Decision-Node-Script.script.js | 82 + ...-Template-Decision-Node-Script.script.json | 18 + ...cebook-Profile-Normalization.script.groovy | 21 + ...Facebook-Profile-Normalization.script.json | 18 + ...Access-Token-Modification-Script.script.js | 9 + ...cess-Token-Modification-Script.script.json | 18 + ...Rock-Internal-OIDC-Claims-Script.script.js | 621 + ...ck-Internal-OIDC-Claims-Script.script.json | 18 + ...GitHub-Profile-Normalization.script.groovy | 17 + .../GitHub-Profile-Normalization.script.json | 18 + ...Google-Profile-Normalization.script.groovy | 22 + .../Google-Profile-Normalization.script.json | 18 + ...tagram-Profile-Normalization.script.groovy | 16 + ...nstagram-Profile-Normalization.script.json | 18 + .../Itsme-Profile-Normalization.script.groovy | 23 + .../Itsme-Profile-Normalization.script.json | 18 + .../LINE-Profile-Normalization.script.groovy | 44 + .../LINE-Profile-Normalization.script.json | 18 + .../script/Library-Script.script.js | 34 + .../script/Library-Script.script.json | 40 + ...ofile-Normalization-(Legacy).script.groovy | 20 + ...Profile-Normalization-(Legacy).script.json | 18 + ...nkedIn-Profile-Normalization.script.groovy | 23 + ...LinkedIn-Profile-Normalization.script.json | 18 + ...rosoft-Profile-Normalization.script.groovy | 20 + ...icrosoft-Profile-Normalization.script.json | 18 + ...eration-Device-Match-Node-Script.script.js | 14 + ...ation-Device-Match-Node-Script.script.json | 18 + ...on-Scripted-Decision-Node-Script.script.js | 14 + ...-Scripted-Decision-Node-Script.script.json | 18 + ...rmalized-Profile-to-Identity.script.groovy | 24 + ...Normalized-Profile-to-Identity.script.json | 18 + ...ized-Profile-to-Managed-User.script.groovy | 39 + ...alized-Profile-to-Managed-User.script.json | 18 + ...Access-Token-Modification-Script.script.js | 136 + ...cess-Token-Modification-Script.script.json | 18 + ...ze-Endpoint-Data-Provider-Script.script.js | 91 + ...-Endpoint-Data-Provider-Script.script.json | 18 + ...namic-Client-Registration-Script.script.js | 71 + ...mic-Client-Registration-Script.script.json | 18 + .../OAuth2-Evaluate-Scope-Script.script.js | 53 + .../OAuth2-Evaluate-Scope-Script.script.json | 18 + .../script/OAuth2-JWT-Issuer-Script.script.js | 76 + .../OAuth2-JWT-Issuer-Script.script.json | 18 + .../OAuth2-May-Act-Script.script.groovy | 43 + .../script/OAuth2-May-Act-Script.script.json | 18 + .../OAuth2-Validate-Scope-Script.script.js | 86 + .../OAuth2-Validate-Scope-Script.script.json | 18 + .../script/OIDC-Claims-Script.script.js | 621 + .../script/OIDC-Claims-Script.script.json | 18 + .../script/SAML2-IDP-Adapter-Script.script.js | 151 + .../SAML2-IDP-Adapter-Script.script.json | 18 + ...AML2-IDP-Attribute-Mapper-Script.script.js | 161 + ...L2-IDP-Attribute-Mapper-Script.script.json | 18 + .../SAML2-NameID-Mapper-Script.script.js | 15 + .../SAML2-NameID-Mapper-Script.script.json | 18 + .../script/SAML2-SP-Adapter-Script.script.js | 228 + .../SAML2-SP-Adapter-Script.script.json | 18 + ...sforce-Profile-Normalization.script.groovy | 22 + ...lesforce-Profile-Normalization.script.json | 18 + .../Scripted-Module-Client-Side.script.js | 9 + .../Scripted-Module-Client-Side.script.json | 18 + .../Scripted-Module-Server-Side.script.js | 86 + .../Scripted-Module-Server-Side.script.json | 18 + .../Scripted-Policy-Condition.script.js | 143 + .../Scripted-Policy-Condition.script.json | 18 + ...rofile-Transformation-Script.script.groovy | 10 + ...-Profile-Transformation-Script.script.json | 18 + ...witter-Profile-Normalization.script.groovy | 19 + .../Twitter-Profile-Normalization.script.json | 18 + ...ntakte-Profile-Normalization.script.groovy | 21 + ...Kontakte-Profile-Normalization.script.json | 18 + ...WeChat-Profile-Normalization.script.groovy | 18 + .../WeChat-Profile-Normalization.script.json | 18 + ...dPress-Profile-Normalization.script.groovy | 19 + ...ordPress-Profile-Normalization.script.json | 18 + .../Yahoo-Profile-Normalization.script.groovy | 22 + .../Yahoo-Profile-Normalization.script.json | 18 + .../SocialIdentityProviders.service.json | 14 + .../root-alpha/service/baseurl.service.json | 17 + .../service/oauth-oidc.service.json | 423 + .../service/policyconfiguration.service.json | 41 + .../service/selfServiceTrees.service.json | 21 + .../service/validation.service.json | 17 + .../undefined.subjectAttributes.json | 5 + .../subjectTypes/AND.subjectTypes.json | 17 + .../AuthenticatedUsers.subjectTypes.json | 13 + .../subjectTypes/Identity.subjectTypes.json | 20 + .../subjectTypes/JwtClaim.subjectTypes.json | 20 + .../subjectTypes/NONE.subjectTypes.json | 13 + .../subjectTypes/NOT.subjectTypes.json | 18 + .../subjectTypes/OR.subjectTypes.json | 17 + .../subjectTypes/Policy.subjectTypes.json | 26 + .../root-alpha/theme/Contrast.theme.json | 88 + .../root-alpha/theme/Highlander.theme.json | 88 + .../realm/root-alpha/theme/Robroy.theme.json | 88 + .../root-alpha/theme/Starter-Theme.theme.json | 87 + .../realm/root-alpha/theme/Zardoz.theme.json | 88 + ...netAMWebAgentService.applicationTypes.json | 21 + ...nAMDelegationService.applicationTypes.json | 17 + .../umaApplicationType.applicationTypes.json | 13 + .../root-bravo.authentication.settings.json | 69 + .../Federation.authenticationModules.json | 13 + .../amster.authenticationModules.json | 15 + .../datastore.authenticationModules.json | 13 + .../federation.authenticationModules.json | 13 + .../hotp.authenticationModules.json | 27 + .../ldap.authenticationModules.json | 39 + .../oath.authenticationModules.json | 24 + .../sae.authenticationModules.json | 13 + .../AMIdentityMembership.conditionTypes.json | 20 + .../conditionTypes/AND.conditionTypes.json | 17 + .../AuthLevel.conditionTypes.json | 17 + .../AuthScheme.conditionTypes.json | 26 + .../AuthenticateToRealm.conditionTypes.json | 17 + .../AuthenticateToService.conditionTypes.json | 17 + .../conditionTypes/IPv4.conditionTypes.json | 26 + .../conditionTypes/IPv6.conditionTypes.json | 26 + .../IdmUser.conditionTypes.json | 36 + .../LDAPFilter.conditionTypes.json | 17 + .../LEAuthLevel.conditionTypes.json | 17 + .../conditionTypes/NOT.conditionTypes.json | 18 + .../OAuth2Scope.conditionTypes.json | 20 + .../conditionTypes/OR.conditionTypes.json | 17 + .../conditionTypes/Policy.conditionTypes.json | 20 + .../ResourceEnvIP.conditionTypes.json | 20 + .../conditionTypes/Script.conditionTypes.json | 17 + .../Session.conditionTypes.json | 21 + .../SessionProperty.conditionTypes.json | 21 + .../SimpleTime.conditionTypes.json | 35 + .../Transaction.conditionTypes.json | 27 + .../DenyOverride.decisionCombiners.json | 8 + .../root-bravo/journey/Agent.journey.json | 181 + .../journey/ForgottenUsername.journey.json | 198 + .../root-bravo/journey/Login.journey.json | 282 + .../journey/ProgressiveProfile.journey.json | 200 + .../journey/Registration.journey.json | 283 + .../journey/ResetPassword.journey.json | 254 + .../journey/UpdatePassword.journey.json | 307 + .../oauth2.app/RCSClient.oauth2.app.json | 562 + .../policyset/oauth2Scopes.policyset.json | 53 + .../OAuth2-Scope.resourcetype.json | 21 + .../resourcetype/URL.resourcetype.json | 26 + ...Amazon-Profile-Normalization.script.groovy | 18 + .../Amazon-Profile-Normalization.script.json | 18 + .../Apple-Profile-Normalization.script.groovy | 53 + .../Apple-Profile-Normalization.script.json | 18 + ...cation-Tree-Decision-Node-Script.script.js | 6 + ...tion-Tree-Decision-Node-Script.script.json | 18 + ...Access-Token-Modification-Script.script.js | 135 + ...cess-Token-Modification-Script.script.json | 18 + .../script/Bravo-OIDC-Claims-Script.script.js | 620 + .../Bravo-OIDC-Claims-Script.script.json | 18 + ...Access-Token-Modification-Script.script.js | 12 + ...cess-Token-Modification-Script.script.json | 18 + ...dUserUIClient-OIDC-Claims-Script.script.js | 621 + ...serUIClient-OIDC-Claims-Script.script.json | 18 + .../Config-Provider-Node-Script.script.js | 67 + .../Config-Provider-Node-Script.script.json | 18 + .../Device-Id-(Match)-Client-Side.script.js | 254 + .../Device-Id-(Match)-Client-Side.script.json | 18 + .../Device-Id-(Match)-Server-Side.script.js | 831 + .../Device-Id-(Match)-Server-Side.script.json | 18 + ...ch-Template-Decision-Node-Script.script.js | 82 + ...-Template-Decision-Node-Script.script.json | 18 + ...cebook-Profile-Normalization.script.groovy | 21 + ...Facebook-Profile-Normalization.script.json | 18 + ...Access-Token-Modification-Script.script.js | 9 + ...cess-Token-Modification-Script.script.json | 18 + ...Rock-Internal-OIDC-Claims-Script.script.js | 621 + ...ck-Internal-OIDC-Claims-Script.script.json | 18 + ...GitHub-Profile-Normalization.script.groovy | 17 + .../GitHub-Profile-Normalization.script.json | 18 + ...Google-Profile-Normalization.script.groovy | 22 + .../Google-Profile-Normalization.script.json | 18 + ...tagram-Profile-Normalization.script.groovy | 16 + ...nstagram-Profile-Normalization.script.json | 18 + .../Itsme-Profile-Normalization.script.groovy | 23 + .../Itsme-Profile-Normalization.script.json | 18 + .../LINE-Profile-Normalization.script.groovy | 44 + .../LINE-Profile-Normalization.script.json | 18 + .../script/Library-Script.script.js | 34 + .../script/Library-Script.script.json | 40 + ...ofile-Normalization-(Legacy).script.groovy | 20 + ...Profile-Normalization-(Legacy).script.json | 18 + ...nkedIn-Profile-Normalization.script.groovy | 23 + ...LinkedIn-Profile-Normalization.script.json | 18 + ...rosoft-Profile-Normalization.script.groovy | 20 + ...icrosoft-Profile-Normalization.script.json | 18 + ...eration-Device-Match-Node-Script.script.js | 14 + ...ation-Device-Match-Node-Script.script.json | 18 + ...on-Scripted-Decision-Node-Script.script.js | 14 + ...-Scripted-Decision-Node-Script.script.json | 18 + ...rmalized-Profile-to-Identity.script.groovy | 24 + ...Normalized-Profile-to-Identity.script.json | 18 + ...ized-Profile-to-Managed-User.script.groovy | 39 + ...alized-Profile-to-Managed-User.script.json | 18 + ...Access-Token-Modification-Script.script.js | 136 + ...cess-Token-Modification-Script.script.json | 18 + ...ze-Endpoint-Data-Provider-Script.script.js | 91 + ...-Endpoint-Data-Provider-Script.script.json | 18 + ...namic-Client-Registration-Script.script.js | 71 + ...mic-Client-Registration-Script.script.json | 18 + .../OAuth2-Evaluate-Scope-Script.script.js | 53 + .../OAuth2-Evaluate-Scope-Script.script.json | 18 + .../script/OAuth2-JWT-Issuer-Script.script.js | 76 + .../OAuth2-JWT-Issuer-Script.script.json | 18 + .../OAuth2-May-Act-Script.script.groovy | 43 + .../script/OAuth2-May-Act-Script.script.json | 18 + .../OAuth2-Validate-Scope-Script.script.js | 86 + .../OAuth2-Validate-Scope-Script.script.json | 18 + .../script/OIDC-Claims-Script.script.js | 621 + .../script/OIDC-Claims-Script.script.json | 18 + .../script/SAML2-IDP-Adapter-Script.script.js | 151 + .../SAML2-IDP-Adapter-Script.script.json | 18 + ...AML2-IDP-Attribute-Mapper-Script.script.js | 161 + ...L2-IDP-Attribute-Mapper-Script.script.json | 18 + .../SAML2-NameID-Mapper-Script.script.js | 15 + .../SAML2-NameID-Mapper-Script.script.json | 18 + .../script/SAML2-SP-Adapter-Script.script.js | 228 + .../SAML2-SP-Adapter-Script.script.json | 18 + ...sforce-Profile-Normalization.script.groovy | 22 + ...lesforce-Profile-Normalization.script.json | 18 + .../Scripted-Module-Client-Side.script.js | 9 + .../Scripted-Module-Client-Side.script.json | 18 + .../Scripted-Module-Server-Side.script.js | 86 + .../Scripted-Module-Server-Side.script.json | 18 + .../Scripted-Policy-Condition.script.js | 143 + .../Scripted-Policy-Condition.script.json | 18 + ...rofile-Transformation-Script.script.groovy | 10 + ...-Profile-Transformation-Script.script.json | 18 + ...witter-Profile-Normalization.script.groovy | 19 + .../Twitter-Profile-Normalization.script.json | 18 + ...ntakte-Profile-Normalization.script.groovy | 21 + ...Kontakte-Profile-Normalization.script.json | 18 + ...WeChat-Profile-Normalization.script.groovy | 18 + .../WeChat-Profile-Normalization.script.json | 18 + ...dPress-Profile-Normalization.script.groovy | 19 + ...ordPress-Profile-Normalization.script.json | 18 + .../Yahoo-Profile-Normalization.script.groovy | 22 + .../Yahoo-Profile-Normalization.script.json | 18 + .../SocialIdentityProviders.service.json | 14 + .../root-bravo/service/baseurl.service.json | 17 + .../service/oauth-oidc.service.json | 423 + .../service/policyconfiguration.service.json | 41 + .../service/selfServiceTrees.service.json | 21 + .../service/validation.service.json | 17 + .../undefined.subjectAttributes.json | 5 + .../subjectTypes/AND.subjectTypes.json | 17 + .../AuthenticatedUsers.subjectTypes.json | 13 + .../subjectTypes/Identity.subjectTypes.json | 20 + .../subjectTypes/JwtClaim.subjectTypes.json | 20 + .../subjectTypes/NONE.subjectTypes.json | 13 + .../subjectTypes/NOT.subjectTypes.json | 18 + .../subjectTypes/OR.subjectTypes.json | 17 + .../subjectTypes/Policy.subjectTypes.json | 26 + .../root-bravo/theme/Contrast.theme.json | 88 + .../root-bravo/theme/Highlander.theme.json | 88 + .../realm/root-bravo/theme/Robroy.theme.json | 88 + .../root-bravo/theme/Starter-Theme.theme.json | 87 + .../realm/root-bravo/theme/Zardoz.theme.json | 88 + ...netAMWebAgentService.applicationTypes.json | 21 + ...nAMDelegationService.applicationTypes.json | 17 + .../umaApplicationType.applicationTypes.json | 13 + .../AMIdentityMembership.conditionTypes.json | 20 + .../conditionTypes/AND.conditionTypes.json | 17 + .../AuthLevel.conditionTypes.json | 17 + .../AuthScheme.conditionTypes.json | 26 + .../AuthenticateToRealm.conditionTypes.json | 17 + .../AuthenticateToService.conditionTypes.json | 17 + .../conditionTypes/IPv4.conditionTypes.json | 26 + .../conditionTypes/IPv6.conditionTypes.json | 26 + .../IdmUser.conditionTypes.json | 36 + .../LDAPFilter.conditionTypes.json | 17 + .../LEAuthLevel.conditionTypes.json | 17 + .../conditionTypes/NOT.conditionTypes.json | 18 + .../OAuth2Scope.conditionTypes.json | 20 + .../conditionTypes/OR.conditionTypes.json | 17 + .../conditionTypes/Policy.conditionTypes.json | 20 + .../ResourceEnvIP.conditionTypes.json | 20 + .../conditionTypes/Script.conditionTypes.json | 17 + .../Session.conditionTypes.json | 21 + .../SessionProperty.conditionTypes.json | 21 + .../SimpleTime.conditionTypes.json | 35 + .../Transaction.conditionTypes.json | 27 + .../DenyOverride.decisionCombiners.json | 8 + ...b9-5634-4e64-905f-55d62e229743.policy.json | 28 + ...c5-9fcb-466b-a2cd-99ba58b8f2b3.policy.json | 28 + ...aa-066a-44d6-84dd-69319b32cb8c.policy.json | 28 + ...40-b819-42c2-9a9b-9b7c7e8c4c99.policy.json | 38 + ...19-a9d6-4e0c-b7a8-6951b244d363.policy.json | 28 + ...ea-6503-4dc1-b263-1260de0b8813.policy.json | 28 + ...48-8893-4982-97ea-7fcdc6a023f0.policy.json | 28 + ...cs_introspect_config_api_admin.policy.json | 30 + ...trospect_create_entities_admin.policy.json | 29 + ..._create_update_templates_admin.policy.json | 30 + ...spect_custom_reports_api_admin.policy.json | 36 + ...rospect_fieldoptions_api_admin.policy.json | 29 + ...introspect_get_metrics_auditor.policy.json | 30 + ...cs_introspect_get_runs_auditor.policy.json | 30 + ...trospect_get_templates_auditor.policy.json | 30 + ...rospect_import_templates_admin.policy.json | 29 + ...rospect_manage_templates_admin.policy.json | 34 + ...ics_introspect_run_adhoc_admin.policy.json | 29 + ...trospect_run_templates_auditor.policy.json | 30 + ..._introspect_seed_reports_admin.policy.json | 29 + ...s_introspect_view_runs_auditor.policy.json | 33 + ...41-4f21-4382-b418-a3b74a98bfdb.policy.json | 28 + ...dd-4f8b-452b-b7ca-6e234aceb9ec.policy.json | 29 + ...ef-64c5-4c47-aeab-38e03be2c1e2.policy.json | 28 + .../idmadminclient_scope_auto.policy.json | 37 + ...scope_fr_idc_certificate_admin.policy.json | 34 + ..._scope_fr_idc_certificate_read.policy.json | 34 + ..._content_security_policy_admin.policy.json | 34 + ...c_content_security_policy_read.policy.json | 34 + ...ope_fr_idc_cookie_domain_admin.policy.json | 34 + ...cope_fr_idc_cookie_domain_read.policy.json | 34 + ...ope_fr_idc_custom_domain_admin.policy.json | 34 + ...cope_fr_idc_custom_domain_read.policy.json | 34 + ...pe_fr_idc_custom_domain_verify.policy.json | 34 + ...ent_scope_fr_idc_dataset_admin.policy.json | 34 + ...ient_scope_fr_idc_dataset_read.policy.json | 34 + ...nclient_scope_fr_idc_esv_admin.policy.json | 34 + ...inclient_scope_fr_idc_esv_read.policy.json | 34 + ...lient_scope_fr_idc_esv_restart.policy.json | 34 + ...client_scope_fr_idc_esv_update.policy.json | 34 + ..._scope_fr_idc_federation_admin.policy.json | 34 + ..._scope_fr_idc_monitoring_admin.policy.json | 34 + ...t_scope_fr_idc_monitoring_read.policy.json | 34 + ...client_scope_fr_idc_mtls_admin.policy.json | 34 + ...nclient_scope_fr_idc_mtls_read.policy.json | 34 + ...ope_fr_idc_p1connect_configure.policy.json | 34 + ..._scope_fr_idc_p1connect_delete.policy.json | 34 + ...nt_scope_fr_idc_p1connect_read.policy.json | 34 + ...t_scope_fr_idc_p1connect_reset.policy.json | 34 + ...t_scope_fr_idc_promotion_admin.policy.json | 34 + ...nt_scope_fr_idc_promotion_read.policy.json | 34 + ...ope_fr_idc_proxy_connect_admin.policy.json | 34 + ...cope_fr_idc_proxy_connect_read.policy.json | 34 + ...ope_fr_idc_proxy_connect_write.policy.json | 34 + ...ent_scope_fr_idc_release_admin.policy.json | 34 + ...ient_scope_fr_idc_release_read.policy.json | 34 + ..._scope_fr_idc_sso_cookie_admin.policy.json | 34 + ...t_scope_fr_idc_sso_cookie_read.policy.json | 34 + ...t_scope_fr_idc_telemetry_admin.policy.json | 34 + ...nt_scope_fr_idc_telemetry_read.policy.json | 34 + ...adminclient_scope_pingfederate.policy.json | 34 + ...ironment_certificates___delete.policy.json | 29 + ...environment_certificates___get.policy.json | 30 + ...vironment_certificates___patch.policy.json | 29 + ...__environment_certificates_get.policy.json | 30 + ..._environment_certificates_post.policy.json | 29 + ...t_security_policy_enforced_get.policy.json | 30 + ...t_security_policy_enforced_put.policy.json | 29 + ...ecurity_policy_report_only_get.policy.json | 30 + ...ecurity_policy_report_only_put.policy.json | 29 + ...environment_cookie_domains_get.policy.json | 30 + ...environment_cookie_domains_put.policy.json | 29 + ...ins__environment_csrs___delete.policy.json | 29 + ...admins__environment_csrs___get.policy.json | 30 + ...mins__environment_csrs___patch.policy.json | 29 + ...t_admins__environment_csrs_get.policy.json | 30 + ..._admins__environment_csrs_post.policy.json | 29 + ...vironment_custom_domains___get.policy.json | 30 + ...vironment_custom_domains___put.policy.json | 29 + ...nvironment_custom_domains_post.policy.json | 29 + ...s__environment_datasets_delete.policy.json | 29 + ...mins__environment_datasets_get.policy.json | 30 + ...ent_federation_enforcement_get.policy.json | 28 + ...ent_federation_enforcement_put.policy.json | 28 + ...s__environment_mtls_config_get.policy.json | 30 + ...s__environment_mtls_config_put.policy.json | 29 + ..._trusted_certificates___delete.policy.json | 29 + ...tls_trusted_certificates___get.policy.json | 30 + ..._mtls_trusted_certificates_get.policy.json | 30 + ...mtls_trusted_certificates_post.policy.json | 29 + ...environment_p1connect___delete.policy.json | 28 + ...ins__environment_p1connect_get.policy.json | 28 + ...ns__environment_p1connect_post.policy.json | 28 + ..._environment_proxy_connect_get.policy.json | 30 + ...proxy_connect_header_rules_get.policy.json | 30 + ...proxy_connect_header_rules_put.policy.json | 29 + ...ent_proxy_connect_ip_rules_get.policy.json | 30 + ...ent_proxy_connect_ip_rules_put.policy.json | 29 + ..._environment_proxy_connect_put.policy.json | 29 + ...dmins__environment_release_get.policy.json | 30 + ...ns__environment_sso_cookie_get.policy.json | 30 + ...s__environment_sso_cookie_post.policy.json | 29 + ...ns__environment_sso_cookie_put.policy.json | 29 + ...ins__environment_telemetry_get.policy.json | 30 + ...onment_telemetry_otlp___delete.policy.json | 29 + ...vironment_telemetry_otlp___get.policy.json | 30 + ...vironment_telemetry_otlp___put.policy.json | 29 + ...ment_telemetry_splunk___delete.policy.json | 29 + ...ronment_telemetry_splunk___get.policy.json | 30 + ...ronment_telemetry_splunk___put.policy.json | 29 + ..._admins__environment_count_get.policy.json | 30 + ...__environment_secrets___delete.policy.json | 29 + ...ins__environment_secrets___get.policy.json | 30 + ...ns__environment_secrets___post.policy.json | 29 + ...ins__environment_secrets___put.policy.json | 29 + ...nt_secrets___versions___delete.policy.json | 29 + ...nment_secrets___versions___get.policy.json | 30 + ...ment_secrets___versions___post.policy.json | 29 + ...ronment_secrets___versions_get.policy.json | 30 + ...onment_secrets___versions_post.policy.json | 29 + ...dmins__environment_secrets_get.policy.json | 30 + ...dmins__environment_startup_get.policy.json | 30 + ...mins__environment_startup_post.policy.json | 29 + ...environment_variables___delete.policy.json | 29 + ...s__environment_variables___get.policy.json | 30 + ...__environment_variables___post.policy.json | 29 + ...s__environment_variables___put.policy.json | 29 + ...ins__environment_variables_get.policy.json | 30 + ...r_introspect_admins__auth_head.policy.json | 30 + ...trospect_admins__keys___delete.policy.json | 29 + ..._introspect_admins__keys___get.policy.json | 30 + ...er_introspect_admins__keys_get.policy.json | 30 + ...r_introspect_admins__keys_post.policy.json | 29 + ...ct_admins__monitoring_logs_get.policy.json | 30 + ...s__monitoring_logs_sources_get.policy.json | 30 + ...mins__monitoring_logs_tail_get.policy.json | 30 + ...__monitoring_prometheus_am_get.policy.json | 30 + ..._monitoring_prometheus_idm_get.policy.json | 30 + ...ironment_promotion_ingress_put.policy.json | 29 + ...onment_promotion_lock___delete.policy.json | 29 + ...nvironment_promotion_lock_post.policy.json | 29 + ...nment_promotion_lock_state_get.policy.json | 30 + ...ironment_promotion_promote_get.policy.json | 29 + ...ronment_promotion_promote_post.policy.json | 29 + ...ronment_promotion_report___get.policy.json | 30 + ...vironment_promotion_report_get.policy.json | 30 + ...omotion_report_provisional_get.policy.json | 30 + ...eport_provisional_rollback_get.policy.json | 30 + ...ironment_promotion_reports_get.policy.json | 30 + ...onment_promotion_rollback_post.policy.json | 29 + ...vironment_promotion_internal__.policy.json | 33 + .../auto-analytics-introspect.policyset.json | 31 + .../iPlanetAMWebAgentService.policyset.json | 53 + .../idmAdminClient-scope.policyset.json | 27 + .../policyset/oauth2Scopes.policyset.json | 53 + .../org-environment-introspect.policyset.json | 31 + .../org-esv-introspect.policyset.json | 31 + .../org-log-spewer-introspect.policyset.json | 31 + ...g-promo-external-introspect.policyset.json | 31 + ...g-promo-internal-introspect.policyset.json | 31 + .../OAuth2-Scope.resourcetype.json | 21 + .../root/resourcetype/URL.resourcetype.json | 26 + .../undefined.subjectAttributes.json | 5 + .../root/subjectTypes/AND.subjectTypes.json | 17 + .../AuthenticatedUsers.subjectTypes.json | 13 + .../subjectTypes/Identity.subjectTypes.json | 20 + .../subjectTypes/JwtClaim.subjectTypes.json | 20 + .../root/subjectTypes/NONE.subjectTypes.json | 13 + .../root/subjectTypes/NOT.subjectTypes.json | 18 + .../root/subjectTypes/OR.subjectTypes.json | 17 + .../subjectTypes/Policy.subjectTypes.json | 26 + .../forgottenUsername.emailTemplate.json | 19 + .../registration.emailTemplate.json | 19 + .../resetPassword.emailTemplate.json | 19 + .../updatePassword.emailTemplate.json | 17 + .../emailTemplate/welcome.emailTemplate.json | 19 + .../idm/global/idm/access.idm.json | 326 + .../idm/global/idm/apiVersion.idm.json | 51 + .../idm/global/idm/audit.idm.json | 151 + ...tTopics.access.filter.script.script.groovy | 1 + ...ics.authentication.filter.script.script.js | 1 + .../exceptionFormatter.script.js | 3 + .../idm/global/idm/authentication.idm.json | 89 + ...roperties.augmentSecurityContext.script.js | 1 + ...roperties.augmentSecurityContext.script.js | 1 + .../idm/global/idm/cluster.idm.json | 13 + .../getavailableuserstoassign.idm.json | 9 + .../idm/endpoint/getprocessesforuser.idm.json | 9 + .../global/idm/endpoint/gettasksview.idm.json | 9 + .../idm/endpoint/mappingDetails.idm.json | 10 + .../global/idm/endpoint/oauthproxy.idm.json | 10 + .../removeRepoPathFromRelationships.idm.json | 9 + .../idm/endpoint/repairMetadata.idm.json | 9 + ...nternalUserAndInternalRoleEntries.idm.json | 9 + .../idm/endpoint/validateQueryFilter.idm.json | 10 + .../endpoint/validateQueryFilter.script.js | 1 + .../idm/global/idm/external.rest.idm.json | 8 + .../idm/global/idm/internal.idm.json | 42 + .../idm/managed/assignment.managed.json | 235 + .../idm/global/idm/managed/managed.idm.json | 14 + .../idm/managed/organization.managed.json | 405 + .../onCreate.script.js | 1 + .../onRead.script.groovy | 1 + .../idm/global/idm/managed/role.managed.json | 193 + .../role.managed.scripts/onCreate.script.js | 5 + .../seantestmanagedobject.managed.json | 9 + .../idm/global/idm/managed/user.managed.json | 1044 + .../user.managed.scripts/postDelete.script.js | 3 + .../idm/global/idm/metrics.idm.json | 8 + .../idm/notification/passwordUpdate.idm.json | 31 + .../idm/notification/profileUpdate.idm.json | 43 + .../global/idm/notificationFactory.idm.json | 16 + .../idm/global/idm/policy.idm.json | 267 + ...resources.0.calculatedProperties.script.js | 1 + ...resources.1.calculatedProperties.script.js | 1 + .../global/idm/privilegeAssignments.idm.json | 31 + .../idm/global/idm/privileges.idm.json | 729 + .../idm/global/idm/process/access.idm.json | 23 + .../csvFileConnector.idm.json | 87 + .../csvSampleConnector.idm.json | 98 + .../idm/global/idm/repo.ds.idm.json | 1019 + .../idm/global/idm/repo.init.idm.json | 57 + .../idm/global/idm/router.idm.json | 41 + .../filters.2.condition.script.js | 1 + .../filters.2.onResponse.script.js | 1 + .../idm/global/idm/schedule/seantest.idm.json | 27 + .../seantest.invokeContext.script.script.js | 1 + .../idm/schedule/taskscan_activate.idm.json | 35 + ...tivate.invokeContext.task.script.script.js | 5 + .../idm/schedule/taskscan_expire.idm.json | 35 + ...expire.invokeContext.task.script.script.js | 5 + .../idm/global/idm/scheduler.idm.json | 15 + .../idm/global/idm/script.idm.json | 42 + .../idm/global/idm/secrets.idm.json | 112 + .../idm/global/idm/selfservice.kba.idm.json | 20 + .../idm/selfservice.propertymap.idm.json | 55 + .../idm/global/idm/selfservice.terms.idm.json | 22 + .../global/idm/servletfilter/cors.idm.json | 18 + .../global/idm/servletfilter/payload.idm.json | 14 + .../global/idm/servletfilter/upload.idm.json | 14 + .../idm/global/idm/ui.context/admin.idm.json | 15 + .../idm/global/idm/ui.context/api.idm.json | 13 + .../global/idm/ui.context/enduser.idm.json | 14 + .../idm/global/idm/ui.context/oauth.idm.json | 12 + .../idm/global/idm/ui/configuration.idm.json | 33 + .../idm/global/idm/ui/dashboard.idm.json | 198 + .../idm/global/idm/ui/profile.idm.json | 45 + .../idm/global/idm/ui/themeconfig.idm.json | 31 + .../idm/global/idm/webserver.idm.json | 16 + .../idm/webserver.listener/http.idm.json | 13 + .../idm/webserver.listener/https.idm.json | 15 + .../webserver.listener/mutualAuth.idm.json | 16 + .../openidm-admin.internalRole.json | 12 + .../openidm-authorized.internalRole.json | 12 + .../openidm-cert.internalRole.json | 12 + .../openidm-reg.internalRole.json | 12 + .../openidm-tasks-manager.internalRole.json | 12 + .../platform-provisioning.internalRole.json | 12 + .../global/mapping/mappingtest.mapping.json | 76 + .../policies.AMBIGUOUS.action.script.js | 1 + .../policies.MISSING.action.script.groovy | 1 + .../mapping/seantestmapping.mapping.json | 68 + .../managedAssignment_managedUser.sync.json | 90 + .../policies.AMBIGUOUS.action.script.groovy | 1 + .../policies.SOURCE_MISSING.action.script.js | 1 + ...ies.SOURCE_MISSING.condition.script.groovy | 1 + ...licies.SOURCE_MISSING.postAction.script.js | 1 + .../policies.UNASSIGNED.action.script.js | 1 + .../managedOrganization_managedRole.sync.json | 87 + .../policies.AMBIGUOUS.action.script.js | 1 + .../policies.MISSING.action.script.groovy | 1 + .../policies.MISSING.postAction.script.groovy | 1 + .../policies.SOURCE_MISSING.action.script.js | 4 + ...olicies.SOURCE_MISSING.condition.script.js | 5 + ...ion_managedSeantestmanagedobject.sync.json | 67 + ...eantestmanagedobject_managedUser.sync.json | 69 + .../idm/global/sync/seantestmapping.sync.json | 70 + .../idm/global/sync/sync.idm.json | 16 + ...connector__ACCOUNT___managedUser.sync.json | 88 + ...connector__ACCOUNT___managedUser.sync.json | 93 + test/e2e/idm-export.e2e.test.js | 55 +- test/e2e/idm-import.e2e.test.js | 6 +- test/e2e/mapping-export.e2e.test.js | 23 +- test/e2e/mapping-import.e2e.test.js | 12 +- .../am_1076162899/recording.har | 42350 ++--------- .../environment_1072573434/recording.har | 52 +- .../oauth2_393036114/recording.har | 12 +- .../openidm_3290118515/recording.har | 10241 +-- .../openidm_3290118515/recording.har | 9453 +++ .../openidm_3290118515/recording.har | 2478 +- .../am_1076162899/recording.har | 52249 ++++++++++++++ .../oauth2_393036114/recording.har | 146 + .../openidm_3290118515/recording.har | 7284 ++ .../am_1076162899/recording.har | 312 + .../oauth2_393036114/recording.har | 146 + .../openidm_3290118515/recording.har | 6040 ++ .../openidm_3290118515/recording.har | 9156 +++ .../openidm_3290118515/recording.har | 1586 +- .../openidm_3290118515/recording.har | 9156 +++ .../openidm_3290118515/recording.har | 1210 +- .../openidm_3290118515/recording.har | 62 +- .../am_1076162899/recording.har | 312 + .../oauth2_393036114/recording.har | 146 + .../openidm_3290118515/recording.har | 601 + .../am_1076162899/recording.har | 60 +- .../oauth2_393036114/recording.har | 30 +- .../openidm_3290118515/recording.har | 132 +- .../openidm_3290118515/recording.har | 360 +- .../am_1076162899/recording.har | 0 .../am_1076162899/recording.har | 0 .../am_1076162899/recording.har | 0 .../am_1076162899/recording.har | 0 .../am_1076162899/recording.har | 0 .../am_1076162899/recording.har | 0 .../am_1076162899/recording.har | 0 .../am_1076162899/recording.har | 0 .../am_1076162899/recording.har | 0 .../am_1076162899/recording.har | 4536 ++ .../am_1076162899/recording.har | 0 .../am_1076162899/recording.har | 0 .../am_1076162899/recording.har | 0 .../am_1076162899/recording.har | 0 .../am_1076162899/recording.har | 0 .../am_1076162899/recording.har | 0 .../am_1076162899/recording.har | 0 .../am_1076162899/recording.har | 116 +- .../am_1076162899/recording.har | 116 +- .../am_1076162899/recording.har | 120 +- test/e2e/server-export.e2e.test.js | 48 +- test/e2e/server-import.e2e.test.js | 57 +- test/e2e/server-list.e2e.test.js | 18 +- 797 files changed, 229694 insertions(+), 63623 deletions(-) create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/emailTemplate/forgottenUsername.emailTemplate.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/emailTemplate/registration.emailTemplate.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/emailTemplate/resetPassword.emailTemplate.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/emailTemplate/updatePassword.emailTemplate.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/emailTemplate/welcome.emailTemplate.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/access.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/alphaOrgPrivileges.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/audit.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/authentication.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/authentication.idm.scripts/rsFilter.augmentSecurityContext.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/bravoOrgPrivileges.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/endpoint/extractscripttest.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/endpoint/extractscripttest.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/external.email.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/external.emailDefault.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/fieldPolicy/alpha_user.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/fieldPolicy/bravo_user.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/internal.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_application.managed.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_assignment.managed.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_group.managed.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_organization.managed.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_role.managed.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_user.managed.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_user.managed.scripts/onCreate.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_application.managed.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_assignment.managed.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_group.managed.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_organization.managed.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_role.managed.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_role.managed.scripts/onValidate.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_user.managed.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_user.managed.scripts/postUpdate.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/managed.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/policy.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/privilegeAssignments.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/privileges.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/repo.ds.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/router.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/secrets.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/selfservice.kba.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/selfservice.terms.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/servletfilter/cors.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/servletfilter/payload.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/servletfilter/upload.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui.context/admin.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui.context/api.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui.context/enduser.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui.context/oauth.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui/configuration.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui/dashboard.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui/profile.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui/themeconfig.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/internalRole/openidm-admin.internalRole.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/internalRole/openidm-authorized.internalRole.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/internalRole/openidm-cert.internalRole.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/internalRole/openidm-reg.internalRole.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/internalRole/openidm-tasks-manager.internalRole.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/internalRole/platform-provisioning.internalRole.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/realm/alpha.realm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/realm/bravo.realm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/realm/root.realm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/AUTHENTICATION_CLIENT_SIDE.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/AUTHENTICATION_SERVER_SIDE.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/AUTHENTICATION_TREE_DECISION_NODE.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/CONFIG_PROVIDER_NODE.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/CONFIG_PROVIDER_NODE_NEXT_GEN.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/DEVICE_MATCH_NODE.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/LIBRARY.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/NODE_DESIGNER.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_ACCESS_TOKEN_MODIFICATION.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_ACCESS_TOKEN_MODIFICATION_NEXT_GEN.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_AUTHORIZE_ENDPOINT_DATA_PROVIDER.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_DYNAMIC_CLIENT_REGISTRATION.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_EVALUATE_SCOPE.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_MAY_ACT.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_SCRIPTED_JWT_ISSUER.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_VALIDATE_SCOPE.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OIDC_CLAIMS.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/PINGONE_VERIFY_COMPLETION_DECISION_NODE.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/POLICY_CONDITION.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/POLICY_CONDITION_NEXT_GEN.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/SAML2_IDP_ADAPTER.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/SAML2_IDP_ATTRIBUTE_MAPPER.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/SAML2_NAMEID_MAPPER.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/SAML2_SP_ADAPTER.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/SCRIPTED_DECISION_NODE.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/SOCIAL_IDP_PROFILE_TRANSFORMATION.scripttype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/serverInformation/information.serverInformation.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/serverVersion/version.serverVersion.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/service/CorsService.service.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/service/dashboard.service.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/sync/extract_script_test.sync.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/sync/extract_script_test.sync.scripts/correlationScript.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/sync/extract_script_test.sync.scripts/onCreate.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/sync/extract_script_test.sync.scripts/properties.SOURCE.name.transform.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/sync/extract_script_test.sync.scripts/result.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/sync/extract_script_test.sync.scripts/validSource.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/global/sync/sync.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/applicationTypes/iPlanetAMWebAgentService.applicationTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/applicationTypes/sunAMDelegationService.applicationTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/applicationTypes/umaApplicationType.applicationTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authentication/root-alpha.authentication.settings.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/Federation.authenticationModules.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/amster.authenticationModules.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/datastore.authenticationModules.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/federation.authenticationModules.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/hotp.authenticationModules.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/ldap.authenticationModules.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/oath.authenticationModules.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/sae.authenticationModules.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/AMIdentityMembership.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/AND.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/AuthLevel.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/AuthScheme.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/AuthenticateToRealm.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/AuthenticateToService.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/IPv4.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/IPv6.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/IdmUser.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/LDAPFilter.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/LEAuthLevel.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/NOT.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/OAuth2Scope.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/OR.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/Policy.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/ResourceEnvIP.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/Script.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/Session.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/SessionProperty.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/SimpleTime.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/Transaction.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/decisionCombiners/DenyOverride.decisionCombiners.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/Agent.journey.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/ForgottenUsername.journey.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/Login.journey.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/ProgressiveProfile.journey.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/Registration.journey.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/ResetPassword.journey.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/UpdatePassword.journey.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/oauth2.app/RCSClient.oauth2.app.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/policyset/oauth2Scopes.policyset.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/resourcetype/OAuth2-Scope.resourcetype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/resourcetype/URL.resourcetype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-OAuth2-Access-Token-Modification-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-OAuth2-Access-Token-Modification-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-OIDC-Claims-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-OIDC-Claims-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-endUserUIClient-OAuth2-Access-Token-Modification-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-endUserUIClient-OAuth2-Access-Token-Modification-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-endUserUIClient-OIDC-Claims-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-endUserUIClient-OIDC-Claims-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Amazon-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Amazon-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Apple-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Apple-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Authentication-Tree-Decision-Node-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Authentication-Tree-Decision-Node-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Config-Provider-Node-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Config-Provider-Node-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Device-Id-(Match)-Client-Side.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Device-Id-(Match)-Client-Side.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Device-Id-(Match)-Server-Side.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Device-Id-(Match)-Server-Side.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Device-Profile-Match-Template-Decision-Node-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Device-Profile-Match-Template-Decision-Node-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Facebook-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Facebook-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/ForgeRock-Internal-OAuth2-Access-Token-Modification-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/ForgeRock-Internal-OAuth2-Access-Token-Modification-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/ForgeRock-Internal-OIDC-Claims-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/ForgeRock-Internal-OIDC-Claims-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/GitHub-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/GitHub-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Google-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Google-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Instagram-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Instagram-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Itsme-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Itsme-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/LINE-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/LINE-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Library-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Library-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/LinkedIn-Profile-Normalization-(Legacy).script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/LinkedIn-Profile-Normalization-(Legacy).script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/LinkedIn-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/LinkedIn-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Microsoft-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Microsoft-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Next-Generation-Device-Match-Node-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Next-Generation-Device-Match-Node-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Next-Generation-Scripted-Decision-Node-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Next-Generation-Scripted-Decision-Node-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Normalized-Profile-to-Identity.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Normalized-Profile-to-Identity.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Normalized-Profile-to-Managed-User.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Normalized-Profile-to-Managed-User.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Access-Token-Modification-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Access-Token-Modification-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Authorize-Endpoint-Data-Provider-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Authorize-Endpoint-Data-Provider-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Dynamic-Client-Registration-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Dynamic-Client-Registration-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Evaluate-Scope-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Evaluate-Scope-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-JWT-Issuer-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-JWT-Issuer-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-May-Act-Script.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-May-Act-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Validate-Scope-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Validate-Scope-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OIDC-Claims-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OIDC-Claims-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/SAML2-IDP-Adapter-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/SAML2-IDP-Adapter-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/SAML2-IDP-Attribute-Mapper-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/SAML2-IDP-Attribute-Mapper-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/SAML2-NameID-Mapper-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/SAML2-NameID-Mapper-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/SAML2-SP-Adapter-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/SAML2-SP-Adapter-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Salesforce-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Salesforce-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Scripted-Module-Client-Side.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Scripted-Module-Client-Side.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Scripted-Module-Server-Side.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Scripted-Module-Server-Side.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Scripted-Policy-Condition.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Scripted-Policy-Condition.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Social-Identity-Provider-Profile-Transformation-Script.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Social-Identity-Provider-Profile-Transformation-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Twitter-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Twitter-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/VKontakte-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/VKontakte-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/WeChat-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/WeChat-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/WordPress-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/WordPress-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Yahoo-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Yahoo-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/service/SocialIdentityProviders.service.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/service/baseurl.service.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/service/oauth-oidc.service.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/service/policyconfiguration.service.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/service/selfServiceTrees.service.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/service/validation.service.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/subjectAttributes/undefined.subjectAttributes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/subjectTypes/AND.subjectTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/subjectTypes/AuthenticatedUsers.subjectTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/subjectTypes/Identity.subjectTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/subjectTypes/JwtClaim.subjectTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/subjectTypes/NONE.subjectTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/subjectTypes/NOT.subjectTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/subjectTypes/OR.subjectTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/subjectTypes/Policy.subjectTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/theme/Contrast.theme.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/theme/Highlander.theme.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/theme/Robroy.theme.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/theme/Starter-Theme.theme.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/theme/Zardoz.theme.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/applicationTypes/iPlanetAMWebAgentService.applicationTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/applicationTypes/sunAMDelegationService.applicationTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/applicationTypes/umaApplicationType.applicationTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/authentication/root-bravo.authentication.settings.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/authenticationModules/Federation.authenticationModules.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/authenticationModules/amster.authenticationModules.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/authenticationModules/datastore.authenticationModules.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/authenticationModules/federation.authenticationModules.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/authenticationModules/hotp.authenticationModules.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/authenticationModules/ldap.authenticationModules.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/authenticationModules/oath.authenticationModules.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/authenticationModules/sae.authenticationModules.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/conditionTypes/AMIdentityMembership.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/conditionTypes/AND.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/conditionTypes/AuthLevel.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/conditionTypes/AuthScheme.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/conditionTypes/AuthenticateToRealm.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/conditionTypes/AuthenticateToService.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/conditionTypes/IPv4.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/conditionTypes/IPv6.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/conditionTypes/IdmUser.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/conditionTypes/LDAPFilter.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/conditionTypes/LEAuthLevel.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/conditionTypes/NOT.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/conditionTypes/OAuth2Scope.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/conditionTypes/OR.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/conditionTypes/Policy.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/conditionTypes/ResourceEnvIP.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/conditionTypes/Script.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/conditionTypes/Session.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/conditionTypes/SessionProperty.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/conditionTypes/SimpleTime.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/conditionTypes/Transaction.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/decisionCombiners/DenyOverride.decisionCombiners.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/journey/Agent.journey.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/journey/ForgottenUsername.journey.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/journey/Login.journey.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/journey/ProgressiveProfile.journey.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/journey/Registration.journey.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/journey/ResetPassword.journey.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/journey/UpdatePassword.journey.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/oauth2.app/RCSClient.oauth2.app.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/policyset/oauth2Scopes.policyset.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/resourcetype/OAuth2-Scope.resourcetype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/resourcetype/URL.resourcetype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Amazon-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Amazon-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Apple-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Apple-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Authentication-Tree-Decision-Node-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Authentication-Tree-Decision-Node-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Bravo-OAuth2-Access-Token-Modification-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Bravo-OAuth2-Access-Token-Modification-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Bravo-OIDC-Claims-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Bravo-OIDC-Claims-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Bravo-endUserUIClient-OAuth2-Access-Token-Modification-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Bravo-endUserUIClient-OAuth2-Access-Token-Modification-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Bravo-endUserUIClient-OIDC-Claims-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Bravo-endUserUIClient-OIDC-Claims-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Config-Provider-Node-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Config-Provider-Node-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Device-Id-(Match)-Client-Side.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Device-Id-(Match)-Client-Side.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Device-Id-(Match)-Server-Side.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Device-Id-(Match)-Server-Side.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Device-Profile-Match-Template-Decision-Node-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Device-Profile-Match-Template-Decision-Node-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Facebook-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Facebook-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/ForgeRock-Internal-OAuth2-Access-Token-Modification-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/ForgeRock-Internal-OAuth2-Access-Token-Modification-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/ForgeRock-Internal-OIDC-Claims-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/ForgeRock-Internal-OIDC-Claims-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/GitHub-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/GitHub-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Google-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Google-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Instagram-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Instagram-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Itsme-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Itsme-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/LINE-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/LINE-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Library-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Library-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/LinkedIn-Profile-Normalization-(Legacy).script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/LinkedIn-Profile-Normalization-(Legacy).script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/LinkedIn-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/LinkedIn-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Microsoft-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Microsoft-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Next-Generation-Device-Match-Node-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Next-Generation-Device-Match-Node-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Next-Generation-Scripted-Decision-Node-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Next-Generation-Scripted-Decision-Node-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Normalized-Profile-to-Identity.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Normalized-Profile-to-Identity.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Normalized-Profile-to-Managed-User.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Normalized-Profile-to-Managed-User.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/OAuth2-Access-Token-Modification-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/OAuth2-Access-Token-Modification-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/OAuth2-Authorize-Endpoint-Data-Provider-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/OAuth2-Authorize-Endpoint-Data-Provider-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/OAuth2-Dynamic-Client-Registration-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/OAuth2-Dynamic-Client-Registration-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/OAuth2-Evaluate-Scope-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/OAuth2-Evaluate-Scope-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/OAuth2-JWT-Issuer-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/OAuth2-JWT-Issuer-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/OAuth2-May-Act-Script.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/OAuth2-May-Act-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/OAuth2-Validate-Scope-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/OAuth2-Validate-Scope-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/OIDC-Claims-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/OIDC-Claims-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/SAML2-IDP-Adapter-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/SAML2-IDP-Adapter-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/SAML2-IDP-Attribute-Mapper-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/SAML2-IDP-Attribute-Mapper-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/SAML2-NameID-Mapper-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/SAML2-NameID-Mapper-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/SAML2-SP-Adapter-Script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/SAML2-SP-Adapter-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Salesforce-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Salesforce-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Scripted-Module-Client-Side.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Scripted-Module-Client-Side.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Scripted-Module-Server-Side.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Scripted-Module-Server-Side.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Scripted-Policy-Condition.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Scripted-Policy-Condition.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Social-Identity-Provider-Profile-Transformation-Script.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Social-Identity-Provider-Profile-Transformation-Script.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Twitter-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Twitter-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/VKontakte-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/VKontakte-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/WeChat-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/WeChat-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/WordPress-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/WordPress-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Yahoo-Profile-Normalization.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/script/Yahoo-Profile-Normalization.script.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/service/SocialIdentityProviders.service.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/service/baseurl.service.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/service/oauth-oidc.service.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/service/policyconfiguration.service.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/service/selfServiceTrees.service.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/service/validation.service.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/subjectAttributes/undefined.subjectAttributes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/subjectTypes/AND.subjectTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/subjectTypes/AuthenticatedUsers.subjectTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/subjectTypes/Identity.subjectTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/subjectTypes/JwtClaim.subjectTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/subjectTypes/NONE.subjectTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/subjectTypes/NOT.subjectTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/subjectTypes/OR.subjectTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/subjectTypes/Policy.subjectTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/theme/Contrast.theme.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/theme/Highlander.theme.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/theme/Robroy.theme.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/theme/Starter-Theme.theme.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root-bravo/theme/Zardoz.theme.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/applicationTypes/iPlanetAMWebAgentService.applicationTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/applicationTypes/sunAMDelegationService.applicationTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/applicationTypes/umaApplicationType.applicationTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/conditionTypes/AMIdentityMembership.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/conditionTypes/AND.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/conditionTypes/AuthLevel.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/conditionTypes/AuthScheme.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/conditionTypes/AuthenticateToRealm.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/conditionTypes/AuthenticateToService.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/conditionTypes/IPv4.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/conditionTypes/IPv6.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/conditionTypes/IdmUser.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/conditionTypes/LDAPFilter.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/conditionTypes/LEAuthLevel.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/conditionTypes/NOT.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/conditionTypes/OAuth2Scope.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/conditionTypes/OR.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/conditionTypes/Policy.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/conditionTypes/ResourceEnvIP.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/conditionTypes/Script.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/conditionTypes/Session.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/conditionTypes/SessionProperty.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/conditionTypes/SimpleTime.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/conditionTypes/Transaction.conditionTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/decisionCombiners/DenyOverride.decisionCombiners.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/0863ceb9-5634-4e64-905f-55d62e229743.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/269a6fc5-9fcb-466b-a2cd-99ba58b8f2b3.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/28bb8baa-066a-44d6-84dd-69319b32cb8c.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/318d1240-b819-42c2-9a9b-9b7c7e8c4c99.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/71d81019-a9d6-4e0c-b7a8-6951b244d363.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/7f58eaea-6503-4dc1-b263-1260de0b8813.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/8986f448-8893-4982-97ea-7fcdc6a023f0.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/analytics_introspect_config_api_admin.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/analytics_introspect_create_entities_admin.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/analytics_introspect_create_update_templates_admin.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/analytics_introspect_custom_reports_api_admin.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/analytics_introspect_fieldoptions_api_admin.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/analytics_introspect_get_metrics_auditor.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/analytics_introspect_get_runs_auditor.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/analytics_introspect_get_templates_auditor.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/analytics_introspect_import_templates_admin.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/analytics_introspect_manage_templates_admin.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/analytics_introspect_run_adhoc_admin.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/analytics_introspect_run_templates_auditor.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/analytics_introspect_seed_reports_admin.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/analytics_introspect_view_runs_auditor.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/b4f63641-4f21-4382-b418-a3b74a98bfdb.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/bb762edd-4f8b-452b-b7ca-6e234aceb9ec.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/fb6caaef-64c5-4c47-aeab-38e03be2c1e2.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_auto.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_certificate_admin.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_certificate_read.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_content_security_policy_admin.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_content_security_policy_read.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_cookie_domain_admin.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_cookie_domain_read.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_custom_domain_admin.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_custom_domain_read.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_custom_domain_verify.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_dataset_admin.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_dataset_read.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_esv_admin.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_esv_read.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_esv_restart.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_esv_update.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_federation_admin.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_monitoring_admin.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_monitoring_read.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_mtls_admin.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_mtls_read.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_p1connect_configure.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_p1connect_delete.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_p1connect_read.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_p1connect_reset.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_promotion_admin.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_promotion_read.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_proxy_connect_admin.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_proxy_connect_read.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_proxy_connect_write.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_release_admin.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_release_read.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_sso_cookie_admin.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_sso_cookie_read.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_telemetry_admin.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_fr_idc_telemetry_read.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/idmadminclient_scope_pingfederate.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_certificates___delete.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_certificates___get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_certificates___patch.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_certificates_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_certificates_post.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_content_security_policy_enforced_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_content_security_policy_enforced_put.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_content_security_policy_report_only_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_content_security_policy_report_only_put.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_cookie_domains_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_cookie_domains_put.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_csrs___delete.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_csrs___get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_csrs___patch.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_csrs_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_csrs_post.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_custom_domains___get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_custom_domains___put.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_custom_domains_post.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_datasets_delete.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_datasets_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_federation_enforcement_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_federation_enforcement_put.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_mtls_config_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_mtls_config_put.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_mtls_trusted_certificates___delete.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_mtls_trusted_certificates___get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_mtls_trusted_certificates_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_mtls_trusted_certificates_post.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_p1connect___delete.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_p1connect_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_p1connect_post.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_proxy_connect_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_proxy_connect_header_rules_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_proxy_connect_header_rules_put.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_proxy_connect_ip_rules_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_proxy_connect_ip_rules_put.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_proxy_connect_put.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_release_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_sso_cookie_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_sso_cookie_post.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_sso_cookie_put.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_telemetry_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_telemetry_otlp___delete.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_telemetry_otlp___get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_telemetry_otlp___put.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_telemetry_splunk___delete.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_telemetry_splunk___get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_environment_introspect_admins__environment_telemetry_splunk___put.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_esv_introspect_admins__environment_count_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_esv_introspect_admins__environment_secrets___delete.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_esv_introspect_admins__environment_secrets___get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_esv_introspect_admins__environment_secrets___post.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_esv_introspect_admins__environment_secrets___put.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_esv_introspect_admins__environment_secrets___versions___delete.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_esv_introspect_admins__environment_secrets___versions___get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_esv_introspect_admins__environment_secrets___versions___post.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_esv_introspect_admins__environment_secrets___versions_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_esv_introspect_admins__environment_secrets___versions_post.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_esv_introspect_admins__environment_secrets_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_esv_introspect_admins__environment_startup_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_esv_introspect_admins__environment_startup_post.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_esv_introspect_admins__environment_variables___delete.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_esv_introspect_admins__environment_variables___get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_esv_introspect_admins__environment_variables___post.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_esv_introspect_admins__environment_variables___put.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_esv_introspect_admins__environment_variables_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_log_spewer_introspect_admins__auth_head.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_log_spewer_introspect_admins__keys___delete.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_log_spewer_introspect_admins__keys___get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_log_spewer_introspect_admins__keys_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_log_spewer_introspect_admins__keys_post.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_log_spewer_introspect_admins__monitoring_logs_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_log_spewer_introspect_admins__monitoring_logs_sources_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_log_spewer_introspect_admins__monitoring_logs_tail_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_log_spewer_introspect_admins__monitoring_prometheus_am_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_log_spewer_introspect_admins__monitoring_prometheus_idm_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_promo_external_introspect_admins__environment_promotion_ingress_put.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_promo_external_introspect_admins__environment_promotion_lock___delete.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_promo_external_introspect_admins__environment_promotion_lock_post.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_promo_external_introspect_admins__environment_promotion_lock_state_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_promo_external_introspect_admins__environment_promotion_promote_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_promo_external_introspect_admins__environment_promotion_promote_post.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_promo_external_introspect_admins__environment_promotion_report___get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_promo_external_introspect_admins__environment_promotion_report_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_promo_external_introspect_admins__environment_promotion_report_provisional_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_promo_external_introspect_admins__environment_promotion_report_provisional_rollback_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_promo_external_introspect_admins__environment_promotion_reports_get.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_promo_external_introspect_admins__environment_promotion_rollback_post.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policy/org_promo_internal_introspect_clients__environment_promotion_internal__.policy.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policyset/auto-analytics-introspect.policyset.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policyset/iPlanetAMWebAgentService.policyset.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policyset/idmAdminClient-scope.policyset.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policyset/oauth2Scopes.policyset.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policyset/org-environment-introspect.policyset.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policyset/org-esv-introspect.policyset.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policyset/org-log-spewer-introspect.policyset.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policyset/org-promo-external-introspect.policyset.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/policyset/org-promo-internal-introspect.policyset.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/resourcetype/OAuth2-Scope.resourcetype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/resourcetype/URL.resourcetype.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/subjectAttributes/undefined.subjectAttributes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/subjectTypes/AND.subjectTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/subjectTypes/AuthenticatedUsers.subjectTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/subjectTypes/Identity.subjectTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/subjectTypes/JwtClaim.subjectTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/subjectTypes/NONE.subjectTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/subjectTypes/NOT.subjectTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/subjectTypes/OR.subjectTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/cloud/realm/root/subjectTypes/Policy.subjectTypes.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/emailTemplate/forgottenUsername.emailTemplate.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/emailTemplate/registration.emailTemplate.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/emailTemplate/resetPassword.emailTemplate.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/emailTemplate/updatePassword.emailTemplate.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/emailTemplate/welcome.emailTemplate.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/access.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/apiVersion.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/audit.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/audit.idm.scripts/eventTopics.access.filter.script.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/audit.idm.scripts/eventTopics.authentication.filter.script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/audit.idm.scripts/exceptionFormatter.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/authentication.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/authentication.idm.scripts/serverAuthContext.authModules.0.properties.augmentSecurityContext.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/authentication.idm.scripts/serverAuthContext.authModules.2.properties.augmentSecurityContext.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/cluster.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/endpoint/getavailableuserstoassign.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/endpoint/getprocessesforuser.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/endpoint/gettasksview.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/endpoint/mappingDetails.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/endpoint/oauthproxy.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/endpoint/removeRepoPathFromRelationships.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/endpoint/repairMetadata.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/endpoint/updateInternalUserAndInternalRoleEntries.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/endpoint/validateQueryFilter.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/endpoint/validateQueryFilter.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/external.rest.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/internal.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/managed/assignment.managed.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/managed/managed.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/managed/organization.managed.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/managed/organization.managed.scripts/onCreate.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/managed/organization.managed.scripts/onRead.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/managed/role.managed.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/managed/role.managed.scripts/onCreate.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/managed/seantestmanagedobject.managed.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/managed/user.managed.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/managed/user.managed.scripts/postDelete.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/metrics.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/notification/passwordUpdate.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/notification/profileUpdate.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/notificationFactory.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/policy.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/policy.idm.scripts/resources.0.calculatedProperties.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/policy.idm.scripts/resources.1.calculatedProperties.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/privilegeAssignments.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/privileges.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/process/access.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/provisioner.openicf/csvFileConnector.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/provisioner.openicf/csvSampleConnector.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/repo.ds.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/repo.init.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/router.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/router.idm.scripts/filters.2.condition.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/router.idm.scripts/filters.2.onResponse.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/schedule/seantest.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/schedule/seantest.invokeContext.script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/schedule/taskscan_activate.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/schedule/taskscan_activate.invokeContext.task.script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/schedule/taskscan_expire.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/schedule/taskscan_expire.invokeContext.task.script.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/scheduler.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/script.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/secrets.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/selfservice.kba.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/selfservice.propertymap.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/selfservice.terms.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/servletfilter/cors.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/servletfilter/payload.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/servletfilter/upload.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/ui.context/admin.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/ui.context/api.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/ui.context/enduser.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/ui.context/oauth.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/ui/configuration.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/ui/dashboard.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/ui/profile.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/ui/themeconfig.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/webserver.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/webserver.listener/http.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/webserver.listener/https.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/idm/webserver.listener/mutualAuth.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/internalRole/openidm-admin.internalRole.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/internalRole/openidm-authorized.internalRole.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/internalRole/openidm-cert.internalRole.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/internalRole/openidm-reg.internalRole.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/internalRole/openidm-tasks-manager.internalRole.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/internalRole/platform-provisioning.internalRole.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/mapping/mappingtest.mapping.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/mapping/mappingtest.mapping.scripts/policies.AMBIGUOUS.action.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/mapping/mappingtest.mapping.scripts/policies.MISSING.action.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/mapping/seantestmapping.mapping.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/sync/managedAssignment_managedUser.sync.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.AMBIGUOUS.action.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.SOURCE_MISSING.action.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.SOURCE_MISSING.condition.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.SOURCE_MISSING.postAction.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/sync/managedAssignment_managedUser.sync.scripts/policies.UNASSIGNED.action.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/sync/managedOrganization_managedRole.sync.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.AMBIGUOUS.action.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.MISSING.action.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.MISSING.postAction.script.groovy create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.SOURCE_MISSING.action.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/sync/managedOrganization_managedRole.sync.scripts/policies.SOURCE_MISSING.condition.script.js create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/sync/managedOrganization_managedSeantestmanagedobject.sync.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/sync/managedSeantestmanagedobject_managedUser.sync.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/sync/seantestmapping.sync.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/sync/sync.idm.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/sync/systemCsvfileconnector__ACCOUNT___managedUser.sync.json create mode 100644 test/e2e/exports/all-separate-extracted-script/idm/global/sync/systemCsvsampleconnector__ACCOUNT___managedUser.sync.json create mode 100644 test/e2e/mocks/config_603940551/export_4211608755/0_AxD_m_2561886391/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/config_603940551/import_288002260/0_AD_type_1092448334/am_1076162899/recording.har create mode 100644 test/e2e/mocks/config_603940551/import_288002260/0_AD_type_1092448334/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/config_603940551/import_288002260/0_AD_type_1092448334/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/idm_2060434423/export_4211608755/0_AxD_3318740671/am_1076162899/recording.har create mode 100644 test/e2e/mocks/idm_2060434423/export_4211608755/0_AxD_3318740671/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/idm_2060434423/export_4211608755/0_AxD_3318740671/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/idm_2060434423/export_4211608755/0_AxD_m_2561886391/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/idm_2060434423/export_4211608755/0_axD_m_3077518743/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/mapping_637820293/export_4211608755/0_AxD_3318740671/am_1076162899/recording.har create mode 100644 test/e2e/mocks/mapping_637820293/export_4211608755/0_AxD_3318740671/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/mapping_637820293/export_4211608755/0_AxD_3318740671/openidm_3290118515/recording.har rename test/e2e/mocks/server_1085029842/export_4211608755/{0_AxNdD_3849063373 => 0_AxNdD_m_1056450657}/am_1076162899/recording.har (100%) rename test/e2e/mocks/server_1085029842/export_4211608755/{0_all-separate_directory_3135850579 => 0_all-separate_directory_m_3541808555}/am_1076162899/recording.har (100%) rename test/e2e/mocks/server_1085029842/export_4211608755/{0_all_1797740195 => 0_all_m_3985571739}/am_1076162899/recording.har (100%) rename test/e2e/mocks/server_1085029842/export_4211608755/{0_axNdf_D_1309147204 => 0_axNdf_D_m_1049334148}/am_1076162899/recording.har (100%) rename test/e2e/mocks/server_1085029842/export_4211608755/{0_i_f_xNdD_1986969629 => 0_i_f_xNdD_m_1284489169}/am_1076162899/recording.har (100%) rename test/e2e/mocks/server_1085029842/export_4211608755/{0_server-id_2035896751 => 0_server-id_m_2274286983}/am_1076162899/recording.har (100%) rename test/e2e/mocks/server_1085029842/export_4211608755/{0_server-url_extract_directory_434708301 => 0_server-url_extract_directory_m_2291148769}/am_1076162899/recording.har (100%) rename test/e2e/mocks/server_1085029842/export_4211608755/{0_u_file_default_no-metadata_256171004 => 0_u_file_default_no-metadata_m_1479562012}/am_1076162899/recording.har (100%) rename test/e2e/mocks/server_1085029842/import_288002260/{0_all-separate_directory_3135850579 => 0_all-separate_directory_m_3541808555}/am_1076162899/recording.har (100%) create mode 100644 test/e2e/mocks/server_1085029842/import_288002260/0_all_file_m_4133591038/am_1076162899/recording.har rename test/e2e/mocks/server_1085029842/import_288002260/{0_dAD_2899503705 => 0_dAD_m_3407107533}/am_1076162899/recording.har (100%) rename test/e2e/mocks/server_1085029842/import_288002260/{0_daf_2334287539 => 0_daf_m_2969652683}/am_1076162899/recording.har (100%) rename test/e2e/mocks/server_1085029842/import_288002260/{0_default_server-url_file_1780757872 => 0_default_server-url_file_m_3247409840}/am_1076162899/recording.har (100%) rename test/e2e/mocks/server_1085029842/import_288002260/{0_di_f_1903659330 => 0_di_f_m_77153790}/am_1076162899/recording.har (100%) rename test/e2e/mocks/server_1085029842/import_288002260/{0_f_2727575938 => 0_f_m_1864172350}/am_1076162899/recording.har (100%) rename test/e2e/mocks/server_1085029842/import_288002260/{0_server-id_file_2460228582 => 0_server-id_file_m_586658658}/am_1076162899/recording.har (100%) rename test/e2e/mocks/server_1085029842/import_288002260/{0_u_f_675032498 => 0_u_f_m_460088334}/am_1076162899/recording.har (100%) rename test/e2e/mocks/server_1085029842/list_217798785/{0_long_276218670 => 0_l_m_384803284}/am_1076162899/recording.har (81%) rename test/e2e/mocks/server_1085029842/list_217798785/{0_890022063 => 0_long_m_1371241866}/am_1076162899/recording.har (81%) rename test/e2e/mocks/server_1085029842/list_217798785/{0_l_2828241652 => 0_m_2845019271}/am_1076162899/recording.har (81%) diff --git a/package-lock.json b/package-lock.json index 94c097b56..4d5042060 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9399,9 +9399,9 @@ } }, "node_modules/tar-fs": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.3.tgz", - "integrity": "sha512-090nwYJDmlhwFwEW3QQl+vaNnxsO2yVsd45eTKRBzSzu+hlb1w2K9inVq5b0ngXuLVqQ4ApvsUHHnu/zQNkWAg==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.4.tgz", + "integrity": "sha512-mDAjwmZdh7LTT6pNleZ05Yt65HC3E+NiQzl672vQG38jIrehtJk/J3mNwIg+vShQPcLF/LV7CMnDW6vjj6sfYQ==", "dev": true, "license": "MIT", "dependencies": { diff --git a/src/cli/agent/agent-describe.ts b/src/cli/agent/agent-describe.ts index b65e5ae19..44cfaa670 100644 --- a/src/cli/agent/agent-describe.ts +++ b/src/cli/agent/agent-describe.ts @@ -4,17 +4,8 @@ import { Option } from 'commander'; import { getTokens } from '../../ops/AuthenticateOps'; import { FrodoCommand } from '../FrodoCommand'; -const { - CLOUD_DEPLOYMENT_TYPE_KEY, - FORGEOPS_DEPLOYMENT_TYPE_KEY, - CLASSIC_DEPLOYMENT_TYPE_KEY, -} = frodo.utils.constants; - -const deploymentTypes = [ - CLOUD_DEPLOYMENT_TYPE_KEY, - FORGEOPS_DEPLOYMENT_TYPE_KEY, - CLASSIC_DEPLOYMENT_TYPE_KEY, -]; +const { CLASSIC_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const globalDeploymentTypes = [CLASSIC_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( @@ -42,7 +33,7 @@ export default function setup() { await getTokens( false, true, - options.global ? [CLASSIC_DEPLOYMENT_TYPE_KEY] : deploymentTypes + options.global ? globalDeploymentTypes : undefined ) ) { // code goes here diff --git a/src/cli/agent/agent-export.ts b/src/cli/agent/agent-export.ts index 6202369e2..eb650cc75 100644 --- a/src/cli/agent/agent-export.ts +++ b/src/cli/agent/agent-export.ts @@ -10,17 +10,8 @@ import { getTokens } from '../../ops/AuthenticateOps'; import { verboseMessage } from '../../utils/Console.js'; import { FrodoCommand } from '../FrodoCommand'; -const { - CLOUD_DEPLOYMENT_TYPE_KEY, - FORGEOPS_DEPLOYMENT_TYPE_KEY, - CLASSIC_DEPLOYMENT_TYPE_KEY, -} = frodo.utils.constants; - -const deploymentTypes = [ - CLOUD_DEPLOYMENT_TYPE_KEY, - FORGEOPS_DEPLOYMENT_TYPE_KEY, - CLASSIC_DEPLOYMENT_TYPE_KEY, -]; +const { CLASSIC_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; +const globalDeploymentTypes = [CLASSIC_DEPLOYMENT_TYPE_KEY]; export default function setup() { const program = new FrodoCommand( @@ -72,7 +63,7 @@ export default function setup() { await getTokens( false, true, - options.global ? [CLASSIC_DEPLOYMENT_TYPE_KEY] : deploymentTypes + options.global ? globalDeploymentTypes : undefined ) ) { // export diff --git a/src/ops/ConfigOps.ts b/src/ops/ConfigOps.ts index aeacafc94..0cff44054 100644 --- a/src/ops/ConfigOps.ts +++ b/src/ops/ConfigOps.ts @@ -443,16 +443,7 @@ export async function importEverythingFromFiles( ): Promise { try { const data = await getFullExportConfigFromDirectory(getWorkingDirectory()); - const collectErrors: Error[] = []; - saveJsonToFile(data, '../idmtest/aasdfasdf.json'); - - await importFullConfiguration(data, options, collectErrors); - if (collectErrors.length > 0) { - throw new FrodoError( - `Errors occurred during full config import`, - collectErrors - ); - } + await importFullConfiguration(data, options, errorHandler); return true; } catch (error) { printError(error); diff --git a/test/e2e/__snapshots__/config-import.e2e.test.js.snap b/test/e2e/__snapshots__/config-import.e2e.test.js.snap index 9dbf1c5e5..0725ed988 100644 --- a/test/e2e/__snapshots__/config-import.e2e.test.js.snap +++ b/test/e2e/__snapshots__/config-import.e2e.test.js.snap @@ -112,8 +112,6 @@ Error Importing Services " `; -exports[`frodo config import "frodo config import -AD test/e2e/exports/all-separate/idm -m idm": should export all IDM config to a on prem idm. 1`] = `""`; - exports[`frodo config import "frodo config import -AdD test/e2e/exports/all-separate/classic -m classic" Import everything from directory "test/e2e/exports/all-separate/classic" 1`] = ` "Connected to http://openam-frodo-dev.classic.com:8080/am [/] as user amAdmin Error Importing Authentication Settings @@ -842,8 +840,6 @@ Error Importing Services " `; -exports[`frodo config import "frodo config import -af test/e2e/exports/all/idm/all.config.json -m idm": should import all IDM config to on-prem idm 1`] = `""`; - exports[`frodo config import "frodo config import -f test/e2e/exports/all-separate/classic/realm/root/webhookService/Cool-Webhook.webhookService.json -m classic" Import the webhook service with no errors 1`] = `""`; exports[`frodo config import "frodo config import -gf test/e2e/exports/all-separate/classic/global/server/01.server.json -m classic" Import server 01 along with extracted properties and no errors 1`] = `""`; diff --git a/test/e2e/__snapshots__/email-template-export.e2e.test.js.snap b/test/e2e/__snapshots__/email-template-export.e2e.test.js.snap index 2c3c7b85c..830a0804b 100644 --- a/test/e2e/__snapshots__/email-template-export.e2e.test.js.snap +++ b/test/e2e/__snapshots__/email-template-export.e2e.test.js.snap @@ -1579,6 +1579,123 @@ exports[`frodo email template export "frodo email template export -A": should ex } `; +exports[`frodo email template export "frodo email template export -AD emailTemplateExportTestDir4 -m idm": should export all email templates to separate files in the directory emailTemplateExportTestDir3 1`] = `0`; + +exports[`frodo email template export "frodo email template export -AD emailTemplateExportTestDir4 -m idm": should export all email templates to separate files in the directory emailTemplateExportTestDir3 2`] = `""`; + +exports[`frodo email template export "frodo email template export -AD emailTemplateExportTestDir4 -m idm": should export all email templates to separate files in the directory emailTemplateExportTestDir3: emailTemplateExportTestDir4/forgottenUsername.template.email.json 1`] = ` +{ + "emailTemplate": { + "forgottenUsername": { + "_id": "emailTemplate/forgottenUsername", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

", + "fr": "{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

", + }, + "mimeType": "text/html", + "subject": { + "en": "Account Information - username", + "fr": "Informations sur le compte - nom d'utilisateur", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo email template export "frodo email template export -AD emailTemplateExportTestDir4 -m idm": should export all email templates to separate files in the directory emailTemplateExportTestDir3: emailTemplateExportTestDir4/registration.template.email.json 1`] = ` +{ + "emailTemplate": { + "registration": { + "_id": "emailTemplate/registration", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

This is your registration email.

Email verification link

", + "fr": "

Ceci est votre mail d'inscription.

Lien de vérification email

", + }, + "mimeType": "text/html", + "subject": { + "en": "Register new account", + "fr": "Créer un nouveau compte", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo email template export "frodo email template export -AD emailTemplateExportTestDir4 -m idm": should export all email templates to separate files in the directory emailTemplateExportTestDir3: emailTemplateExportTestDir4/resetPassword.template.email.json 1`] = ` +{ + "emailTemplate": { + "resetPassword": { + "_id": "emailTemplate/resetPassword", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Click to reset your password

Password reset link

", + "fr": "

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

", + }, + "mimeType": "text/html", + "subject": { + "en": "Reset your password", + "fr": "Réinitialisez votre mot de passe", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo email template export "frodo email template export -AD emailTemplateExportTestDir4 -m idm": should export all email templates to separate files in the directory emailTemplateExportTestDir3: emailTemplateExportTestDir4/updatePassword.template.email.json 1`] = ` +{ + "emailTemplate": { + "updatePassword": { + "_id": "emailTemplate/updatePassword", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Verify email to update password

Update password link

", + }, + "mimeType": "text/html", + "subject": { + "en": "Update your password", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo email template export "frodo email template export -AD emailTemplateExportTestDir4 -m idm": should export all email templates to separate files in the directory emailTemplateExportTestDir3: emailTemplateExportTestDir4/welcome.template.email.json 1`] = ` +{ + "emailTemplate": { + "welcome": { + "_id": "emailTemplate/welcome", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Welcome to OpenIDM. Your username is '{{object.userName}}'.

", + "fr": "

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

", + }, + "mimeType": "text/html", + "subject": { + "en": "Your account has been created", + "fr": "Votre compte vient d’être créé !", + }, + }, + }, + "meta": Any, +} +`; + exports[`frodo email template export "frodo email template export -NaD emailTemplateExportTestDir2": should export all email templates to a single file in the directory emailTemplateExportTestDir2 1`] = `0`; exports[`frodo email template export "frodo email template export -NaD emailTemplateExportTestDir2": should export all email templates to a single file in the directory emailTemplateExportTestDir2 2`] = `""`; @@ -2498,6 +2615,91 @@ a { } `; +exports[`frodo email template export "frodo email template export -aD emailTemplateExportTestDir5 -m idm": should export all email templates to separate files in the directory emailTemplateExportTestDir3 1`] = `0`; + +exports[`frodo email template export "frodo email template export -aD emailTemplateExportTestDir5 -m idm": should export all email templates to separate files in the directory emailTemplateExportTestDir3 2`] = `""`; + +exports[`frodo email template export "frodo email template export -aD emailTemplateExportTestDir5 -m idm": should export all email templates to separate files in the directory emailTemplateExportTestDir3: emailTemplateExportTestDir5/allEmailTemplates.template.email.json 1`] = ` +{ + "emailTemplate": { + "forgottenUsername": { + "_id": "emailTemplate/forgottenUsername", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

", + "fr": "{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

", + }, + "mimeType": "text/html", + "subject": { + "en": "Account Information - username", + "fr": "Informations sur le compte - nom d'utilisateur", + }, + }, + "registration": { + "_id": "emailTemplate/registration", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

This is your registration email.

Email verification link

", + "fr": "

Ceci est votre mail d'inscription.

Lien de vérification email

", + }, + "mimeType": "text/html", + "subject": { + "en": "Register new account", + "fr": "Créer un nouveau compte", + }, + }, + "resetPassword": { + "_id": "emailTemplate/resetPassword", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Click to reset your password

Password reset link

", + "fr": "

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

", + }, + "mimeType": "text/html", + "subject": { + "en": "Reset your password", + "fr": "Réinitialisez votre mot de passe", + }, + }, + "updatePassword": { + "_id": "emailTemplate/updatePassword", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Verify email to update password

Update password link

", + }, + "mimeType": "text/html", + "subject": { + "en": "Update your password", + }, + }, + "welcome": { + "_id": "emailTemplate/welcome", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Welcome to OpenIDM. Your username is '{{object.userName}}'.

", + "fr": "

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

", + }, + "mimeType": "text/html", + "subject": { + "en": "Your account has been created", + "fr": "Votre compte vient d’être créé !", + }, + }, + }, + "meta": Any, +} +`; + exports[`frodo email template export "frodo email template export -i welcome -f my-welcome.template.email.json": should export the email template with email id "welcome" into file named my-welcome.template.email.json 1`] = `0`; exports[`frodo email template export "frodo email template export -i welcome -f my-welcome.template.email.json": should export the email template with email id "welcome" into file named my-welcome.template.email.json 2`] = `""`; diff --git a/test/e2e/__snapshots__/idm-export.e2e.test.js.snap b/test/e2e/__snapshots__/idm-export.e2e.test.js.snap index 6c37ae75d..7cca46836 100644 --- a/test/e2e/__snapshots__/idm-export.e2e.test.js.snap +++ b/test/e2e/__snapshots__/idm-export.e2e.test.js.snap @@ -2706,11 +2706,11 @@ isGoogleEligible; } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-mappings --directory testDir3 --entities-file test/e2e/env/testEntitiesFile.json --env-file test/e2e/env/testEnvFile.env": should export all idm config entities to separate files in the "testDir" directory according to the entity and env files 1`] = `0`; +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-mappings --directory idmTestDir3 --entities-file test/e2e/env/testEntitiesFile.json --env-file test/e2e/env/testEnvFile.env": should export all idm config entities to separate files in the "idmTestDir" directory according to the entity and env files 1`] = `0`; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-mappings --directory testDir3 --entities-file test/e2e/env/testEntitiesFile.json --env-file test/e2e/env/testEnvFile.env": should export all idm config entities to separate files in the "testDir" directory according to the entity and env files 2`] = `""`; +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-mappings --directory idmTestDir3 --entities-file test/e2e/env/testEntitiesFile.json --env-file test/e2e/env/testEnvFile.env": should export all idm config entities to separate files in the "idmTestDir" directory according to the entity and env files 2`] = `""`; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-mappings --directory testDir3 --entities-file test/e2e/env/testEntitiesFile.json --env-file test/e2e/env/testEnvFile.env": should export all idm config entities to separate files in the "testDir" directory according to the entity and env files: testDir3/repo.ds.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-mappings --directory idmTestDir3 --entities-file test/e2e/env/testEntitiesFile.json --env-file test/e2e/env/testEnvFile.env": should export all idm config entities to separate files in the "idmTestDir" directory according to the entity and env files: idmTestDir3/repo.ds.idm.json 1`] = ` { "idm": { "repo.ds": { @@ -4842,7 +4842,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-mappings --directory testDir3 --entities-file test/e2e/env/testEntitiesFile.json --env-file test/e2e/env/testEnvFile.env": should export all idm config entities to separate files in the "testDir" directory according to the entity and env files: testDir3/script.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-mappings --directory idmTestDir3 --entities-file test/e2e/env/testEntitiesFile.json --env-file test/e2e/env/testEnvFile.env": should export all idm config entities to separate files in the "idmTestDir" directory according to the entity and env files: idmTestDir3/script.idm.json 1`] = ` { "idm": { "script": { @@ -4888,7 +4888,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-mappings --directory testDir3 --entities-file test/e2e/env/testEntitiesFile.json --env-file test/e2e/env/testEnvFile.env": should export all idm config entities to separate files in the "testDir" directory according to the entity and env files: testDir3/sync/AlphaUser2GoogleApps.sync.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-mappings --directory idmTestDir3 --entities-file test/e2e/env/testEntitiesFile.json --env-file test/e2e/env/testEnvFile.env": should export all idm config entities to separate files in the "idmTestDir" directory according to the entity and env files: idmTestDir3/sync/AlphaUser2GoogleApps.sync.json 1`] = ` { "_id": "sync/AlphaUser2GoogleApps", "consentRequired": false, @@ -5119,7 +5119,7 @@ isGoogleEligible; } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-mappings --directory testDir3 --entities-file test/e2e/env/testEntitiesFile.json --env-file test/e2e/env/testEnvFile.env": should export all idm config entities to separate files in the "testDir" directory according to the entity and env files: testDir3/sync/managedAlpha_application_managedBravo_application.sync.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-mappings --directory idmTestDir3 --entities-file test/e2e/env/testEntitiesFile.json --env-file test/e2e/env/testEnvFile.env": should export all idm config entities to separate files in the "idmTestDir" directory according to the entity and env files: idmTestDir3/sync/managedAlpha_application_managedBravo_application.sync.json 1`] = ` { "_id": "sync/managedAlpha_application_managedBravo_application", "consentRequired": true, @@ -5200,7 +5200,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-mappings --directory testDir3 --entities-file test/e2e/env/testEntitiesFile.json --env-file test/e2e/env/testEnvFile.env": should export all idm config entities to separate files in the "testDir" directory according to the entity and env files: testDir3/sync/managedAlpha_user_managedBravo_user.sync.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-mappings --directory idmTestDir3 --entities-file test/e2e/env/testEntitiesFile.json --env-file test/e2e/env/testEnvFile.env": should export all idm config entities to separate files in the "idmTestDir" directory according to the entity and env files: idmTestDir3/sync/managedAlpha_user_managedBravo_user.sync.json 1`] = ` { "_id": "sync/managedAlpha_user_managedBravo_user", "consentRequired": true, @@ -5289,7 +5289,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-mappings --directory testDir3 --entities-file test/e2e/env/testEntitiesFile.json --env-file test/e2e/env/testEnvFile.env": should export all idm config entities to separate files in the "testDir" directory according to the entity and env files: testDir3/sync/managedBravo_user_managedAlpha_user.sync.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-mappings --directory idmTestDir3 --entities-file test/e2e/env/testEntitiesFile.json --env-file test/e2e/env/testEnvFile.env": should export all idm config entities to separate files in the "idmTestDir" directory according to the entity and env files: idmTestDir3/sync/managedBravo_user_managedAlpha_user.sync.json 1`] = ` { "_id": "sync/managedBravo_user_managedAlpha_user", "consentRequired": false, @@ -5361,7 +5361,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-mappings --directory testDir3 --entities-file test/e2e/env/testEntitiesFile.json --env-file test/e2e/env/testEnvFile.env": should export all idm config entities to separate files in the "testDir" directory according to the entity and env files: testDir3/sync/managedBravo_user_managedBravo_user.sync.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-mappings --directory idmTestDir3 --entities-file test/e2e/env/testEntitiesFile.json --env-file test/e2e/env/testEnvFile.env": should export all idm config entities to separate files in the "idmTestDir" directory according to the entity and env files: idmTestDir3/sync/managedBravo_user_managedBravo_user.sync.json 1`] = ` { "_id": "sync/managedBravo_user_managedBravo_user", "consentRequired": false, @@ -5429,7 +5429,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-mappings --directory testDir3 --entities-file test/e2e/env/testEntitiesFile.json --env-file test/e2e/env/testEnvFile.env": should export all idm config entities to separate files in the "testDir" directory according to the entity and env files: testDir3/sync/sync.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-mappings --directory idmTestDir3 --entities-file test/e2e/env/testEntitiesFile.json --env-file test/e2e/env/testEnvFile.env": should export all idm config entities to separate files in the "idmTestDir" directory according to the entity and env files: idmTestDir3/sync/sync.idm.json 1`] = ` { "idm": { "sync": { @@ -5446,11 +5446,11 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory 1`] = `1`; +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory 1`] = `1`; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory 2`] = `""`; +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory 2`] = `""`; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/access.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/access.idm.json 1`] = ` { "idm": { "access": { @@ -5781,7 +5781,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/alphaOrgPrivileges.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/alphaOrgPrivileges.idm.json 1`] = ` { "idm": { "alphaOrgPrivileges": { @@ -6545,7 +6545,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/audit.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/audit.idm.json 1`] = ` { "idm": { "audit": { @@ -6666,7 +6666,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/authentication.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/authentication.idm.json 1`] = ` { "idm": { "authentication": { @@ -6713,7 +6713,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/bravoOrgPrivileges.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/bravoOrgPrivileges.idm.json 1`] = ` { "idm": { "bravoOrgPrivileges": { @@ -7477,7 +7477,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/emailTemplate/baselineDemoEmailVerification.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/emailTemplate/baselineDemoEmailVerification.idm.json 1`] = ` { "idm": { "emailTemplate/baselineDemoEmailVerification": { @@ -7549,7 +7549,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/emailTemplate/baselineDemoMagicLink.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/emailTemplate/baselineDemoMagicLink.idm.json 1`] = ` { "idm": { "emailTemplate/baselineDemoMagicLink": { @@ -7621,7 +7621,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/emailTemplate/deleteTemplate.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/emailTemplate/deleteTemplate.idm.json 1`] = ` { "idm": { "emailTemplate/deleteTemplate": { @@ -7664,7 +7664,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/emailTemplate/forgottenUsername.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/emailTemplate/forgottenUsername.idm.json 1`] = ` { "idm": { "emailTemplate/forgottenUsername": { @@ -7691,7 +7691,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/emailTemplate/frEmailUpdated.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/emailTemplate/frEmailUpdated.idm.json 1`] = ` { "idm": { "emailTemplate/frEmailUpdated": { @@ -7711,7 +7711,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/emailTemplate/frForgotUsername.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/emailTemplate/frForgotUsername.idm.json 1`] = ` { "idm": { "emailTemplate/frForgotUsername": { @@ -7731,7 +7731,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/emailTemplate/frOnboarding.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/emailTemplate/frOnboarding.idm.json 1`] = ` { "idm": { "emailTemplate/frOnboarding": { @@ -7751,7 +7751,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/emailTemplate/frPasswordUpdated.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/emailTemplate/frPasswordUpdated.idm.json 1`] = ` { "idm": { "emailTemplate/frPasswordUpdated": { @@ -7771,7 +7771,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/emailTemplate/frProfileUpdated.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/emailTemplate/frProfileUpdated.idm.json 1`] = ` { "idm": { "emailTemplate/frProfileUpdated": { @@ -7791,7 +7791,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/emailTemplate/frResetPassword.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/emailTemplate/frResetPassword.idm.json 1`] = ` { "idm": { "emailTemplate/frResetPassword": { @@ -7811,7 +7811,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/emailTemplate/frUsernameUpdated.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/emailTemplate/frUsernameUpdated.idm.json 1`] = ` { "idm": { "emailTemplate/frUsernameUpdated": { @@ -7831,7 +7831,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/emailTemplate/idv.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/emailTemplate/idv.idm.json 1`] = ` { "idm": { "emailTemplate/idv": { @@ -7862,7 +7862,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/emailTemplate/joiner.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/emailTemplate/joiner.idm.json 1`] = ` { "idm": { "emailTemplate/joiner": { @@ -7921,7 +7921,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/emailTemplate/registerPasswordlessDevice.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/emailTemplate/registerPasswordlessDevice.idm.json 1`] = ` { "idm": { "emailTemplate/registerPasswordlessDevice": { @@ -7967,7 +7967,7 @@ a { } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/emailTemplate/registration.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/emailTemplate/registration.idm.json 1`] = ` { "idm": { "emailTemplate/registration": { @@ -7994,7 +7994,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/emailTemplate/resetPassword.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/emailTemplate/resetPassword.idm.json 1`] = ` { "idm": { "emailTemplate/resetPassword": { @@ -8016,7 +8016,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/emailTemplate/updatePassword.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/emailTemplate/updatePassword.idm.json 1`] = ` { "idm": { "emailTemplate/updatePassword": { @@ -8040,7 +8040,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/emailTemplate/welcome.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/emailTemplate/welcome.idm.json 1`] = ` { "idm": { "emailTemplate/welcome": { @@ -8064,7 +8064,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/endpoint/Test.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/endpoint/Test.idm.json 1`] = ` { "idm": { "endpoint/Test": { @@ -8094,7 +8094,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/endpoint/testEndpoint2.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/endpoint/testEndpoint2.idm.json 1`] = ` { "idm": { "endpoint/testEndpoint2": { @@ -8124,7 +8124,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/entityId.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/entityId.idm.json 1`] = ` { "idm": { "entityId": { @@ -8145,7 +8145,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/external.email.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/external.email.idm.json 1`] = ` { "idm": { "external.email": { @@ -8175,7 +8175,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/external.emailDefault.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/external.emailDefault.idm.json 1`] = ` { "idm": { "external.emailDefault": { @@ -8205,7 +8205,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/fieldPolicy/alpha_user.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/fieldPolicy/alpha_user.idm.json 1`] = ` { "idm": { "fieldPolicy/alpha_user": { @@ -8259,7 +8259,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/fieldPolicy/bravo_user.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/fieldPolicy/bravo_user.idm.json 1`] = ` { "idm": { "fieldPolicy/bravo_user": { @@ -8312,7 +8312,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/internal.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/internal.idm.json 1`] = ` { "idm": { "internal": { @@ -8349,7 +8349,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/managed/alpha_application.managed.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/managed/alpha_application.managed.json 1`] = ` { "name": "alpha_application", "schema": { @@ -8642,7 +8642,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/managed/alpha_assignment.managed.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/managed/alpha_assignment.managed.json 1`] = ` { "attributeEncryption": {}, "name": "alpha_assignment", @@ -8887,7 +8887,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/managed/alpha_group.managed.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/managed/alpha_group.managed.json 1`] = ` { "name": "alpha_group", "schema": { @@ -9027,7 +9027,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/managed/alpha_organization.managed.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/managed/alpha_organization.managed.json 1`] = ` { "name": "alpha_organization", "schema": { @@ -9425,7 +9425,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/managed/alpha_role.managed.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/managed/alpha_role.managed.json 1`] = ` { "name": "alpha_role", "schema": { @@ -9667,7 +9667,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/managed/alpha_user.managed.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/managed/alpha_user.managed.json 1`] = ` { "lastSync": { "effectiveAssignmentsProperty": "effectiveAssignments", @@ -11193,7 +11193,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/managed/bravo_application.managed.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/managed/bravo_application.managed.json 1`] = ` { "name": "bravo_application", "schema": { @@ -11486,7 +11486,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/managed/bravo_assignment.managed.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/managed/bravo_assignment.managed.json 1`] = ` { "attributeEncryption": {}, "name": "bravo_assignment", @@ -11731,7 +11731,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/managed/bravo_group.managed.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/managed/bravo_group.managed.json 1`] = ` { "name": "bravo_group", "schema": { @@ -11871,7 +11871,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/managed/bravo_organization.managed.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/managed/bravo_organization.managed.json 1`] = ` { "name": "bravo_organization", "schema": { @@ -12269,7 +12269,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/managed/bravo_role.managed.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/managed/bravo_role.managed.json 1`] = ` { "name": "bravo_role", "schema": { @@ -12511,7 +12511,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/managed/bravo_user.managed.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/managed/bravo_user.managed.json 1`] = ` { "lastSync": { "effectiveAssignmentsProperty": "effectiveAssignments", @@ -14037,7 +14037,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/managed/managed.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/managed/managed.idm.json 1`] = ` { "idm": { "managed": { @@ -14061,7 +14061,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/mapping/managedAlpha_assignment_managedBravo_assignment.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/mapping/managedAlpha_assignment_managedBravo_assignment.idm.json 1`] = ` { "idm": { "mapping/managedAlpha_assignment_managedBravo_assignment": { @@ -14132,7 +14132,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/mapping/managedAlpha_user_systemAzureUser.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/mapping/managedAlpha_user_systemAzureUser.idm.json 1`] = ` { "idm": { "mapping/managedAlpha_user_systemAzureUser": { @@ -14282,7 +14282,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/mapping/managedBravo_group_managedBravo_group.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/mapping/managedBravo_group_managedBravo_group.idm.json 1`] = ` { "idm": { "mapping/managedBravo_group_managedBravo_group": { @@ -14353,7 +14353,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/mapping/managedBravo_user_managedBravo_user0.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/mapping/managedBravo_user_managedBravo_user0.idm.json 1`] = ` { "idm": { "mapping/managedBravo_user_managedBravo_user0": { @@ -14424,7 +14424,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/mapping/mapping12.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/mapping/mapping12.idm.json 1`] = ` { "idm": { "mapping/mapping12": { @@ -14443,7 +14443,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/mapping/systemAzure__group___managedAlpha_assignment.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/mapping/systemAzure__group___managedAlpha_assignment.idm.json 1`] = ` { "idm": { "mapping/systemAzure__group___managedAlpha_assignment": { @@ -14569,7 +14569,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/mapping/systemAzureDirectoryrole_managedAlpha_assignment.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/mapping/systemAzureDirectoryrole_managedAlpha_assignment.idm.json 1`] = ` { "idm": { "mapping/systemAzureDirectoryrole_managedAlpha_assignment": { @@ -14695,7 +14695,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/mapping/systemAzureServiceplan_managedAlpha_assignment.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/mapping/systemAzureServiceplan_managedAlpha_assignment.idm.json 1`] = ` { "idm": { "mapping/systemAzureServiceplan_managedAlpha_assignment": { @@ -14821,7 +14821,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/mapping/systemAzureUser_managedAlpha_user.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/mapping/systemAzureUser_managedAlpha_user.idm.json 1`] = ` { "idm": { "mapping/systemAzureUser_managedAlpha_user": { @@ -14934,7 +14934,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/policy.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/policy.idm.json 1`] = ` { "idm": { "policy": { @@ -14946,7 +14946,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/privilegeAssignments.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/privilegeAssignments.idm.json 1`] = ` { "idm": { "privilegeAssignments": { @@ -14980,7 +14980,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/privileges.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/privileges.idm.json 1`] = ` { "idm": { "privileges": { @@ -14991,7 +14991,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/provisioner.openic/GoogleApps.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/provisioner.openic/GoogleApps.idm.json 1`] = ` { "idm": { "provisioner.openic/GoogleApps": { @@ -15436,7 +15436,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/provisioner.openicf.connectorinfoprovider.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/provisioner.openicf.connectorinfoprovider.idm.json 1`] = ` { "idm": { "provisioner.openicf.connectorinfoprovider": { @@ -15457,7 +15457,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/provisioner.openicf/Azure.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/provisioner.openicf/Azure.idm.json 1`] = ` { "idm": { "provisioner.openicf/Azure": { @@ -16195,7 +16195,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/provisioner.openicf/GoogleApps.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/provisioner.openicf/GoogleApps.idm.json 1`] = ` { "idm": { "provisioner.openicf/GoogleApps": { @@ -16640,7 +16640,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/repo.ds.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/repo.ds.idm.json 1`] = ` { "idm": { "repo.ds": { @@ -18772,7 +18772,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/router.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/router.idm.json 1`] = ` { "idm": { "router": { @@ -18783,7 +18783,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/script.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/script.idm.json 1`] = ` { "idm": { "script": { @@ -18829,7 +18829,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/secrets.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/secrets.idm.json 1`] = ` { "idm": { "secrets": { @@ -18946,7 +18946,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/selfservice.kba.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/selfservice.kba.idm.json 1`] = ` { "idm": { "selfservice.kba": { @@ -18964,7 +18964,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/selfservice.terms.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/selfservice.terms.idm.json 1`] = ` { "idm": { "selfservice.terms": { @@ -18989,7 +18989,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/servletfilter/cors.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/servletfilter/cors.idm.json 1`] = ` { "idm": { "servletfilter/cors": { @@ -19010,7 +19010,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/servletfilter/payload.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/servletfilter/payload.idm.json 1`] = ` { "idm": { "servletfilter/payload": { @@ -19026,7 +19026,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/servletfilter/upload.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/servletfilter/upload.idm.json 1`] = ` { "idm": { "servletfilter/upload": { @@ -19042,7 +19042,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/sync.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/sync.idm.json 1`] = ` { "idm": { "sync": { @@ -19053,7 +19053,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/ui.context/admin.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/ui.context/admin.idm.json 1`] = ` { "idm": { "ui.context/admin": { @@ -19070,7 +19070,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/ui.context/api.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/ui.context/api.idm.json 1`] = ` { "idm": { "ui.context/api": { @@ -19086,7 +19086,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/ui.context/enduser.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/ui.context/enduser.idm.json 1`] = ` { "idm": { "ui.context/enduser": { @@ -19102,7 +19102,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/ui.context/oauth.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/ui.context/oauth.idm.json 1`] = ` { "idm": { "ui.context/oauth": { @@ -19117,7 +19117,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/ui/configuration.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/ui/configuration.idm.json 1`] = ` { "idm": { "ui/configuration": { @@ -19159,7 +19159,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/ui/dashboard.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/ui/dashboard.idm.json 1`] = ` { "idm": { "ui/dashboard": { @@ -19340,7 +19340,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/ui/profile.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/ui/profile.idm.json 1`] = ` { "idm": { "ui/profile": { @@ -19388,7 +19388,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/ui/themeconfig.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/ui/themeconfig.idm.json 1`] = ` { "idm": { "ui/themeconfig": { @@ -19422,7 +19422,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/ui/themerealm.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/ui/themerealm.idm.json 1`] = ` { "idm": { "ui/themerealm": { @@ -21427,7 +21427,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/uilocale/fr.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/uilocale/fr.idm.json 1`] = ` { "idm": { "uilocale/fr": { @@ -21477,7 +21477,7 @@ exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separ } `; -exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory testDir5": should export all idm config entities to separate files in the "testDir5" directory: testDir5/undefined.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export --all-separate --no-metadata --separate-objects --directory idmTestDir5": should export all idm config entities to separate files in the "idmTestDir5" directory: idmTestDir5/undefined.idm.json 1`] = ` { "idm": { "undefined": { @@ -21604,11 +21604,11 @@ exports[`frodo idm export "frodo idm export --entity-id script": should export t } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory 1`] = `1`; +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory 1`] = `1`; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory 2`] = `""`; +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory 2`] = `""`; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/access.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/access.idm.json 1`] = ` { "idm": { "access": { @@ -21940,7 +21940,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/alphaOrgPrivileges.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/alphaOrgPrivileges.idm.json 1`] = ` { "idm": { "alphaOrgPrivileges": { @@ -22705,7 +22705,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/audit.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/audit.idm.json 1`] = ` { "idm": { "audit": { @@ -22827,7 +22827,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/authentication.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/authentication.idm.json 1`] = ` { "idm": { "authentication": { @@ -22875,7 +22875,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/bravoOrgPrivileges.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/bravoOrgPrivileges.idm.json 1`] = ` { "idm": { "bravoOrgPrivileges": { @@ -23640,7 +23640,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/emailTemplate/baselineDemoEmailVerification.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/emailTemplate/baselineDemoEmailVerification.idm.json 1`] = ` { "idm": { "emailTemplate/baselineDemoEmailVerification": { @@ -23713,7 +23713,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/emailTemplate/baselineDemoMagicLink.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/emailTemplate/baselineDemoMagicLink.idm.json 1`] = ` { "idm": { "emailTemplate/baselineDemoMagicLink": { @@ -23786,7 +23786,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/emailTemplate/forgottenUsername.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/emailTemplate/forgottenUsername.idm.json 1`] = ` { "idm": { "emailTemplate/forgottenUsername": { @@ -23814,7 +23814,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/emailTemplate/frEmailUpdated.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/emailTemplate/frEmailUpdated.idm.json 1`] = ` { "idm": { "emailTemplate/frEmailUpdated": { @@ -23835,7 +23835,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/emailTemplate/frForgotUsername.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/emailTemplate/frForgotUsername.idm.json 1`] = ` { "idm": { "emailTemplate/frForgotUsername": { @@ -23856,7 +23856,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/emailTemplate/frOnboarding.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/emailTemplate/frOnboarding.idm.json 1`] = ` { "idm": { "emailTemplate/frOnboarding": { @@ -23877,7 +23877,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/emailTemplate/frPasswordUpdated.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/emailTemplate/frPasswordUpdated.idm.json 1`] = ` { "idm": { "emailTemplate/frPasswordUpdated": { @@ -23898,7 +23898,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/emailTemplate/frProfileUpdated.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/emailTemplate/frProfileUpdated.idm.json 1`] = ` { "idm": { "emailTemplate/frProfileUpdated": { @@ -23919,7 +23919,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/emailTemplate/frResetPassword.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/emailTemplate/frResetPassword.idm.json 1`] = ` { "idm": { "emailTemplate/frResetPassword": { @@ -23940,7 +23940,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/emailTemplate/frUsernameUpdated.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/emailTemplate/frUsernameUpdated.idm.json 1`] = ` { "idm": { "emailTemplate/frUsernameUpdated": { @@ -23961,7 +23961,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/emailTemplate/idv.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/emailTemplate/idv.idm.json 1`] = ` { "idm": { "emailTemplate/idv": { @@ -23993,7 +23993,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/emailTemplate/joiner.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/emailTemplate/joiner.idm.json 1`] = ` { "idm": { "emailTemplate/joiner": { @@ -24053,7 +24053,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/emailTemplate/registerPasswordlessDevice.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/emailTemplate/registerPasswordlessDevice.idm.json 1`] = ` { "idm": { "emailTemplate/registerPasswordlessDevice": { @@ -24100,7 +24100,7 @@ a { } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/emailTemplate/registration.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/emailTemplate/registration.idm.json 1`] = ` { "idm": { "emailTemplate/registration": { @@ -24128,7 +24128,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/emailTemplate/resetPassword.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/emailTemplate/resetPassword.idm.json 1`] = ` { "idm": { "emailTemplate/resetPassword": { @@ -24151,7 +24151,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/emailTemplate/updatePassword.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/emailTemplate/updatePassword.idm.json 1`] = ` { "idm": { "emailTemplate/updatePassword": { @@ -24176,7 +24176,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/emailTemplate/welcome.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/emailTemplate/welcome.idm.json 1`] = ` { "idm": { "emailTemplate/welcome": { @@ -24219,7 +24219,7 @@ a{ } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/entityId.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/entityId.idm.json 1`] = ` { "idm": { "entityId": { @@ -24241,7 +24241,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/external.email.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/external.email.idm.json 1`] = ` { "idm": { "external.email": { @@ -24272,7 +24272,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/external.emailDefault.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/external.emailDefault.idm.json 1`] = ` { "idm": { "external.emailDefault": { @@ -24303,7 +24303,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/fieldPolicy/alpha_user.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/fieldPolicy/alpha_user.idm.json 1`] = ` { "idm": { "fieldPolicy/alpha_user": { @@ -24358,7 +24358,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/fieldPolicy/bravo_user.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/fieldPolicy/bravo_user.idm.json 1`] = ` { "idm": { "fieldPolicy/bravo_user": { @@ -24412,7 +24412,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/internal.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/internal.idm.json 1`] = ` { "idm": { "internal": { @@ -24450,7 +24450,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/managed.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/managed.idm.json 1`] = ` { "idm": { "managed": { @@ -30131,7 +30131,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/mapping/managedAlpha_assignment_managedBravo_assignment.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/mapping/managedAlpha_assignment_managedBravo_assignment.idm.json 1`] = ` { "idm": { "mapping/managedAlpha_assignment_managedBravo_assignment": { @@ -30203,7 +30203,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/mapping/managedAlpha_user_systemAzureUser.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/mapping/managedAlpha_user_systemAzureUser.idm.json 1`] = ` { "idm": { "mapping/managedAlpha_user_systemAzureUser": { @@ -30354,7 +30354,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/mapping/managedBravo_group_managedBravo_group.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/mapping/managedBravo_group_managedBravo_group.idm.json 1`] = ` { "idm": { "mapping/managedBravo_group_managedBravo_group": { @@ -30426,7 +30426,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/mapping/managedBravo_user_managedBravo_user0.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/mapping/managedBravo_user_managedBravo_user0.idm.json 1`] = ` { "idm": { "mapping/managedBravo_user_managedBravo_user0": { @@ -30498,7 +30498,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/mapping/mapping12.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/mapping/mapping12.idm.json 1`] = ` { "idm": { "mapping/mapping12": { @@ -30518,7 +30518,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/mapping/systemAzure__group___managedAlpha_assignment.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/mapping/systemAzure__group___managedAlpha_assignment.idm.json 1`] = ` { "idm": { "mapping/systemAzure__group___managedAlpha_assignment": { @@ -30645,7 +30645,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/mapping/systemAzureDirectoryrole_managedAlpha_assignment.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/mapping/systemAzureDirectoryrole_managedAlpha_assignment.idm.json 1`] = ` { "idm": { "mapping/systemAzureDirectoryrole_managedAlpha_assignment": { @@ -30772,7 +30772,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/mapping/systemAzureServiceplan_managedAlpha_assignment.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/mapping/systemAzureServiceplan_managedAlpha_assignment.idm.json 1`] = ` { "idm": { "mapping/systemAzureServiceplan_managedAlpha_assignment": { @@ -30899,7 +30899,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/mapping/systemAzureUser_managedAlpha_user.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/mapping/systemAzureUser_managedAlpha_user.idm.json 1`] = ` { "idm": { "mapping/systemAzureUser_managedAlpha_user": { @@ -31013,7 +31013,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/policy.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/policy.idm.json 1`] = ` { "idm": { "policy": { @@ -31026,7 +31026,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/privilegeAssignments.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/privilegeAssignments.idm.json 1`] = ` { "idm": { "privilegeAssignments": { @@ -31061,7 +31061,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/privileges.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/privileges.idm.json 1`] = ` { "idm": { "privileges": { @@ -31073,7 +31073,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/provisioner.openic/GoogleApps.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/provisioner.openic/GoogleApps.idm.json 1`] = ` { "idm": { "provisioner.openic/GoogleApps": { @@ -31519,7 +31519,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/provisioner.openicf.connectorinfoprovider.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/provisioner.openicf.connectorinfoprovider.idm.json 1`] = ` { "idm": { "provisioner.openicf.connectorinfoprovider": { @@ -31541,7 +31541,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/provisioner.openicf/Azure.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/provisioner.openicf/Azure.idm.json 1`] = ` { "idm": { "provisioner.openicf/Azure": { @@ -32280,7 +32280,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/provisioner.openicf/GoogleApps.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/provisioner.openicf/GoogleApps.idm.json 1`] = ` { "idm": { "provisioner.openicf/GoogleApps": { @@ -32726,7 +32726,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/repo.ds.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/repo.ds.idm.json 1`] = ` { "idm": { "repo.ds": { @@ -34859,7 +34859,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/router.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/router.idm.json 1`] = ` { "idm": { "router": { @@ -34871,7 +34871,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/script.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/script.idm.json 1`] = ` { "idm": { "script": { @@ -34918,7 +34918,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/secrets.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/secrets.idm.json 1`] = ` { "idm": { "secrets": { @@ -35036,7 +35036,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/selfservice.kba.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/selfservice.kba.idm.json 1`] = ` { "idm": { "selfservice.kba": { @@ -35055,7 +35055,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/selfservice.terms.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/selfservice.terms.idm.json 1`] = ` { "idm": { "selfservice.terms": { @@ -35081,7 +35081,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/servletfilter/cors.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/servletfilter/cors.idm.json 1`] = ` { "idm": { "servletfilter/cors": { @@ -35103,7 +35103,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/servletfilter/payload.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/servletfilter/payload.idm.json 1`] = ` { "idm": { "servletfilter/payload": { @@ -35120,7 +35120,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/servletfilter/upload.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/servletfilter/upload.idm.json 1`] = ` { "idm": { "servletfilter/upload": { @@ -35137,7 +35137,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/sync.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/sync.idm.json 1`] = ` { "idm": { "sync": { @@ -35676,7 +35676,7 @@ isGoogleEligible; } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/ui.context/admin.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/ui.context/admin.idm.json 1`] = ` { "idm": { "ui.context/admin": { @@ -35694,7 +35694,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/ui.context/api.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/ui.context/api.idm.json 1`] = ` { "idm": { "ui.context/api": { @@ -35711,7 +35711,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/ui.context/enduser.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/ui.context/enduser.idm.json 1`] = ` { "idm": { "ui.context/enduser": { @@ -35728,7 +35728,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/ui.context/oauth.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/ui.context/oauth.idm.json 1`] = ` { "idm": { "ui.context/oauth": { @@ -35744,7 +35744,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/ui/configuration.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/ui/configuration.idm.json 1`] = ` { "idm": { "ui/configuration": { @@ -35787,7 +35787,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/ui/dashboard.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/ui/dashboard.idm.json 1`] = ` { "idm": { "ui/dashboard": { @@ -35969,7 +35969,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/ui/profile.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/ui/profile.idm.json 1`] = ` { "idm": { "ui/profile": { @@ -36018,7 +36018,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/ui/themeconfig.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/ui/themeconfig.idm.json 1`] = ` { "idm": { "ui/themeconfig": { @@ -36053,7 +36053,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/ui/themerealm.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/ui/themerealm.idm.json 1`] = ` { "idm": { "ui/themerealm": { @@ -38059,7 +38059,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/uilocale/fr.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/uilocale/fr.idm.json 1`] = ` { "idm": { "uilocale/fr": { @@ -38110,7 +38110,7 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm config entities to separate files in the "testDir" directory: testDir1/undefined.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir1": should export all idm config entities to separate files in the "idmTestDir" directory: idmTestDir1/undefined.idm.json 1`] = ` { "idm": { "undefined": { @@ -38187,894 +38187,27400 @@ exports[`frodo idm export "frodo idm export -AD testDir1": should export all idm } `; -exports[`frodo idm export "frodo idm export -Ni sync": should export the idm config entity with idm id "sync" separately 1`] = `0`; +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm 1`] = `0`; -exports[`frodo idm export "frodo idm export -Ni sync": should export the idm config entity with idm id "sync" separately 2`] = `""`; +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm 2`] = `""`; -exports[`frodo idm export "frodo idm export -Ni sync": should export the idm config entity with idm id "sync" separately: sync.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/access.idm.json 1`] = ` { "idm": { - "sync": { - "_id": "sync", - "mappings": [ + "access": { + "_id": "access", + "configs": [ { - "_id": "sync/managedBravo_user_managedBravo_user", - "consentRequired": false, - "displayName": "managedBravo_user_managedBravo_user", - "icon": null, - "name": "managedBravo_user_managedBravo_user", - "policies": [ - { - "action": "ASYNC", - "situation": "ABSENT", - }, - { - "action": "ASYNC", - "situation": "ALL_GONE", - }, - { - "action": "ASYNC", - "situation": "AMBIGUOUS", - }, - { - "action": "ASYNC", - "situation": "CONFIRMED", - }, - { - "action": "ASYNC", - "situation": "FOUND", + "actions": "", + "methods": "read", + "pattern": "health", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "info/*", + "roles": "*", + }, + { + "actions": "login,logout", + "methods": "read,action", + "pattern": "authentication", + "roles": "*", + }, + { + "actions": "validate", + "methods": "action", + "pattern": "util/validateQueryFilter", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/themeconfig", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/theme-*", + "roles": "*", + }, + { + "actions": "*", + "customAuthz": "checkIfAnyFeatureEnabled(['registration', 'passwordReset'])", + "methods": "read", + "pattern": "config/selfservice/kbaConfig", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/dashboard", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "query", + "pattern": "info/features", + "roles": "*", + }, + { + "actions": "listPrivileges", + "methods": "action", + "pattern": "privilege", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "privilege/*", + "roles": "*", + }, + { + "actions": "submitRequirements", + "methods": "read,action", + "pattern": "selfservice/termsAndConditions", + "roles": "*", + }, + { + "actions": "submitRequirements", + "methods": "read,action", + "pattern": "selfservice/kbaUpdate", + "roles": "*", + }, + { + "actions": "", + "customAuthz": "isMyProfile()", + "methods": "read,query", + "pattern": "profile/*", + "roles": "*", + }, + { + "actions": "*", + "customAuthz": "checkIfAnyFeatureEnabled('kba')", + "methods": "read", + "pattern": "selfservice/kba", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "read", + "pattern": "schema/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "action,query", + "pattern": "consent", + "roles": "internal/role/openidm-authorized", + }, + { + "customAuthz": "checkIfApiRequest()", + "methods": "read", + "pattern": "*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "*", + "excludePatterns": "repo,repo/*", + "methods": "*", + "pattern": "*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "", + "methods": "create,read,update,delete,patch,query", + "pattern": "system/*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "*", + "methods": "script", + "pattern": "system/*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "test,testConfig,createconfiguration,liveSync,authenticate", + "methods": "action", + "pattern": "system/*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "*", + "customAuthz": "disallowCommandAction()", + "methods": "*", + "pattern": "repo", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "*", + "customAuthz": "disallowCommandAction()", + "methods": "*", + "pattern": "repo/*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "command", + "customAuthz": "request.additionalParameters.commandId === 'delete-mapping-links'", + "methods": "action", + "pattern": "repo/link", + "roles": "internal/role/openidm-admin", + }, + { + "methods": "create,read,query,patch", + "pattern": "managed/*", + "roles": "internal/role/platform-provisioning", + }, + { + "methods": "read,query", + "pattern": "internal/role/*", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "*", + "methods": "create,read,action,update", + "pattern": "profile/*", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "*", + "methods": "read,action", + "pattern": "policy/*", + "roles": "internal/role/platform-provisioning", + }, + { + "methods": "read", + "pattern": "schema/*", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "*", + "methods": "action,query", + "pattern": "consent", + "roles": "internal/role/platform-provisioning", + }, + { + "methods": "read", + "pattern": "selfservice/kba", + "roles": "internal/role/platform-provisioning", + }, + { + "methods": "read", + "pattern": "selfservice/terms", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "sendTemplate", + "methods": "action", + "pattern": "external/email", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "authenticate", + "methods": "action", + "pattern": "system/*", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "*", + "methods": "read,action", + "pattern": "policy/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "reauthenticate", + "methods": "action", + "pattern": "authentication", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "bind,unbind", + "customAuthz": "ownDataOnly()", + "methods": "read,action,delete", + "pattern": "*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "patch", + "customAuthz": "ownDataOnly() && onlyEditableManagedObjectProperties('user', []) && reauthIfProtectedAttributeChange()", + "methods": "update,patch,action", + "pattern": "*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "read", + "pattern": "endpoint/getprocessesforuser", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "query", + "pattern": "endpoint/gettasksview", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "complete", + "customAuthz": "isMyTask()", + "methods": "action", + "pattern": "workflow/taskinstance/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "customAuthz": "canUpdateTask()", + "methods": "read,update", + "pattern": "workflow/taskinstance/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "customAuthz": "isAllowedToStartProcess()", + "methods": "create", + "pattern": "workflow/processinstance", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "read", + "methods": "*", + "pattern": "workflow/processdefinition/*", + "roles": "internal/role/openidm-authorized", + }, + { + "customAuthz": "restrictPatchToFields(['password'])", + "methods": "patch", + "pattern": "managed/user/*", + "roles": "internal/role/openidm-cert", + }, + { + "actions": "*", + "customAuthz": "ownRelationshipProperty('_meta', false)", + "methods": "read", + "pattern": "internal/usermeta/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "customAuthz": "ownRelationshipProperty('_notifications', true)", + "methods": "read,delete", + "pattern": "internal/notification/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "customAuthz": "ownRelationshipCollection(['idps','_meta','_notifications'])", + "methods": "read,query", + "pattern": "managed/user/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "deleteNotificationsForTarget", + "customAuthz": "request.additionalParameters.target === (context.security.authorization.component + '/' + context.security.authorization.id)", + "methods": "action", + "pattern": "notification", + "roles": "internal/role/openidm-authorized", + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/apiVersion.idm.json 1`] = ` +{ + "idm": { + "apiVersion": { + "_id": "apiVersion", + "warning": { + "enabled": { + "$bool": "&{openidm.apiVersion.warning.enabled|false}", + }, + "includeScripts": { + "$bool": "&{openidm.apiVersion.warning.includeScripts|false}", + }, + "logFilterResourcePaths": [ + "audit", + "authentication", + "cluster", + "config", + "consent", + "csv", + "external/rest", + "identityProviders", + "info", + "internal", + "internal/role", + "internal/user", + "internal/usermeta", + "managed", + "managed/assignment", + "managed/organization", + "managed/role", + "managed/user", + "notification", + "policy", + "privilege", + "profile", + "recon", + "recon/assoc", + "repo", + "selfservice/kba", + "selfservice/terms", + "scheduler/job", + "scheduler/trigger", + "schema", + "sync", + "sync/mappings", + "system", + "taskscanner", + ], + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/audit.idm.json 1`] = ` +{ + "idm": { + "audit": { + "_id": "audit", + "auditServiceConfig": { + "availableAuditEventHandlers": [ + "org.forgerock.audit.handlers.csv.CsvAuditEventHandler", + "org.forgerock.audit.handlers.jms.JmsAuditEventHandler", + "org.forgerock.audit.handlers.json.JsonAuditEventHandler", + "org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler", + "org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler", + "org.forgerock.openidm.audit.impl.RouterAuditEventHandler", + "org.forgerock.audit.handlers.syslog.SyslogAuditEventHandler", + ], + "caseInsensitiveFields": [ + "/access/http/request/headers", + "/access/http/response/headers", + ], + "filterPolicies": { + "field": { + "excludeIf": [], + "includeIf": [], + }, + }, + "handlerForQueries": "json", + }, + "eventHandlers": [ + { + "class": "org.forgerock.audit.handlers.json.JsonAuditEventHandler", + "config": { + "buffering": { + "maxSize": 100000, + "writeInterval": "100 millis", }, - { - "action": "ASYNC", - "situation": "FOUND_ALREADY_LINKED", + "enabled": { + "$bool": "&{openidm.audit.handler.json.enabled|true}", }, - { - "action": "ASYNC", - "situation": "LINK_ONLY", + "logDirectory": "&{idm.data.dir}/audit", + "name": "json", + "topics": [ + "access", + "activity", + "sync", + "authentication", + "config", + ], + }, + }, + { + "class": "org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler", + "config": { + "enabled": { + "$bool": "&{openidm.audit.handler.stdout.enabled|false}", }, - { - "action": "ASYNC", - "situation": "MISSING", + "name": "stdout", + "topics": [ + "access", + "activity", + "sync", + "authentication", + "config", + ], + }, + }, + { + "class": "org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler", + "config": { + "enabled": { + "$bool": "&{openidm.audit.handler.repo.enabled|false}", }, - { - "action": "ASYNC", - "situation": "SOURCE_IGNORED", + "name": "repo", + "topics": [ + "access", + "activity", + "sync", + "authentication", + "config", + ], + }, + }, + ], + "eventTopics": { + "access": { + "defaultEvents": true, + "filter": { + "script": { + "globals": {}, + "source": "//seantest", + "type": "groovy", }, - { - "action": "ASYNC", - "situation": "SOURCE_MISSING", + }, + "name": "access", + }, + "activity": { + "defaultEvents": true, + "filter": { + "actions": [ + "create", + "update", + "delete", + "patch", + "action", + ], + }, + "name": "activity", + "passwordFields": [ + "password", + ], + "watchedFields": [], + }, + "authentication": { + "defaultEvents": true, + "filter": { + "script": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript", }, - { - "action": "ASYNC", - "situation": "TARGET_IGNORED", + }, + "name": "authentication", + }, + "config": { + "defaultEvents": true, + "filter": { + "actions": [ + "create", + "update", + "delete", + "patch", + "action", + ], + }, + "name": "config", + }, + "recon": { + "defaultEvents": true, + "name": "recon", + }, + "sync": { + "defaultEvents": true, + "name": "sync", + }, + }, + "exceptionFormatter": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/authentication.idm.json 1`] = ` +{ + "idm": { + "authentication": { + "_id": "authentication", + "serverAuthContext": { + "authModules": [ + { + "enabled": true, + "name": "STATIC_USER", + "properties": { + "augmentSecurityContext": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript", + }, + "defaultUserRoles": [ + "internal/role/openidm-reg", + ], + "password": { + "$crypto": { + "type": "x-simple-encryption", + "value": { + "cipher": "AES/CBC/PKCS5Padding", + "data": "fzE1J3P9LZOmuCuecCDnaQ==", + "iv": "nhI8UHymNRChGIyOC+5Sag==", + "keySize": 32, + "mac": "XfF7VE/o5Shv6AqW1Xe3TQ==", + "purpose": "idm.config.encryption", + "salt": "v0NHakffrjBJNL3zjhEOtg==", + "stableId": "openidm-sym-default", + }, + }, + }, + "queryOnResource": "internal/user", + "username": "anonymous", }, - { - "action": "ASYNC", - "situation": "UNASSIGNED", + }, + { + "enabled": true, + "name": "STATIC_USER", + "properties": { + "defaultUserRoles": [ + "internal/role/openidm-authorized", + "internal/role/openidm-admin", + ], + "password": "&{openidm.admin.password}", + "queryOnResource": "internal/user", + "username": "openidm-admin", }, - { - "action": "ASYNC", - "situation": "UNQUALIFIED", + }, + { + "enabled": true, + "name": "MANAGED_USER", + "properties": { + "augmentSecurityContext": { + "source": "var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield);", + "type": "text/javascript", + }, + "defaultUserRoles": [ + "internal/role/openidm-authorized", + ], + "propertyMapping": { + "additionalUserFields": [ + "adminOfOrg", + "ownerOfOrg", + ], + "authenticationId": "username", + "userCredential": "password", + "userRoles": "authzRoles", + }, + "queryId": "credential-query", + "queryOnResource": "managed/user", }, - ], - "properties": [], - "source": "managed/bravo_user", - "syncAfter": [], - "target": "managed/bravo_user", + }, + ], + "sessionModule": { + "name": "JWT_SESSION", + "properties": { + "enableDynamicRoles": false, + "isHttpOnly": true, + "maxTokenLifeMinutes": 120, + "sessionOnly": true, + "tokenIdleTimeMinutes": 30, + }, }, - { - "_id": "sync/managedAlpha_application_managedBravo_application", - "consentRequired": true, - "displayName": "Test Application Mapping", - "icon": null, - "name": "managedAlpha_application_managedBravo_application", - "policies": [ - { - "action": "ASYNC", - "situation": "ABSENT", - }, - { - "action": "ASYNC", - "situation": "ALL_GONE", - }, - { - "action": "ASYNC", - "situation": "AMBIGUOUS", - }, - { - "action": "ASYNC", - "situation": "CONFIRMED", - }, - { - "action": "ASYNC", - "situation": "FOUND", - }, - { - "action": "ASYNC", - "situation": "FOUND_ALREADY_LINKED", - }, - { - "action": "ASYNC", - "situation": "LINK_ONLY", - }, - { - "action": "ASYNC", - "situation": "MISSING", - }, - { - "action": "ASYNC", - "situation": "SOURCE_IGNORED", - }, - { - "action": "ASYNC", - "situation": "SOURCE_MISSING", - }, - { - "action": "ASYNC", - "situation": "TARGET_IGNORED", - }, - { - "action": "ASYNC", - "situation": "UNASSIGNED", - }, - { - "action": "ASYNC", - "situation": "UNQUALIFIED", - }, - ], - "properties": [ - { - "source": "authoritative", - "target": "_id", - }, - ], - "source": "managed/alpha_application", - "sourceQuery": { - "_queryFilter": "(eq "" or eq "")", - }, - "syncAfter": [ - "managedBravo_user_managedBravo_user", - ], - "target": "managed/bravo_application", - "targetQuery": { - "_queryFilter": "!(eq "")", - }, - }, - { - "_id": "sync/managedAlpha_user_managedBravo_user", - "consentRequired": true, - "displayName": "Test Mapping for Frodo", - "icon": null, - "name": "managedAlpha_user_managedBravo_user", - "policies": [ - { - "action": "ASYNC", - "situation": "ABSENT", - }, - { - "action": "ASYNC", - "situation": "ALL_GONE", - }, - { - "action": "ASYNC", - "situation": "AMBIGUOUS", - }, - { - "action": "ASYNC", - "situation": "CONFIRMED", - }, - { - "action": "ASYNC", - "situation": "FOUND", - }, - { - "action": "ASYNC", - "situation": "FOUND_ALREADY_LINKED", - }, - { - "action": "ASYNC", - "situation": "LINK_ONLY", - }, - { - "action": "ASYNC", - "situation": "MISSING", - }, - { - "action": "ASYNC", - "situation": "SOURCE_IGNORED", - }, - { - "action": "ASYNC", - "situation": "SOURCE_MISSING", - }, - { - "action": "ASYNC", - "situation": "TARGET_IGNORED", - }, - { - "action": "ASYNC", - "situation": "UNASSIGNED", - }, - { - "action": "ASYNC", - "situation": "UNQUALIFIED", - }, - ], - "properties": [ - { - "condition": { - "globals": {}, - "source": "console.log("Hello World!");", - "type": "text/javascript", - }, - "default": [ - "Default value string", - ], - "source": "accountStatus", - "target": "applications", - "transform": { - "globals": {}, - "source": "console.log("hello");", - "type": "text/javascript", - }, - }, - ], - "source": "managed/alpha_user", - "syncAfter": [ - "managedBravo_user_managedBravo_user", - "managedAlpha_application_managedBravo_application", - ], - "target": "managed/bravo_user", - }, - { - "_id": "sync/managedBravo_user_managedAlpha_user", - "consentRequired": false, - "displayName": "Frodo test mapping", - "icon": null, - "name": "managedBravo_user_managedAlpha_user", - "policies": [ - { - "action": "ASYNC", - "situation": "ABSENT", - }, - { - "action": "ASYNC", - "situation": "ALL_GONE", - }, - { - "action": "ASYNC", - "situation": "AMBIGUOUS", - }, - { - "action": "ASYNC", - "situation": "CONFIRMED", - }, - { - "action": "ASYNC", - "situation": "FOUND", - }, - { - "action": "ASYNC", - "situation": "FOUND_ALREADY_LINKED", - }, - { - "action": "ASYNC", - "situation": "LINK_ONLY", - }, - { - "action": "ASYNC", - "situation": "MISSING", - }, - { - "action": "ASYNC", - "situation": "SOURCE_IGNORED", - }, - { - "action": "ASYNC", - "situation": "SOURCE_MISSING", - }, - { - "action": "ASYNC", - "situation": "TARGET_IGNORED", - }, - { - "action": "ASYNC", - "situation": "UNASSIGNED", - }, - { - "action": "ASYNC", - "situation": "UNQUALIFIED", - }, - ], - "properties": [], - "source": "managed/bravo_user", - "syncAfter": [ - "managedBravo_user_managedBravo_user", - "managedAlpha_application_managedBravo_application", - "managedAlpha_user_managedBravo_user", - ], - "target": "managed/alpha_user", - }, - { - "_id": "sync/AlphaUser2GoogleApps", - "consentRequired": false, - "correlationQuery": [ - { - "expressionTree": { - "all": [ - "__NAME__", - ], - }, - "file": "ui/correlateTreeToQueryFilter.js", - "linkQualifier": "default", - "mapping": "AlphaUser2GoogleApps", - "type": "text/javascript", - }, - ], - "displayName": "AlphaUser2GoogleApps", - "enableSync": { - "$bool": "&{esv.gac.enable.mapping}", - }, - "icon": null, - "name": "AlphaUser2GoogleApps", - "onCreate": { - "globals": {}, - "source": "target.orgUnitPath = "/NewAccounts";", - "type": "text/javascript", - }, - "onUpdate": { - "globals": {}, - "source": "//testing1234 -target.givenName = oldTarget.givenName; -target.familyName = oldTarget.familyName; -target.__NAME__ = oldTarget.__NAME__;", - "type": "text/javascript", - }, - "policies": [ - { - "action": "EXCEPTION", - "situation": "AMBIGUOUS", - }, - { - "action": "UNLINK", - "situation": "SOURCE_MISSING", - }, - { - "action": { - "globals": {}, - "source": "// Timing Constants -var ATTEMPT = 6; // Number of attempts to find the Google user. -var SLEEP_TIME = 500; // Milliseconds between retries. -var SYSTEM_ENDPOINT = "system/GoogleApps/__ACCOUNT__"; -var MAPPING_NAME = "AlphaUser2GoogleApps"; -var GOOGLE_DOMAIN = identityServer.getProperty("esv.gac.domain"); -var googleEmail = source.userName + "@" + GOOGLE_DOMAIN; -var frUserGUID = source._id; -var resultingAction = "ASYNC"; - -// Get the Google GUID -var linkQueryParams = {'_queryFilter': 'firstId eq "' + frUserGUID + '" and linkType eq "' + MAPPING_NAME + '"'}; -var linkResults = openidm.query("repo/link/", linkQueryParams, null); -var googleGUID; - -if (linkResults.resultCount === 1) { - googleGUID = linkResults.result[0].secondId; -} - -var queryResults; // Resulting query from looking for the Google user. -var params = {'_queryFilter': '__UID__ eq "' + googleGUID + '"'}; - -for (var i = 1; i <= ATTEMPT; i++) { - queryResults = openidm.query(SYSTEM_ENDPOINT, params); - if (queryResults.result && queryResults.result.length > 0) { - logger.info("idmlog: ---AlphaUser2GoogleApps - Missing->UPDATE - Result found in " + i + " attempts. Query result: " + JSON.stringify(queryResults)); - resultingAction = "UPDATE"; - break; - } - java.lang.Thread.sleep(SLEEP_TIME); // Wait before trying again. -} - -if (!queryResults.result || queryResults.resultCount === 0) { - logger.warn("idmlog: ---AlphaUser2GoogleApps - Missing->UNLINK - " + googleEmail + " not found after " + ATTEMPT + " attempts."); - resultingAction = "UNLINK"; -} -resultingAction; -", - "type": "text/javascript", - }, - "situation": "MISSING", - }, - { - "action": "EXCEPTION", - "situation": "FOUND_ALREADY_LINKED", - }, - { - "action": "IGNORE", - "situation": "UNQUALIFIED", - }, - { - "action": "IGNORE", - "situation": "UNASSIGNED", - }, - { - "action": "UNLINK", - "situation": "LINK_ONLY", - }, - { - "action": "IGNORE", - "situation": "TARGET_IGNORED", - }, - { - "action": "IGNORE", - "situation": "SOURCE_IGNORED", - }, - { - "action": "IGNORE", - "situation": "ALL_GONE", - }, - { - "action": "UPDATE", - "situation": "CONFIRMED", - }, - { - "action": "LINK", - "situation": "FOUND", - }, - { - "action": "CREATE", - "situation": "ABSENT", - }, - ], - "properties": [ - { - "condition": { - "globals": {}, - "source": "object.custom_password_encrypted != null", - "type": "text/javascript", - }, - "source": "custom_password_encrypted", - "target": "__PASSWORD__", - "transform": { - "globals": {}, - "source": "openidm.decrypt(source);", - "type": "text/javascript", - }, - }, - { - "source": "cn", - "target": "__NAME__", - "transform": { - "globals": {}, - "source": "source + "@" + identityServer.getProperty("esv.gac.domain");", - "type": "text/javascript", - }, - }, - { - "source": "givenName", - "target": "givenName", - }, - { - "source": "", - "target": "familyName", - "transform": { - "globals": {}, - "source": "if (source.frIndexedInteger1 > 2 && source.frIndexedInteger1 < 6) { - source.sn + " (Student)" -} else { - source.sn -}", - "type": "text/javascript", - }, - }, - ], - "queuedSync": { - "enabled": true, - "maxQueueSize": 20000, - "maxRetries": 5, - "pageSize": 100, - "pollingInterval": 1000, - "postRetryAction": "logged-ignore", - "retryDelay": 1000, - }, - "source": "managed/alpha_user", - "syncAfter": [ - "managedBravo_user_managedBravo_user", - "managedAlpha_application_managedBravo_application", - "managedAlpha_user_managedBravo_user", - "managedBravo_user_managedAlpha_user", - ], - "target": "system/GoogleApps/__ACCOUNT__", - "validSource": { - "globals": {}, - "source": "var isGoogleEligible = true; -//var logMsg = "idmlog: ---AplhaUser2GAC (username: " + source.userName + " - userType: " + source.frIndexedInteger1 + " cn: " + source.cn + ") -"; -var logMsg = "idmlog: ---AplhaUser2GAC (username: " + source.userName + " - userType: " + source.frIndexedInteger1 + ") -"; - -//Get Applicable userTypes (no Parent accounts) -if (source.frIndexedInteger1 !== 0 && source.frIndexedInteger1 !== 1 && source.frIndexedInteger1 !== 3 && source.frIndexedInteger1 !== 4 && source.frIndexedInteger1 !== 5) { - isGoogleEligible = false; - logMsg = logMsg + " Account type not eligible."; -} - -//Make sure the account has a valid encrypted password. -if (source.custom_password_encrypted == undefined || source.custom_password_encrypted == null) { - isGoogleEligible = false; - logMsg = logMsg + " No encrypted password yet."; + }, + }, + }, + "meta": Any, } +`; -//Check that CN exists and has no space. -if (source.cn && source.cn.includes(' ')) { - isGoogleEligible = false; - logMsg = logMsg + " CN with a space is not allowed."; +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/cluster.idm.json 1`] = ` +{ + "idm": { + "cluster": { + "_id": "cluster", + "enabled": true, + "instanceCheckInInterval": 5000, + "instanceCheckInOffset": 0, + "instanceId": "&{openidm.node.id}", + "instanceRecoveryTimeout": 30000, + "instanceTimeout": 30000, + }, + }, + "meta": Any, } +`; -if (!isGoogleEligible) { - logMsg = logMsg + " Not sent to Google." - logger.info(logMsg); -} - -if (isGoogleEligible) { - logMsg = logMsg + " Sent to Google." - logger.info(logMsg); +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/emailTemplate/forgottenUsername.idm.json 1`] = ` +{ + "idm": { + "emailTemplate/forgottenUsername": { + "_id": "emailTemplate/forgottenUsername", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

", + "fr": "{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

", + }, + "mimeType": "text/html", + "subject": { + "en": "Account Information - username", + "fr": "Informations sur le compte - nom d'utilisateur", + }, + }, + }, + "meta": Any, } +`; -isGoogleEligible; -", - "type": "text/javascript", - }, - }, - ], +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/emailTemplate/registration.idm.json 1`] = ` +{ + "idm": { + "emailTemplate/registration": { + "_id": "emailTemplate/registration", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

This is your registration email.

Email verification link

", + "fr": "

Ceci est votre mail d'inscription.

Lien de vérification email

", + }, + "mimeType": "text/html", + "subject": { + "en": "Register new account", + "fr": "Créer un nouveau compte", + }, }, }, + "meta": Any, } `; -exports[`frodo idm export "frodo idm export -a": should export all idm config entities to a single file 1`] = `1`; - -exports[`frodo idm export "frodo idm export -a": should export all idm config entities to a single file 2`] = `""`; - -exports[`frodo idm export "frodo idm export -a": should export all idm config entities to a single file: all.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/emailTemplate/resetPassword.idm.json 1`] = ` { "idm": { - "access": { - "_id": "access", - "configs": [ - { - "actions": "*", - "methods": "read", - "pattern": "info/*", - "roles": "*", - }, - { - "actions": "login,logout", - "methods": "read,action", - "pattern": "authentication", - "roles": "*", - }, - { - "actions": "*", - "methods": "read", - "pattern": "config/fidc/*", - "roles": "*", - }, - { - "actions": "*", - "methods": "*", - "pattern": "config/fidc/*", - "roles": "internal/role/openidm-admin", - }, - { - "actions": "*", - "methods": "read", - "pattern": "config/ui/themeconfig", - "roles": "*", - }, - { - "actions": "*", - "methods": "read", - "pattern": "config/ui/themerealm", - "roles": "*", - }, - { - "actions": "*", - "methods": "read", - "pattern": "config/uilocale/*", - "roles": "*", - }, - { - "actions": "*", - "methods": "read", - "pattern": "config/fieldPolicy/*", - "roles": "internal/role/openidm-authorized", - }, - { - "actions": "*", - "methods": "read", - "pattern": "info/uiconfig", - "roles": "*", - }, - { - "actions": "*", - "methods": "read", - "pattern": "config/ui/dashboard", - "roles": "internal/role/openidm-authorized", - }, - { - "actions": "*", - "methods": "query", - "pattern": "info/features", - "roles": "*", - }, - { - "actions": "listPrivileges", - "methods": "action", - "pattern": "privilege", - "roles": "*", - }, - { - "actions": "*", - "methods": "read", - "pattern": "privilege/*", - "roles": "*", - }, - { - "actions": "validate", - "methods": "action", - "pattern": "util/validateQueryFilter", - "roles": "internal/role/openidm-authorized", - }, - { - "actions": "*", - "customAuthz": "checkIfAnyFeatureEnabled('kba')", - "methods": "read", - "pattern": "selfservice/kba", - "roles": "internal/role/openidm-authorized", - }, - { - "actions": "*", - "methods": "read", - "pattern": "schema/*", - "roles": "internal/role/openidm-authorized", - }, - { - "actions": "*", - "methods": "action,query", - "pattern": "consent", - "roles": "internal/role/openidm-authorized", - }, - { - "actions": "*", - "excludePatterns": "repo,repo/*", - "methods": "*", - "pattern": "*", - "roles": "internal/role/openidm-admin", - }, - { - "actions": "", - "methods": "create,read,update,delete,patch,query", - "pattern": "system/*", - "roles": "internal/role/openidm-admin", - }, - { - "actions": "*", - "methods": "script", - "pattern": "system/*", - "roles": "internal/role/openidm-admin", - }, - { - "actions": "test,testConfig,createconfiguration,liveSync,authenticate", - "methods": "action", - "pattern": "system/*", - "roles": "internal/role/openidm-admin", - }, - { - "actions": "*", - "customAuthz": "disallowCommandAction()", - "methods": "*", - "pattern": "repo", - "roles": "internal/role/openidm-admin", - }, - { - "actions": "*", - "customAuthz": "disallowCommandAction()", - "methods": "*", - "pattern": "repo/*", - "roles": "internal/role/openidm-admin", - }, - { - "actions": "command", - "customAuthz": "request.additionalParameters.commandId === 'delete-mapping-links'", - "methods": "action", - "pattern": "repo/link", - "roles": "internal/role/openidm-admin", - }, - { - "methods": "create,read,query,patch", - "pattern": "managed/*", - "roles": "internal/role/platform-provisioning", - }, - { - "methods": "read,query", - "pattern": "internal/role/*", - "roles": "internal/role/platform-provisioning", - }, - { - "actions": "*", - "methods": "create,read,action,update", - "pattern": "profile/*", - "roles": "internal/role/platform-provisioning", - }, - { - "actions": "*", - "methods": "read,action", - "pattern": "policy/*", - "roles": "internal/role/platform-provisioning", - }, - { - "methods": "read", - "pattern": "schema/*", - "roles": "internal/role/platform-provisioning", - }, - { - "actions": "*", - "methods": "action,query", - "pattern": "consent", - "roles": "internal/role/platform-provisioning", - }, - { - "methods": "read", - "pattern": "selfservice/kba", - "roles": "internal/role/platform-provisioning", - }, - { - "methods": "read", - "pattern": "selfservice/terms", - "roles": "internal/role/platform-provisioning", - }, - { - "methods": "read", - "pattern": "identityProviders", - "roles": "internal/role/platform-provisioning", - }, - { - "actions": "sendTemplate", - "methods": "action", - "pattern": "external/email", - "roles": "internal/role/platform-provisioning", - }, - { - "actions": "authenticate", - "methods": "action", - "pattern": "system/*", - "roles": "internal/role/platform-provisioning", - }, - { - "actions": "*", - "methods": "read,action", - "pattern": "policy/*", - "roles": "internal/role/openidm-authorized", - }, - { - "actions": "*", - "methods": "read", - "pattern": "config/ui/*", - "roles": "internal/role/openidm-authorized", - }, - { - "actions": "bind,unbind", - "customAuthz": "ownDataOnly()", - "methods": "read,action,delete", - "pattern": "*", - "roles": "internal/role/openidm-authorized", - }, - { - "actions": "patch", - "customAuthz": "ownDataOnly() && onlyEditableManagedObjectProperties('user', [])", - "methods": "update,patch,action", - "pattern": "*", - "roles": "internal/role/openidm-authorized", - }, - { - "actions": "patch", - "customAuthz": "(request.resourcePath === 'selfservice/user/' + context.security.authorization.id) && onlyEditableManagedObjectProperties('user', [])", - "methods": "patch,action", - "pattern": "selfservice/user/*", - "roles": "internal/role/openidm-authorized", - }, - { - "actions": "patch", - "customAuthz": "isQueryOneOf({'managed/user': ['for-userName']}) && restrictPatchToFields(['password'])", - "methods": "patch,action", - "pattern": "managed/user", - "roles": "internal/role/openidm-cert", - }, - { - "actions": "*", - "customAuthz": "ownRelationshipProperty('_meta', false)", - "methods": "read", - "pattern": "internal/usermeta/*", - "roles": "internal/role/openidm-authorized", - }, - { - "actions": "*", - "customAuthz": "ownRelationshipProperty('_notifications', true)", - "methods": "read,delete", - "pattern": "internal/notification/*", - "roles": "internal/role/openidm-authorized", - }, - { - "actions": "*", - "customAuthz": "ownRelationshipCollection(['_meta','_notifications'])", - "methods": "read,query", - "pattern": "managed/user/*", - "roles": "internal/role/openidm-authorized", - }, - { - "actions": "", - "customAuthz": "ownDataOnly()", - "methods": "read,delete", - "pattern": "managed/alpha_user/*", - "roles": "internal/role/openidm-authorized", - }, - { - "actions": "patch", - "customAuthz": "ownDataOnly() && onlyEditableManagedObjectProperties('alpha_user', [])", - "methods": "update,patch,action", - "pattern": "managed/alpha_user/*", - "roles": "internal/role/openidm-authorized", - }, - { - "actions": "*", - "customAuthz": "ownRelationshipCollection(['_meta','_notifications'])", - "methods": "read,query", - "pattern": "managed/alpha_user/*", - "roles": "internal/role/openidm-authorized", - }, - { - "actions": "", - "customAuthz": "ownDataOnly()", - "methods": "read,delete", - "pattern": "managed/bravo_user/*", - "roles": "internal/role/openidm-authorized", - }, - { - "actions": "patch", - "customAuthz": "ownDataOnly() && onlyEditableManagedObjectProperties('bravo_user', [])", - "methods": "update,patch,action", - "pattern": "managed/bravo_user/*", - "roles": "internal/role/openidm-authorized", - }, + "emailTemplate/resetPassword": { + "_id": "emailTemplate/resetPassword", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Click to reset your password

Password reset link

", + "fr": "

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

", + }, + "mimeType": "text/html", + "subject": { + "en": "Reset your password", + "fr": "Réinitialisez votre mot de passe", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/emailTemplate/updatePassword.idm.json 1`] = ` +{ + "idm": { + "emailTemplate/updatePassword": { + "_id": "emailTemplate/updatePassword", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Verify email to update password

Update password link

", + }, + "mimeType": "text/html", + "subject": { + "en": "Update your password", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/emailTemplate/welcome.idm.json 1`] = ` +{ + "idm": { + "emailTemplate/welcome": { + "_id": "emailTemplate/welcome", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Welcome to OpenIDM. Your username is '{{object.userName}}'.

", + "fr": "

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

", + }, + "mimeType": "text/html", + "subject": { + "en": "Your account has been created", + "fr": "Votre compte vient d’être créé !", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/endpoint/getavailableuserstoassign.idm.json 1`] = ` +{ + "idm": { + "endpoint/getavailableuserstoassign": { + "_id": "endpoint/getavailableuserstoassign", + "file": "workflow/getavailableuserstoassign.js", + "type": "text/javascript", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/endpoint/getprocessesforuser.idm.json 1`] = ` +{ + "idm": { + "endpoint/getprocessesforuser": { + "_id": "endpoint/getprocessesforuser", + "file": "workflow/getprocessesforuser.js", + "type": "text/javascript", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/endpoint/gettasksview.idm.json 1`] = ` +{ + "idm": { + "endpoint/gettasksview": { + "_id": "endpoint/gettasksview", + "file": "workflow/gettasksview.js", + "type": "text/javascript", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/endpoint/mappingDetails.idm.json 1`] = ` +{ + "idm": { + "endpoint/mappingDetails": { + "_id": "endpoint/mappingDetails", + "context": "endpoint/mappingDetails", + "file": "mappingDetails.js", + "type": "text/javascript", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/endpoint/oauthproxy.idm.json 1`] = ` +{ + "idm": { + "endpoint/oauthproxy": { + "_id": "endpoint/oauthproxy", + "context": "endpoint/oauthproxy", + "file": "oauthProxy.js", + "type": "text/javascript", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/endpoint/removeRepoPathFromRelationships.idm.json 1`] = ` +{ + "idm": { + "endpoint/removeRepoPathFromRelationships": { + "_id": "endpoint/removeRepoPathFromRelationships", + "file": "update/removeRepoPathFromRelationships.js", + "type": "text/javascript", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/endpoint/repairMetadata.idm.json 1`] = ` +{ + "idm": { + "endpoint/repairMetadata": { + "_id": "endpoint/repairMetadata", + "file": "meta/metadataScanner.js", + "type": "text/javascript", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/endpoint/updateInternalUserAndInternalRoleEntries.idm.json 1`] = ` +{ + "idm": { + "endpoint/updateInternalUserAndInternalRoleEntries": { + "_id": "endpoint/updateInternalUserAndInternalRoleEntries", + "file": "update/updateInternalUserAndInternalRoleEntries.js", + "type": "text/javascript", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/endpoint/validateQueryFilter.idm.json 1`] = ` +{ + "idm": { + "endpoint/validateQueryFilter": { + "_id": "endpoint/validateQueryFilter", + "context": "util/validateQueryFilter", + "source": "try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } };", + "type": "text/javascript", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/external.rest.idm.json 1`] = ` +{ + "idm": { + "external.rest": { + "_id": "external.rest", + "hostnameVerifier": "&{openidm.external.rest.hostnameVerifier}", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/internal.idm.json 1`] = ` +{ + "idm": { + "internal": { + "_id": "internal", + "objects": [ { - "actions": "*", - "customAuthz": "ownRelationshipCollection(['_meta','_notifications'])", - "methods": "read,query", - "pattern": "managed/bravo_user/*", - "roles": "internal/role/openidm-authorized", + "name": "role", + "properties": { + "authzMembers": { + "items": { + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + }, + }, + }, }, { - "actions": "deleteNotificationsForTarget", - "customAuthz": "request.additionalParameters.target === (context.security.authorization.component + '/' + context.security.authorization.id)", - "methods": "action", - "pattern": "notification", - "roles": "internal/role/openidm-authorized", + "name": "notification", + "properties": { + "target": { + "reversePropertyName": "_notifications", + }, + }, }, ], }, - "alphaOrgPrivileges": { - "_id": "alphaOrgPrivileges", - "privileges": [ + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/managed.idm.json 1`] = ` +{ + "idm": { + "managed": { + "_id": "managed", + "objects": [ { - "accessFlags": [ - { - "attribute": "name", - "readOnly": false, - }, - { - "attribute": "description", - "readOnly": false, - }, - { - "attribute": "owners", + "lastSync": { + "effectiveAssignmentsProperty": "effectiveAssignments", + "lastSyncProperty": "lastSync", + }, + "name": "user", + "notifications": { + "property": "_notifications", + }, + "postDelete": { + "source": "require('postDelete-idp-cleanup').removeConnectedIdpData(oldObject, resourceName, request);require('postDelete-notification-cleanup').removeConnectedNotificationData(oldObject, resourceName, request);", + "type": "text/javascript", + }, + "schema": { + "$schema": "http://json-schema.org/draft-03/schema", + "icon": "fa-user", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User", + "mat-icon": "people", + "order": [ + "_id", + "userName", + "password", + "givenName", + "sn", + "mail", + "description", + "accountStatus", + "telephoneNumber", + "postalAddress", + "city", + "postalCode", + "country", + "stateProvince", + "roles", + "assignments", + "manager", + "authzRoles", + "reports", + "effectiveRoles", + "effectiveAssignments", + "lastSync", + "kbaInfo", + "preferences", + "consentedMappings", + "ownerOfOrg", + "adminOfOrg", + "memberOfOrg", + "memberOfOrgIDs", + "activeDate", + "inactiveDate", + ], + "properties": { + "_id": { + "description": "User ID", + "isPersonal": false, + "policies": [ + { + "params": { + "forbiddenChars": [ + "/", + ], + }, + "policyId": "cannot-contain-characters", + }, + ], + "searchable": false, + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": false, + }, + "accountStatus": { + "default": "active", + "description": "Status", + "isPersonal": false, + "policies": [ + { + "params": { + "regexp": "^(active|inactive)$", + }, + "policyId": "regexpMatches", + }, + ], + "searchable": true, + "title": "Status", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "activeDate": { + "description": "Active Date", + "format": "datetime", + "isPersonal": false, + "policies": [ + { + "policyId": "valid-datetime", + }, + ], + "searchable": false, + "title": "Active Date", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "adminOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/organization", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "admins", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Administer", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "assignments": { + "description": "Assignments", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Assignment", + "path": "managed/assignment", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Assignments Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Assignments", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "authzRoles": { + "description": "Authorization Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Authorization Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Internal Role", + "path": "internal/role", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "authzMembers", + "reverseRelationship": true, + "title": "Authorization Roles Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Authorization Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "city": { + "description": "City", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "title": "City", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "consentedMappings": { + "description": "Consented Mappings", + "isPersonal": false, + "isVirtual": false, + "items": { + "order": [ + "mapping", + "consentDate", + ], + "properties": { + "consentDate": { + "description": "Consent Date", + "format": "datetime", + "policies": [ + { + "policyId": "valid-datetime", + }, + ], + "searchable": true, + "title": "Consent Date", + "type": "string", + "userEditable": true, + "viewable": true, + }, + "mapping": { + "description": "Mapping", + "searchable": true, + "title": "Mapping", + "type": "string", + "userEditable": true, + "viewable": true, + }, + }, + "required": [ + "mapping", + "consentDate", + ], + "title": "Consented Mapping", + "type": "object", + }, + "returnByDefault": false, + "searchable": false, + "title": "Consented Mappings", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false, + }, + "country": { + "description": "Country", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "title": "Country", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "description": { + "description": "Description", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "searchable": true, + "title": "Description", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "effectiveAssignments": { + "description": "Effective Assignments", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Assignments Items", + "type": "object", + }, + "queryConfig": { + "referencedObjectFields": [ + "*", + ], + "referencedRelationshipFields": [ + [ + "roles", + "assignments", + ], + [ + "assignments", + ], + ], + }, + "returnByDefault": true, + "title": "Effective Assignments", + "type": "array", + "usageDescription": "", + "viewable": false, + }, + "effectiveRoles": { + "description": "Effective Roles", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Roles Items", + "type": "object", + }, + "queryConfig": { + "referencedRelationshipFields": [ + "roles", + ], + }, + "returnByDefault": true, + "title": "Effective Roles", + "type": "array", + "usageDescription": "", + "viewable": false, + }, + "givenName": { + "description": "First Name", + "isPersonal": true, + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "searchable": true, + "title": "First Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "inactiveDate": { + "description": "Inactive Date", + "format": "datetime", + "isPersonal": false, + "policies": [ + { + "policyId": "valid-datetime", + }, + ], + "searchable": false, + "title": "Inactive Date", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "kbaInfo": { + "description": "KBA Info", + "isPersonal": true, + "items": { + "order": [ + "answer", + "customQuestion", + "questionId", + ], + "properties": { + "answer": { + "description": "Answer", + "type": "string", + }, + "customQuestion": { + "description": "Custom question", + "type": "string", + }, + "questionId": { + "description": "Question ID", + "type": "string", + }, + }, + "required": [], + "title": "KBA Info Items", + "type": "object", + }, + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false, + }, + "lastSync": { + "description": "Last Sync timestamp", + "isPersonal": false, + "order": [ + "effectiveAssignments", + "timestamp", + ], + "properties": { + "effectiveAssignments": { + "description": "Effective Assignments", + "items": { + "title": "Effective Assignments Items", + "type": "object", + }, + "title": "Effective Assignments", + "type": "array", + }, + "timestamp": { + "description": "Timestamp", + "policies": [ + { + "policyId": "valid-datetime", + }, + ], + "type": "string", + }, + }, + "required": [], + "scope": "private", + "searchable": false, + "title": "Last Sync timestamp", + "type": "object", + "usageDescription": "", + "viewable": false, + }, + "mail": { + "description": "Email Address", + "isPersonal": true, + "policies": [ + { + "policyId": "valid-email-address-format", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "searchable": true, + "title": "Email Address", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "manager": { + "description": "Manager", + "isPersonal": false, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Manager _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "reports", + "reverseRelationship": true, + "searchable": false, + "title": "Manager", + "type": "relationship", + "usageDescription": "", + "userEditable": false, + "validate": true, + "viewable": true, + }, + "memberOfOrg": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/organization", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations to which I Belong", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "memberOfOrgIDs": { + "isVirtual": true, + "items": { + "title": "org identifiers", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs", + ], + "referencedRelationshipFields": [ + "memberOfOrg", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "MemberOfOrgIDs", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "ownerOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/organization", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "owners", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Own", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "password": { + "description": "Password", + "encryption": { + "purpose": "idm.password.encryption", + }, + "isPersonal": false, + "isProtected": true, + "policies": [ + { + "params": { + "minLength": 8, + }, + "policyId": "minimum-length", + }, + { + "params": { + "numCaps": 1, + }, + "policyId": "at-least-X-capitals", + }, + { + "params": { + "numNums": 1, + }, + "policyId": "at-least-X-numbers", + }, + { + "params": { + "disallowedFields": [ + "userName", + "givenName", + "sn", + ], + }, + "policyId": "cannot-contain-others", + }, + ], + "scope": "private", + "searchable": false, + "title": "Password", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": false, + }, + "postalAddress": { + "description": "Address 1", + "isPersonal": true, + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "title": "Address 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "postalCode": { + "description": "Postal Code", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "title": "Postal Code", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "preferences": { + "description": "Preferences", + "isPersonal": false, + "order": [ + "updates", + "marketing", + ], + "properties": { + "marketing": { + "description": "Send me special offers and services", + "type": "boolean", + }, + "updates": { + "description": "Send me news and updates", + "type": "boolean", + }, + }, + "required": [], + "searchable": false, + "title": "Preferences", + "type": "object", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "reports": { + "description": "Direct Reports", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Direct Reports Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "manager", + "reverseRelationship": true, + "title": "Direct Reports Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Direct Reports", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "roles": { + "description": "Provisioning Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Role", + "path": "managed/role", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Provisioning Roles Items", + "type": "relationship", + "validate": true, + }, + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Provisioning Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "sn": { + "description": "Last Name", + "isPersonal": true, + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "searchable": true, + "title": "Last Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "stateProvince": { + "description": "State/Province", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "title": "State/Province", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "telephoneNumber": { + "description": "Telephone Number", + "isPersonal": true, + "pattern": "^\\+?([0-9\\- \\(\\)])*$", + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "title": "Telephone Number", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "userName": { + "description": "Username", + "isPersonal": true, + "policies": [ + { + "policyId": "valid-username", + }, + { + "params": { + "forbiddenChars": [ + "/", + ], + }, + "policyId": "cannot-contain-characters", + }, + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "searchable": true, + "title": "Username", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + }, + "required": [ + "userName", + "givenName", + "sn", + "mail", + ], + "title": "User", + "type": "object", + "viewable": true, + }, + }, + { + "name": "role", + "onCreate": { + "globals": {}, + "source": "//asdfasdfadsfasdf", + "type": "text/javascript", + }, + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "icon": "fa-check-square", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role", + "mat-icon": "assignment_ind", + "order": [ + "_id", + "name", + "description", + "members", + "assignments", + "condition", + "temporalConstraints", + ], + "properties": { + "_id": { + "description": "Role ID", + "searchable": false, + "title": "Name", + "type": "string", + "viewable": false, + }, + "assignments": { + "description": "Managed Assignments", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Managed Assignments Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Assignment", + "path": "managed/assignment", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Managed Assignments Items", + "type": "relationship", + "validate": true, + }, + "notifyRelationships": [ + "members", + ], + "returnByDefault": false, + "title": "Managed Assignments", + "type": "array", + "viewable": true, + }, + "condition": { + "description": "A conditional filter for this role", + "isConditional": true, + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false, + }, + "description": { + "description": "The role description, used for display purposes.", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true, + }, + "members": { + "description": "Role Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Role Members Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Role Members Items", + "type": "relationship", + "validate": true, + }, + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Role Members", + "type": "array", + "viewable": true, + }, + "name": { + "description": "The role name, used for display purposes.", + "policies": [ + { + "policyId": "unique", + }, + ], + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true, + }, + "temporalConstraints": { + "description": "An array of temporal constraints for a role", + "isTemporalConstraint": true, + "items": { + "order": [ + "duration", + ], + "properties": { + "duration": { + "description": "Duration", + "type": "string", + }, + }, + "required": [ + "duration", + ], + "title": "Temporal Constraints Items", + "type": "object", + }, + "notifyRelationships": [ + "members", + ], + "returnByDefault": true, + "title": "Temporal Constraints", + "type": "array", + "viewable": false, + }, + }, + "required": [ + "name", + ], + "title": "Role", + "type": "object", + }, + }, + { + "attributeEncryption": {}, + "name": "assignment", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "A role assignment", + "icon": "fa-key", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment", + "mat-icon": "vpn_key", + "order": [ + "_id", + "name", + "description", + "mapping", + "attributes", + "linkQualifiers", + "roles", + "members", + "condition", + "weight", + ], + "properties": { + "_id": { + "description": "The assignment ID", + "searchable": false, + "title": "Name", + "type": "string", + "viewable": false, + }, + "attributes": { + "description": "The attributes operated on by this assignment.", + "items": { + "order": [ + "assignmentOperation", + "unassignmentOperation", + "name", + "value", + ], + "properties": { + "assignmentOperation": { + "description": "Assignment operation", + "type": "string", + }, + "name": { + "description": "Name", + "type": "string", + }, + "unassignmentOperation": { + "description": "Unassignment operation", + "type": "string", + }, + "value": { + "description": "Value", + "type": "string", + }, + }, + "required": [], + "title": "Assignment Attributes Items", + "type": "object", + }, + "notifyRelationships": [ + "roles", + "members", + ], + "title": "Assignment Attributes", + "type": "array", + "viewable": true, + }, + "condition": { + "description": "A conditional filter for this assignment", + "isConditional": true, + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false, + }, + "description": { + "description": "The assignment description, used for display purposes.", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true, + }, + "linkQualifiers": { + "description": "Conditional link qualifiers to restrict this assignment to.", + "items": { + "title": "Link Qualifiers Items", + "type": "string", + }, + "title": "Link Qualifiers", + "type": "array", + "viewable": true, + }, + "mapping": { + "description": "The name of the mapping this assignment applies to", + "policies": [ + { + "policyId": "mapping-exists", + }, + ], + "searchable": true, + "title": "Mapping", + "type": "string", + "viewable": true, + }, + "members": { + "description": "Assignment Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Assignment Members Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "assignments", + "reverseRelationship": true, + "title": "Assignment Members Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Assignment Members", + "type": "array", + "viewable": true, + }, + "name": { + "description": "The assignment name, used for display purposes.", + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true, + }, + "roles": { + "description": "Managed Roles", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Managed Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Role", + "notify": true, + "path": "managed/role", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "assignments", + "reverseRelationship": true, + "title": "Managed Roles Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Managed Roles", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "weight": { + "description": "The weight of the assignment.", + "notifyRelationships": [ + "roles", + "members", + ], + "searchable": false, + "title": "Weight", + "type": [ + "number", + "null", + ], + "viewable": true, + }, + }, + "required": [ + "name", + "description", + "mapping", + ], + "title": "Assignment", + "type": "object", + }, + }, + { + "name": "organization", + "onCreate": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript", + }, + "onRead": { + "globals": {}, + "source": "//seantest", + "type": "groovy", + }, + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "An organization or tenant, whose resources are managed by organizational admins.", + "icon": "fa-building", + "mat-icon": "domain", + "order": [ + "name", + "description", + "owners", + "admins", + "members", + "parent", + "children", + "adminIDs", + "ownerIDs", + "parentAdminIDs", + "parentOwnerIDs", + "parentIDs", + ], + "properties": { + "adminIDs": { + "isVirtual": true, + "items": { + "title": "admin ids", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + ], + "referencedRelationshipFields": [ + "admins", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "Admin user ids", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "admins": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "notify": false, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "adminOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "notifyRelationships": [ + "children", + ], + "returnByDefault": false, + "searchable": false, + "title": "Administrators", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "children": { + "description": "Child Organizations", + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/organization", + "query": { + "fields": [ + "name", + "description", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "parent", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Child Organizations", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "description": { + "searchable": true, + "title": "Description", + "type": "string", + "userEditable": true, + "viewable": true, + }, + "members": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "memberOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "searchable": false, + "title": "Members", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "name": { + "searchable": true, + "title": "Name", + "type": "string", + "userEditable": true, + "viewable": true, + }, + "ownerIDs": { + "isVirtual": true, + "items": { + "title": "owner ids", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + ], + "referencedRelationshipFields": [ + "owners", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "Owner user ids", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "owners": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "notify": false, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "ownerOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "notifyRelationships": [ + "children", + ], + "returnByDefault": false, + "searchable": false, + "title": "Owner", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "parent": { + "description": "Parent Organization", + "notifyRelationships": [ + "children", + "members", + ], + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/organization", + "query": { + "fields": [ + "name", + "description", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "returnByDefault": false, + "reversePropertyName": "children", + "reverseRelationship": true, + "searchable": false, + "title": "Parent Organization", + "type": "relationship", + "userEditable": false, + "validate": true, + "viewable": true, + }, + "parentAdminIDs": { + "isVirtual": true, + "items": { + "title": "user ids of parent admins", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "adminIDs", + "parentAdminIDs", + ], + "referencedRelationshipFields": [ + "parent", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent admins", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "parentIDs": { + "isVirtual": true, + "items": { + "title": "parent org ids", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs", + ], + "referencedRelationshipFields": [ + "parent", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "parent org ids", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "parentOwnerIDs": { + "isVirtual": true, + "items": { + "title": "user ids of parent owners", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "ownerIDs", + "parentOwnerIDs", + ], + "referencedRelationshipFields": [ + "parent", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent owners", + "type": "array", + "userEditable": false, + "viewable": false, + }, + }, + "required": [ + "name", + ], + "title": "Organization", + "type": "object", + }, + }, + { + "name": "seantestmanagedobject", + "schema": { + "description": null, + "icon": "fa-database", + "mat-icon": null, + "title": null, + }, + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/mapping/mappingtest.idm.json 1`] = ` +{ + "idm": { + "mapping/mappingtest": { + "_id": "mapping/mappingtest", + "consentRequired": false, + "displayName": "mappingtest", + "icon": null, + "name": "mappingtest", + "policies": [ + { + "action": { + "globals": {}, + "source": "//asdfasdf", + "type": "text/javascript", + }, + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "groovy", + }, + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "ABSENT", + }, + ], + "properties": [], + "source": "managed/assignment", + "target": "managed/organization", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/mapping/seantestmapping.idm.json 1`] = ` +{ + "idm": { + "mapping/seantestmapping": { + "_id": "mapping/seantestmapping", + "consentRequired": false, + "displayName": "seantestmapping", + "icon": null, + "name": "seantestmapping", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/assignment", + "target": "managed/organization", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/metrics.idm.json 1`] = ` +{ + "idm": { + "metrics": { + "_id": "metrics", + "enabled": false, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/notification/passwordUpdate.idm.json 1`] = ` +{ + "idm": { + "notification/passwordUpdate": { + "_id": "notification/passwordUpdate", + "condition": { + "file": "propertiesModifiedFilter.groovy", + "globals": { + "propertiesToCheck": [ + "password", + ], + }, + "type": "groovy", + }, + "enabled": { + "$bool": "&{openidm.notifications.passwordUpdate|false}", + }, + "methods": [ + "update", + "patch", + ], + "notification": { + "message": "Your password has been updated.", + "notificationType": "info", + }, + "path": "managed/user/*", + "target": { + "resource": "managed/user/{{response/_id}}", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/notification/profileUpdate.idm.json 1`] = ` +{ + "idm": { + "notification/profileUpdate": { + "_id": "notification/profileUpdate", + "condition": { + "file": "propertiesModifiedFilter.groovy", + "globals": { + "propertiesToCheck": [ + "userName", + "givenName", + "sn", + "mail", + "description", + "accountStatus", + "telephoneNumber", + "postalAddress", + "city", + "postalCode", + "country", + "stateProvince", + "preferences", + ], + }, + "type": "groovy", + }, + "enabled": { + "$bool": "&{openidm.notifications.profileUpdate|false}", + }, + "methods": [ + "update", + "patch", + ], + "notification": { + "message": "Your profile has been updated.", + "notificationType": "info", + }, + "path": "managed/user/*", + "target": { + "resource": "managed/user/{{response/_id}}", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/notificationFactory.idm.json 1`] = ` +{ + "idm": { + "notificationFactory": { + "_id": "notificationFactory", + "enabled": { + "$bool": "&{openidm.notifications|false}", + }, + "threadPool": { + "maxPoolThreads": 2, + "maxQueueSize": 20000, + "steadyPoolThreads": 1, + "threadKeepAlive": 60, + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/policy.idm.json 1`] = ` +{ + "idm": { + "policy": { + "_id": "policy", + "additionalFiles": [], + "file": "policy.js", + "resources": [ + { + "calculatedProperties": { + "source": "require('selfServicePolicies').getRegistrationProperties()", + "type": "text/javascript", + }, + "resource": "selfservice/registration", + }, + { + "calculatedProperties": { + "source": "require('selfServicePolicies').getResetProperties()", + "type": "text/javascript", + }, + "resource": "selfservice/reset", + }, + { + "properties": [ + { + "name": "_id", + "policies": [ + { + "params": { + "forbiddenChars": [ + "/", + ], + }, + "policyId": "cannot-contain-characters", + }, + ], + }, + { + "name": "password", + "policies": [ + { + "params": { + "minLength": 8, + }, + "policyId": "minimum-length", + }, + ], + }, + ], + "resource": "internal/user/*", + }, + { + "properties": [ + { + "name": "name", + "policies": [ + { + "policyId": "required", + }, + { + "policyId": "not-empty", + }, + { + "params": { + "forbiddenChars": [ + "/*", + ], + }, + "policyId": "cannot-contain-characters", + }, + ], + }, + { + "name": "temporalConstraints", + "policies": [ + { + "policyId": "valid-temporal-constraints", + }, + ], + }, + { + "name": "condition", + "policies": [ + { + "policyId": "valid-query-filter", + }, + ], + }, + { + "name": "privileges", + "policies": [ + { + "params": { + "types": [ + "array", + ], + }, + "policyId": "valid-type", + }, + { + "params": { + "properties": [ + { + "name": "name", + "policies": [ + { + "policyId": "required", + }, + { + "policyId": "not-empty", + }, + { + "params": { + "types": [ + "string", + ], + }, + "policyId": "valid-type", + }, + ], + }, + { + "name": "path", + "policies": [ + { + "policyId": "required", + }, + { + "policyId": "not-empty", + }, + { + "params": { + "forbiddenChars": [ + "/*", + ], + }, + "policyId": "cannot-contain-characters", + }, + { + "policyId": "valid-privilege-path", + }, + ], + }, + { + "name": "accessFlags", + "policies": [ + { + "policyId": "required", + }, + { + "policyId": "not-empty", + }, + { + "params": { + "types": [ + "array", + ], + }, + "policyId": "valid-type", + }, + { + "policyId": "valid-accessFlags-object", + }, + ], + }, + { + "name": "actions", + "policies": [ + { + "policyId": "required", + }, + { + "params": { + "types": [ + "array", + ], + }, + "policyId": "valid-type", + }, + ], + }, + { + "name": "permissions", + "policies": [ + { + "policyId": "required", + }, + { + "policyId": "not-empty", + }, + { + "params": { + "types": [ + "array", + ], + }, + "policyId": "valid-type", + }, + { + "policyId": "valid-permissions", + }, + ], + }, + { + "name": "filter", + "policies": [ + { + "params": { + "types": [ + "string", + "null", + ], + }, + "policyId": "valid-type", + }, + { + "policyId": "valid-query-filter", + }, + ], + }, + ], + }, + "policyId": "valid-array-items", + }, + ], + }, + ], + "resource": "internal/role/*", + }, + { + "properties": [ + { + "name": "temporalConstraints", + "policies": [ + { + "policyId": "valid-temporal-constraints", + }, + ], + }, + { + "name": "condition", + "policies": [ + { + "policyId": "valid-query-filter", + }, + ], + }, + ], + "resource": "managed/role/*", + }, + { + "properties": [ + { + "name": "objects", + "policies": [ + { + "policyId": "valid-event-scripts", + }, + ], + }, + ], + "resource": "config/managed", + }, + ], + "type": "text/javascript", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/privilegeAssignments.idm.json 1`] = ` +{ + "idm": { + "privilegeAssignments": { + "_id": "privilegeAssignments", + "privilegeAssignments": [ + { + "name": "ownerPrivileges", + "privileges": [ + "owner-view-update-delete-orgs", + "owner-create-orgs", + "owner-view-update-delete-admins-and-members", + "owner-create-admins", + "admin-view-update-delete-members", + "admin-create-members", + ], + "relationshipField": "ownerOfOrg", + }, + { + "name": "adminPrivileges", + "privileges": [ + "admin-view-update-delete-orgs", + "admin-create-orgs", + "admin-view-update-delete-members", + "admin-create-members", + ], + "relationshipField": "adminOfOrg", + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/privileges.idm.json 1`] = ` +{ + "idm": { + "privileges": { + "_id": "privileges", + "privileges": [ + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "owners", + "readOnly": true, + }, + { + "attribute": "admins", + "readOnly": false, + }, + { + "attribute": "members", + "readOnly": false, + }, + { + "attribute": "parent", + "readOnly": false, + }, + { + "attribute": "children", + "readOnly": false, + }, + { + "attribute": "parentIDs", + "readOnly": true, + }, + { + "attribute": "adminIDs", + "readOnly": true, + }, + { + "attribute": "parentAdminIDs", + "readOnly": true, + }, + { + "attribute": "ownerIDs", + "readOnly": true, + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/ownerIDs eq "{{_id}}" or /parentOwnerIDs eq "{{_id}}"", + "name": "owner-view-update-delete-orgs", + "path": "managed/organization", + "permissions": [ + "VIEW", + "UPDATE", + "DELETE", + ], + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "owners", + "readOnly": true, + }, + { + "attribute": "admins", + "readOnly": false, + }, + { + "attribute": "members", + "readOnly": false, + }, + { + "attribute": "parent", + "readOnly": false, + }, + { + "attribute": "children", + "readOnly": false, + }, + { + "attribute": "parentIDs", + "readOnly": true, + }, + { + "attribute": "adminIDs", + "readOnly": true, + }, + { + "attribute": "parentAdminIDs", + "readOnly": true, + }, + { + "attribute": "ownerIDs", + "readOnly": true, + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/parent pr", + "name": "owner-create-orgs", + "path": "managed/organization", + "permissions": [ + "CREATE", + ], + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false, + }, + { + "attribute": "password", + "readOnly": false, + }, + { + "attribute": "givenName", + "readOnly": false, + }, + { + "attribute": "sn", + "readOnly": false, + }, + { + "attribute": "mail", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "accountStatus", + "readOnly": false, + }, + { + "attribute": "telephoneNumber", + "readOnly": false, + }, + { + "attribute": "postalAddress", + "readOnly": false, + }, + { + "attribute": "city", + "readOnly": false, + }, + { + "attribute": "postalCode", + "readOnly": false, + }, + { + "attribute": "country", + "readOnly": false, + }, + { + "attribute": "stateProvince", + "readOnly": false, + }, + { + "attribute": "roles", + "readOnly": false, + }, + { + "attribute": "manager", + "readOnly": false, + }, + { + "attribute": "authzRoles", + "readOnly": false, + }, + { + "attribute": "reports", + "readOnly": false, + }, + { + "attribute": "effectiveRoles", + "readOnly": false, + }, + { + "attribute": "effectiveAssignments", + "readOnly": false, + }, + { + "attribute": "lastSync", + "readOnly": false, + }, + { + "attribute": "kbaInfo", + "readOnly": false, + }, + { + "attribute": "preferences", + "readOnly": false, + }, + { + "attribute": "consentedMappings", + "readOnly": false, + }, + { + "attribute": "memberOfOrg", + "readOnly": false, + }, + { + "attribute": "adminOfOrg", + "readOnly": false, + }, + { + "attribute": "ownerOfOrg", + "readOnly": true, + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/memberOfOrgIDs eq "__org_id_placeholder__"", + "name": "owner-view-update-delete-admins-and-members", + "path": "managed/user", + "permissions": [ + "VIEW", + "DELETE", + "UPDATE", + ], + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false, + }, + { + "attribute": "password", + "readOnly": false, + }, + { + "attribute": "givenName", + "readOnly": false, + }, + { + "attribute": "sn", + "readOnly": false, + }, + { + "attribute": "mail", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "accountStatus", + "readOnly": false, + }, + { + "attribute": "telephoneNumber", + "readOnly": false, + }, + { + "attribute": "postalAddress", + "readOnly": false, + }, + { + "attribute": "city", + "readOnly": false, + }, + { + "attribute": "postalCode", + "readOnly": false, + }, + { + "attribute": "country", + "readOnly": false, + }, + { + "attribute": "stateProvince", + "readOnly": false, + }, + { + "attribute": "roles", + "readOnly": false, + }, + { + "attribute": "manager", + "readOnly": false, + }, + { + "attribute": "authzRoles", + "readOnly": false, + }, + { + "attribute": "reports", + "readOnly": false, + }, + { + "attribute": "effectiveRoles", + "readOnly": false, + }, + { + "attribute": "effectiveAssignments", + "readOnly": false, + }, + { + "attribute": "lastSync", + "readOnly": false, + }, + { + "attribute": "kbaInfo", + "readOnly": false, + }, + { + "attribute": "preferences", + "readOnly": false, + }, + { + "attribute": "consentedMappings", + "readOnly": false, + }, + { + "attribute": "memberOfOrg", + "readOnly": false, + }, + { + "attribute": "adminOfOrg", + "readOnly": false, + }, + { + "attribute": "ownerOfOrg", + "readOnly": true, + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/memberOfOrg/0 pr and /adminOfOrg/0 pr and !(/ownerOfOrg pr)", + "name": "owner-create-admins", + "path": "managed/user", + "permissions": [ + "CREATE", + ], + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "owners", + "readOnly": true, + }, + { + "attribute": "admins", + "readOnly": true, + }, + { + "attribute": "members", + "readOnly": false, + }, + { + "attribute": "parent", + "readOnly": false, + }, + { + "attribute": "children", + "readOnly": false, + }, + { + "attribute": "parentIDs", + "readOnly": true, + }, + { + "attribute": "adminIDs", + "readOnly": true, + }, + { + "attribute": "parentAdminIDs", + "readOnly": true, + }, + { + "attribute": "ownerIDs", + "readOnly": true, + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/adminIDs eq "{{_id}}" or /parentAdminIDs eq "{{_id}}"", + "name": "admin-view-update-delete-orgs", + "path": "managed/organization", + "permissions": [ + "VIEW", + "UPDATE", + "DELETE", + ], + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "owners", + "readOnly": true, + }, + { + "attribute": "admins", + "readOnly": true, + }, + { + "attribute": "members", + "readOnly": false, + }, + { + "attribute": "parent", + "readOnly": false, + }, + { + "attribute": "children", + "readOnly": false, + }, + { + "attribute": "parentIDs", + "readOnly": true, + }, + { + "attribute": "adminIDs", + "readOnly": true, + }, + { + "attribute": "parentAdminIDs", + "readOnly": true, + }, + { + "attribute": "ownerIDs", + "readOnly": true, + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/parent pr", + "name": "admin-create-orgs", + "path": "managed/organization", + "permissions": [ + "CREATE", + ], + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false, + }, + { + "attribute": "password", + "readOnly": false, + }, + { + "attribute": "givenName", + "readOnly": false, + }, + { + "attribute": "sn", + "readOnly": false, + }, + { + "attribute": "mail", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "accountStatus", + "readOnly": false, + }, + { + "attribute": "telephoneNumber", + "readOnly": false, + }, + { + "attribute": "postalAddress", + "readOnly": false, + }, + { + "attribute": "city", + "readOnly": false, + }, + { + "attribute": "postalCode", + "readOnly": false, + }, + { + "attribute": "country", + "readOnly": false, + }, + { + "attribute": "stateProvince", + "readOnly": false, + }, + { + "attribute": "roles", + "readOnly": false, + }, + { + "attribute": "manager", + "readOnly": false, + }, + { + "attribute": "authzRoles", + "readOnly": false, + }, + { + "attribute": "reports", + "readOnly": false, + }, + { + "attribute": "effectiveRoles", + "readOnly": false, + }, + { + "attribute": "effectiveAssignments", + "readOnly": false, + }, + { + "attribute": "lastSync", + "readOnly": false, + }, + { + "attribute": "kbaInfo", + "readOnly": false, + }, + { + "attribute": "preferences", + "readOnly": false, + }, + { + "attribute": "consentedMappings", + "readOnly": false, + }, + { + "attribute": "memberOfOrg", + "readOnly": false, + }, + { + "attribute": "adminOfOrg", + "readOnly": true, + }, + { + "attribute": "ownerOfOrg", + "readOnly": true, + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/memberOfOrgIDs eq "__org_id_placeholder__"", + "name": "admin-view-update-delete-members", + "path": "managed/user", + "permissions": [ + "VIEW", + "DELETE", + "UPDATE", + ], + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false, + }, + { + "attribute": "password", + "readOnly": false, + }, + { + "attribute": "givenName", + "readOnly": false, + }, + { + "attribute": "sn", + "readOnly": false, + }, + { + "attribute": "mail", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "accountStatus", + "readOnly": false, + }, + { + "attribute": "telephoneNumber", + "readOnly": false, + }, + { + "attribute": "postalAddress", + "readOnly": false, + }, + { + "attribute": "city", + "readOnly": false, + }, + { + "attribute": "postalCode", + "readOnly": false, + }, + { + "attribute": "country", + "readOnly": false, + }, + { + "attribute": "stateProvince", + "readOnly": false, + }, + { + "attribute": "roles", + "readOnly": false, + }, + { + "attribute": "manager", + "readOnly": false, + }, + { + "attribute": "authzRoles", + "readOnly": false, + }, + { + "attribute": "reports", + "readOnly": false, + }, + { + "attribute": "effectiveRoles", + "readOnly": false, + }, + { + "attribute": "effectiveAssignments", + "readOnly": false, + }, + { + "attribute": "lastSync", + "readOnly": false, + }, + { + "attribute": "kbaInfo", + "readOnly": false, + }, + { + "attribute": "preferences", + "readOnly": false, + }, + { + "attribute": "consentedMappings", + "readOnly": false, + }, + { + "attribute": "memberOfOrg", + "readOnly": false, + }, + { + "attribute": "adminOfOrg", + "readOnly": true, + }, + { + "attribute": "ownerOfOrg", + "readOnly": true, + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/memberOfOrg/0 pr and !(/adminOfOrg pr) and !(/ownerOfOrg pr)", + "name": "admin-create-members", + "path": "managed/user", + "permissions": [ + "CREATE", + ], + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/process/access.idm.json 1`] = ` +{ + "idm": { + "process/access": { + "_id": "process/access", + "workflowAccess": [ + { + "propertiesCheck": { + "matches": ".*", + "property": "_id", + "requiresRole": "internal/role/openidm-authorized", + }, + }, + { + "propertiesCheck": { + "matches": ".*", + "property": "_id", + "requiresRole": "internal/role/openidm-admin", + }, + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/repo.ds.idm.json 1`] = ` +{ + "idm": { + "repo.ds": { + "_id": "repo.ds", + "commands": { + "delete-mapping-links": { + "_queryFilter": "/linkType eq "\${mapping}"", + "operation": "DELETE", + }, + "delete-target-ids-for-recon": { + "_queryFilter": "/reconId eq "\${reconId}"", + "operation": "DELETE", + }, + }, + "embedded": false, + "ldapConnectionFactories": { + "bind": { + "connectionPoolSize": 50, + "connectionSecurity": "startTLS", + "heartBeatIntervalSeconds": 60, + "heartBeatTimeoutMilliSeconds": 10000, + "primaryLdapServers": [ + { + "hostname": "opendj-frodo-dev.classic.com", + "port": 2389, + }, + ], + "secondaryLdapServers": [], + }, + "root": { + "authentication": { + "simple": { + "bindDn": "uid=admin", + "bindPassword": { + "$crypto": { + "type": "x-simple-encryption", + "value": { + "cipher": "AES/CBC/PKCS5Padding", + "data": "lJ/B6T9e9CDKHCN8TxkD4g==", + "iv": "EdrerzwEUUkHG582cLDw5w==", + "keySize": 32, + "mac": "Aty9fXUtl4pexGlHOc+CBg==", + "purpose": "idm.config.encryption", + "salt": "BITSKlnPeT5klcuEZbngzw==", + "stableId": "openidm-sym-default", + }, + }, + }, + }, + }, + "inheritFrom": "bind", + }, + }, + "maxConnectionAttempts": 5, + "resourceMapping": { + "defaultMapping": { + "dnTemplate": "ou=generic,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "explicitMapping": { + "clusteredrecontargetids": { + "dnTemplate": "ou=clusteredrecontargetids,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-recon-clusteredTargetIds", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly", + }, + "reconId": { + "ldapAttribute": "fr-idm-recon-id", + "type": "simple", + }, + "targetIds": { + "ldapAttribute": "fr-idm-recon-targetIds", + "type": "json", + }, + }, + }, + "dsconfig/attributeValue": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-attribute-value-password-validator", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "checkSubstrings": { + "ldapAttribute": "ds-cfg-check-substrings", + "type": "simple", + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "matchAttribute": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-match-attribute", + "type": "simple", + }, + "minSubstringLength": { + "ldapAttribute": "ds-cfg-min-substring-length", + "type": "simple", + }, + "testReversedPassword": { + "isRequired": true, + "ldapAttribute": "ds-cfg-test-reversed-password", + "type": "simple", + }, + }, + }, + "dsconfig/characterSet": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-character-set-password-validator", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "allowUnclassifiedCharacters": { + "isRequired": true, + "ldapAttribute": "ds-cfg-allow-unclassified-characters", + "type": "simple", + }, + "characterSet": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-character-set", + "type": "simple", + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "minCharacterSets": { + "ldapAttribute": "ds-cfg-min-character-sets", + "type": "simple", + }, + }, + }, + "dsconfig/dictionary": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-dictionary-password-validator", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "caseSensitiveValidation": { + "isRequired": true, + "ldapAttribute": "ds-cfg-case-sensitive-validation", + "type": "simple", + }, + "checkSubstrings": { + "ldapAttribute": "ds-cfg-check-substrings", + "type": "simple", + }, + "dictionaryFile": { + "isRequired": true, + "ldapAttribute": "ds-cfg-dictionary-file", + "type": "simple", + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "minSubstringLength": { + "ldapAttribute": "ds-cfg-min-substring-length", + "type": "simple", + }, + "testReversedPassword": { + "isRequired": true, + "ldapAttribute": "ds-cfg-test-reversed-password", + "type": "simple", + }, + }, + }, + "dsconfig/lengthBased": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-length-based-password-validator", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "maxPasswordLength": { + "ldapAttribute": "ds-cfg-max-password-length", + "type": "simple", + }, + "minPasswordLength": { + "ldapAttribute": "ds-cfg-min-password-length", + "type": "simple", + }, + }, + }, + "dsconfig/passwordPolicies": { + "dnTemplate": "cn=Password Policies,cn=config", + "objectClasses": [ + "ds-cfg-password-policy", + "ds-cfg-authentication-policy", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "defaultPasswordStorageScheme": { + "isMultiValued": true, + "isRequired": true, + "ldapAttribute": "ds-cfg-default-password-storage-scheme", + "type": "simple", + }, + "maxPasswordAge": { + "ldapAttribute": "ds-cfg-max-password-age", + "type": "simple", + }, + "passwordAttribute": { + "isRequired": true, + "ldapAttribute": "ds-cfg-password-attribute", + "type": "simple", + }, + "passwordHistoryCount": { + "ldapAttribute": "ds-cfg-password-history-count", + "type": "simple", + }, + "validator": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-password-validator", + "type": "simple", + }, + }, + }, + "dsconfig/repeatedCharacters": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-repeated-characters-password-validator", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "caseSensitiveValidation": { + "isRequired": true, + "ldapAttribute": "ds-cfg-case-sensitive-validation", + "type": "simple", + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "maxConsecutiveLength": { + "isRequired": true, + "ldapAttribute": "ds-cfg-max-consecutive-length", + "type": "simple", + }, + }, + }, + "dsconfig/similarityBased": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-similarity-based-password-validator", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "minPasswordDifference": { + "isRequired": true, + "ldapAttribute": "ds-cfg-min-password-difference", + "type": "simple", + }, + }, + }, + "dsconfig/uniqueCharacters": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-unique-characters-password-validator", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "caseSensitiveValidation": { + "isRequired": true, + "ldapAttribute": "ds-cfg-case-sensitive-validation", + "type": "simple", + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "minUniqueCharacters": { + "isRequired": true, + "ldapAttribute": "ds-cfg-min-unique-characters", + "type": "simple", + }, + }, + }, + "dsconfig/userDefinedVirtualAttribute": { + "dnTemplate": "cn=Virtual Attributes,cn=config", + "objectClasses": [ + "ds-cfg-user-defined-virtual-attribute", + "ds-cfg-virtual-attribute", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "attributeType": { + "isRequired": true, + "ldapAttribute": "ds-cfg-attribute-type", + "type": "simple", + }, + "baseDn": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-base-dn", + "type": "simple", + }, + "conflictBehavior": { + "ldapAttribute": "ds-cfg-conflict-behavior", + "type": "simple", + }, + "enabled": { + "isRequired": true, + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "filter": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-filter", + "type": "simple", + }, + "groupDn": { + "ldapAttribute": "ds-cfg-group-dn", + "type": "simple", + }, + "javaClass": { + "isRequired": true, + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "scope": { + "ldapAttribute": "ds-cfg-scope", + "type": "simple", + }, + "value": { + "isMultiValued": true, + "isRequired": true, + "ldapAttribute": "ds-cfg-value", + "type": "simple", + }, + }, + }, + "internal/role": { + "dnTemplate": "ou=roles,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "fr-idm-internal-role", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "authzMembers": { + "isMultiValued": true, + "propertyName": "authzRoles", + "resourcePath": "managed/user", + "type": "reverseReference", + }, + "condition": { + "ldapAttribute": "fr-idm-condition", + "type": "simple", + }, + "description": { + "ldapAttribute": "description", + "type": "simple", + }, + "name": { + "ldapAttribute": "fr-idm-name", + "type": "simple", + }, + "privileges": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-privilege", + "type": "json", + }, + "temporalConstraints": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-temporal-constraints", + "type": "json", + }, + }, + }, + "internal/user": { + "dnTemplate": "ou=users,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-internal-user", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly", + }, + "password": { + "ldapAttribute": "fr-idm-password", + "type": "json", + }, + }, + }, + "link": { + "dnTemplate": "ou=links,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-link", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly", + }, + "firstId": { + "ldapAttribute": "fr-idm-link-firstId", + "type": "simple", + }, + "linkQualifier": { + "ldapAttribute": "fr-idm-link-qualifier", + "type": "simple", + }, + "linkType": { + "ldapAttribute": "fr-idm-link-type", + "type": "simple", + }, + "secondId": { + "ldapAttribute": "fr-idm-link-secondId", + "type": "simple", + }, + }, + }, + "locks": { + "dnTemplate": "ou=locks,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-lock", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly", + }, + "nodeId": { + "ldapAttribute": "fr-idm-lock-nodeid", + "type": "simple", + }, + }, + }, + "recon/assoc": { + "dnTemplate": "ou=assoc,ou=recon,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "namingStrategy": { + "dnAttribute": "fr-idm-reconassoc-reconid", + "type": "clientDnNaming", + }, + "objectClasses": [ + "fr-idm-reconassoc", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "fr-idm-reconassoc-reconid", + "type": "simple", + }, + "finishTime": { + "ldapAttribute": "fr-idm-reconassoc-finishtime", + "type": "simple", + }, + "isAnalysis": { + "ldapAttribute": "fr-idm-reconassoc-isanalysis", + "type": "simple", + }, + "mapping": { + "ldapAttribute": "fr-idm-reconassoc-mapping", + "type": "simple", + }, + "sourceResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-sourceresourcecollection", + "type": "simple", + }, + "targetResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-targetresourcecollection", + "type": "simple", + }, + }, + "subResources": { + "entry": { + "namingStrategy": { + "dnAttribute": "uid", + "type": "clientDnNaming", + }, + "resource": "recon-assoc-entry", + "type": "collection", + }, + }, + }, + "recon/assoc/entry": { + "objectClasses": [ + "uidObject", + "fr-idm-reconassocentry", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + }, + "action": { + "ldapAttribute": "fr-idm-reconassocentry-action", + "type": "simple", + }, + "ambiguousTargetObjectIds": { + "ldapAttribute": "fr-idm-reconassocentry-ambiguoustargetobjectids", + "type": "simple", + }, + "exception": { + "ldapAttribute": "fr-idm-reconassocentry-exception", + "type": "simple", + }, + "isAnalysis": { + "ldapAttribute": "fr-idm-reconassoc-isanalysis", + "type": "simple", + }, + "linkQualifier": { + "ldapAttribute": "fr-idm-reconassocentry-linkqualifier", + "type": "simple", + }, + "mapping": { + "ldapAttribute": "fr-idm-reconassoc-mapping", + "type": "simple", + }, + "message": { + "ldapAttribute": "fr-idm-reconassocentry-message", + "type": "simple", + }, + "messageDetail": { + "ldapAttribute": "fr-idm-reconassocentry-messagedetail", + "type": "simple", + }, + "phase": { + "ldapAttribute": "fr-idm-reconassocentry-phase", + "type": "simple", + }, + "reconId": { + "ldapAttribute": "fr-idm-reconassocentry-reconid", + "type": "simple", + }, + "situation": { + "ldapAttribute": "fr-idm-reconassocentry-situation", + "type": "simple", + }, + "sourceObjectId": { + "ldapAttribute": "fr-idm-reconassocentry-sourceObjectId", + "type": "simple", + }, + "sourceResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-sourceresourcecollection", + "type": "simple", + }, + "status": { + "ldapAttribute": "fr-idm-reconassocentry-status", + "type": "simple", + }, + "targetObjectId": { + "ldapAttribute": "fr-idm-reconassocentry-targetObjectId", + "type": "simple", + }, + "targetResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-targetresourcecollection", + "type": "simple", + }, + }, + "resourceName": "recon-assoc-entry", + "subResourceRouting": [ + { + "prefix": "entry", + "template": "recon/assoc/{reconId}/entry", + }, + ], + }, + "sync/queue": { + "dnTemplate": "ou=queue,ou=sync,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-syncqueue", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly", + }, + "context": { + "ldapAttribute": "fr-idm-syncqueue-context", + "type": "json", + }, + "createDate": { + "ldapAttribute": "fr-idm-syncqueue-createdate", + "type": "simple", + }, + "mapping": { + "ldapAttribute": "fr-idm-syncqueue-mapping", + "type": "simple", + }, + "newObject": { + "ldapAttribute": "fr-idm-syncqueue-newobject", + "type": "json", + }, + "nodeId": { + "ldapAttribute": "fr-idm-syncqueue-nodeid", + "type": "simple", + }, + "objectRev": { + "ldapAttribute": "fr-idm-syncqueue-objectRev", + "type": "simple", + }, + "oldObject": { + "ldapAttribute": "fr-idm-syncqueue-oldobject", + "type": "json", + }, + "resourceCollection": { + "ldapAttribute": "fr-idm-syncqueue-resourcecollection", + "type": "simple", + }, + "resourceId": { + "ldapAttribute": "fr-idm-syncqueue-resourceid", + "type": "simple", + }, + "state": { + "ldapAttribute": "fr-idm-syncqueue-state", + "type": "simple", + }, + "syncAction": { + "ldapAttribute": "fr-idm-syncqueue-syncaction", + "type": "simple", + }, + }, + }, + }, + "genericMapping": { + "cluster/*": { + "dnTemplate": "ou=cluster,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-cluster-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchClusterObject", + "objectClasses": [ + "uidObject", + "fr-idm-cluster-obj", + ], + }, + "config": { + "dnTemplate": "ou=config,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "file": { + "dnTemplate": "ou=file,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "import": { + "dnTemplate": "ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "import/*": { + "dnTemplate": "ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "internal/notification": { + "dnTemplate": "ou=notification,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-notification-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-notification", + ], + "properties": { + "target": { + "propertyName": "_notifications", + "resourcePath": "managed/user", + "type": "reverseReference", + }, + }, + }, + "internal/usermeta": { + "dnTemplate": "ou=usermeta,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-generic-obj", + ], + "properties": { + "target": { + "propertyName": "_meta", + "resourcePath": "managed/user", + "type": "reverseReference", + }, + }, + }, + "jsonstorage": { + "dnTemplate": "ou=jsonstorage,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "managed/*": { + "dnTemplate": "ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "managed/assignment": { + "dnTemplate": "ou=assignment,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-managed-assignment-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-assignment", + ], + "properties": { + "condition": { + "ldapAttribute": "fr-idm-assignment-condition", + "type": "simple", + }, + "members": { + "isMultiValued": true, + "propertyName": "assignments", + "resourcePath": "managed/user", + "type": "reverseReference", + }, + "roles": { + "isMultiValued": true, + "propertyName": "assignments", + "resourcePath": "managed/role", + "type": "reverseReference", + }, + }, + }, + "managed/organization": { + "dnTemplate": "ou=organization,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-managed-organization-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-organization", + ], + "properties": { + "admins": { + "isMultiValued": true, + "propertyName": "adminOfOrg", + "resourcePath": "managed/user", + "type": "reverseReference", + }, + "children": { + "isMultiValued": true, + "propertyName": "parent", + "resourcePath": "managed/organization", + "type": "reverseReference", + }, + "members": { + "isMultiValued": true, + "propertyName": "memberOfOrg", + "resourcePath": "managed/user", + "type": "reverseReference", + }, + "name": { + "ldapAttribute": "fr-idm-managed-organization-name", + "type": "simple", + }, + "owners": { + "isMultiValued": true, + "propertyName": "ownerOfOrg", + "resourcePath": "managed/user", + "type": "reverseReference", + }, + "parent": { + "ldapAttribute": "fr-idm-managed-organization-parent", + "primaryKey": "uid", + "resourcePath": "managed/organization", + "type": "reference", + }, + }, + }, + "managed/role": { + "dnTemplate": "ou=role,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-managed-role-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchManagedRole", + "objectClasses": [ + "uidObject", + "fr-idm-managed-role", + ], + "properties": { + "assignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-role-assignments", + "primaryKey": "uid", + "resourcePath": "managed/assignment", + "type": "reference", + }, + "members": { + "isMultiValued": true, + "propertyName": "roles", + "resourcePath": "managed/user", + "type": "reverseReference", + }, + }, + }, + "managed/user": { + "dnTemplate": "ou=user,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-managed-user-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchManagedUser", + "objectClasses": [ + "uidObject", + "fr-idm-managed-user", + ], + "properties": { + "_meta": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-meta", + "primaryKey": "uid", + "resourcePath": "internal/usermeta", + "type": "reference", + }, + "_notifications": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-notifications", + "primaryKey": "uid", + "resourcePath": "internal/notification", + "type": "reference", + }, + "adminOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-admin", + "primaryKey": "uid", + "resourcePath": "managed/organization", + "type": "reference", + }, + "assignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-assignment-member", + "primaryKey": "uid", + "resourcePath": "managed/assignment", + "type": "reference", + }, + "authzRoles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-authzroles-internal-role", + "primaryKey": "cn", + "resourcePath": "internal/role", + "type": "reference", + }, + "manager": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-manager", + "primaryKey": "uid", + "resourcePath": "managed/user", + "type": "reference", + }, + "memberOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-member", + "primaryKey": "uid", + "resourcePath": "managed/organization", + "type": "reference", + }, + "ownerOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-owner", + "primaryKey": "uid", + "resourcePath": "managed/organization", + "type": "reference", + }, + "passwordExpirationTime": { + "ldapAttribute": "pwdExpirationTime", + "type": "simple", + "writability": "readOnlyDiscardWrites", + }, + "passwordLastChangedTime": { + "ldapAttribute": "pwdChangedTime", + "type": "simple", + "writability": "readOnlyDiscardWrites", + }, + "reports": { + "isMultiValued": true, + "propertyName": "manager", + "resourcePath": "managed/user", + "type": "reverseReference", + }, + "roles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-roles", + "primaryKey": "uid", + "resourcePath": "managed/role", + "type": "reference", + }, + }, + }, + "reconprogressstate": { + "dnTemplate": "ou=reconprogressstate,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "relationships": { + "dnTemplate": "ou=relationships,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-relationship-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchRelationship", + "objectClasses": [ + "uidObject", + "fr-idm-relationship", + ], + }, + "scheduler": { + "dnTemplate": "ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "scheduler/*": { + "dnTemplate": "ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "ui/*": { + "dnTemplate": "ou=ui,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "updates": { + "dnTemplate": "ou=updates,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + }, + }, + "rest2LdapOptions": { + "mvccAttribute": "etag", + "readOnUpdatePolicy": "controls", + "returnNullForMissingProperties": true, + "useMvcc": true, + "usePermissiveModify": true, + "useSubtreeDelete": false, + }, + "security": { + "fileBasedTrustManagerFile": "&{idm.install.dir}/security/truststore", + "fileBasedTrustManagerPasswordFile": "&{idm.install.dir}/security/storepass", + "fileBasedTrustManagerType": "JKS", + "trustManager": "file", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/repo.init.idm.json 1`] = ` +{ + "idm": { + "repo.init": { + "_id": "repo.init", + "insert": { + "internal/role": [ + { + "description": "Administrative access", + "id": "openidm-admin", + "name": "openidm-admin", + }, + { + "description": "Basic minimum user", + "id": "openidm-authorized", + "name": "openidm-authorized", + }, + { + "description": "Anonymous access", + "id": "openidm-reg", + "name": "openidm-reg", + }, + { + "description": "Authenticated via certificate", + "id": "openidm-cert", + "name": "openidm-cert", + }, + { + "description": "Allowed to reassign workflow tasks", + "id": "openidm-tasks-manager", + "name": "openidm-tasks-manager", + }, + { + "description": "Platform provisioning access", + "id": "platform-provisioning", + "name": "platform-provisioning", + }, + ], + "internal/user": [ + { + "id": "openidm-admin", + "password": "&{openidm.admin.password}", + }, + { + "id": "anonymous", + "password": "anonymous", + }, + { + "id": "idm-provisioning", + }, + { + "id": "connector-server-client", + }, + ], + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/router.idm.json 1`] = ` +{ + "idm": { + "router": { + "_id": "router", + "filters": [ + { + "methods": [ + "create", + "update", + ], + "onRequest": { + "file": "policyFilter.js", + "type": "text/javascript", + }, + "pattern": "^(managed|internal)($|(/.+))", + }, + { + "methods": [ + "update", + ], + "onRequest": { + "file": "policyFilter.js", + "type": "text/javascript", + }, + "pattern": "^config/managed$", + }, + { + "condition": { + "source": "(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0)", + "type": "text/javascript", + }, + "onResponse": { + "source": "require('relationshipFilter').filterResponse()", + "type": "text/javascript", + }, + "pattern": "^(managed|internal)($|(/.+))", + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/schedule/seantest.idm.json 1`] = ` +{ + "idm": { + "schedule/seantest": { + "_id": "schedule/seantest", + "concurrentExecution": false, + "enabled": false, + "endTime": null, + "invokeContext": { + "script": { + "globals": {}, + "source": "//sean has changed this script. Let's see if it is still working. qqqqqqqqqqqqqqSchedule1 +", + "type": "text/javascript", + }, + }, + "invokeLogLevel": "info", + "invokeService": "script", + "misfirePolicy": "fireAndProceed", + "persisted": true, + "recoverable": false, + "repeatCount": 0, + "repeatInterval": 0, + "schedule": null, + "startTime": null, + "type": "simple", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/schedule/taskscan_activate.idm.json 1`] = ` +{ + "idm": { + "schedule/taskscan_activate": { + "_id": "schedule/taskscan_activate", + "concurrentExecution": false, + "enabled": false, + "invokeContext": { + "numberOfThreads": 5, + "scan": { + "_queryFilter": "((/activeDate le "\${Time.nowWithOffset}") AND (!(/inactiveDate pr) or /inactiveDate ge "\${Time.nowWithOffset}"))", + "object": "managed/user", + "recovery": { + "timeout": "10m", + }, + "taskState": { + "completed": "/activateAccount/task-completed", + "started": "/activateAccount/task-started", + }, + }, + "task": { + "script": { + "globals": {}, + "source": "var patch = [{ "operation" : "replace", "field" : "/accountStatus", "value" : "active" }]; + +logger.debug("Performing Activate Account Task on {} ({})", input.mail, objectID); + +openidm.patch(objectID, null, patch); true;", + "type": "text/javascript", + }, + }, + "waitForCompletion": false, + }, + "invokeService": "taskscanner", + "persisted": true, + "repeatInterval": 86400000, + "type": "simple", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/schedule/taskscan_expire.idm.json 1`] = ` +{ + "idm": { + "schedule/taskscan_expire": { + "_id": "schedule/taskscan_expire", + "concurrentExecution": false, + "enabled": false, + "invokeContext": { + "numberOfThreads": 5, + "scan": { + "_queryFilter": "((/inactiveDate lt "\${Time.nowWithOffset}") AND (!(/activeDate pr) or /activeDate le "\${Time.nowWithOffset}"))", + "object": "managed/user", + "recovery": { + "timeout": "10m", + }, + "taskState": { + "completed": "/expireAccount/task-completed", + "started": "/expireAccount/task-started", + }, + }, + "task": { + "script": { + "globals": {}, + "source": "var patch = [{ "operation" : "replace", "field" : "/accountStatus", "value" : "inactive" }]; + +logger.debug("Performing Expire Account Task on {} ({})", input.mail, objectID); + +openidm.patch(objectID, null, patch); true;", + "type": "text/javascript", + }, + }, + "waitForCompletion": false, + }, + "invokeService": "taskscanner", + "persisted": true, + "repeatInterval": 86400000, + "type": "simple", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/scheduler.idm.json 1`] = ` +{ + "idm": { + "scheduler": { + "_id": "scheduler", + "scheduler": { + "executePersistentSchedules": { + "$bool": "&{openidm.scheduler.execute.persistent.schedules}", + }, + }, + "threadPool": { + "threadCount": 10, + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/script.idm.json 1`] = ` +{ + "idm": { + "script": { + "ECMAScript": { + "javascript.optimization.level": 9, + "javascript.recompile.minimumInterval": 60000, + }, + "Groovy": { + "#groovy.disabled.global.ast.transformations": "", + "#groovy.errors.tolerance": 10, + "#groovy.output.debug": false, + "#groovy.output.verbose": false, + "#groovy.script.base": "#any class extends groovy.lang.Script", + "#groovy.script.extension": ".groovy", + "#groovy.target.bytecode": "1.8", + "#groovy.target.directory": "&{idm.data.dir}/classes", + "#groovy.target.indy": true, + "#groovy.warnings": "likely errors #othere values [none,likely,possible,paranoia]", + "groovy.classpath": "&{idm.install.dir}/lib", + "groovy.recompile": true, + "groovy.recompile.minimumInterval": 60000, + "groovy.source.encoding": "UTF-8", + }, + "_id": "script", + "properties": {}, + "sources": { + "default": { + "directory": "&{idm.install.dir}/bin/defaults/script", + }, + "install": { + "directory": "&{idm.install.dir}", + }, + "project": { + "directory": "&{idm.instance.dir}", + }, + "project-script": { + "directory": "&{idm.instance.dir}/script", + }, + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/secrets.idm.json 1`] = ` +{ + "idm": { + "secrets": { + "_id": "secrets", + "stores": [ + { + "class": "org.forgerock.openidm.secrets.config.KeyStoreSecretStore", + "config": { + "file": "&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}", + "mappings": [ + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}", + ], + "secretId": "idm.default", + "types": [ + "ENCRYPT", + "DECRYPT", + ], + }, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}", + ], + "secretId": "idm.config.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], + }, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}", + ], + "secretId": "idm.password.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], + }, + { + "aliases": [ + "&{openidm.https.keystore.cert.alias|openidm-localhost}", + ], + "secretId": "idm.jwt.session.module.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], + }, + { + "aliases": [ + "&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}", + ], + "secretId": "idm.jwt.session.module.signing", + "types": [ + "SIGN", + "VERIFY", + ], + }, + { + "aliases": [ + "selfservice", + ], + "secretId": "idm.selfservice.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], + }, + { + "aliases": [ + "&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}", + ], + "secretId": "idm.selfservice.signing", + "types": [ + "SIGN", + "VERIFY", + ], + }, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}", + ], + "secretId": "idm.assignment.attribute.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], + }, + ], + "providerName": "&{openidm.keystore.provider|SunJCE}", + "storePassword": "&{openidm.keystore.password|changeit}", + "storetype": "&{openidm.keystore.type|JCEKS}", + }, + "name": "mainKeyStore", + }, + { + "class": "org.forgerock.openidm.secrets.config.KeyStoreSecretStore", + "config": { + "file": "&{openidm.truststore.location|&{idm.install.dir}/security/truststore}", + "mappings": [], + "providerName": "&{openidm.truststore.provider|SUN}", + "storePassword": "&{openidm.truststore.password|changeit}", + "storetype": "&{openidm.truststore.type|JKS}", + }, + "name": "mainTrustStore", + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/selfservice.kba.idm.json 1`] = ` +{ + "idm": { + "selfservice.kba": { + "_id": "selfservice.kba", + "kbaPropertyName": "kbaInfo", + "minimumAnswersToDefine": 2, + "minimumAnswersToVerify": 1, + "questions": { + "1": { + "en": "What's your favorite color?", + "en_GB": "What is your favourite colour?", + "fr": "Quelle est votre couleur préférée?", + }, + "2": { + "en": "Who was your first employer?", + }, + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/selfservice.propertymap.idm.json 1`] = ` +{ + "idm": { + "selfservice.propertymap": { + "_id": "selfservice.propertymap", + "properties": [ + { + "source": "givenName", + "target": "givenName", + }, + { + "source": "familyName", + "target": "sn", + }, + { + "source": "email", + "target": "mail", + }, + { + "condition": "/object/postalAddress pr", + "source": "postalAddress", + "target": "postalAddress", + }, + { + "condition": "/object/addressLocality pr", + "source": "addressLocality", + "target": "city", + }, + { + "condition": "/object/addressRegion pr", + "source": "addressRegion", + "target": "stateProvince", + }, + { + "condition": "/object/postalCode pr", + "source": "postalCode", + "target": "postalCode", + }, + { + "condition": "/object/country pr", + "source": "country", + "target": "country", + }, + { + "condition": "/object/phone pr", + "source": "phone", + "target": "telephoneNumber", + }, + { + "source": "username", + "target": "userName", + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/selfservice.terms.idm.json 1`] = ` +{ + "idm": { + "selfservice.terms": { + "_id": "selfservice.terms", + "active": "0.0", + "uiConfig": { + "buttonText": "Accept", + "displayName": "We've updated our terms", + "purpose": "You must accept the updated terms in order to proceed.", + }, + "versions": [ + { + "createDate": "2019-10-28T04:20:11.320Z", + "termsTranslations": { + "en": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.", + }, + "version": "0.0", + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/servletfilter/cors.idm.json 1`] = ` +{ + "idm": { + "servletfilter/cors": { + "_id": "servletfilter/cors", + "filterClass": "org.eclipse.jetty.ee10.servlets.CrossOriginFilter", + "initParams": { + "allowCredentials": true, + "allowedHeaders": "accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with", + "allowedMethods": "GET,POST,PUT,DELETE,PATCH", + "allowedOrigins": "https://localhost:&{openidm.port.https}", + "chainPreflight": false, + }, + "urlPatterns": [ + "/*", + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/servletfilter/payload.idm.json 1`] = ` +{ + "idm": { + "servletfilter/payload": { + "_id": "servletfilter/payload", + "filterClass": "org.forgerock.openidm.jetty.LargePayloadServletFilter", + "initParams": { + "maxRequestSizeInMegabytes": 5, + }, + "urlPatterns": [ + "&{openidm.servlet.alias}/*", + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/servletfilter/upload.idm.json 1`] = ` +{ + "idm": { + "servletfilter/upload": { + "_id": "servletfilter/upload", + "filterClass": "org.forgerock.openidm.jetty.LargePayloadServletFilter", + "initParams": { + "maxRequestSizeInMegabytes": 50, + }, + "urlPatterns": [ + "&{openidm.servlet.upload.alias}/*", + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/sync.idm.json 1`] = ` +{ + "idm": { + "sync": { + "_id": "sync", + "mappings": [ + { + "_id": "sync/managedOrganization_managedRole", + "consentRequired": false, + "displayName": "managedOrganization_managedRole", + "icon": null, + "name": "managedOrganization_managedRole", + "policies": [ + { + "action": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript", + }, + "situation": "AMBIGUOUS", + }, + { + "action": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript", + }, + "condition": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript", + }, + "situation": "SOURCE_MISSING", + }, + { + "action": { + "globals": {}, + "source": "//seantest", + "type": "groovy", + }, + "postAction": { + "globals": {}, + "source": "//seantest", + "type": "groovy", + }, + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "ABSENT", + }, + ], + "properties": [], + "source": "managed/organization", + "syncAfter": [], + "target": "managed/role", + }, + { + "_id": "sync/managedOrganization_managedSeantestmanagedobject", + "consentRequired": false, + "displayName": "managedOrganization_managedSeantestmanagedobject", + "icon": null, + "name": "managedOrganization_managedSeantestmanagedobject", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/organization", + "syncAfter": [ + "managedOrganization_managedRole", + ], + "target": "managed/seantestmanagedobject", + }, + { + "_id": "sync/managedAssignment_managedUser", + "consentRequired": false, + "displayName": "managedAssignment_managedUser", + "icon": null, + "name": "managedAssignment_managedUser", + "policies": [ + { + "action": { + "globals": {}, + "source": "//asdfasdf", + "type": "groovy", + }, + "situation": "AMBIGUOUS", + }, + { + "action": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "text/javascript", + }, + "condition": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "groovy", + }, + "postAction": { + "globals": {}, + "source": "//asdfasdf", + "type": "text/javascript", + }, + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + { + "action": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "text/javascript", + }, + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "ABSENT", + }, + ], + "properties": [], + "source": "managed/assignment", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + ], + "target": "managed/user", + }, + { + "_id": "sync/seantestmapping", + "consentRequired": false, + "displayName": "seantestmapping", + "icon": null, + "name": "seantestmapping", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/assignment", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser", + ], + "target": "managed/organization", + }, + { + "_id": "sync/managedSeantestmanagedobject_managedUser", + "consentRequired": false, + "displayName": "managedSeantestmanagedobject_managedUser", + "icon": null, + "name": "managedSeantestmanagedobject_managedUser", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/seantestmanagedobject", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser", + "seantestmapping", + ], + "target": "managed/user", + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/ui.context/admin.idm.json 1`] = ` +{ + "idm": { + "ui.context/admin": { + "_id": "ui.context/admin", + "cacheEnabled": true, + "defaultDir": "&{idm.install.dir}/ui/admin/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/admin/extension", + "responseHeaders": { + "X-Frame-Options": "SAMEORIGIN", + }, + "urlContextRoot": "/admin", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/ui.context/api.idm.json 1`] = ` +{ + "idm": { + "ui.context/api": { + "_id": "ui.context/api", + "authEnabled": true, + "cacheEnabled": false, + "defaultDir": "&{idm.install.dir}/ui/api/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/api/extension", + "urlContextRoot": "/api", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/ui.context/enduser.idm.json 1`] = ` +{ + "idm": { + "ui.context/enduser": { + "_id": "ui.context/enduser", + "cacheEnabled": true, + "defaultDir": "&{idm.install.dir}/ui/enduser", + "enabled": true, + "responseHeaders": { + "X-Frame-Options": "DENY", + }, + "urlContextRoot": "/", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/ui.context/oauth.idm.json 1`] = ` +{ + "idm": { + "ui.context/oauth": { + "_id": "ui.context/oauth", + "cacheEnabled": true, + "defaultDir": "&{idm.install.dir}/ui/oauth/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/oauth/extension", + "urlContextRoot": "/oauthReturn", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/ui/configuration.idm.json 1`] = ` +{ + "idm": { + "ui/configuration": { + "_id": "ui/configuration", + "configuration": { + "defaultNotificationType": "info", + "forgotUsername": false, + "lang": "en", + "notificationTypes": { + "error": { + "iconPath": "images/notifications/error.png", + "name": "common.notification.types.error", + }, + "info": { + "iconPath": "images/notifications/info.png", + "name": "common.notification.types.info", + }, + "warning": { + "iconPath": "images/notifications/warning.png", + "name": "common.notification.types.warning", + }, + }, + "passwordReset": false, + "passwordResetLink": "", + "roles": { + "internal/role/openidm-admin": "ui-admin", + "internal/role/openidm-authorized": "ui-user", + }, + "selfRegistration": false, + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/ui/dashboard.idm.json 1`] = ` +{ + "idm": { + "ui/dashboard": { + "_id": "ui/dashboard", + "adminDashboards": [ + { + "isDefault": true, + "name": "Quick Start", + "widgets": [ + { + "cards": [ + { + "href": "#connectors/add/", + "icon": "fa-database", + "name": "Add Connector", + }, + { + "href": "#mapping/add/", + "icon": "fa-map-marker", + "name": "Create Mapping", + }, + { + "href": "#resource/managed/role/list/", + "icon": "fa-check-square-o", + "name": "Manage Roles", + }, + { + "href": "#managed/add/", + "icon": "fa-tablet", + "name": "Add Device", + }, + { + "href": "#selfservice/userregistration/", + "icon": "fa-gear", + "name": "Configure Registration", + }, + { + "href": "#selfservice/passwordreset/", + "icon": "fa-gear", + "name": "Configure Password Reset", + }, + { + "href": "#resource/managed/user/list/", + "icon": "fa-user", + "name": "Manage Users", + }, + { + "href": "#settings/", + "icon": "fa-user", + "name": "Configure System Preferences", + }, + ], + "size": "large", + "type": "quickStart", + }, + ], + }, + { + "isDefault": false, + "name": "System Monitoring", + "widgets": [ + { + "legendRange": { + "month": [ + 500, + 2500, + 5000, + ], + "week": [ + 10, + 30, + 90, + 270, + 810, + ], + "year": [ + 10000, + 40000, + 100000, + 250000, + ], + }, + "maxRange": "#24423c", + "minRange": "#b0d4cd", + "size": "large", + "type": "audit", + }, + { + "size": "large", + "type": "clusterStatus", + }, + { + "size": "large", + "type": "systemHealthFull", + }, + { + "barchart": "false", + "size": "large", + "type": "lastRecon", + }, + ], + }, + { + "isDefault": false, + "name": "Resource Report", + "widgets": [ + { + "selected": "activeUsers", + "size": "x-small", + "type": "counter", + }, + { + "selected": "rolesEnabled", + "size": "x-small", + "type": "counter", + }, + { + "selected": "activeConnectors", + "size": "x-small", + "type": "counter", + }, + { + "size": "large", + "type": "resourceList", + }, + ], + }, + { + "isDefault": false, + "name": "Business Report", + "widgets": [ + { + "graphType": "fa-pie-chart", + "providers": [ + "Username/Password", + ], + "size": "x-small", + "type": "signIns", + "widgetTitle": "Sign-Ins", + }, + { + "graphType": "fa-bar-chart", + "size": "x-small", + "type": "passwordResets", + "widgetTitle": "Password Resets", + }, + { + "graphType": "fa-line-chart", + "providers": [ + "Username/Password", + ], + "size": "x-small", + "type": "newRegistrations", + "widgetTitle": "New Registrations", + }, + { + "size": "x-small", + "timezone": { + "hours": "07", + "minutes": "00", + "negative": true, + }, + "type": "socialLogin", + }, + { + "selected": "socialEnabled", + "size": "x-small", + "type": "counter", + }, + { + "selected": "manualRegistrations", + "size": "x-small", + "type": "counter", + }, + ], + }, + { + "isDefault": false, + "name": "seantestdashboard", + "widgets": [ + { + "size": "large", + "type": "resourceList", + }, + ], + }, + ], + "dashboard": { + "widgets": [ + { + "size": "large", + "type": "Welcome", + }, + ], + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/ui/profile.idm.json 1`] = ` +{ + "idm": { + "ui/profile": { + "_id": "ui/profile", + "tabs": [ + { + "name": "personalInfoTab", + "view": "org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab", + }, + { + "name": "signInAndSecurity", + "view": "org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab", + }, + { + "name": "preference", + "view": "org/forgerock/openidm/ui/user/profile/PreferencesTab", + }, + { + "name": "trustedDevice", + "view": "org/forgerock/openidm/ui/user/profile/TrustedDevicesTab", + }, + { + "name": "oauthApplication", + "view": "org/forgerock/openidm/ui/user/profile/OauthApplicationsTab", + }, + { + "name": "privacyAndConsent", + "view": "org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab", + }, + { + "name": "sharing", + "view": "org/forgerock/openidm/ui/user/profile/uma/SharingTab", + }, + { + "name": "auditHistory", + "view": "org/forgerock/openidm/ui/user/profile/uma/ActivityTab", + }, + { + "name": "accountControls", + "view": "org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab", + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/ui/themeconfig.idm.json 1`] = ` +{ + "idm": { + "ui/themeconfig": { + "_id": "ui/themeconfig", + "icon": "favicon.ico", + "path": "", + "settings": { + "footer": { + "mailto": "info@pingidentity.com", + }, + "loginLogo": { + "alt": "Ping Identity", + "height": "120px", + "src": "images/login-logo-dark.png", + "title": "Ping Identity", + "width": "120px", + }, + "logo": { + "alt": "Ping Identity", + "src": "images/logo-horizontal-white.png", + "title": "Ping Identity", + }, + }, + "stylesheets": [ + "css/bootstrap-3.4.1-custom.css", + "css/structure.css", + "css/theme.css", + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/webserver.idm.json 1`] = ` +{ + "idm": { + "webserver": { + "_id": "webserver", + "gzip": { + "enabled": true, + "includedMethods": [ + "GET", + ], + }, + "maxThreads": { + "$int": "&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/webserver.listener/http.idm.json 1`] = ` +{ + "idm": { + "webserver.listener/http": { + "_id": "webserver.listener/http", + "enabled": { + "$bool": "&{openidm.http.enabled|true}", + }, + "port": { + "$int": "&{openidm.port.http|8080}", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/webserver.listener/https.idm.json 1`] = ` +{ + "idm": { + "webserver.listener/https": { + "_id": "webserver.listener/https", + "enabled": { + "$bool": "&{openidm.https.enabled|true}", + }, + "port": { + "$int": "&{openidm.port.https|8443}", + }, + "secure": true, + "sslCertAlias": "&{openidm.https.keystore.cert.alias|openidm-localhost}", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AD idmTestDir6 -m idm": should export all idm config entities for on prem idm: idmTestDir6/webserver.listener/mutualAuth.idm.json 1`] = ` +{ + "idm": { + "webserver.listener/mutualAuth": { + "_id": "webserver.listener/mutualAuth", + "enabled": { + "$bool": "&{openidm.mutualauth.enabled|true}", + }, + "mutualAuth": true, + "port": { + "$int": "&{openidm.port.mutualauth|8444}", + }, + "secure": true, + "sslCertAlias": "&{openidm.https.keystore.cert.alias|openidm-localhost}", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm 1`] = `0`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm 2`] = `""`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/access.idm.json 1`] = ` +{ + "idm": { + "access": { + "_id": "access", + "configs": [ + { + "actions": "", + "methods": "read", + "pattern": "health", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "info/*", + "roles": "*", + }, + { + "actions": "login,logout", + "methods": "read,action", + "pattern": "authentication", + "roles": "*", + }, + { + "actions": "validate", + "methods": "action", + "pattern": "util/validateQueryFilter", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/themeconfig", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/theme-*", + "roles": "*", + }, + { + "actions": "*", + "customAuthz": "checkIfAnyFeatureEnabled(['registration', 'passwordReset'])", + "methods": "read", + "pattern": "config/selfservice/kbaConfig", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/dashboard", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "query", + "pattern": "info/features", + "roles": "*", + }, + { + "actions": "listPrivileges", + "methods": "action", + "pattern": "privilege", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "privilege/*", + "roles": "*", + }, + { + "actions": "submitRequirements", + "methods": "read,action", + "pattern": "selfservice/termsAndConditions", + "roles": "*", + }, + { + "actions": "submitRequirements", + "methods": "read,action", + "pattern": "selfservice/kbaUpdate", + "roles": "*", + }, + { + "actions": "", + "customAuthz": "isMyProfile()", + "methods": "read,query", + "pattern": "profile/*", + "roles": "*", + }, + { + "actions": "*", + "customAuthz": "checkIfAnyFeatureEnabled('kba')", + "methods": "read", + "pattern": "selfservice/kba", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "read", + "pattern": "schema/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "action,query", + "pattern": "consent", + "roles": "internal/role/openidm-authorized", + }, + { + "customAuthz": "checkIfApiRequest()", + "methods": "read", + "pattern": "*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "*", + "excludePatterns": "repo,repo/*", + "methods": "*", + "pattern": "*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "", + "methods": "create,read,update,delete,patch,query", + "pattern": "system/*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "*", + "methods": "script", + "pattern": "system/*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "test,testConfig,createconfiguration,liveSync,authenticate", + "methods": "action", + "pattern": "system/*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "*", + "customAuthz": "disallowCommandAction()", + "methods": "*", + "pattern": "repo", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "*", + "customAuthz": "disallowCommandAction()", + "methods": "*", + "pattern": "repo/*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "command", + "customAuthz": "request.additionalParameters.commandId === 'delete-mapping-links'", + "methods": "action", + "pattern": "repo/link", + "roles": "internal/role/openidm-admin", + }, + { + "methods": "create,read,query,patch", + "pattern": "managed/*", + "roles": "internal/role/platform-provisioning", + }, + { + "methods": "read,query", + "pattern": "internal/role/*", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "*", + "methods": "create,read,action,update", + "pattern": "profile/*", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "*", + "methods": "read,action", + "pattern": "policy/*", + "roles": "internal/role/platform-provisioning", + }, + { + "methods": "read", + "pattern": "schema/*", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "*", + "methods": "action,query", + "pattern": "consent", + "roles": "internal/role/platform-provisioning", + }, + { + "methods": "read", + "pattern": "selfservice/kba", + "roles": "internal/role/platform-provisioning", + }, + { + "methods": "read", + "pattern": "selfservice/terms", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "sendTemplate", + "methods": "action", + "pattern": "external/email", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "authenticate", + "methods": "action", + "pattern": "system/*", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "*", + "methods": "read,action", + "pattern": "policy/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "reauthenticate", + "methods": "action", + "pattern": "authentication", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "bind,unbind", + "customAuthz": "ownDataOnly()", + "methods": "read,action,delete", + "pattern": "*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "patch", + "customAuthz": "ownDataOnly() && onlyEditableManagedObjectProperties('user', []) && reauthIfProtectedAttributeChange()", + "methods": "update,patch,action", + "pattern": "*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "read", + "pattern": "endpoint/getprocessesforuser", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "query", + "pattern": "endpoint/gettasksview", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "complete", + "customAuthz": "isMyTask()", + "methods": "action", + "pattern": "workflow/taskinstance/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "customAuthz": "canUpdateTask()", + "methods": "read,update", + "pattern": "workflow/taskinstance/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "customAuthz": "isAllowedToStartProcess()", + "methods": "create", + "pattern": "workflow/processinstance", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "read", + "methods": "*", + "pattern": "workflow/processdefinition/*", + "roles": "internal/role/openidm-authorized", + }, + { + "customAuthz": "restrictPatchToFields(['password'])", + "methods": "patch", + "pattern": "managed/user/*", + "roles": "internal/role/openidm-cert", + }, + { + "actions": "*", + "customAuthz": "ownRelationshipProperty('_meta', false)", + "methods": "read", + "pattern": "internal/usermeta/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "customAuthz": "ownRelationshipProperty('_notifications', true)", + "methods": "read,delete", + "pattern": "internal/notification/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "customAuthz": "ownRelationshipCollection(['idps','_meta','_notifications'])", + "methods": "read,query", + "pattern": "managed/user/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "deleteNotificationsForTarget", + "customAuthz": "request.additionalParameters.target === (context.security.authorization.component + '/' + context.security.authorization.id)", + "methods": "action", + "pattern": "notification", + "roles": "internal/role/openidm-authorized", + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/apiVersion.idm.json 1`] = ` +{ + "idm": { + "apiVersion": { + "_id": "apiVersion", + "warning": { + "enabled": { + "$bool": "&{openidm.apiVersion.warning.enabled|false}", + }, + "includeScripts": { + "$bool": "&{openidm.apiVersion.warning.includeScripts|false}", + }, + "logFilterResourcePaths": [ + "audit", + "authentication", + "cluster", + "config", + "consent", + "csv", + "external/rest", + "identityProviders", + "info", + "internal", + "internal/role", + "internal/user", + "internal/usermeta", + "managed", + "managed/assignment", + "managed/organization", + "managed/role", + "managed/user", + "notification", + "policy", + "privilege", + "profile", + "recon", + "recon/assoc", + "repo", + "selfservice/kba", + "selfservice/terms", + "scheduler/job", + "scheduler/trigger", + "schema", + "sync", + "sync/mappings", + "system", + "taskscanner", + ], + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/audit.idm.json 1`] = ` +{ + "idm": { + "audit": { + "_id": "audit", + "auditServiceConfig": { + "availableAuditEventHandlers": [ + "org.forgerock.audit.handlers.csv.CsvAuditEventHandler", + "org.forgerock.audit.handlers.jms.JmsAuditEventHandler", + "org.forgerock.audit.handlers.json.JsonAuditEventHandler", + "org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler", + "org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler", + "org.forgerock.openidm.audit.impl.RouterAuditEventHandler", + "org.forgerock.audit.handlers.syslog.SyslogAuditEventHandler", + ], + "caseInsensitiveFields": [ + "/access/http/request/headers", + "/access/http/response/headers", + ], + "filterPolicies": { + "field": { + "excludeIf": [], + "includeIf": [], + }, + }, + "handlerForQueries": "json", + }, + "eventHandlers": [ + { + "class": "org.forgerock.audit.handlers.json.JsonAuditEventHandler", + "config": { + "buffering": { + "maxSize": 100000, + "writeInterval": "100 millis", + }, + "enabled": { + "$bool": "&{openidm.audit.handler.json.enabled|true}", + }, + "logDirectory": "&{idm.data.dir}/audit", + "name": "json", + "topics": [ + "access", + "activity", + "sync", + "authentication", + "config", + ], + }, + }, + { + "class": "org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler", + "config": { + "enabled": { + "$bool": "&{openidm.audit.handler.stdout.enabled|false}", + }, + "name": "stdout", + "topics": [ + "access", + "activity", + "sync", + "authentication", + "config", + ], + }, + }, + { + "class": "org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler", + "config": { + "enabled": { + "$bool": "&{openidm.audit.handler.repo.enabled|false}", + }, + "name": "repo", + "topics": [ + "access", + "activity", + "sync", + "authentication", + "config", + ], + }, + }, + ], + "eventTopics": { + "access": { + "defaultEvents": true, + "filter": { + "script": { + "globals": {}, + "source": "file://audit.idm.scripts/eventTopics.access.filter.script.script.groovy", + "type": "groovy", + }, + }, + "name": "access", + }, + "activity": { + "defaultEvents": true, + "filter": { + "actions": [ + "create", + "update", + "delete", + "patch", + "action", + ], + }, + "name": "activity", + "passwordFields": [ + "password", + ], + "watchedFields": [], + }, + "authentication": { + "defaultEvents": true, + "filter": { + "script": { + "globals": {}, + "source": "file://audit.idm.scripts/eventTopics.authentication.filter.script.script.js", + "type": "text/javascript", + }, + }, + "name": "authentication", + }, + "config": { + "defaultEvents": true, + "filter": { + "actions": [ + "create", + "update", + "delete", + "patch", + "action", + ], + }, + "name": "config", + }, + "recon": { + "defaultEvents": true, + "name": "recon", + }, + "sync": { + "defaultEvents": true, + "name": "sync", + }, + }, + "exceptionFormatter": { + "globals": {}, + "source": "file://audit.idm.scripts/exceptionFormatter.script.js", + "type": "text/javascript", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/audit.idm.scripts/eventTopics.access.filter.script.script.groovy 1`] = ` +"//seantest +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/audit.idm.scripts/eventTopics.authentication.filter.script.script.js 1`] = ` +"//seantest +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/audit.idm.scripts/exceptionFormatter.script.js 1`] = ` +"//seantest + +console.log("hello world");console.log("hello world");console.log("hello world"); +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/authentication.idm.json 1`] = ` +{ + "idm": { + "authentication": { + "_id": "authentication", + "serverAuthContext": { + "authModules": [ + { + "enabled": true, + "name": "STATIC_USER", + "properties": { + "augmentSecurityContext": { + "globals": {}, + "source": "file://authentication.idm.scripts/serverAuthContext.authModules.0.properties.augmentSecurityContext.script.js", + "type": "text/javascript", + }, + "defaultUserRoles": [ + "internal/role/openidm-reg", + ], + "password": { + "$crypto": { + "type": "x-simple-encryption", + "value": { + "cipher": "AES/CBC/PKCS5Padding", + "data": "fzE1J3P9LZOmuCuecCDnaQ==", + "iv": "nhI8UHymNRChGIyOC+5Sag==", + "keySize": 32, + "mac": "XfF7VE/o5Shv6AqW1Xe3TQ==", + "purpose": "idm.config.encryption", + "salt": "v0NHakffrjBJNL3zjhEOtg==", + "stableId": "openidm-sym-default", + }, + }, + }, + "queryOnResource": "internal/user", + "username": "anonymous", + }, + }, + { + "enabled": true, + "name": "STATIC_USER", + "properties": { + "defaultUserRoles": [ + "internal/role/openidm-authorized", + "internal/role/openidm-admin", + ], + "password": "&{openidm.admin.password}", + "queryOnResource": "internal/user", + "username": "openidm-admin", + }, + }, + { + "enabled": true, + "name": "MANAGED_USER", + "properties": { + "augmentSecurityContext": { + "source": "file://authentication.idm.scripts/serverAuthContext.authModules.2.properties.augmentSecurityContext.script.js", + "type": "text/javascript", + }, + "defaultUserRoles": [ + "internal/role/openidm-authorized", + ], + "propertyMapping": { + "additionalUserFields": [ + "adminOfOrg", + "ownerOfOrg", + ], + "authenticationId": "username", + "userCredential": "password", + "userRoles": "authzRoles", + }, + "queryId": "credential-query", + "queryOnResource": "managed/user", + }, + }, + ], + "sessionModule": { + "name": "JWT_SESSION", + "properties": { + "enableDynamicRoles": false, + "isHttpOnly": true, + "maxTokenLifeMinutes": 120, + "sessionOnly": true, + "tokenIdleTimeMinutes": 30, + }, + }, + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/authentication.idm.scripts/serverAuthContext.authModules.0.properties.augmentSecurityContext.script.js 1`] = ` +"//seantest +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/authentication.idm.scripts/serverAuthContext.authModules.2.properties.augmentSecurityContext.script.js 1`] = ` +"var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield); +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/cluster.idm.json 1`] = ` +{ + "idm": { + "cluster": { + "_id": "cluster", + "enabled": true, + "instanceCheckInInterval": 5000, + "instanceCheckInOffset": 0, + "instanceId": "&{openidm.node.id}", + "instanceRecoveryTimeout": 30000, + "instanceTimeout": 30000, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/emailTemplate/forgottenUsername.idm.json 1`] = ` +{ + "idm": { + "emailTemplate/forgottenUsername": { + "_id": "emailTemplate/forgottenUsername", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

", + "fr": "{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

", + }, + "mimeType": "text/html", + "subject": { + "en": "Account Information - username", + "fr": "Informations sur le compte - nom d'utilisateur", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/emailTemplate/registration.idm.json 1`] = ` +{ + "idm": { + "emailTemplate/registration": { + "_id": "emailTemplate/registration", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

This is your registration email.

Email verification link

", + "fr": "

Ceci est votre mail d'inscription.

Lien de vérification email

", + }, + "mimeType": "text/html", + "subject": { + "en": "Register new account", + "fr": "Créer un nouveau compte", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/emailTemplate/resetPassword.idm.json 1`] = ` +{ + "idm": { + "emailTemplate/resetPassword": { + "_id": "emailTemplate/resetPassword", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Click to reset your password

Password reset link

", + "fr": "

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

", + }, + "mimeType": "text/html", + "subject": { + "en": "Reset your password", + "fr": "Réinitialisez votre mot de passe", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/emailTemplate/updatePassword.idm.json 1`] = ` +{ + "idm": { + "emailTemplate/updatePassword": { + "_id": "emailTemplate/updatePassword", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Verify email to update password

Update password link

", + }, + "mimeType": "text/html", + "subject": { + "en": "Update your password", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/emailTemplate/welcome.idm.json 1`] = ` +{ + "idm": { + "emailTemplate/welcome": { + "_id": "emailTemplate/welcome", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Welcome to OpenIDM. Your username is '{{object.userName}}'.

", + "fr": "

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

", + }, + "mimeType": "text/html", + "subject": { + "en": "Your account has been created", + "fr": "Votre compte vient d’être créé !", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/endpoint/getavailableuserstoassign.idm.json 1`] = ` +{ + "idm": { + "endpoint/getavailableuserstoassign": { + "_id": "endpoint/getavailableuserstoassign", + "file": "workflow/getavailableuserstoassign.js", + "type": "text/javascript", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/endpoint/getprocessesforuser.idm.json 1`] = ` +{ + "idm": { + "endpoint/getprocessesforuser": { + "_id": "endpoint/getprocessesforuser", + "file": "workflow/getprocessesforuser.js", + "type": "text/javascript", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/endpoint/gettasksview.idm.json 1`] = ` +{ + "idm": { + "endpoint/gettasksview": { + "_id": "endpoint/gettasksview", + "file": "workflow/gettasksview.js", + "type": "text/javascript", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/endpoint/mappingDetails.idm.json 1`] = ` +{ + "idm": { + "endpoint/mappingDetails": { + "_id": "endpoint/mappingDetails", + "context": "endpoint/mappingDetails", + "file": "mappingDetails.js", + "type": "text/javascript", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/endpoint/oauthproxy.idm.json 1`] = ` +{ + "idm": { + "endpoint/oauthproxy": { + "_id": "endpoint/oauthproxy", + "context": "endpoint/oauthproxy", + "file": "oauthProxy.js", + "type": "text/javascript", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/endpoint/removeRepoPathFromRelationships.idm.json 1`] = ` +{ + "idm": { + "endpoint/removeRepoPathFromRelationships": { + "_id": "endpoint/removeRepoPathFromRelationships", + "file": "update/removeRepoPathFromRelationships.js", + "type": "text/javascript", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/endpoint/repairMetadata.idm.json 1`] = ` +{ + "idm": { + "endpoint/repairMetadata": { + "_id": "endpoint/repairMetadata", + "file": "meta/metadataScanner.js", + "type": "text/javascript", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/endpoint/updateInternalUserAndInternalRoleEntries.idm.json 1`] = ` +{ + "idm": { + "endpoint/updateInternalUserAndInternalRoleEntries": { + "_id": "endpoint/updateInternalUserAndInternalRoleEntries", + "file": "update/updateInternalUserAndInternalRoleEntries.js", + "type": "text/javascript", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/endpoint/validateQueryFilter.idm.json 1`] = ` +{ + "idm": { + "endpoint/validateQueryFilter": { + "_id": "endpoint/validateQueryFilter", + "context": "util/validateQueryFilter", + "source": "file://validateQueryFilter.script.js", + "type": "text/javascript", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/endpoint/validateQueryFilter.script.js 1`] = ` +"try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } }; +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/external.rest.idm.json 1`] = ` +{ + "idm": { + "external.rest": { + "_id": "external.rest", + "hostnameVerifier": "&{openidm.external.rest.hostnameVerifier}", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/internal.idm.json 1`] = ` +{ + "idm": { + "internal": { + "_id": "internal", + "objects": [ + { + "name": "role", + "properties": { + "authzMembers": { + "items": { + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + }, + }, + }, + }, + { + "name": "notification", + "properties": { + "target": { + "reversePropertyName": "_notifications", + }, + }, + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/managed/assignment.managed.json 1`] = ` +{ + "attributeEncryption": {}, + "name": "assignment", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "A role assignment", + "icon": "fa-key", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment", + "mat-icon": "vpn_key", + "order": [ + "_id", + "name", + "description", + "mapping", + "attributes", + "linkQualifiers", + "roles", + "members", + "condition", + "weight", + ], + "properties": { + "_id": { + "description": "The assignment ID", + "searchable": false, + "title": "Name", + "type": "string", + "viewable": false, + }, + "attributes": { + "description": "The attributes operated on by this assignment.", + "items": { + "order": [ + "assignmentOperation", + "unassignmentOperation", + "name", + "value", + ], + "properties": { + "assignmentOperation": { + "description": "Assignment operation", + "type": "string", + }, + "name": { + "description": "Name", + "type": "string", + }, + "unassignmentOperation": { + "description": "Unassignment operation", + "type": "string", + }, + "value": { + "description": "Value", + "type": "string", + }, + }, + "required": [], + "title": "Assignment Attributes Items", + "type": "object", + }, + "notifyRelationships": [ + "roles", + "members", + ], + "title": "Assignment Attributes", + "type": "array", + "viewable": true, + }, + "condition": { + "description": "A conditional filter for this assignment", + "isConditional": true, + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false, + }, + "description": { + "description": "The assignment description, used for display purposes.", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true, + }, + "linkQualifiers": { + "description": "Conditional link qualifiers to restrict this assignment to.", + "items": { + "title": "Link Qualifiers Items", + "type": "string", + }, + "title": "Link Qualifiers", + "type": "array", + "viewable": true, + }, + "mapping": { + "description": "The name of the mapping this assignment applies to", + "policies": [ + { + "policyId": "mapping-exists", + }, + ], + "searchable": true, + "title": "Mapping", + "type": "string", + "viewable": true, + }, + "members": { + "description": "Assignment Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Assignment Members Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "assignments", + "reverseRelationship": true, + "title": "Assignment Members Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Assignment Members", + "type": "array", + "viewable": true, + }, + "name": { + "description": "The assignment name, used for display purposes.", + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true, + }, + "roles": { + "description": "Managed Roles", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Managed Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Role", + "notify": true, + "path": "managed/role", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "assignments", + "reverseRelationship": true, + "title": "Managed Roles Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Managed Roles", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "weight": { + "description": "The weight of the assignment.", + "notifyRelationships": [ + "roles", + "members", + ], + "searchable": false, + "title": "Weight", + "type": [ + "number", + "null", + ], + "viewable": true, + }, + }, + "required": [ + "name", + "description", + "mapping", + ], + "title": "Assignment", + "type": "object", + }, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/managed/managed.idm.json 1`] = ` +{ + "idm": { + "managed": { + "_id": "managed", + "objects": [ + "file://user.managed.json", + "file://role.managed.json", + "file://assignment.managed.json", + "file://organization.managed.json", + "file://seantestmanagedobject.managed.json", + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/managed/organization.managed.json 1`] = ` +{ + "name": "organization", + "onCreate": { + "globals": {}, + "source": "file://organization.managed.scripts/onCreate.script.js", + "type": "text/javascript", + }, + "onRead": { + "globals": {}, + "source": "file://organization.managed.scripts/onRead.script.groovy", + "type": "groovy", + }, + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "An organization or tenant, whose resources are managed by organizational admins.", + "icon": "fa-building", + "mat-icon": "domain", + "order": [ + "name", + "description", + "owners", + "admins", + "members", + "parent", + "children", + "adminIDs", + "ownerIDs", + "parentAdminIDs", + "parentOwnerIDs", + "parentIDs", + ], + "properties": { + "adminIDs": { + "isVirtual": true, + "items": { + "title": "admin ids", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + ], + "referencedRelationshipFields": [ + "admins", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "Admin user ids", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "admins": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "notify": false, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "adminOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "notifyRelationships": [ + "children", + ], + "returnByDefault": false, + "searchable": false, + "title": "Administrators", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "children": { + "description": "Child Organizations", + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/organization", + "query": { + "fields": [ + "name", + "description", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "parent", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Child Organizations", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "description": { + "searchable": true, + "title": "Description", + "type": "string", + "userEditable": true, + "viewable": true, + }, + "members": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "memberOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "searchable": false, + "title": "Members", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "name": { + "searchable": true, + "title": "Name", + "type": "string", + "userEditable": true, + "viewable": true, + }, + "ownerIDs": { + "isVirtual": true, + "items": { + "title": "owner ids", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + ], + "referencedRelationshipFields": [ + "owners", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "Owner user ids", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "owners": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "notify": false, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "ownerOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "notifyRelationships": [ + "children", + ], + "returnByDefault": false, + "searchable": false, + "title": "Owner", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "parent": { + "description": "Parent Organization", + "notifyRelationships": [ + "children", + "members", + ], + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/organization", + "query": { + "fields": [ + "name", + "description", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "returnByDefault": false, + "reversePropertyName": "children", + "reverseRelationship": true, + "searchable": false, + "title": "Parent Organization", + "type": "relationship", + "userEditable": false, + "validate": true, + "viewable": true, + }, + "parentAdminIDs": { + "isVirtual": true, + "items": { + "title": "user ids of parent admins", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "adminIDs", + "parentAdminIDs", + ], + "referencedRelationshipFields": [ + "parent", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent admins", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "parentIDs": { + "isVirtual": true, + "items": { + "title": "parent org ids", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs", + ], + "referencedRelationshipFields": [ + "parent", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "parent org ids", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "parentOwnerIDs": { + "isVirtual": true, + "items": { + "title": "user ids of parent owners", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "ownerIDs", + "parentOwnerIDs", + ], + "referencedRelationshipFields": [ + "parent", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent owners", + "type": "array", + "userEditable": false, + "viewable": false, + }, + }, + "required": [ + "name", + ], + "title": "Organization", + "type": "object", + }, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/managed/organization.managed.scripts/onCreate.script.js 1`] = ` +"//seantest +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/managed/organization.managed.scripts/onRead.script.groovy 1`] = ` +"//seantest +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/managed/role.managed.json 1`] = ` +{ + "name": "role", + "onCreate": { + "globals": {}, + "source": "file://role.managed.scripts/onCreate.script.js", + "type": "text/javascript", + }, + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "icon": "fa-check-square", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role", + "mat-icon": "assignment_ind", + "order": [ + "_id", + "name", + "description", + "members", + "assignments", + "condition", + "temporalConstraints", + ], + "properties": { + "_id": { + "description": "Role ID", + "searchable": false, + "title": "Name", + "type": "string", + "viewable": false, + }, + "assignments": { + "description": "Managed Assignments", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Managed Assignments Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Assignment", + "path": "managed/assignment", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Managed Assignments Items", + "type": "relationship", + "validate": true, + }, + "notifyRelationships": [ + "members", + ], + "returnByDefault": false, + "title": "Managed Assignments", + "type": "array", + "viewable": true, + }, + "condition": { + "description": "A conditional filter for this role", + "isConditional": true, + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false, + }, + "description": { + "description": "The role description, used for display purposes.", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true, + }, + "members": { + "description": "Role Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Role Members Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Role Members Items", + "type": "relationship", + "validate": true, + }, + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Role Members", + "type": "array", + "viewable": true, + }, + "name": { + "description": "The role name, used for display purposes.", + "policies": [ + { + "policyId": "unique", + }, + ], + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true, + }, + "temporalConstraints": { + "description": "An array of temporal constraints for a role", + "isTemporalConstraint": true, + "items": { + "order": [ + "duration", + ], + "properties": { + "duration": { + "description": "Duration", + "type": "string", + }, + }, + "required": [ + "duration", + ], + "title": "Temporal Constraints Items", + "type": "object", + }, + "notifyRelationships": [ + "members", + ], + "returnByDefault": true, + "title": "Temporal Constraints", + "type": "array", + "viewable": false, + }, + }, + "required": [ + "name", + ], + "title": "Role", + "type": "object", + }, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/managed/role.managed.scripts/onCreate.script.js 1`] = ` +"//asdfasdfadsfasdf + + +//tests +//test +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/managed/seantestmanagedobject.managed.json 1`] = ` +{ + "name": "seantestmanagedobject", + "schema": { + "description": null, + "icon": "fa-database", + "mat-icon": null, + "title": null, + }, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/managed/user.managed.json 1`] = ` +{ + "lastSync": { + "effectiveAssignmentsProperty": "effectiveAssignments", + "lastSyncProperty": "lastSync", + }, + "name": "user", + "notifications": { + "property": "_notifications", + }, + "postDelete": { + "source": "file://user.managed.scripts/postDelete.script.js", + "type": "text/javascript", + }, + "schema": { + "$schema": "http://json-schema.org/draft-03/schema", + "icon": "fa-user", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User", + "mat-icon": "people", + "order": [ + "_id", + "userName", + "password", + "givenName", + "sn", + "mail", + "description", + "accountStatus", + "telephoneNumber", + "postalAddress", + "city", + "postalCode", + "country", + "stateProvince", + "roles", + "assignments", + "manager", + "authzRoles", + "reports", + "effectiveRoles", + "effectiveAssignments", + "lastSync", + "kbaInfo", + "preferences", + "consentedMappings", + "ownerOfOrg", + "adminOfOrg", + "memberOfOrg", + "memberOfOrgIDs", + "activeDate", + "inactiveDate", + ], + "properties": { + "_id": { + "description": "User ID", + "isPersonal": false, + "policies": [ + { + "params": { + "forbiddenChars": [ + "/", + ], + }, + "policyId": "cannot-contain-characters", + }, + ], + "searchable": false, + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": false, + }, + "accountStatus": { + "default": "active", + "description": "Status", + "isPersonal": false, + "policies": [ + { + "params": { + "regexp": "^(active|inactive)$", + }, + "policyId": "regexpMatches", + }, + ], + "searchable": true, + "title": "Status", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "activeDate": { + "description": "Active Date", + "format": "datetime", + "isPersonal": false, + "policies": [ + { + "policyId": "valid-datetime", + }, + ], + "searchable": false, + "title": "Active Date", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "adminOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/organization", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "admins", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Administer", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "assignments": { + "description": "Assignments", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Assignment", + "path": "managed/assignment", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Assignments Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Assignments", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "authzRoles": { + "description": "Authorization Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Authorization Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Internal Role", + "path": "internal/role", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "authzMembers", + "reverseRelationship": true, + "title": "Authorization Roles Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Authorization Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "city": { + "description": "City", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "title": "City", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "consentedMappings": { + "description": "Consented Mappings", + "isPersonal": false, + "isVirtual": false, + "items": { + "order": [ + "mapping", + "consentDate", + ], + "properties": { + "consentDate": { + "description": "Consent Date", + "format": "datetime", + "policies": [ + { + "policyId": "valid-datetime", + }, + ], + "searchable": true, + "title": "Consent Date", + "type": "string", + "userEditable": true, + "viewable": true, + }, + "mapping": { + "description": "Mapping", + "searchable": true, + "title": "Mapping", + "type": "string", + "userEditable": true, + "viewable": true, + }, + }, + "required": [ + "mapping", + "consentDate", + ], + "title": "Consented Mapping", + "type": "object", + }, + "returnByDefault": false, + "searchable": false, + "title": "Consented Mappings", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false, + }, + "country": { + "description": "Country", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "title": "Country", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "description": { + "description": "Description", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "searchable": true, + "title": "Description", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "effectiveAssignments": { + "description": "Effective Assignments", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Assignments Items", + "type": "object", + }, + "queryConfig": { + "referencedObjectFields": [ + "*", + ], + "referencedRelationshipFields": [ + [ + "roles", + "assignments", + ], + [ + "assignments", + ], + ], + }, + "returnByDefault": true, + "title": "Effective Assignments", + "type": "array", + "usageDescription": "", + "viewable": false, + }, + "effectiveRoles": { + "description": "Effective Roles", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Roles Items", + "type": "object", + }, + "queryConfig": { + "referencedRelationshipFields": [ + "roles", + ], + }, + "returnByDefault": true, + "title": "Effective Roles", + "type": "array", + "usageDescription": "", + "viewable": false, + }, + "givenName": { + "description": "First Name", + "isPersonal": true, + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "searchable": true, + "title": "First Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "inactiveDate": { + "description": "Inactive Date", + "format": "datetime", + "isPersonal": false, + "policies": [ + { + "policyId": "valid-datetime", + }, + ], + "searchable": false, + "title": "Inactive Date", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "kbaInfo": { + "description": "KBA Info", + "isPersonal": true, + "items": { + "order": [ + "answer", + "customQuestion", + "questionId", + ], + "properties": { + "answer": { + "description": "Answer", + "type": "string", + }, + "customQuestion": { + "description": "Custom question", + "type": "string", + }, + "questionId": { + "description": "Question ID", + "type": "string", + }, + }, + "required": [], + "title": "KBA Info Items", + "type": "object", + }, + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false, + }, + "lastSync": { + "description": "Last Sync timestamp", + "isPersonal": false, + "order": [ + "effectiveAssignments", + "timestamp", + ], + "properties": { + "effectiveAssignments": { + "description": "Effective Assignments", + "items": { + "title": "Effective Assignments Items", + "type": "object", + }, + "title": "Effective Assignments", + "type": "array", + }, + "timestamp": { + "description": "Timestamp", + "policies": [ + { + "policyId": "valid-datetime", + }, + ], + "type": "string", + }, + }, + "required": [], + "scope": "private", + "searchable": false, + "title": "Last Sync timestamp", + "type": "object", + "usageDescription": "", + "viewable": false, + }, + "mail": { + "description": "Email Address", + "isPersonal": true, + "policies": [ + { + "policyId": "valid-email-address-format", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "searchable": true, + "title": "Email Address", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "manager": { + "description": "Manager", + "isPersonal": false, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Manager _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "reports", + "reverseRelationship": true, + "searchable": false, + "title": "Manager", + "type": "relationship", + "usageDescription": "", + "userEditable": false, + "validate": true, + "viewable": true, + }, + "memberOfOrg": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/organization", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations to which I Belong", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "memberOfOrgIDs": { + "isVirtual": true, + "items": { + "title": "org identifiers", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs", + ], + "referencedRelationshipFields": [ + "memberOfOrg", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "MemberOfOrgIDs", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "ownerOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/organization", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "owners", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Own", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "password": { + "description": "Password", + "encryption": { + "purpose": "idm.password.encryption", + }, + "isPersonal": false, + "isProtected": true, + "policies": [ + { + "params": { + "minLength": 8, + }, + "policyId": "minimum-length", + }, + { + "params": { + "numCaps": 1, + }, + "policyId": "at-least-X-capitals", + }, + { + "params": { + "numNums": 1, + }, + "policyId": "at-least-X-numbers", + }, + { + "params": { + "disallowedFields": [ + "userName", + "givenName", + "sn", + ], + }, + "policyId": "cannot-contain-others", + }, + ], + "scope": "private", + "searchable": false, + "title": "Password", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": false, + }, + "postalAddress": { + "description": "Address 1", + "isPersonal": true, + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "title": "Address 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "postalCode": { + "description": "Postal Code", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "title": "Postal Code", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "preferences": { + "description": "Preferences", + "isPersonal": false, + "order": [ + "updates", + "marketing", + ], + "properties": { + "marketing": { + "description": "Send me special offers and services", + "type": "boolean", + }, + "updates": { + "description": "Send me news and updates", + "type": "boolean", + }, + }, + "required": [], + "searchable": false, + "title": "Preferences", + "type": "object", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "reports": { + "description": "Direct Reports", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Direct Reports Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "manager", + "reverseRelationship": true, + "title": "Direct Reports Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Direct Reports", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "roles": { + "description": "Provisioning Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Role", + "path": "managed/role", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Provisioning Roles Items", + "type": "relationship", + "validate": true, + }, + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Provisioning Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "sn": { + "description": "Last Name", + "isPersonal": true, + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "searchable": true, + "title": "Last Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "stateProvince": { + "description": "State/Province", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "title": "State/Province", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "telephoneNumber": { + "description": "Telephone Number", + "isPersonal": true, + "pattern": "^\\+?([0-9\\- \\(\\)])*$", + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "title": "Telephone Number", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "userName": { + "description": "Username", + "isPersonal": true, + "policies": [ + { + "policyId": "valid-username", + }, + { + "params": { + "forbiddenChars": [ + "/", + ], + }, + "policyId": "cannot-contain-characters", + }, + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "searchable": true, + "title": "Username", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + }, + "required": [ + "userName", + "givenName", + "sn", + "mail", + ], + "title": "User", + "type": "object", + "viewable": true, + }, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/managed/user.managed.scripts/postDelete.script.js 1`] = ` +"//seantest exract mapping UPDATED + +//seantest test test adsfasdf updated +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/mapping/mappingtest.idm.json 1`] = ` +{ + "idm": { + "mapping/mappingtest": { + "_id": "mapping/mappingtest", + "consentRequired": false, + "displayName": "mappingtest", + "icon": null, + "name": "mappingtest", + "policies": [ + { + "action": { + "globals": {}, + "source": "file://mappingtest.mapping.script/policies.AMBIGUOUS.action.script.js", + "type": "text/javascript", + }, + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": { + "globals": {}, + "source": "file://mappingtest.mapping.script/policies.MISSING.action.script.groovy", + "type": "groovy", + }, + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "ABSENT", + }, + ], + "properties": [], + "source": "managed/assignment", + "target": "managed/organization", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/mapping/mappingtest.mapping.script/policies.AMBIGUOUS.action.script.js 1`] = ` +"//asdfasdf +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/mapping/mappingtest.mapping.script/policies.MISSING.action.script.groovy 1`] = ` +"//asdfasdfasdf +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/mapping/seantestmapping.idm.json 1`] = ` +{ + "idm": { + "mapping/seantestmapping": { + "_id": "mapping/seantestmapping", + "consentRequired": false, + "displayName": "seantestmapping", + "icon": null, + "name": "seantestmapping", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/assignment", + "target": "managed/organization", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/metrics.idm.json 1`] = ` +{ + "idm": { + "metrics": { + "_id": "metrics", + "enabled": false, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/notification/passwordUpdate.idm.json 1`] = ` +{ + "idm": { + "notification/passwordUpdate": { + "_id": "notification/passwordUpdate", + "condition": { + "file": "propertiesModifiedFilter.groovy", + "globals": { + "propertiesToCheck": [ + "password", + ], + }, + "type": "groovy", + }, + "enabled": { + "$bool": "&{openidm.notifications.passwordUpdate|false}", + }, + "methods": [ + "update", + "patch", + ], + "notification": { + "message": "Your password has been updated.", + "notificationType": "info", + }, + "path": "managed/user/*", + "target": { + "resource": "managed/user/{{response/_id}}", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/notification/profileUpdate.idm.json 1`] = ` +{ + "idm": { + "notification/profileUpdate": { + "_id": "notification/profileUpdate", + "condition": { + "file": "propertiesModifiedFilter.groovy", + "globals": { + "propertiesToCheck": [ + "userName", + "givenName", + "sn", + "mail", + "description", + "accountStatus", + "telephoneNumber", + "postalAddress", + "city", + "postalCode", + "country", + "stateProvince", + "preferences", + ], + }, + "type": "groovy", + }, + "enabled": { + "$bool": "&{openidm.notifications.profileUpdate|false}", + }, + "methods": [ + "update", + "patch", + ], + "notification": { + "message": "Your profile has been updated.", + "notificationType": "info", + }, + "path": "managed/user/*", + "target": { + "resource": "managed/user/{{response/_id}}", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/notificationFactory.idm.json 1`] = ` +{ + "idm": { + "notificationFactory": { + "_id": "notificationFactory", + "enabled": { + "$bool": "&{openidm.notifications|false}", + }, + "threadPool": { + "maxPoolThreads": 2, + "maxQueueSize": 20000, + "steadyPoolThreads": 1, + "threadKeepAlive": 60, + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/policy.idm.json 1`] = ` +{ + "idm": { + "policy": { + "_id": "policy", + "additionalFiles": [], + "file": "policy.js", + "resources": [ + { + "calculatedProperties": { + "source": "file://policy.idm.scripts/resources.0.calculatedProperties.script.js", + "type": "text/javascript", + }, + "resource": "selfservice/registration", + }, + { + "calculatedProperties": { + "source": "file://policy.idm.scripts/resources.1.calculatedProperties.script.js", + "type": "text/javascript", + }, + "resource": "selfservice/reset", + }, + { + "properties": [ + { + "name": "_id", + "policies": [ + { + "params": { + "forbiddenChars": [ + "/", + ], + }, + "policyId": "cannot-contain-characters", + }, + ], + }, + { + "name": "password", + "policies": [ + { + "params": { + "minLength": 8, + }, + "policyId": "minimum-length", + }, + ], + }, + ], + "resource": "internal/user/*", + }, + { + "properties": [ + { + "name": "name", + "policies": [ + { + "policyId": "required", + }, + { + "policyId": "not-empty", + }, + { + "params": { + "forbiddenChars": [ + "/*", + ], + }, + "policyId": "cannot-contain-characters", + }, + ], + }, + { + "name": "temporalConstraints", + "policies": [ + { + "policyId": "valid-temporal-constraints", + }, + ], + }, + { + "name": "condition", + "policies": [ + { + "policyId": "valid-query-filter", + }, + ], + }, + { + "name": "privileges", + "policies": [ + { + "params": { + "types": [ + "array", + ], + }, + "policyId": "valid-type", + }, + { + "params": { + "properties": [ + { + "name": "name", + "policies": [ + { + "policyId": "required", + }, + { + "policyId": "not-empty", + }, + { + "params": { + "types": [ + "string", + ], + }, + "policyId": "valid-type", + }, + ], + }, + { + "name": "path", + "policies": [ + { + "policyId": "required", + }, + { + "policyId": "not-empty", + }, + { + "params": { + "forbiddenChars": [ + "/*", + ], + }, + "policyId": "cannot-contain-characters", + }, + { + "policyId": "valid-privilege-path", + }, + ], + }, + { + "name": "accessFlags", + "policies": [ + { + "policyId": "required", + }, + { + "policyId": "not-empty", + }, + { + "params": { + "types": [ + "array", + ], + }, + "policyId": "valid-type", + }, + { + "policyId": "valid-accessFlags-object", + }, + ], + }, + { + "name": "actions", + "policies": [ + { + "policyId": "required", + }, + { + "params": { + "types": [ + "array", + ], + }, + "policyId": "valid-type", + }, + ], + }, + { + "name": "permissions", + "policies": [ + { + "policyId": "required", + }, + { + "policyId": "not-empty", + }, + { + "params": { + "types": [ + "array", + ], + }, + "policyId": "valid-type", + }, + { + "policyId": "valid-permissions", + }, + ], + }, + { + "name": "filter", + "policies": [ + { + "params": { + "types": [ + "string", + "null", + ], + }, + "policyId": "valid-type", + }, + { + "policyId": "valid-query-filter", + }, + ], + }, + ], + }, + "policyId": "valid-array-items", + }, + ], + }, + ], + "resource": "internal/role/*", + }, + { + "properties": [ + { + "name": "temporalConstraints", + "policies": [ + { + "policyId": "valid-temporal-constraints", + }, + ], + }, + { + "name": "condition", + "policies": [ + { + "policyId": "valid-query-filter", + }, + ], + }, + ], + "resource": "managed/role/*", + }, + { + "properties": [ + { + "name": "objects", + "policies": [ + { + "policyId": "valid-event-scripts", + }, + ], + }, + ], + "resource": "config/managed", + }, + ], + "type": "text/javascript", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/policy.idm.scripts/resources.0.calculatedProperties.script.js 1`] = ` +"require('selfServicePolicies').getRegistrationProperties() +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/policy.idm.scripts/resources.1.calculatedProperties.script.js 1`] = ` +"require('selfServicePolicies').getResetProperties() +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/privilegeAssignments.idm.json 1`] = ` +{ + "idm": { + "privilegeAssignments": { + "_id": "privilegeAssignments", + "privilegeAssignments": [ + { + "name": "ownerPrivileges", + "privileges": [ + "owner-view-update-delete-orgs", + "owner-create-orgs", + "owner-view-update-delete-admins-and-members", + "owner-create-admins", + "admin-view-update-delete-members", + "admin-create-members", + ], + "relationshipField": "ownerOfOrg", + }, + { + "name": "adminPrivileges", + "privileges": [ + "admin-view-update-delete-orgs", + "admin-create-orgs", + "admin-view-update-delete-members", + "admin-create-members", + ], + "relationshipField": "adminOfOrg", + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/privileges.idm.json 1`] = ` +{ + "idm": { + "privileges": { + "_id": "privileges", + "privileges": [ + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "owners", + "readOnly": true, + }, + { + "attribute": "admins", + "readOnly": false, + }, + { + "attribute": "members", + "readOnly": false, + }, + { + "attribute": "parent", + "readOnly": false, + }, + { + "attribute": "children", + "readOnly": false, + }, + { + "attribute": "parentIDs", + "readOnly": true, + }, + { + "attribute": "adminIDs", + "readOnly": true, + }, + { + "attribute": "parentAdminIDs", + "readOnly": true, + }, + { + "attribute": "ownerIDs", + "readOnly": true, + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/ownerIDs eq "{{_id}}" or /parentOwnerIDs eq "{{_id}}"", + "name": "owner-view-update-delete-orgs", + "path": "managed/organization", + "permissions": [ + "VIEW", + "UPDATE", + "DELETE", + ], + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "owners", + "readOnly": true, + }, + { + "attribute": "admins", + "readOnly": false, + }, + { + "attribute": "members", + "readOnly": false, + }, + { + "attribute": "parent", + "readOnly": false, + }, + { + "attribute": "children", + "readOnly": false, + }, + { + "attribute": "parentIDs", + "readOnly": true, + }, + { + "attribute": "adminIDs", + "readOnly": true, + }, + { + "attribute": "parentAdminIDs", + "readOnly": true, + }, + { + "attribute": "ownerIDs", + "readOnly": true, + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/parent pr", + "name": "owner-create-orgs", + "path": "managed/organization", + "permissions": [ + "CREATE", + ], + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false, + }, + { + "attribute": "password", + "readOnly": false, + }, + { + "attribute": "givenName", + "readOnly": false, + }, + { + "attribute": "sn", + "readOnly": false, + }, + { + "attribute": "mail", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "accountStatus", + "readOnly": false, + }, + { + "attribute": "telephoneNumber", + "readOnly": false, + }, + { + "attribute": "postalAddress", + "readOnly": false, + }, + { + "attribute": "city", + "readOnly": false, + }, + { + "attribute": "postalCode", + "readOnly": false, + }, + { + "attribute": "country", + "readOnly": false, + }, + { + "attribute": "stateProvince", + "readOnly": false, + }, + { + "attribute": "roles", + "readOnly": false, + }, + { + "attribute": "manager", + "readOnly": false, + }, + { + "attribute": "authzRoles", + "readOnly": false, + }, + { + "attribute": "reports", + "readOnly": false, + }, + { + "attribute": "effectiveRoles", + "readOnly": false, + }, + { + "attribute": "effectiveAssignments", + "readOnly": false, + }, + { + "attribute": "lastSync", + "readOnly": false, + }, + { + "attribute": "kbaInfo", + "readOnly": false, + }, + { + "attribute": "preferences", + "readOnly": false, + }, + { + "attribute": "consentedMappings", + "readOnly": false, + }, + { + "attribute": "memberOfOrg", + "readOnly": false, + }, + { + "attribute": "adminOfOrg", + "readOnly": false, + }, + { + "attribute": "ownerOfOrg", + "readOnly": true, + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/memberOfOrgIDs eq "__org_id_placeholder__"", + "name": "owner-view-update-delete-admins-and-members", + "path": "managed/user", + "permissions": [ + "VIEW", + "DELETE", + "UPDATE", + ], + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false, + }, + { + "attribute": "password", + "readOnly": false, + }, + { + "attribute": "givenName", + "readOnly": false, + }, + { + "attribute": "sn", + "readOnly": false, + }, + { + "attribute": "mail", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "accountStatus", + "readOnly": false, + }, + { + "attribute": "telephoneNumber", + "readOnly": false, + }, + { + "attribute": "postalAddress", + "readOnly": false, + }, + { + "attribute": "city", + "readOnly": false, + }, + { + "attribute": "postalCode", + "readOnly": false, + }, + { + "attribute": "country", + "readOnly": false, + }, + { + "attribute": "stateProvince", + "readOnly": false, + }, + { + "attribute": "roles", + "readOnly": false, + }, + { + "attribute": "manager", + "readOnly": false, + }, + { + "attribute": "authzRoles", + "readOnly": false, + }, + { + "attribute": "reports", + "readOnly": false, + }, + { + "attribute": "effectiveRoles", + "readOnly": false, + }, + { + "attribute": "effectiveAssignments", + "readOnly": false, + }, + { + "attribute": "lastSync", + "readOnly": false, + }, + { + "attribute": "kbaInfo", + "readOnly": false, + }, + { + "attribute": "preferences", + "readOnly": false, + }, + { + "attribute": "consentedMappings", + "readOnly": false, + }, + { + "attribute": "memberOfOrg", + "readOnly": false, + }, + { + "attribute": "adminOfOrg", + "readOnly": false, + }, + { + "attribute": "ownerOfOrg", + "readOnly": true, + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/memberOfOrg/0 pr and /adminOfOrg/0 pr and !(/ownerOfOrg pr)", + "name": "owner-create-admins", + "path": "managed/user", + "permissions": [ + "CREATE", + ], + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "owners", + "readOnly": true, + }, + { + "attribute": "admins", + "readOnly": true, + }, + { + "attribute": "members", + "readOnly": false, + }, + { + "attribute": "parent", + "readOnly": false, + }, + { + "attribute": "children", + "readOnly": false, + }, + { + "attribute": "parentIDs", + "readOnly": true, + }, + { + "attribute": "adminIDs", + "readOnly": true, + }, + { + "attribute": "parentAdminIDs", + "readOnly": true, + }, + { + "attribute": "ownerIDs", + "readOnly": true, + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/adminIDs eq "{{_id}}" or /parentAdminIDs eq "{{_id}}"", + "name": "admin-view-update-delete-orgs", + "path": "managed/organization", + "permissions": [ + "VIEW", + "UPDATE", + "DELETE", + ], + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "owners", + "readOnly": true, + }, + { + "attribute": "admins", + "readOnly": true, + }, + { + "attribute": "members", + "readOnly": false, + }, + { + "attribute": "parent", + "readOnly": false, + }, + { + "attribute": "children", + "readOnly": false, + }, + { + "attribute": "parentIDs", + "readOnly": true, + }, + { + "attribute": "adminIDs", + "readOnly": true, + }, + { + "attribute": "parentAdminIDs", + "readOnly": true, + }, + { + "attribute": "ownerIDs", + "readOnly": true, + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/parent pr", + "name": "admin-create-orgs", + "path": "managed/organization", + "permissions": [ + "CREATE", + ], + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false, + }, + { + "attribute": "password", + "readOnly": false, + }, + { + "attribute": "givenName", + "readOnly": false, + }, + { + "attribute": "sn", + "readOnly": false, + }, + { + "attribute": "mail", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "accountStatus", + "readOnly": false, + }, + { + "attribute": "telephoneNumber", + "readOnly": false, + }, + { + "attribute": "postalAddress", + "readOnly": false, + }, + { + "attribute": "city", + "readOnly": false, + }, + { + "attribute": "postalCode", + "readOnly": false, + }, + { + "attribute": "country", + "readOnly": false, + }, + { + "attribute": "stateProvince", + "readOnly": false, + }, + { + "attribute": "roles", + "readOnly": false, + }, + { + "attribute": "manager", + "readOnly": false, + }, + { + "attribute": "authzRoles", + "readOnly": false, + }, + { + "attribute": "reports", + "readOnly": false, + }, + { + "attribute": "effectiveRoles", + "readOnly": false, + }, + { + "attribute": "effectiveAssignments", + "readOnly": false, + }, + { + "attribute": "lastSync", + "readOnly": false, + }, + { + "attribute": "kbaInfo", + "readOnly": false, + }, + { + "attribute": "preferences", + "readOnly": false, + }, + { + "attribute": "consentedMappings", + "readOnly": false, + }, + { + "attribute": "memberOfOrg", + "readOnly": false, + }, + { + "attribute": "adminOfOrg", + "readOnly": true, + }, + { + "attribute": "ownerOfOrg", + "readOnly": true, + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/memberOfOrgIDs eq "__org_id_placeholder__"", + "name": "admin-view-update-delete-members", + "path": "managed/user", + "permissions": [ + "VIEW", + "DELETE", + "UPDATE", + ], + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false, + }, + { + "attribute": "password", + "readOnly": false, + }, + { + "attribute": "givenName", + "readOnly": false, + }, + { + "attribute": "sn", + "readOnly": false, + }, + { + "attribute": "mail", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "accountStatus", + "readOnly": false, + }, + { + "attribute": "telephoneNumber", + "readOnly": false, + }, + { + "attribute": "postalAddress", + "readOnly": false, + }, + { + "attribute": "city", + "readOnly": false, + }, + { + "attribute": "postalCode", + "readOnly": false, + }, + { + "attribute": "country", + "readOnly": false, + }, + { + "attribute": "stateProvince", + "readOnly": false, + }, + { + "attribute": "roles", + "readOnly": false, + }, + { + "attribute": "manager", + "readOnly": false, + }, + { + "attribute": "authzRoles", + "readOnly": false, + }, + { + "attribute": "reports", + "readOnly": false, + }, + { + "attribute": "effectiveRoles", + "readOnly": false, + }, + { + "attribute": "effectiveAssignments", + "readOnly": false, + }, + { + "attribute": "lastSync", + "readOnly": false, + }, + { + "attribute": "kbaInfo", + "readOnly": false, + }, + { + "attribute": "preferences", + "readOnly": false, + }, + { + "attribute": "consentedMappings", + "readOnly": false, + }, + { + "attribute": "memberOfOrg", + "readOnly": false, + }, + { + "attribute": "adminOfOrg", + "readOnly": true, + }, + { + "attribute": "ownerOfOrg", + "readOnly": true, + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/memberOfOrg/0 pr and !(/adminOfOrg pr) and !(/ownerOfOrg pr)", + "name": "admin-create-members", + "path": "managed/user", + "permissions": [ + "CREATE", + ], + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/process/access.idm.json 1`] = ` +{ + "idm": { + "process/access": { + "_id": "process/access", + "workflowAccess": [ + { + "propertiesCheck": { + "matches": ".*", + "property": "_id", + "requiresRole": "internal/role/openidm-authorized", + }, + }, + { + "propertiesCheck": { + "matches": ".*", + "property": "_id", + "requiresRole": "internal/role/openidm-admin", + }, + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/provisioner.openicf/csvFileConnector.idm.json 1`] = ` +{ + "idm": { + "provisioner.openicf/csvFileConnector": { + "_id": "provisioner.openicf/csvFileConnector", + "configurationProperties": { + "csvFile": "/home/trivir/Work/csv-file-connector/csvtest.csv", + "escapeCharacter": "\\", + "fieldDelimiter": ",", + "headerPassword": "password", + "headerUid": "uid", + "newlineString": " +", + "quoteCharacter": """, + "spaceReplacementString": "_", + "syncFileRetentionCount": "3", + }, + "connectorRef": { + "bundleName": "org.forgerock.openicf.connectors.csvfile-connector", + "bundleVersion": "1.5.20.28", + "connectorHostRef": "", + "connectorName": "org.forgerock.openicf.csvfile.CSVFileConnector", + "displayName": "CSV File Connector", + "systemType": "provisioner.openicf", + }, + "enabled": true, + "objectTypes": { + "__ACCOUNT__": { + "$schema": "http://json-schema.org/draft-03/schema", + "id": "__ACCOUNT__", + "nativeType": "__ACCOUNT__", + "properties": { + "__NAME__": { + "nativeName": "__NAME__", + "nativeType": "string", + "type": "string", + }, + "email": { + "nativeName": "email", + "nativeType": "string", + "type": "string", + }, + "firstName": { + "nativeName": "firstName", + "nativeType": "string", + "type": "string", + }, + "lastName": { + "nativeName": "lastName", + "nativeType": "string", + "type": "string", + }, + "name": { + "nativeName": "name", + "nativeType": "string", + "type": "string", + }, + }, + "type": "object", + }, + }, + "operationTimeout": { + "AUTHENTICATE": -1, + "CREATE": -1, + "DELETE": -1, + "GET": -1, + "RESOLVEUSERNAME": -1, + "SCHEMA": -1, + "SCRIPT_ON_CONNECTOR": -1, + "SCRIPT_ON_RESOURCE": -1, + "SEARCH": -1, + "SYNC": -1, + "TEST": -1, + "UPDATE": -1, + "VALIDATE": -1, + }, + "resultsHandlerConfig": { + "enableAttributesToGetSearchResultsHandler": true, + "enableCaseInsensitiveFilter": false, + "enableFilteredResultsHandler": false, + "enableNormalizingResultsHandler": false, + }, + "syncFailureHandler": { + "maxRetries": 5, + "postRetryAction": "logged-ignore", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/provisioner.openicf/csvSampleConnector.idm.json 1`] = ` +{ + "idm": { + "provisioner.openicf/csvSampleConnector": { + "_id": "provisioner.openicf/csvSampleConnector", + "configurationProperties": { + "csvFile": "/home/trivir/Work/csv-file-connector/csvConnectorData.csv", + "escapeCharacter": "\\", + "fieldDelimiter": ",", + "headerPassword": "password", + "headerUid": "uid", + "newlineString": " +", + "quoteCharacter": """, + "spaceReplacementString": "_", + "syncFileRetentionCount": "3", + }, + "connectorRef": { + "bundleName": "org.forgerock.openicf.connectors.csvfile-connector", + "bundleVersion": "1.5.20.28", + "connectorHostRef": "", + "connectorName": "org.forgerock.openicf.csvfile.CSVFileConnector", + "displayName": "CSV File Connector", + "systemType": "provisioner.openicf", + }, + "enabled": true, + "objectTypes": { + "__ACCOUNT__": { + "$schema": "http://json-schema.org/draft-03/schema", + "id": "__ACCOUNT__", + "nativeType": "__ACCOUNT__", + "properties": { + "__NAME__": { + "nativeName": "__NAME__", + "nativeType": "string", + "type": "string", + }, + "description": { + "nativeName": "description", + "nativeType": "string", + "type": "string", + }, + "email": { + "nativeName": "email", + "nativeType": "string", + "type": "string", + }, + "firstname": { + "nativeName": "firstname", + "nativeType": "string", + "type": "string", + }, + "lastname": { + "nativeName": "lastname", + "nativeType": "string", + "type": "string", + }, + "mobileTelephoneNumber": { + "nativeName": "mobileTelephoneNumber", + "nativeType": "string", + "type": "string", + }, + "roles": { + "nativeName": "roles", + "nativeType": "string", + "type": "string", + }, + "username": { + "nativeName": "username", + "nativeType": "string", + "type": "string", + }, + }, + "type": "object", + }, + }, + "operationTimeout": { + "AUTHENTICATE": -1, + "CREATE": -1, + "DELETE": -1, + "GET": -1, + "RESOLVEUSERNAME": -1, + "SCHEMA": -1, + "SCRIPT_ON_CONNECTOR": -1, + "SCRIPT_ON_RESOURCE": -1, + "SEARCH": -1, + "SYNC": -1, + "TEST": -1, + "UPDATE": -1, + "VALIDATE": -1, + }, + "resultsHandlerConfig": { + "enableAttributesToGetSearchResultsHandler": true, + "enableCaseInsensitiveFilter": false, + "enableFilteredResultsHandler": false, + "enableNormalizingResultsHandler": false, + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/repo.ds.idm.json 1`] = ` +{ + "idm": { + "repo.ds": { + "_id": "repo.ds", + "commands": { + "delete-mapping-links": { + "_queryFilter": "/linkType eq "\${mapping}"", + "operation": "DELETE", + }, + "delete-target-ids-for-recon": { + "_queryFilter": "/reconId eq "\${reconId}"", + "operation": "DELETE", + }, + }, + "embedded": false, + "ldapConnectionFactories": { + "bind": { + "connectionPoolSize": 50, + "connectionSecurity": "startTLS", + "heartBeatIntervalSeconds": 60, + "heartBeatTimeoutMilliSeconds": 10000, + "primaryLdapServers": [ + { + "hostname": "opendj-frodo-dev.classic.com", + "port": 2389, + }, + ], + "secondaryLdapServers": [], + }, + "root": { + "authentication": { + "simple": { + "bindDn": "uid=admin", + "bindPassword": { + "$crypto": { + "type": "x-simple-encryption", + "value": { + "cipher": "AES/CBC/PKCS5Padding", + "data": "lJ/B6T9e9CDKHCN8TxkD4g==", + "iv": "EdrerzwEUUkHG582cLDw5w==", + "keySize": 32, + "mac": "Aty9fXUtl4pexGlHOc+CBg==", + "purpose": "idm.config.encryption", + "salt": "BITSKlnPeT5klcuEZbngzw==", + "stableId": "openidm-sym-default", + }, + }, + }, + }, + }, + "inheritFrom": "bind", + }, + }, + "maxConnectionAttempts": 5, + "resourceMapping": { + "defaultMapping": { + "dnTemplate": "ou=generic,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "explicitMapping": { + "clusteredrecontargetids": { + "dnTemplate": "ou=clusteredrecontargetids,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-recon-clusteredTargetIds", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly", + }, + "reconId": { + "ldapAttribute": "fr-idm-recon-id", + "type": "simple", + }, + "targetIds": { + "ldapAttribute": "fr-idm-recon-targetIds", + "type": "json", + }, + }, + }, + "dsconfig/attributeValue": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-attribute-value-password-validator", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "checkSubstrings": { + "ldapAttribute": "ds-cfg-check-substrings", + "type": "simple", + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "matchAttribute": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-match-attribute", + "type": "simple", + }, + "minSubstringLength": { + "ldapAttribute": "ds-cfg-min-substring-length", + "type": "simple", + }, + "testReversedPassword": { + "isRequired": true, + "ldapAttribute": "ds-cfg-test-reversed-password", + "type": "simple", + }, + }, + }, + "dsconfig/characterSet": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-character-set-password-validator", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "allowUnclassifiedCharacters": { + "isRequired": true, + "ldapAttribute": "ds-cfg-allow-unclassified-characters", + "type": "simple", + }, + "characterSet": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-character-set", + "type": "simple", + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "minCharacterSets": { + "ldapAttribute": "ds-cfg-min-character-sets", + "type": "simple", + }, + }, + }, + "dsconfig/dictionary": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-dictionary-password-validator", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "caseSensitiveValidation": { + "isRequired": true, + "ldapAttribute": "ds-cfg-case-sensitive-validation", + "type": "simple", + }, + "checkSubstrings": { + "ldapAttribute": "ds-cfg-check-substrings", + "type": "simple", + }, + "dictionaryFile": { + "isRequired": true, + "ldapAttribute": "ds-cfg-dictionary-file", + "type": "simple", + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "minSubstringLength": { + "ldapAttribute": "ds-cfg-min-substring-length", + "type": "simple", + }, + "testReversedPassword": { + "isRequired": true, + "ldapAttribute": "ds-cfg-test-reversed-password", + "type": "simple", + }, + }, + }, + "dsconfig/lengthBased": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-length-based-password-validator", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "maxPasswordLength": { + "ldapAttribute": "ds-cfg-max-password-length", + "type": "simple", + }, + "minPasswordLength": { + "ldapAttribute": "ds-cfg-min-password-length", + "type": "simple", + }, + }, + }, + "dsconfig/passwordPolicies": { + "dnTemplate": "cn=Password Policies,cn=config", + "objectClasses": [ + "ds-cfg-password-policy", + "ds-cfg-authentication-policy", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "defaultPasswordStorageScheme": { + "isMultiValued": true, + "isRequired": true, + "ldapAttribute": "ds-cfg-default-password-storage-scheme", + "type": "simple", + }, + "maxPasswordAge": { + "ldapAttribute": "ds-cfg-max-password-age", + "type": "simple", + }, + "passwordAttribute": { + "isRequired": true, + "ldapAttribute": "ds-cfg-password-attribute", + "type": "simple", + }, + "passwordHistoryCount": { + "ldapAttribute": "ds-cfg-password-history-count", + "type": "simple", + }, + "validator": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-password-validator", + "type": "simple", + }, + }, + }, + "dsconfig/repeatedCharacters": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-repeated-characters-password-validator", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "caseSensitiveValidation": { + "isRequired": true, + "ldapAttribute": "ds-cfg-case-sensitive-validation", + "type": "simple", + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "maxConsecutiveLength": { + "isRequired": true, + "ldapAttribute": "ds-cfg-max-consecutive-length", + "type": "simple", + }, + }, + }, + "dsconfig/similarityBased": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-similarity-based-password-validator", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "minPasswordDifference": { + "isRequired": true, + "ldapAttribute": "ds-cfg-min-password-difference", + "type": "simple", + }, + }, + }, + "dsconfig/uniqueCharacters": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-unique-characters-password-validator", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "caseSensitiveValidation": { + "isRequired": true, + "ldapAttribute": "ds-cfg-case-sensitive-validation", + "type": "simple", + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "minUniqueCharacters": { + "isRequired": true, + "ldapAttribute": "ds-cfg-min-unique-characters", + "type": "simple", + }, + }, + }, + "dsconfig/userDefinedVirtualAttribute": { + "dnTemplate": "cn=Virtual Attributes,cn=config", + "objectClasses": [ + "ds-cfg-user-defined-virtual-attribute", + "ds-cfg-virtual-attribute", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "attributeType": { + "isRequired": true, + "ldapAttribute": "ds-cfg-attribute-type", + "type": "simple", + }, + "baseDn": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-base-dn", + "type": "simple", + }, + "conflictBehavior": { + "ldapAttribute": "ds-cfg-conflict-behavior", + "type": "simple", + }, + "enabled": { + "isRequired": true, + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "filter": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-filter", + "type": "simple", + }, + "groupDn": { + "ldapAttribute": "ds-cfg-group-dn", + "type": "simple", + }, + "javaClass": { + "isRequired": true, + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "scope": { + "ldapAttribute": "ds-cfg-scope", + "type": "simple", + }, + "value": { + "isMultiValued": true, + "isRequired": true, + "ldapAttribute": "ds-cfg-value", + "type": "simple", + }, + }, + }, + "internal/role": { + "dnTemplate": "ou=roles,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "fr-idm-internal-role", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "authzMembers": { + "isMultiValued": true, + "propertyName": "authzRoles", + "resourcePath": "managed/user", + "type": "reverseReference", + }, + "condition": { + "ldapAttribute": "fr-idm-condition", + "type": "simple", + }, + "description": { + "ldapAttribute": "description", + "type": "simple", + }, + "name": { + "ldapAttribute": "fr-idm-name", + "type": "simple", + }, + "privileges": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-privilege", + "type": "json", + }, + "temporalConstraints": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-temporal-constraints", + "type": "json", + }, + }, + }, + "internal/user": { + "dnTemplate": "ou=users,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-internal-user", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly", + }, + "password": { + "ldapAttribute": "fr-idm-password", + "type": "json", + }, + }, + }, + "link": { + "dnTemplate": "ou=links,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-link", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly", + }, + "firstId": { + "ldapAttribute": "fr-idm-link-firstId", + "type": "simple", + }, + "linkQualifier": { + "ldapAttribute": "fr-idm-link-qualifier", + "type": "simple", + }, + "linkType": { + "ldapAttribute": "fr-idm-link-type", + "type": "simple", + }, + "secondId": { + "ldapAttribute": "fr-idm-link-secondId", + "type": "simple", + }, + }, + }, + "locks": { + "dnTemplate": "ou=locks,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-lock", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly", + }, + "nodeId": { + "ldapAttribute": "fr-idm-lock-nodeid", + "type": "simple", + }, + }, + }, + "recon/assoc": { + "dnTemplate": "ou=assoc,ou=recon,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "namingStrategy": { + "dnAttribute": "fr-idm-reconassoc-reconid", + "type": "clientDnNaming", + }, + "objectClasses": [ + "fr-idm-reconassoc", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "fr-idm-reconassoc-reconid", + "type": "simple", + }, + "finishTime": { + "ldapAttribute": "fr-idm-reconassoc-finishtime", + "type": "simple", + }, + "isAnalysis": { + "ldapAttribute": "fr-idm-reconassoc-isanalysis", + "type": "simple", + }, + "mapping": { + "ldapAttribute": "fr-idm-reconassoc-mapping", + "type": "simple", + }, + "sourceResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-sourceresourcecollection", + "type": "simple", + }, + "targetResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-targetresourcecollection", + "type": "simple", + }, + }, + "subResources": { + "entry": { + "namingStrategy": { + "dnAttribute": "uid", + "type": "clientDnNaming", + }, + "resource": "recon-assoc-entry", + "type": "collection", + }, + }, + }, + "recon/assoc/entry": { + "objectClasses": [ + "uidObject", + "fr-idm-reconassocentry", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + }, + "action": { + "ldapAttribute": "fr-idm-reconassocentry-action", + "type": "simple", + }, + "ambiguousTargetObjectIds": { + "ldapAttribute": "fr-idm-reconassocentry-ambiguoustargetobjectids", + "type": "simple", + }, + "exception": { + "ldapAttribute": "fr-idm-reconassocentry-exception", + "type": "simple", + }, + "isAnalysis": { + "ldapAttribute": "fr-idm-reconassoc-isanalysis", + "type": "simple", + }, + "linkQualifier": { + "ldapAttribute": "fr-idm-reconassocentry-linkqualifier", + "type": "simple", + }, + "mapping": { + "ldapAttribute": "fr-idm-reconassoc-mapping", + "type": "simple", + }, + "message": { + "ldapAttribute": "fr-idm-reconassocentry-message", + "type": "simple", + }, + "messageDetail": { + "ldapAttribute": "fr-idm-reconassocentry-messagedetail", + "type": "simple", + }, + "phase": { + "ldapAttribute": "fr-idm-reconassocentry-phase", + "type": "simple", + }, + "reconId": { + "ldapAttribute": "fr-idm-reconassocentry-reconid", + "type": "simple", + }, + "situation": { + "ldapAttribute": "fr-idm-reconassocentry-situation", + "type": "simple", + }, + "sourceObjectId": { + "ldapAttribute": "fr-idm-reconassocentry-sourceObjectId", + "type": "simple", + }, + "sourceResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-sourceresourcecollection", + "type": "simple", + }, + "status": { + "ldapAttribute": "fr-idm-reconassocentry-status", + "type": "simple", + }, + "targetObjectId": { + "ldapAttribute": "fr-idm-reconassocentry-targetObjectId", + "type": "simple", + }, + "targetResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-targetresourcecollection", + "type": "simple", + }, + }, + "resourceName": "recon-assoc-entry", + "subResourceRouting": [ + { + "prefix": "entry", + "template": "recon/assoc/{reconId}/entry", + }, + ], + }, + "sync/queue": { + "dnTemplate": "ou=queue,ou=sync,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-syncqueue", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly", + }, + "context": { + "ldapAttribute": "fr-idm-syncqueue-context", + "type": "json", + }, + "createDate": { + "ldapAttribute": "fr-idm-syncqueue-createdate", + "type": "simple", + }, + "mapping": { + "ldapAttribute": "fr-idm-syncqueue-mapping", + "type": "simple", + }, + "newObject": { + "ldapAttribute": "fr-idm-syncqueue-newobject", + "type": "json", + }, + "nodeId": { + "ldapAttribute": "fr-idm-syncqueue-nodeid", + "type": "simple", + }, + "objectRev": { + "ldapAttribute": "fr-idm-syncqueue-objectRev", + "type": "simple", + }, + "oldObject": { + "ldapAttribute": "fr-idm-syncqueue-oldobject", + "type": "json", + }, + "resourceCollection": { + "ldapAttribute": "fr-idm-syncqueue-resourcecollection", + "type": "simple", + }, + "resourceId": { + "ldapAttribute": "fr-idm-syncqueue-resourceid", + "type": "simple", + }, + "state": { + "ldapAttribute": "fr-idm-syncqueue-state", + "type": "simple", + }, + "syncAction": { + "ldapAttribute": "fr-idm-syncqueue-syncaction", + "type": "simple", + }, + }, + }, + }, + "genericMapping": { + "cluster/*": { + "dnTemplate": "ou=cluster,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-cluster-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchClusterObject", + "objectClasses": [ + "uidObject", + "fr-idm-cluster-obj", + ], + }, + "config": { + "dnTemplate": "ou=config,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "file": { + "dnTemplate": "ou=file,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "import": { + "dnTemplate": "ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "import/*": { + "dnTemplate": "ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "internal/notification": { + "dnTemplate": "ou=notification,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-notification-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-notification", + ], + "properties": { + "target": { + "propertyName": "_notifications", + "resourcePath": "managed/user", + "type": "reverseReference", + }, + }, + }, + "internal/usermeta": { + "dnTemplate": "ou=usermeta,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-generic-obj", + ], + "properties": { + "target": { + "propertyName": "_meta", + "resourcePath": "managed/user", + "type": "reverseReference", + }, + }, + }, + "jsonstorage": { + "dnTemplate": "ou=jsonstorage,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "managed/*": { + "dnTemplate": "ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "managed/assignment": { + "dnTemplate": "ou=assignment,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-managed-assignment-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-assignment", + ], + "properties": { + "condition": { + "ldapAttribute": "fr-idm-assignment-condition", + "type": "simple", + }, + "members": { + "isMultiValued": true, + "propertyName": "assignments", + "resourcePath": "managed/user", + "type": "reverseReference", + }, + "roles": { + "isMultiValued": true, + "propertyName": "assignments", + "resourcePath": "managed/role", + "type": "reverseReference", + }, + }, + }, + "managed/organization": { + "dnTemplate": "ou=organization,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-managed-organization-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-organization", + ], + "properties": { + "admins": { + "isMultiValued": true, + "propertyName": "adminOfOrg", + "resourcePath": "managed/user", + "type": "reverseReference", + }, + "children": { + "isMultiValued": true, + "propertyName": "parent", + "resourcePath": "managed/organization", + "type": "reverseReference", + }, + "members": { + "isMultiValued": true, + "propertyName": "memberOfOrg", + "resourcePath": "managed/user", + "type": "reverseReference", + }, + "name": { + "ldapAttribute": "fr-idm-managed-organization-name", + "type": "simple", + }, + "owners": { + "isMultiValued": true, + "propertyName": "ownerOfOrg", + "resourcePath": "managed/user", + "type": "reverseReference", + }, + "parent": { + "ldapAttribute": "fr-idm-managed-organization-parent", + "primaryKey": "uid", + "resourcePath": "managed/organization", + "type": "reference", + }, + }, + }, + "managed/role": { + "dnTemplate": "ou=role,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-managed-role-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchManagedRole", + "objectClasses": [ + "uidObject", + "fr-idm-managed-role", + ], + "properties": { + "assignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-role-assignments", + "primaryKey": "uid", + "resourcePath": "managed/assignment", + "type": "reference", + }, + "members": { + "isMultiValued": true, + "propertyName": "roles", + "resourcePath": "managed/user", + "type": "reverseReference", + }, + }, + }, + "managed/user": { + "dnTemplate": "ou=user,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-managed-user-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchManagedUser", + "objectClasses": [ + "uidObject", + "fr-idm-managed-user", + ], + "properties": { + "_meta": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-meta", + "primaryKey": "uid", + "resourcePath": "internal/usermeta", + "type": "reference", + }, + "_notifications": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-notifications", + "primaryKey": "uid", + "resourcePath": "internal/notification", + "type": "reference", + }, + "adminOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-admin", + "primaryKey": "uid", + "resourcePath": "managed/organization", + "type": "reference", + }, + "assignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-assignment-member", + "primaryKey": "uid", + "resourcePath": "managed/assignment", + "type": "reference", + }, + "authzRoles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-authzroles-internal-role", + "primaryKey": "cn", + "resourcePath": "internal/role", + "type": "reference", + }, + "manager": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-manager", + "primaryKey": "uid", + "resourcePath": "managed/user", + "type": "reference", + }, + "memberOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-member", + "primaryKey": "uid", + "resourcePath": "managed/organization", + "type": "reference", + }, + "ownerOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-owner", + "primaryKey": "uid", + "resourcePath": "managed/organization", + "type": "reference", + }, + "passwordExpirationTime": { + "ldapAttribute": "pwdExpirationTime", + "type": "simple", + "writability": "readOnlyDiscardWrites", + }, + "passwordLastChangedTime": { + "ldapAttribute": "pwdChangedTime", + "type": "simple", + "writability": "readOnlyDiscardWrites", + }, + "reports": { + "isMultiValued": true, + "propertyName": "manager", + "resourcePath": "managed/user", + "type": "reverseReference", + }, + "roles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-roles", + "primaryKey": "uid", + "resourcePath": "managed/role", + "type": "reference", + }, + }, + }, + "reconprogressstate": { + "dnTemplate": "ou=reconprogressstate,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "relationships": { + "dnTemplate": "ou=relationships,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-relationship-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchRelationship", + "objectClasses": [ + "uidObject", + "fr-idm-relationship", + ], + }, + "scheduler": { + "dnTemplate": "ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "scheduler/*": { + "dnTemplate": "ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "ui/*": { + "dnTemplate": "ou=ui,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "updates": { + "dnTemplate": "ou=updates,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + }, + }, + "rest2LdapOptions": { + "mvccAttribute": "etag", + "readOnUpdatePolicy": "controls", + "returnNullForMissingProperties": true, + "useMvcc": true, + "usePermissiveModify": true, + "useSubtreeDelete": false, + }, + "security": { + "fileBasedTrustManagerFile": "&{idm.install.dir}/security/truststore", + "fileBasedTrustManagerPasswordFile": "&{idm.install.dir}/security/storepass", + "fileBasedTrustManagerType": "JKS", + "trustManager": "file", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/repo.init.idm.json 1`] = ` +{ + "idm": { + "repo.init": { + "_id": "repo.init", + "insert": { + "internal/role": [ + { + "description": "Administrative access", + "id": "openidm-admin", + "name": "openidm-admin", + }, + { + "description": "Basic minimum user", + "id": "openidm-authorized", + "name": "openidm-authorized", + }, + { + "description": "Anonymous access", + "id": "openidm-reg", + "name": "openidm-reg", + }, + { + "description": "Authenticated via certificate", + "id": "openidm-cert", + "name": "openidm-cert", + }, + { + "description": "Allowed to reassign workflow tasks", + "id": "openidm-tasks-manager", + "name": "openidm-tasks-manager", + }, + { + "description": "Platform provisioning access", + "id": "platform-provisioning", + "name": "platform-provisioning", + }, + ], + "internal/user": [ + { + "id": "openidm-admin", + "password": "&{openidm.admin.password}", + }, + { + "id": "anonymous", + "password": "anonymous", + }, + { + "id": "idm-provisioning", + }, + { + "id": "connector-server-client", + }, + ], + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/router.idm.json 1`] = ` +{ + "idm": { + "router": { + "_id": "router", + "filters": [ + { + "methods": [ + "create", + "update", + ], + "onRequest": { + "file": "policyFilter.js", + "type": "text/javascript", + }, + "pattern": "^(managed|internal)($|(/.+))", + }, + { + "methods": [ + "update", + ], + "onRequest": { + "file": "policyFilter.js", + "type": "text/javascript", + }, + "pattern": "^config/managed$", + }, + { + "condition": { + "source": "file://router.idm.scripts/filters.2.condition.script.js", + "type": "text/javascript", + }, + "onResponse": { + "source": "file://router.idm.scripts/filters.2.onResponse.script.js", + "type": "text/javascript", + }, + "pattern": "^(managed|internal)($|(/.+))", + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/router.idm.scripts/filters.2.condition.script.js 1`] = ` +"(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0) +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/router.idm.scripts/filters.2.onResponse.script.js 1`] = ` +"require('relationshipFilter').filterResponse() +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/schedule/seantest.idm.json 1`] = ` +{ + "idm": { + "schedule/seantest": { + "_id": "schedule/seantest", + "concurrentExecution": false, + "enabled": false, + "endTime": null, + "invokeContext": { + "script": { + "globals": {}, + "source": "file://seantest.invokeContext.script.script.js", + "type": "text/javascript", + }, + }, + "invokeLogLevel": "info", + "invokeService": "script", + "misfirePolicy": "fireAndProceed", + "persisted": true, + "recoverable": false, + "repeatCount": 0, + "repeatInterval": 0, + "schedule": null, + "startTime": null, + "type": "simple", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/schedule/seantest.invokeContext.script.script.js 1`] = ` +"//sean has changed this script. Let's see if it is still working. qqqqqqqqqqqqqqSchedule1 +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/schedule/taskscan_activate.idm.json 1`] = ` +{ + "idm": { + "schedule/taskscan_activate": { + "_id": "schedule/taskscan_activate", + "concurrentExecution": false, + "enabled": false, + "invokeContext": { + "numberOfThreads": 5, + "scan": { + "_queryFilter": "((/activeDate le "\${Time.nowWithOffset}") AND (!(/inactiveDate pr) or /inactiveDate ge "\${Time.nowWithOffset}"))", + "object": "managed/user", + "recovery": { + "timeout": "10m", + }, + "taskState": { + "completed": "/activateAccount/task-completed", + "started": "/activateAccount/task-started", + }, + }, + "task": { + "script": { + "globals": {}, + "source": "file://taskscan_activate.invokeContext.task.script.script.js", + "type": "text/javascript", + }, + }, + "waitForCompletion": false, + }, + "invokeService": "taskscanner", + "persisted": true, + "repeatInterval": 86400000, + "type": "simple", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/schedule/taskscan_activate.invokeContext.task.script.script.js 1`] = ` +"var patch = [{ "operation" : "replace", "field" : "/accountStatus", "value" : "active" }]; + +logger.debug("Performing Activate Account Task on {} ({})", input.mail, objectID); + +openidm.patch(objectID, null, patch); true; +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/schedule/taskscan_expire.idm.json 1`] = ` +{ + "idm": { + "schedule/taskscan_expire": { + "_id": "schedule/taskscan_expire", + "concurrentExecution": false, + "enabled": false, + "invokeContext": { + "numberOfThreads": 5, + "scan": { + "_queryFilter": "((/inactiveDate lt "\${Time.nowWithOffset}") AND (!(/activeDate pr) or /activeDate le "\${Time.nowWithOffset}"))", + "object": "managed/user", + "recovery": { + "timeout": "10m", + }, + "taskState": { + "completed": "/expireAccount/task-completed", + "started": "/expireAccount/task-started", + }, + }, + "task": { + "script": { + "globals": {}, + "source": "file://taskscan_expire.invokeContext.task.script.script.js", + "type": "text/javascript", + }, + }, + "waitForCompletion": false, + }, + "invokeService": "taskscanner", + "persisted": true, + "repeatInterval": 86400000, + "type": "simple", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/schedule/taskscan_expire.invokeContext.task.script.script.js 1`] = ` +"var patch = [{ "operation" : "replace", "field" : "/accountStatus", "value" : "inactive" }]; + +logger.debug("Performing Expire Account Task on {} ({})", input.mail, objectID); + +openidm.patch(objectID, null, patch); true; +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/scheduler.idm.json 1`] = ` +{ + "idm": { + "scheduler": { + "_id": "scheduler", + "scheduler": { + "executePersistentSchedules": { + "$bool": "&{openidm.scheduler.execute.persistent.schedules}", + }, + }, + "threadPool": { + "threadCount": 10, + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/script.idm.json 1`] = ` +{ + "idm": { + "script": { + "ECMAScript": { + "javascript.optimization.level": 9, + "javascript.recompile.minimumInterval": 60000, + }, + "Groovy": { + "#groovy.disabled.global.ast.transformations": "", + "#groovy.errors.tolerance": 10, + "#groovy.output.debug": false, + "#groovy.output.verbose": false, + "#groovy.script.base": "#any class extends groovy.lang.Script", + "#groovy.script.extension": ".groovy", + "#groovy.target.bytecode": "1.8", + "#groovy.target.directory": "&{idm.data.dir}/classes", + "#groovy.target.indy": true, + "#groovy.warnings": "likely errors #othere values [none,likely,possible,paranoia]", + "groovy.classpath": "&{idm.install.dir}/lib", + "groovy.recompile": true, + "groovy.recompile.minimumInterval": 60000, + "groovy.source.encoding": "UTF-8", + }, + "_id": "script", + "properties": {}, + "sources": { + "default": { + "directory": "&{idm.install.dir}/bin/defaults/script", + }, + "install": { + "directory": "&{idm.install.dir}", + }, + "project": { + "directory": "&{idm.instance.dir}", + }, + "project-script": { + "directory": "&{idm.instance.dir}/script", + }, + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/secrets.idm.json 1`] = ` +{ + "idm": { + "secrets": { + "_id": "secrets", + "stores": [ + { + "class": "org.forgerock.openidm.secrets.config.KeyStoreSecretStore", + "config": { + "file": "&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}", + "mappings": [ + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}", + ], + "secretId": "idm.default", + "types": [ + "ENCRYPT", + "DECRYPT", + ], + }, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}", + ], + "secretId": "idm.config.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], + }, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}", + ], + "secretId": "idm.password.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], + }, + { + "aliases": [ + "&{openidm.https.keystore.cert.alias|openidm-localhost}", + ], + "secretId": "idm.jwt.session.module.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], + }, + { + "aliases": [ + "&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}", + ], + "secretId": "idm.jwt.session.module.signing", + "types": [ + "SIGN", + "VERIFY", + ], + }, + { + "aliases": [ + "selfservice", + ], + "secretId": "idm.selfservice.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], + }, + { + "aliases": [ + "&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}", + ], + "secretId": "idm.selfservice.signing", + "types": [ + "SIGN", + "VERIFY", + ], + }, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}", + ], + "secretId": "idm.assignment.attribute.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], + }, + ], + "providerName": "&{openidm.keystore.provider|SunJCE}", + "storePassword": "&{openidm.keystore.password|changeit}", + "storetype": "&{openidm.keystore.type|JCEKS}", + }, + "name": "mainKeyStore", + }, + { + "class": "org.forgerock.openidm.secrets.config.KeyStoreSecretStore", + "config": { + "file": "&{openidm.truststore.location|&{idm.install.dir}/security/truststore}", + "mappings": [], + "providerName": "&{openidm.truststore.provider|SUN}", + "storePassword": "&{openidm.truststore.password|changeit}", + "storetype": "&{openidm.truststore.type|JKS}", + }, + "name": "mainTrustStore", + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/selfservice.kba.idm.json 1`] = ` +{ + "idm": { + "selfservice.kba": { + "_id": "selfservice.kba", + "kbaPropertyName": "kbaInfo", + "minimumAnswersToDefine": 2, + "minimumAnswersToVerify": 1, + "questions": { + "1": { + "en": "What's your favorite color?", + "en_GB": "What is your favourite colour?", + "fr": "Quelle est votre couleur préférée?", + }, + "2": { + "en": "Who was your first employer?", + }, + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/selfservice.propertymap.idm.json 1`] = ` +{ + "idm": { + "selfservice.propertymap": { + "_id": "selfservice.propertymap", + "properties": [ + { + "source": "givenName", + "target": "givenName", + }, + { + "source": "familyName", + "target": "sn", + }, + { + "source": "email", + "target": "mail", + }, + { + "condition": "/object/postalAddress pr", + "source": "postalAddress", + "target": "postalAddress", + }, + { + "condition": "/object/addressLocality pr", + "source": "addressLocality", + "target": "city", + }, + { + "condition": "/object/addressRegion pr", + "source": "addressRegion", + "target": "stateProvince", + }, + { + "condition": "/object/postalCode pr", + "source": "postalCode", + "target": "postalCode", + }, + { + "condition": "/object/country pr", + "source": "country", + "target": "country", + }, + { + "condition": "/object/phone pr", + "source": "phone", + "target": "telephoneNumber", + }, + { + "source": "username", + "target": "userName", + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/selfservice.terms.idm.json 1`] = ` +{ + "idm": { + "selfservice.terms": { + "_id": "selfservice.terms", + "active": "0.0", + "uiConfig": { + "buttonText": "Accept", + "displayName": "We've updated our terms", + "purpose": "You must accept the updated terms in order to proceed.", + }, + "versions": [ + { + "createDate": "2019-10-28T04:20:11.320Z", + "termsTranslations": { + "en": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.", + }, + "version": "0.0", + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/servletfilter/cors.idm.json 1`] = ` +{ + "idm": { + "servletfilter/cors": { + "_id": "servletfilter/cors", + "filterClass": "org.eclipse.jetty.ee10.servlets.CrossOriginFilter", + "initParams": { + "allowCredentials": true, + "allowedHeaders": "accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with", + "allowedMethods": "GET,POST,PUT,DELETE,PATCH", + "allowedOrigins": "https://localhost:&{openidm.port.https}", + "chainPreflight": false, + }, + "urlPatterns": [ + "/*", + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/servletfilter/payload.idm.json 1`] = ` +{ + "idm": { + "servletfilter/payload": { + "_id": "servletfilter/payload", + "filterClass": "org.forgerock.openidm.jetty.LargePayloadServletFilter", + "initParams": { + "maxRequestSizeInMegabytes": 5, + }, + "urlPatterns": [ + "&{openidm.servlet.alias}/*", + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/servletfilter/upload.idm.json 1`] = ` +{ + "idm": { + "servletfilter/upload": { + "_id": "servletfilter/upload", + "filterClass": "org.forgerock.openidm.jetty.LargePayloadServletFilter", + "initParams": { + "maxRequestSizeInMegabytes": 50, + }, + "urlPatterns": [ + "&{openidm.servlet.upload.alias}/*", + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/sync/managedAssignment_managedUser.sync.json 1`] = ` +{ + "_id": "sync/managedAssignment_managedUser", + "consentRequired": false, + "displayName": "managedAssignment_managedUser", + "icon": null, + "name": "managedAssignment_managedUser", + "policies": [ + { + "action": { + "globals": {}, + "source": "file://managedAssignment_managedUser.sync.scripts/policies.AMBIGUOUS.action.script.groovy", + "type": "groovy", + }, + "situation": "AMBIGUOUS", + }, + { + "action": { + "globals": {}, + "source": "file://managedAssignment_managedUser.sync.scripts/policies.SOURCE_MISSING.action.script.js", + "type": "text/javascript", + }, + "condition": { + "globals": {}, + "source": "file://managedAssignment_managedUser.sync.scripts/policies.SOURCE_MISSING.condition.script.groovy", + "type": "groovy", + }, + "postAction": { + "globals": {}, + "source": "file://managedAssignment_managedUser.sync.scripts/policies.SOURCE_MISSING.postAction.script.js", + "type": "text/javascript", + }, + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + { + "action": { + "globals": {}, + "source": "file://managedAssignment_managedUser.sync.scripts/policies.UNASSIGNED.action.script.js", + "type": "text/javascript", + }, + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "ABSENT", + }, + ], + "properties": [], + "source": "managed/assignment", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + ], + "target": "managed/user", +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/sync/managedAssignment_managedUser.sync.scripts/policies.AMBIGUOUS.action.script.groovy 1`] = ` +"//asdfasdf UPDATED +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/sync/managedAssignment_managedUser.sync.scripts/policies.SOURCE_MISSING.action.script.js 1`] = ` +"//asdfasdfasdfas UPDATED POLICIES SOURCE_MISSING ACTION SCRIPT +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/sync/managedAssignment_managedUser.sync.scripts/policies.SOURCE_MISSING.condition.script.groovy 1`] = ` +"//asdfasdfasdf +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/sync/managedAssignment_managedUser.sync.scripts/policies.SOURCE_MISSING.postAction.script.js 1`] = ` +" +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/sync/managedAssignment_managedUser.sync.scripts/policies.UNASSIGNED.action.script.js 1`] = ` +"//asdfasdfasdf +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/sync/managedOrganization_managedRole.sync.json 1`] = ` +{ + "_id": "sync/managedOrganization_managedRole", + "consentRequired": false, + "displayName": "managedOrganization_managedRole", + "icon": null, + "name": "managedOrganization_managedRole", + "policies": [ + { + "action": { + "globals": {}, + "source": "file://managedOrganization_managedRole.sync.scripts/policies.AMBIGUOUS.action.script.js", + "type": "text/javascript", + }, + "situation": "AMBIGUOUS", + }, + { + "action": { + "globals": {}, + "source": "file://managedOrganization_managedRole.sync.scripts/policies.SOURCE_MISSING.action.script.js", + "type": "text/javascript", + }, + "condition": { + "globals": {}, + "source": "file://managedOrganization_managedRole.sync.scripts/policies.SOURCE_MISSING.condition.script.js", + "type": "text/javascript", + }, + "situation": "SOURCE_MISSING", + }, + { + "action": { + "globals": {}, + "source": "file://managedOrganization_managedRole.sync.scripts/policies.MISSING.action.script.groovy", + "type": "groovy", + }, + "postAction": { + "globals": {}, + "source": "file://managedOrganization_managedRole.sync.scripts/policies.MISSING.postAction.script.groovy", + "type": "groovy", + }, + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "ABSENT", + }, + ], + "properties": [], + "source": "managed/organization", + "syncAfter": [], + "target": "managed/role", +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/sync/managedOrganization_managedRole.sync.scripts/policies.AMBIGUOUS.action.script.js 1`] = ` +"//seantest +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/sync/managedOrganization_managedRole.sync.scripts/policies.MISSING.action.script.groovy 1`] = ` +"//seantest +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/sync/managedOrganization_managedRole.sync.scripts/policies.MISSING.postAction.script.groovy 1`] = ` +" +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/sync/managedOrganization_managedRole.sync.scripts/policies.SOURCE_MISSING.action.script.js 1`] = ` +"//seantest + + +//extract test +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/sync/managedOrganization_managedRole.sync.scripts/policies.SOURCE_MISSING.condition.script.js 1`] = ` +"//seantest + +//seantesttttt + +//testsss +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/sync/managedOrganization_managedSeantestmanagedobject.sync.json 1`] = ` +{ + "_id": "sync/managedOrganization_managedSeantestmanagedobject", + "consentRequired": false, + "displayName": "managedOrganization_managedSeantestmanagedobject", + "icon": null, + "name": "managedOrganization_managedSeantestmanagedobject", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/organization", + "syncAfter": [ + "managedOrganization_managedRole", + ], + "target": "managed/seantestmanagedobject", +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/sync/managedSeantestmanagedobject_managedUser.sync.json 1`] = ` +{ + "_id": "sync/managedSeantestmanagedobject_managedUser", + "consentRequired": false, + "displayName": "managedSeantestmanagedobject_managedUser", + "icon": null, + "name": "managedSeantestmanagedobject_managedUser", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/seantestmanagedobject", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser", + ], + "target": "managed/user", +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/sync/seantestmapping.sync.json 1`] = ` +{ + "_id": "sync/seantestmapping", + "consentRequired": false, + "displayName": "seantestmapping", + "icon": null, + "name": "seantestmapping", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/assignment", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser", + "managedSeantestmanagedobject_managedUser", + ], + "target": "managed/organization", +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/sync/sync.idm.json 1`] = ` +{ + "idm": { + "sync": { + "_id": "sync", + "mappings": [ + "file://managedOrganization_managedRole.sync.json", + "file://managedOrganization_managedSeantestmanagedobject.sync.json", + "file://managedAssignment_managedUser.sync.json", + "file://managedSeantestmanagedobject_managedUser.sync.json", + "file://seantestmapping.sync.json", + "file://systemCsvfileconnector__ACCOUNT___managedUser.sync.json", + "file://systemCsvsampleconnector__ACCOUNT___managedUser.sync.json", + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/sync/systemCsvfileconnector__ACCOUNT___managedUser.sync.json 1`] = ` +{ + "_id": "sync/systemCsvfileconnector__ACCOUNT___managedUser", + "consentRequired": false, + "displayName": "systemCsvfileconnector__ACCOUNT___managedUser", + "icon": null, + "name": "systemCsvfileconnector__ACCOUNT___managedUser", + "policies": [ + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "UPDATE", + "situation": "CONFIRMED", + }, + { + "action": "UPDATE", + "situation": "FOUND", + }, + { + "action": "CREATE", + "situation": "ABSENT", + }, + ], + "properties": [ + { + "source": "name", + "target": "userName", + }, + { + "source": "firstName", + "target": "givenName", + }, + { + "source": "lastName", + "target": "sn", + }, + { + "source": "email", + "target": "mail", + }, + ], + "source": "system/csvFileConnector/__ACCOUNT__", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser", + "managedSeantestmanagedobject_managedUser", + "seantestmapping", + ], + "target": "managed/user", +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/sync/systemCsvsampleconnector__ACCOUNT___managedUser.sync.json 1`] = ` +{ + "_id": "sync/systemCsvsampleconnector__ACCOUNT___managedUser", + "consentRequired": false, + "displayName": "systemCsvsampleconnector__ACCOUNT___managedUser", + "icon": null, + "name": "systemCsvsampleconnector__ACCOUNT___managedUser", + "policies": [ + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "UPDATE", + "situation": "CONFIRMED", + }, + { + "action": "UPDATE", + "situation": "FOUND", + }, + { + "action": "CREATE", + "situation": "ABSENT", + }, + ], + "properties": [ + { + "source": "email", + "target": "mail", + }, + { + "source": "lastname", + "target": "sn", + }, + { + "source": "description", + "target": "description", + }, + { + "source": "username", + "target": "userName", + }, + { + "source": "firstname", + "target": "givenName", + }, + ], + "source": "system/csvSampleConnector/__ACCOUNT__", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser", + "managedSeantestmanagedobject_managedUser", + "seantestmapping", + "systemCsvfileconnector__ACCOUNT___managedUser", + ], + "target": "managed/user", +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/ui.context/admin.idm.json 1`] = ` +{ + "idm": { + "ui.context/admin": { + "_id": "ui.context/admin", + "cacheEnabled": true, + "defaultDir": "&{idm.install.dir}/ui/admin/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/admin/extension", + "responseHeaders": { + "X-Frame-Options": "SAMEORIGIN", + }, + "urlContextRoot": "/admin", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/ui.context/api.idm.json 1`] = ` +{ + "idm": { + "ui.context/api": { + "_id": "ui.context/api", + "authEnabled": true, + "cacheEnabled": false, + "defaultDir": "&{idm.install.dir}/ui/api/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/api/extension", + "urlContextRoot": "/api", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/ui.context/enduser.idm.json 1`] = ` +{ + "idm": { + "ui.context/enduser": { + "_id": "ui.context/enduser", + "cacheEnabled": true, + "defaultDir": "&{idm.install.dir}/ui/enduser", + "enabled": true, + "responseHeaders": { + "X-Frame-Options": "DENY", + }, + "urlContextRoot": "/", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/ui.context/oauth.idm.json 1`] = ` +{ + "idm": { + "ui.context/oauth": { + "_id": "ui.context/oauth", + "cacheEnabled": true, + "defaultDir": "&{idm.install.dir}/ui/oauth/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/oauth/extension", + "urlContextRoot": "/oauthReturn", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/ui/configuration.idm.json 1`] = ` +{ + "idm": { + "ui/configuration": { + "_id": "ui/configuration", + "configuration": { + "defaultNotificationType": "info", + "forgotUsername": false, + "lang": "en", + "notificationTypes": { + "error": { + "iconPath": "images/notifications/error.png", + "name": "common.notification.types.error", + }, + "info": { + "iconPath": "images/notifications/info.png", + "name": "common.notification.types.info", + }, + "warning": { + "iconPath": "images/notifications/warning.png", + "name": "common.notification.types.warning", + }, + }, + "passwordReset": false, + "passwordResetLink": "", + "roles": { + "internal/role/openidm-admin": "ui-admin", + "internal/role/openidm-authorized": "ui-user", + }, + "selfRegistration": false, + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/ui/dashboard.idm.json 1`] = ` +{ + "idm": { + "ui/dashboard": { + "_id": "ui/dashboard", + "adminDashboards": [ + { + "isDefault": true, + "name": "Quick Start", + "widgets": [ + { + "cards": [ + { + "href": "#connectors/add/", + "icon": "fa-database", + "name": "Add Connector", + }, + { + "href": "#mapping/add/", + "icon": "fa-map-marker", + "name": "Create Mapping", + }, + { + "href": "#resource/managed/role/list/", + "icon": "fa-check-square-o", + "name": "Manage Roles", + }, + { + "href": "#managed/add/", + "icon": "fa-tablet", + "name": "Add Device", + }, + { + "href": "#selfservice/userregistration/", + "icon": "fa-gear", + "name": "Configure Registration", + }, + { + "href": "#selfservice/passwordreset/", + "icon": "fa-gear", + "name": "Configure Password Reset", + }, + { + "href": "#resource/managed/user/list/", + "icon": "fa-user", + "name": "Manage Users", + }, + { + "href": "#settings/", + "icon": "fa-user", + "name": "Configure System Preferences", + }, + ], + "size": "large", + "type": "quickStart", + }, + ], + }, + { + "isDefault": false, + "name": "System Monitoring", + "widgets": [ + { + "legendRange": { + "month": [ + 500, + 2500, + 5000, + ], + "week": [ + 10, + 30, + 90, + 270, + 810, + ], + "year": [ + 10000, + 40000, + 100000, + 250000, + ], + }, + "maxRange": "#24423c", + "minRange": "#b0d4cd", + "size": "large", + "type": "audit", + }, + { + "size": "large", + "type": "clusterStatus", + }, + { + "size": "large", + "type": "systemHealthFull", + }, + { + "barchart": "false", + "size": "large", + "type": "lastRecon", + }, + ], + }, + { + "isDefault": false, + "name": "Resource Report", + "widgets": [ + { + "selected": "activeUsers", + "size": "x-small", + "type": "counter", + }, + { + "selected": "rolesEnabled", + "size": "x-small", + "type": "counter", + }, + { + "selected": "activeConnectors", + "size": "x-small", + "type": "counter", + }, + { + "size": "large", + "type": "resourceList", + }, + ], + }, + { + "isDefault": false, + "name": "Business Report", + "widgets": [ + { + "graphType": "fa-pie-chart", + "providers": [ + "Username/Password", + ], + "size": "x-small", + "type": "signIns", + "widgetTitle": "Sign-Ins", + }, + { + "graphType": "fa-bar-chart", + "size": "x-small", + "type": "passwordResets", + "widgetTitle": "Password Resets", + }, + { + "graphType": "fa-line-chart", + "providers": [ + "Username/Password", + ], + "size": "x-small", + "type": "newRegistrations", + "widgetTitle": "New Registrations", + }, + { + "size": "x-small", + "timezone": { + "hours": "07", + "minutes": "00", + "negative": true, + }, + "type": "socialLogin", + }, + { + "selected": "socialEnabled", + "size": "x-small", + "type": "counter", + }, + { + "selected": "manualRegistrations", + "size": "x-small", + "type": "counter", + }, + ], + }, + { + "isDefault": false, + "name": "seantestdashboard", + "widgets": [ + { + "size": "large", + "type": "resourceList", + }, + ], + }, + ], + "dashboard": { + "widgets": [ + { + "size": "large", + "type": "Welcome", + }, + ], + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/ui/profile.idm.json 1`] = ` +{ + "idm": { + "ui/profile": { + "_id": "ui/profile", + "tabs": [ + { + "name": "personalInfoTab", + "view": "org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab", + }, + { + "name": "signInAndSecurity", + "view": "org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab", + }, + { + "name": "preference", + "view": "org/forgerock/openidm/ui/user/profile/PreferencesTab", + }, + { + "name": "trustedDevice", + "view": "org/forgerock/openidm/ui/user/profile/TrustedDevicesTab", + }, + { + "name": "oauthApplication", + "view": "org/forgerock/openidm/ui/user/profile/OauthApplicationsTab", + }, + { + "name": "privacyAndConsent", + "view": "org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab", + }, + { + "name": "sharing", + "view": "org/forgerock/openidm/ui/user/profile/uma/SharingTab", + }, + { + "name": "auditHistory", + "view": "org/forgerock/openidm/ui/user/profile/uma/ActivityTab", + }, + { + "name": "accountControls", + "view": "org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab", + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/ui/themeconfig.idm.json 1`] = ` +{ + "idm": { + "ui/themeconfig": { + "_id": "ui/themeconfig", + "icon": "favicon.ico", + "path": "", + "settings": { + "footer": { + "mailto": "info@pingidentity.com", + }, + "loginLogo": { + "alt": "Ping Identity", + "height": "120px", + "src": "images/login-logo-dark.png", + "title": "Ping Identity", + "width": "120px", + }, + "logo": { + "alt": "Ping Identity", + "src": "images/logo-horizontal-white.png", + "title": "Ping Identity", + }, + }, + "stylesheets": [ + "css/bootstrap-3.4.1-custom.css", + "css/structure.css", + "css/theme.css", + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/webserver.idm.json 1`] = ` +{ + "idm": { + "webserver": { + "_id": "webserver", + "gzip": { + "enabled": true, + "includedMethods": [ + "GET", + ], + }, + "maxThreads": { + "$int": "&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/webserver.listener/http.idm.json 1`] = ` +{ + "idm": { + "webserver.listener/http": { + "_id": "webserver.listener/http", + "enabled": { + "$bool": "&{openidm.http.enabled|true}", + }, + "port": { + "$int": "&{openidm.port.http|8080}", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/webserver.listener/https.idm.json 1`] = ` +{ + "idm": { + "webserver.listener/https": { + "_id": "webserver.listener/https", + "enabled": { + "$bool": "&{openidm.https.enabled|true}", + }, + "port": { + "$int": "&{openidm.port.https|8443}", + }, + "secure": true, + "sslCertAlias": "&{openidm.https.keystore.cert.alias|openidm-localhost}", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir8 -m idm": should export all idm config entities for on prem idm: idmTestDir8/webserver.listener/mutualAuth.idm.json 1`] = ` +{ + "idm": { + "webserver.listener/mutualAuth": { + "_id": "webserver.listener/mutualAuth", + "enabled": { + "$bool": "&{openidm.mutualauth.enabled|true}", + }, + "mutualAuth": true, + "port": { + "$int": "&{openidm.port.mutualauth|8444}", + }, + "secure": true, + "sslCertAlias": "&{openidm.https.keystore.cert.alias|openidm-localhost}", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm 1`] = `0`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm 2`] = `""`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/access.idm.json 1`] = ` +{ + "idm": { + "access": { + "_id": "access", + "configs": [ + { + "actions": "*", + "methods": "read", + "pattern": "info/*", + "roles": "*", + }, + { + "actions": "login,logout", + "methods": "read,action", + "pattern": "authentication", + "roles": "*", + }, + { + "actions": "*", + "methods": "*", + "pattern": "config/fidc/*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/themeconfig", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/themerealm", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/uilocale/*", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/fieldPolicy/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "read", + "pattern": "info/uiconfig", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/dashboard", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "query", + "pattern": "info/features", + "roles": "*", + }, + { + "actions": "listPrivileges", + "methods": "action", + "pattern": "privilege", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "privilege/*", + "roles": "*", + }, + { + "actions": "validate", + "methods": "action", + "pattern": "util/validateQueryFilter", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "customAuthz": "checkIfAnyFeatureEnabled('kba')", + "methods": "read", + "pattern": "selfservice/kba", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "read", + "pattern": "schema/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "action,query", + "pattern": "consent", + "roles": "internal/role/openidm-authorized", + }, + { + "methods": "read", + "pattern": "*", + "roles": "~rcsclient-authorized", + "servlet": "openicf", + }, + { + "actions": "*", + "excludePatterns": "repo,repo/*", + "methods": "*", + "pattern": "*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "", + "methods": "create,read,update,delete,patch,query", + "pattern": "system/*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "*", + "methods": "script", + "pattern": "system/*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "test,testConfig,createconfiguration,liveSync,authenticate", + "methods": "action", + "pattern": "system/*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "*", + "customAuthz": "disallowCommandAction()", + "methods": "*", + "pattern": "repo", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "*", + "customAuthz": "disallowCommandAction()", + "methods": "*", + "pattern": "repo/*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "command", + "customAuthz": "request.additionalParameters.commandId === 'delete-mapping-links'", + "methods": "action", + "pattern": "repo/link", + "roles": "internal/role/openidm-admin", + }, + { + "methods": "create,read,query,patch", + "pattern": "managed/*", + "roles": "internal/role/platform-provisioning", + }, + { + "methods": "read,query", + "pattern": "internal/role/*", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "*", + "methods": "create,read,action,update", + "pattern": "profile/*", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "*", + "methods": "read,action", + "pattern": "policy/*", + "roles": "internal/role/platform-provisioning", + }, + { + "methods": "read", + "pattern": "schema/*", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "*", + "methods": "action,query", + "pattern": "consent", + "roles": "internal/role/platform-provisioning", + }, + { + "methods": "read", + "pattern": "selfservice/kba", + "roles": "internal/role/platform-provisioning", + }, + { + "methods": "read", + "pattern": "selfservice/terms", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "sendTemplate", + "methods": "action", + "pattern": "external/email", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "authenticate", + "methods": "action", + "pattern": "system/*", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "*", + "methods": "read,action", + "pattern": "policy/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "bind,unbind", + "customAuthz": "ownDataOnly()", + "methods": "read,action,delete", + "pattern": "*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "patch", + "customAuthz": "ownDataOnly() && onlyEditableManagedObjectProperties('user', [])", + "methods": "update,patch,action", + "pattern": "*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "patch", + "customAuthz": "isQueryOneOf({'managed/user': ['for-userName']}) && restrictPatchToFields(['password'])", + "methods": "patch,action", + "pattern": "managed/user", + "roles": "internal/role/openidm-cert", + }, + { + "actions": "*", + "customAuthz": "ownRelationshipProperty('_meta', false)", + "methods": "read", + "pattern": "internal/usermeta/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "customAuthz": "ownRelationshipProperty('_notifications', true)", + "methods": "read,delete", + "pattern": "internal/notification/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "customAuthz": "ownRelationshipCollection(['_meta','_notifications'])", + "methods": "read,query", + "pattern": "managed/user/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "", + "customAuthz": "ownDataOnly()", + "methods": "read,delete", + "pattern": "managed/alpha_user/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "patch", + "customAuthz": "ownDataOnly() && onlyEditableManagedObjectProperties('alpha_user', [])", + "methods": "update,patch,action", + "pattern": "managed/alpha_user/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "customAuthz": "ownRelationshipCollection(['_meta','_notifications'])", + "methods": "read,query", + "pattern": "managed/alpha_user/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "", + "customAuthz": "ownDataOnly()", + "methods": "read,delete", + "pattern": "managed/bravo_user/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "patch", + "customAuthz": "ownDataOnly() && onlyEditableManagedObjectProperties('bravo_user', [])", + "methods": "update,patch,action", + "pattern": "managed/bravo_user/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "customAuthz": "ownRelationshipCollection(['_meta','_notifications'])", + "methods": "read,query", + "pattern": "managed/bravo_user/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "deleteNotificationsForTarget", + "customAuthz": "request.additionalParameters.target === (context.security.authorization.component + '/' + context.security.authorization.id)", + "methods": "action", + "pattern": "notification", + "roles": "internal/role/openidm-authorized", + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/alphaOrgPrivileges.idm.json 1`] = ` +{ + "idm": { + "alphaOrgPrivileges": { + "_id": "alphaOrgPrivileges", + "privileges": [ + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "owners", + "readOnly": true, + }, + { + "attribute": "admins", + "readOnly": false, + }, + { + "attribute": "members", + "readOnly": false, + }, + { + "attribute": "parent", + "readOnly": false, + }, + { + "attribute": "children", + "readOnly": false, + }, + { + "attribute": "parentIDs", + "readOnly": true, + }, + { + "attribute": "adminIDs", + "readOnly": true, + }, + { + "attribute": "parentAdminIDs", + "readOnly": true, + }, + { + "attribute": "ownerIDs", + "readOnly": true, + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/ownerIDs eq "{{_id}}" or /parentOwnerIDs eq "{{_id}}"", + "name": "owner-view-update-delete-orgs", + "path": "managed/alpha_organization", + "permissions": [ + "VIEW", + "UPDATE", + "DELETE", + ], + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "owners", + "readOnly": true, + }, + { + "attribute": "admins", + "readOnly": false, + }, + { + "attribute": "members", + "readOnly": false, + }, + { + "attribute": "parent", + "readOnly": false, + }, + { + "attribute": "children", + "readOnly": false, + }, + { + "attribute": "parentIDs", + "readOnly": true, + }, + { + "attribute": "adminIDs", + "readOnly": true, + }, + { + "attribute": "parentAdminIDs", + "readOnly": true, + }, + { + "attribute": "ownerIDs", + "readOnly": true, + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/parent pr", + "name": "owner-create-orgs", + "path": "managed/alpha_organization", + "permissions": [ + "CREATE", + ], + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false, + }, + { + "attribute": "password", + "readOnly": false, + }, + { + "attribute": "givenName", + "readOnly": false, + }, + { + "attribute": "sn", + "readOnly": false, + }, + { + "attribute": "mail", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "accountStatus", + "readOnly": false, + }, + { + "attribute": "telephoneNumber", + "readOnly": false, + }, + { + "attribute": "postalAddress", + "readOnly": false, + }, + { + "attribute": "city", + "readOnly": false, + }, + { + "attribute": "postalCode", + "readOnly": false, + }, + { + "attribute": "country", + "readOnly": false, + }, + { + "attribute": "stateProvince", + "readOnly": false, + }, + { + "attribute": "roles", + "readOnly": false, + }, + { + "attribute": "groups", + "readOnly": false, + }, + { + "attribute": "manager", + "readOnly": false, + }, + { + "attribute": "authzRoles", + "readOnly": false, + }, + { + "attribute": "reports", + "readOnly": false, + }, + { + "attribute": "effectiveRoles", + "readOnly": false, + }, + { + "attribute": "effectiveAssignments", + "readOnly": false, + }, + { + "attribute": "effectiveGroups", + "readOnly": false, + }, + { + "attribute": "lastSync", + "readOnly": false, + }, + { + "attribute": "kbaInfo", + "readOnly": false, + }, + { + "attribute": "preferences", + "readOnly": false, + }, + { + "attribute": "consentedMappings", + "readOnly": false, + }, + { + "attribute": "memberOfOrg", + "readOnly": false, + }, + { + "attribute": "adminOfOrg", + "readOnly": false, + }, + { + "attribute": "ownerOfOrg", + "readOnly": true, + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/memberOfOrgIDs eq "__org_id_placeholder__"", + "name": "owner-view-update-delete-admins-and-members", + "path": "managed/alpha_user", + "permissions": [ + "VIEW", + "DELETE", + "UPDATE", + ], + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false, + }, + { + "attribute": "password", + "readOnly": false, + }, + { + "attribute": "givenName", + "readOnly": false, + }, + { + "attribute": "sn", + "readOnly": false, + }, + { + "attribute": "mail", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "accountStatus", + "readOnly": false, + }, + { + "attribute": "telephoneNumber", + "readOnly": false, + }, + { + "attribute": "postalAddress", + "readOnly": false, + }, + { + "attribute": "city", + "readOnly": false, + }, + { + "attribute": "postalCode", + "readOnly": false, + }, + { + "attribute": "country", + "readOnly": false, + }, + { + "attribute": "stateProvince", + "readOnly": false, + }, + { + "attribute": "roles", + "readOnly": false, + }, + { + "attribute": "groups", + "readOnly": false, + }, + { + "attribute": "manager", + "readOnly": false, + }, + { + "attribute": "authzRoles", + "readOnly": false, + }, + { + "attribute": "reports", + "readOnly": false, + }, + { + "attribute": "effectiveRoles", + "readOnly": false, + }, + { + "attribute": "effectiveAssignments", + "readOnly": false, + }, + { + "attribute": "effectiveGroups", + "readOnly": false, + }, + { + "attribute": "lastSync", + "readOnly": false, + }, + { + "attribute": "kbaInfo", + "readOnly": false, + }, + { + "attribute": "preferences", + "readOnly": false, + }, + { + "attribute": "consentedMappings", + "readOnly": false, + }, + { + "attribute": "memberOfOrg", + "readOnly": false, + }, + { + "attribute": "adminOfOrg", + "readOnly": false, + }, + { + "attribute": "ownerOfOrg", + "readOnly": true, + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/memberOfOrg/0 pr and /adminOfOrg/0 pr and !(/ownerOfOrg pr)", + "name": "owner-create-admins", + "path": "managed/alpha_user", + "permissions": [ + "CREATE", + ], + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "owners", + "readOnly": true, + }, + { + "attribute": "admins", + "readOnly": true, + }, + { + "attribute": "members", + "readOnly": false, + }, + { + "attribute": "parent", + "readOnly": false, + }, + { + "attribute": "children", + "readOnly": false, + }, + { + "attribute": "parentIDs", + "readOnly": true, + }, + { + "attribute": "adminIDs", + "readOnly": true, + }, + { + "attribute": "parentAdminIDs", + "readOnly": true, + }, + { + "attribute": "ownerIDs", + "readOnly": true, + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/adminIDs eq "{{_id}}" or /parentAdminIDs eq "{{_id}}"", + "name": "admin-view-update-delete-orgs", + "path": "managed/alpha_organization", + "permissions": [ + "VIEW", + "UPDATE", + "DELETE", + ], + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "owners", + "readOnly": true, + }, + { + "attribute": "admins", + "readOnly": true, + }, + { + "attribute": "members", + "readOnly": false, + }, + { + "attribute": "parent", + "readOnly": false, + }, + { + "attribute": "children", + "readOnly": false, + }, + { + "attribute": "parentIDs", + "readOnly": true, + }, + { + "attribute": "adminIDs", + "readOnly": true, + }, + { + "attribute": "parentAdminIDs", + "readOnly": true, + }, + { + "attribute": "ownerIDs", + "readOnly": true, + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/parent pr", + "name": "admin-create-orgs", + "path": "managed/alpha_organization", + "permissions": [ + "CREATE", + ], + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false, + }, + { + "attribute": "password", + "readOnly": false, + }, + { + "attribute": "givenName", + "readOnly": false, + }, + { + "attribute": "sn", + "readOnly": false, + }, + { + "attribute": "mail", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "accountStatus", + "readOnly": false, + }, + { + "attribute": "telephoneNumber", + "readOnly": false, + }, + { + "attribute": "postalAddress", + "readOnly": false, + }, + { + "attribute": "city", + "readOnly": false, + }, + { + "attribute": "postalCode", + "readOnly": false, + }, + { + "attribute": "country", + "readOnly": false, + }, + { + "attribute": "stateProvince", + "readOnly": false, + }, + { + "attribute": "roles", + "readOnly": false, + }, + { + "attribute": "groups", + "readOnly": false, + }, + { + "attribute": "manager", + "readOnly": false, + }, + { + "attribute": "authzRoles", + "readOnly": false, + }, + { + "attribute": "reports", + "readOnly": false, + }, + { + "attribute": "effectiveRoles", + "readOnly": false, + }, + { + "attribute": "effectiveAssignments", + "readOnly": false, + }, + { + "attribute": "effectiveGroups", + "readOnly": false, + }, + { + "attribute": "lastSync", + "readOnly": false, + }, + { + "attribute": "kbaInfo", + "readOnly": false, + }, + { + "attribute": "preferences", + "readOnly": false, + }, + { + "attribute": "consentedMappings", + "readOnly": false, + }, + { + "attribute": "memberOfOrg", + "readOnly": false, + }, + { + "attribute": "adminOfOrg", + "readOnly": true, + }, + { + "attribute": "ownerOfOrg", + "readOnly": true, + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/memberOfOrgIDs eq "__org_id_placeholder__"", + "name": "admin-view-update-delete-members", + "path": "managed/alpha_user", + "permissions": [ + "VIEW", + "DELETE", + "UPDATE", + ], + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false, + }, + { + "attribute": "password", + "readOnly": false, + }, + { + "attribute": "givenName", + "readOnly": false, + }, + { + "attribute": "sn", + "readOnly": false, + }, + { + "attribute": "mail", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "accountStatus", + "readOnly": false, + }, + { + "attribute": "telephoneNumber", + "readOnly": false, + }, + { + "attribute": "postalAddress", + "readOnly": false, + }, + { + "attribute": "city", + "readOnly": false, + }, + { + "attribute": "postalCode", + "readOnly": false, + }, + { + "attribute": "country", + "readOnly": false, + }, + { + "attribute": "stateProvince", + "readOnly": false, + }, + { + "attribute": "roles", + "readOnly": false, + }, + { + "attribute": "groups", + "readOnly": false, + }, + { + "attribute": "manager", + "readOnly": false, + }, + { + "attribute": "authzRoles", + "readOnly": false, + }, + { + "attribute": "reports", + "readOnly": false, + }, + { + "attribute": "effectiveRoles", + "readOnly": false, + }, + { + "attribute": "effectiveAssignments", + "readOnly": false, + }, + { + "attribute": "effectiveGroups", + "readOnly": false, + }, + { + "attribute": "lastSync", + "readOnly": false, + }, + { + "attribute": "kbaInfo", + "readOnly": false, + }, + { + "attribute": "preferences", + "readOnly": false, + }, + { + "attribute": "consentedMappings", + "readOnly": false, + }, + { + "attribute": "memberOfOrg", + "readOnly": false, + }, + { + "attribute": "adminOfOrg", + "readOnly": true, + }, + { + "attribute": "ownerOfOrg", + "readOnly": true, + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/memberOfOrg/0 pr and !(/adminOfOrg pr) and !(/ownerOfOrg pr)", + "name": "admin-create-members", + "path": "managed/alpha_user", + "permissions": [ + "CREATE", + ], + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/audit.idm.json 1`] = ` +{ + "idm": { + "audit": { + "_id": "audit", + "auditServiceConfig": { + "availableAuditEventHandlers": [ + "org.forgerock.audit.handlers.csv.CsvAuditEventHandler", + "org.forgerock.audit.handlers.jms.JmsAuditEventHandler", + "org.forgerock.audit.handlers.json.JsonAuditEventHandler", + "org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler", + "org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler", + "org.forgerock.openidm.audit.impl.RouterAuditEventHandler", + "org.forgerock.audit.handlers.syslog.SyslogAuditEventHandler", + ], + "caseInsensitiveFields": [ + "/access/http/request/headers", + "/access/http/response/headers", + ], + "filterPolicies": { + "value": { + "excludeIf": [ + "/access/http/request/cookies/&{com.iplanet.am.cookie.name}", + "/access/http/request/cookies/session-jwt", + "/access/http/request/headers/&{com.sun.identity.auth.cookieName}", + "/access/http/request/headers/&{com.iplanet.am.cookie.name}", + "/access/http/request/headers/accept-encoding", + "/access/http/request/headers/accept-language", + "/access/http/request/headers/Authorization", + "/access/http/request/headers/cache-control", + "/access/http/request/headers/connection", + "/access/http/request/headers/content-length", + "/access/http/request/headers/content-type", + "/access/http/request/headers/proxy-authorization", + "/access/http/request/headers/X-OpenAM-Password", + "/access/http/request/headers/X-OpenIDM-Password", + "/access/http/request/queryParameters/access_token", + "/access/http/request/queryParameters/IDToken1", + "/access/http/request/queryParameters/id_token_hint", + "/access/http/request/queryParameters/Login.Token1", + "/access/http/request/queryParameters/redirect_uri", + "/access/http/request/queryParameters/requester", + "/access/http/request/queryParameters/sessionUpgradeSSOTokenId", + "/access/http/request/queryParameters/tokenId", + "/access/http/response/headers/Authorization", + "/access/http/response/headers/Set-Cookie", + "/access/http/response/headers/X-OpenIDM-Password", + ], + "includeIf": [], + }, + }, + "handlerForQueries": "json", + }, + "eventHandlers": [ + { + "class": "org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler", + "config": { + "name": "json", + "topics": [ + "access", + "activity", + "sync", + "authentication", + "config", + ], + }, + }, + ], + "eventTopics": { + "activity": { + "filter": { + "actions": [ + "create", + "update", + "delete", + "patch", + "action", + ], + }, + "passwordFields": [ + "password", + ], + "watchedFields": [ + "*", + ], + }, + "config": { + "filter": { + "actions": [ + "create", + "update", + "delete", + "patch", + "action", + ], + }, + }, + }, + "exceptionFormatter": { + "file": "bin/defaults/script/audit/stacktraceFormatter.js", + "type": "text/javascript", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/authentication.idm.json 1`] = ` +{ + "idm": { + "authentication": { + "_id": "authentication", + "rsFilter": { + "augmentSecurityContext": { + "source": "file://authentication.idm.scripts/rsFilter.augmentSecurityContext.script.js", + "type": "text/javascript", + }, + "cache": { + "maxTimeout": "300 seconds", + }, + "scopes": [ + "fr:idm:*", + ], + "staticUserMapping": [], + "subjectMapping": [ + { + "additionalUserFields": [ + "adminOfOrg", + "ownerOfOrg", + ], + "defaultRoles": [ + "internal/role/openidm-authorized", + ], + "propertyMapping": { + "sub": "_id", + }, + "queryOnResource": "managed/{{substring realm 1}}_user", + "userRoles": "authzRoles/*", + }, + ], + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/authentication.idm.scripts/rsFilter.augmentSecurityContext.script.js 1`] = ` +"require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, security.authorization.component.includes('/alpha_') ? 'alphaOrgPrivileges' : 'bravoOrgPrivileges', 'privilegeAssignments'); +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/bravoOrgPrivileges.idm.json 1`] = ` +{ + "idm": { + "bravoOrgPrivileges": { + "_id": "bravoOrgPrivileges", + "privileges": [ + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "owners", + "readOnly": true, + }, + { + "attribute": "admins", + "readOnly": false, + }, + { + "attribute": "members", + "readOnly": false, + }, + { + "attribute": "parent", + "readOnly": false, + }, + { + "attribute": "children", + "readOnly": false, + }, + { + "attribute": "parentIDs", + "readOnly": true, + }, + { + "attribute": "adminIDs", + "readOnly": true, + }, + { + "attribute": "parentAdminIDs", + "readOnly": true, + }, + { + "attribute": "ownerIDs", + "readOnly": true, + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/ownerIDs eq "{{_id}}" or /parentOwnerIDs eq "{{_id}}"", + "name": "owner-view-update-delete-orgs", + "path": "managed/bravo_organization", + "permissions": [ + "VIEW", + "UPDATE", + "DELETE", + ], + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "owners", + "readOnly": true, + }, + { + "attribute": "admins", + "readOnly": false, + }, + { + "attribute": "members", + "readOnly": false, + }, + { + "attribute": "parent", + "readOnly": false, + }, + { + "attribute": "children", + "readOnly": false, + }, + { + "attribute": "parentIDs", + "readOnly": true, + }, + { + "attribute": "adminIDs", + "readOnly": true, + }, + { + "attribute": "parentAdminIDs", + "readOnly": true, + }, + { + "attribute": "ownerIDs", + "readOnly": true, + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/parent pr", + "name": "owner-create-orgs", + "path": "managed/bravo_organization", + "permissions": [ + "CREATE", + ], + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false, + }, + { + "attribute": "password", + "readOnly": false, + }, + { + "attribute": "givenName", + "readOnly": false, + }, + { + "attribute": "sn", + "readOnly": false, + }, + { + "attribute": "mail", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "accountStatus", + "readOnly": false, + }, + { + "attribute": "telephoneNumber", + "readOnly": false, + }, + { + "attribute": "postalAddress", + "readOnly": false, + }, + { + "attribute": "city", + "readOnly": false, + }, + { + "attribute": "postalCode", + "readOnly": false, + }, + { + "attribute": "country", + "readOnly": false, + }, + { + "attribute": "stateProvince", + "readOnly": false, + }, + { + "attribute": "roles", + "readOnly": false, + }, + { + "attribute": "groups", + "readOnly": false, + }, + { + "attribute": "manager", + "readOnly": false, + }, + { + "attribute": "authzRoles", + "readOnly": false, + }, + { + "attribute": "reports", + "readOnly": false, + }, + { + "attribute": "effectiveRoles", + "readOnly": false, + }, + { + "attribute": "effectiveAssignments", + "readOnly": false, + }, + { + "attribute": "effectiveGroups", + "readOnly": false, + }, + { + "attribute": "lastSync", + "readOnly": false, + }, + { + "attribute": "kbaInfo", + "readOnly": false, + }, + { + "attribute": "preferences", + "readOnly": false, + }, + { + "attribute": "consentedMappings", + "readOnly": false, + }, + { + "attribute": "memberOfOrg", + "readOnly": false, + }, + { + "attribute": "adminOfOrg", + "readOnly": false, + }, + { + "attribute": "ownerOfOrg", + "readOnly": true, + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/memberOfOrgIDs eq "__org_id_placeholder__"", + "name": "owner-view-update-delete-admins-and-members", + "path": "managed/bravo_user", + "permissions": [ + "VIEW", + "DELETE", + "UPDATE", + ], + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false, + }, + { + "attribute": "password", + "readOnly": false, + }, + { + "attribute": "givenName", + "readOnly": false, + }, + { + "attribute": "sn", + "readOnly": false, + }, + { + "attribute": "mail", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "accountStatus", + "readOnly": false, + }, + { + "attribute": "telephoneNumber", + "readOnly": false, + }, + { + "attribute": "postalAddress", + "readOnly": false, + }, + { + "attribute": "city", + "readOnly": false, + }, + { + "attribute": "postalCode", + "readOnly": false, + }, + { + "attribute": "country", + "readOnly": false, + }, + { + "attribute": "stateProvince", + "readOnly": false, + }, + { + "attribute": "roles", + "readOnly": false, + }, + { + "attribute": "groups", + "readOnly": false, + }, + { + "attribute": "manager", + "readOnly": false, + }, + { + "attribute": "authzRoles", + "readOnly": false, + }, + { + "attribute": "reports", + "readOnly": false, + }, + { + "attribute": "effectiveRoles", + "readOnly": false, + }, + { + "attribute": "effectiveAssignments", + "readOnly": false, + }, + { + "attribute": "effectiveGroups", + "readOnly": false, + }, + { + "attribute": "lastSync", + "readOnly": false, + }, + { + "attribute": "kbaInfo", + "readOnly": false, + }, + { + "attribute": "preferences", + "readOnly": false, + }, + { + "attribute": "consentedMappings", + "readOnly": false, + }, + { + "attribute": "memberOfOrg", + "readOnly": false, + }, + { + "attribute": "adminOfOrg", + "readOnly": false, + }, + { + "attribute": "ownerOfOrg", + "readOnly": true, + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/memberOfOrg/0 pr and /adminOfOrg/0 pr and !(/ownerOfOrg pr)", + "name": "owner-create-admins", + "path": "managed/bravo_user", + "permissions": [ + "CREATE", + ], + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "owners", + "readOnly": true, + }, + { + "attribute": "admins", + "readOnly": true, + }, + { + "attribute": "members", + "readOnly": false, + }, + { + "attribute": "parent", + "readOnly": false, + }, + { + "attribute": "children", + "readOnly": false, + }, + { + "attribute": "parentIDs", + "readOnly": true, + }, + { + "attribute": "adminIDs", + "readOnly": true, + }, + { + "attribute": "parentAdminIDs", + "readOnly": true, + }, + { + "attribute": "ownerIDs", + "readOnly": true, + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/adminIDs eq "{{_id}}" or /parentAdminIDs eq "{{_id}}"", + "name": "admin-view-update-delete-orgs", + "path": "managed/bravo_organization", + "permissions": [ + "VIEW", + "UPDATE", + "DELETE", + ], + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "owners", + "readOnly": true, + }, + { + "attribute": "admins", + "readOnly": true, + }, + { + "attribute": "members", + "readOnly": false, + }, + { + "attribute": "parent", + "readOnly": false, + }, + { + "attribute": "children", + "readOnly": false, + }, + { + "attribute": "parentIDs", + "readOnly": true, + }, + { + "attribute": "adminIDs", + "readOnly": true, + }, + { + "attribute": "parentAdminIDs", + "readOnly": true, + }, + { + "attribute": "ownerIDs", + "readOnly": true, + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/parent pr", + "name": "admin-create-orgs", + "path": "managed/bravo_organization", + "permissions": [ + "CREATE", + ], + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false, + }, + { + "attribute": "password", + "readOnly": false, + }, + { + "attribute": "givenName", + "readOnly": false, + }, + { + "attribute": "sn", + "readOnly": false, + }, + { + "attribute": "mail", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "accountStatus", + "readOnly": false, + }, + { + "attribute": "telephoneNumber", + "readOnly": false, + }, + { + "attribute": "postalAddress", + "readOnly": false, + }, + { + "attribute": "city", + "readOnly": false, + }, + { + "attribute": "postalCode", + "readOnly": false, + }, + { + "attribute": "country", + "readOnly": false, + }, + { + "attribute": "stateProvince", + "readOnly": false, + }, + { + "attribute": "roles", + "readOnly": false, + }, + { + "attribute": "groups", + "readOnly": false, + }, + { + "attribute": "manager", + "readOnly": false, + }, + { + "attribute": "authzRoles", + "readOnly": false, + }, + { + "attribute": "reports", + "readOnly": false, + }, + { + "attribute": "effectiveRoles", + "readOnly": false, + }, + { + "attribute": "effectiveAssignments", + "readOnly": false, + }, + { + "attribute": "effectiveGroups", + "readOnly": false, + }, + { + "attribute": "lastSync", + "readOnly": false, + }, + { + "attribute": "kbaInfo", + "readOnly": false, + }, + { + "attribute": "preferences", + "readOnly": false, + }, + { + "attribute": "consentedMappings", + "readOnly": false, + }, + { + "attribute": "memberOfOrg", + "readOnly": false, + }, + { + "attribute": "adminOfOrg", + "readOnly": true, + }, + { + "attribute": "ownerOfOrg", + "readOnly": true, + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/memberOfOrgIDs eq "__org_id_placeholder__"", + "name": "admin-view-update-delete-members", + "path": "managed/bravo_user", + "permissions": [ + "VIEW", + "DELETE", + "UPDATE", + ], + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false, + }, + { + "attribute": "password", + "readOnly": false, + }, + { + "attribute": "givenName", + "readOnly": false, + }, + { + "attribute": "sn", + "readOnly": false, + }, + { + "attribute": "mail", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "accountStatus", + "readOnly": false, + }, + { + "attribute": "telephoneNumber", + "readOnly": false, + }, + { + "attribute": "postalAddress", + "readOnly": false, + }, + { + "attribute": "city", + "readOnly": false, + }, + { + "attribute": "postalCode", + "readOnly": false, + }, + { + "attribute": "country", + "readOnly": false, + }, + { + "attribute": "stateProvince", + "readOnly": false, + }, + { + "attribute": "roles", + "readOnly": false, + }, + { + "attribute": "groups", + "readOnly": false, + }, + { + "attribute": "manager", + "readOnly": false, + }, + { + "attribute": "authzRoles", + "readOnly": false, + }, + { + "attribute": "reports", + "readOnly": false, + }, + { + "attribute": "effectiveRoles", + "readOnly": false, + }, + { + "attribute": "effectiveAssignments", + "readOnly": false, + }, + { + "attribute": "effectiveGroups", + "readOnly": false, + }, + { + "attribute": "lastSync", + "readOnly": false, + }, + { + "attribute": "kbaInfo", + "readOnly": false, + }, + { + "attribute": "preferences", + "readOnly": false, + }, + { + "attribute": "consentedMappings", + "readOnly": false, + }, + { + "attribute": "memberOfOrg", + "readOnly": false, + }, + { + "attribute": "adminOfOrg", + "readOnly": true, + }, + { + "attribute": "ownerOfOrg", + "readOnly": true, + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/memberOfOrg/0 pr and !(/adminOfOrg pr) and !(/ownerOfOrg pr)", + "name": "admin-create-members", + "path": "managed/bravo_user", + "permissions": [ + "CREATE", + ], + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/emailTemplate/forgottenUsername.idm.json 1`] = ` +{ + "idm": { + "emailTemplate/forgottenUsername": { + "_id": "emailTemplate/forgottenUsername", + "defaultLocale": "en", + "enabled": true, + "from": "", + "html": { + "en": "{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

", + "fr": "{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

", + }, + "message": { + "en": "

{{#if object.userName}}Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

", + "fr": "
{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

", + }, + "mimeType": "text/html", + "styles": "body{background-color:#324054;color:#5e6d82;padding:60px;text-align:center}a{text-decoration:none;color:#109cf1}.content{background-color:#fff;border-radius:4px;margin:0 auto;padding:48px;width:235px}", + "subject": { + "en": "Account Information - username", + "fr": "Informations sur le compte - nom d'utilisateur", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/emailTemplate/registration.idm.json 1`] = ` +{ + "idm": { + "emailTemplate/registration": { + "_id": "emailTemplate/registration", + "defaultLocale": "en", + "enabled": true, + "from": "", + "html": { + "en": "

This is your registration email.

Email verification link

", + "fr": "

Ceci est votre mail d'inscription.

Lien de vérification email

", + }, + "message": { + "en": "

This is your registration email.

Email verification link

", + "fr": "

Ceci est votre mail d'inscription.

Lien de vérification email

", + }, + "mimeType": "text/html", + "styles": "body{background-color:#324054;color:#5e6d82;padding:60px;text-align:center}a{text-decoration:none;color:#109cf1}.content{background-color:#fff;border-radius:4px;margin:0 auto;padding:48px;width:235px}", + "subject": { + "en": "Register new account", + "fr": "Créer un nouveau compte", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/emailTemplate/resetPassword.idm.json 1`] = ` +{ + "idm": { + "emailTemplate/resetPassword": { + "_id": "emailTemplate/resetPassword", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Click to reset your password

Password reset link

", + "fr": "

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

", + }, + "mimeType": "text/html", + "subject": { + "en": "Reset your password", + "fr": "Réinitialisez votre mot de passe", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/emailTemplate/updatePassword.idm.json 1`] = ` +{ + "idm": { + "emailTemplate/updatePassword": { + "_id": "emailTemplate/updatePassword", + "defaultLocale": "en", + "enabled": true, + "from": "", + "html": { + "en": "

Verify email to update password

Update password link

", + }, + "message": { + "en": "

Verify email to update password

Update password link

", + }, + "mimeType": "text/html", + "styles": "body{background-color:#324054;color:#5e6d82;padding:60px;text-align:center}a{text-decoration:none;color:#109cf1}.content{background-color:#fff;border-radius:4px;margin:0 auto;padding:48px;width:235px}", + "subject": { + "en": "Update your password", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/emailTemplate/welcome.idm.json 1`] = ` +{ + "idm": { + "emailTemplate/welcome": { + "_id": "emailTemplate/welcome", + "defaultLocale": "en", + "enabled": true, + "from": "", + "html": { + "en": "

Welcome. Your username is '{{object.userName}}'.

", + }, + "message": { + "en": "

Welcome. Your username is '{{object.userName}}'.

", + }, + "mimeType": "text/html", + "styles": "body{background-color:#324054;color:#5e6d82;padding:60px;text-align:center}a{text-decoration:none;color:#109cf1}.content{background-color:#fff;border-radius:4px;margin:0 auto;padding:48px;width:235px}", + "subject": { + "en": "Your account has been created", + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/endpoint/extractscripttest.idm.json 1`] = ` +{ + "idm": { + "endpoint/extractscripttest": { + "_id": "endpoint/extractscripttest", + "description": "", + "globalsObject": "" {\\n \\"request\\": {\\n \\"method\\": \\"create\\"\\n }\\n }"", + "source": "file://extractscripttest.script.js", + "type": "text/javascript", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/endpoint/extractscripttest.script.js 1`] = ` +"//extract idm script test + +//test +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/external.email.idm.json 1`] = ` +{ + "idm": { + "external.email": { + "_id": "external.email", + "auth": { + "enable": true, + "password": "&{aic.customer.sasl.pass}", + "username": "&{aic.customer.sasl.user|donotuse@pingidentity.com}", + }, + "connectiontimeout": 300000, + "debug": false, + "from": "&{email.sender.address}", + "host": "&{aic.smtp.relay.host|smtp-relay.fr-platform.svc.cluster.local}", + "port": 25, + "smtpProperties": [], + "ssl": { + "enable": false, + }, + "starttls": { + "enable": false, + }, + "threadPoolSize": 20, + "timeout": 300000, + "writetimeout": 300000, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/external.emailDefault.idm.json 1`] = ` +{ + "idm": { + "external.emailDefault": { + "_id": "external.emailDefault", + "auth": { + "enable": true, + "password": "&{aic.customer.sasl.pass}", + "username": "&{aic.customer.sasl.user|donotuse@pingidentity.com}", + }, + "connectiontimeout": 300000, + "debug": false, + "from": "&{email.sender.address}", + "host": "&{aic.smtp.relay.host|smtp-relay.fr-platform.svc.cluster.local}", + "port": 25, + "smtpProperties": [], + "ssl": { + "enable": false, + }, + "starttls": { + "enable": false, + }, + "threadPoolSize": 20, + "timeout": 300000, + "writetimeout": 300000, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/fieldPolicy/alpha_user.idm.json 1`] = ` +{ + "idm": { + "fieldPolicy/alpha_user": { + "_id": "fieldPolicy/alpha_user", + "defaultPasswordStorageScheme": [ + { + "_id": "PBKDF2-HMAC-SHA256", + }, + ], + "passwordAttribute": "password", + "resourceCollection": "managed/alpha_user", + "type": "password-policy", + "validator": [ + { + "_id": "alpha_userPasswordPolicy-length-based-password-validator", + "enabled": true, + "maxPasswordLength": 0, + "minPasswordLength": 8, + "type": "length-based", + }, + { + "_id": "alpha_userPasswordPolicy-attribute-value-password-validator", + "checkSubstrings": true, + "enabled": true, + "matchAttribute": [ + "userName", + "givenName", + "sn", + ], + "minSubstringLength": 5, + "testReversedPassword": true, + "type": "attribute-value", + }, + { + "_id": "alpha_userPasswordPolicy-character-set-password-validator", + "allowUnclassifiedCharacters": true, + "characterSet": [ + "0:abcdefghijklmnopqrstuvwxyz", + "0:ABCDEFGHIJKLMNOPQRSTUVWXYZ", + "0:0123456789", + "0:~!@#$%^&*()-_=+[]{}|;:,.<>/?"'\\\`", + ], + "enabled": true, + "minCharacterSets": 4, + "type": "character-set", + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/fieldPolicy/bravo_user.idm.json 1`] = ` +{ + "idm": { + "fieldPolicy/bravo_user": { + "_id": "fieldPolicy/bravo_user", + "defaultPasswordStorageScheme": [ + { + "_id": "PBKDF2-HMAC-SHA256", + }, + ], + "passwordAttribute": "password", + "resourceCollection": "managed/bravo_user", + "type": "password-policy", + "validator": [ + { + "_id": "bravo_userPasswordPolicy-length-based-password-validator", + "enabled": true, + "maxPasswordLength": 0, + "minPasswordLength": 8, + "type": "length-based", + }, + { + "_id": "bravo_userPasswordPolicy-attribute-value-password-validator", + "checkSubstrings": true, + "enabled": true, + "matchAttribute": [ + "mail", + "userName", + "givenName", + "sn", + ], + "minSubstringLength": 5, + "testReversedPassword": true, + "type": "attribute-value", + }, + { + "_id": "bravo_userPasswordPolicy-character-set-password-validator", + "allowUnclassifiedCharacters": true, + "characterSet": [ + "1:abcdefghijklmnopqrstuvwxyz", + "1:ABCDEFGHIJKLMNOPQRSTUVWXYZ", + "1:0123456789", + "1:~!@#$%^&*()-_=+[]{}|;:,.<>/?"'\\\`", + ], + "enabled": true, + "type": "character-set", + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/internal.idm.json 1`] = ` +{ + "idm": { + "internal": { + "_id": "internal", + "objects": [ + { + "name": "role", + "properties": { + "authzMembers": { + "items": { + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + }, + }, + }, + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/managed/alpha_application.managed.json 1`] = ` +{ + "name": "alpha_application", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "Application Object", + "icon": "fa-folder", + "order": [ + "name", + "description", + "url", + "icon", + "mappingNames", + "owners", + "roles", + "members", + ], + "properties": { + "_id": { + "description": "Application ID", + "isPersonal": false, + "searchable": false, + "type": "string", + "userEditable": false, + "viewable": false, + }, + "authoritative": { + "description": "Is this an authoritative application", + "searchable": false, + "title": "Authoritative", + "type": "boolean", + "viewable": false, + }, + "connectorId": { + "description": "Id of the connector associated with the application", + "searchable": false, + "title": "Connector ID", + "type": "string", + "userEditable": false, + "viewable": false, + }, + "description": { + "description": "Application Description", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true, + }, + "icon": { + "searchable": true, + "title": "Icon", + "type": "string", + "userEditable": true, + "viewable": true, + }, + "mappingNames": { + "description": "Names of the sync mappings used by an application with provisioning configured.", + "items": { + "title": "Mapping Name Items", + "type": "string", + }, + "searchable": true, + "title": "Sync Mapping Names", + "type": "array", + "viewable": true, + }, + "members": { + "description": "Application Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Application:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string", + }, + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + "_uniqueId": { + "description": "Unique identifier", + "type": "string", + }, + }, + "title": "Group Members Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "notify": true, + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "applications", + "reverseRelationship": true, + "title": "Group Members Items", + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Members", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "name": { + "description": "Application name", + "notifyRelationships": [ + "roles", + "members", + ], + "policies": [ + { + "policyId": "unique", + }, + ], + "returnByDefault": true, + "searchable": true, + "title": "Name", + "type": "string", + "userEditable": true, + "viewable": true, + }, + "owners": { + "description": "Application Owners", + "items": { + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Application _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "ownerOfApp", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "searchable": false, + "title": "Owners", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "roles": { + "description": "Roles granting users the application", + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_accountType": { + "description": "Account type", + "type": "string", + }, + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Role", + "notify": true, + "path": "managed/alpha_role", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "applications", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "searchable": false, + "title": "Roles", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "ssoEntities": { + "description": "SSO Entity Id", + "properties": { + "domain": { + "type": "string", + }, + "federatedDomain": { + "type": "string", + }, + "idpLocation": { + "type": "string", + }, + "idpLoginUrl": { + "type": "string", + }, + "idpPrivateId": { + "type": "string", + }, + "key": { + "type": "string", + }, + "oidcId": { + "type": "string", + }, + "pfApcId": { + "type": "string", + }, + "pfIdpAdapterId": { + "type": "string", + }, + "pfPolicyId": { + "type": "string", + }, + "pfSigningCertId": { + "type": "string", + }, + "pfSpConnectionId": { + "type": "string", + }, + "spLocation": { + "type": "string", + }, + "spPrivate": { + "type": "string", + }, + "spPrivateId": { + "type": "string", + }, + }, + "searchable": false, + "title": "SSO Entity Id", + "type": "object", + "userEditable": false, + "viewable": false, + }, + "templateName": { + "description": "Name of the template the application was created from", + "searchable": false, + "title": "Template Name", + "type": "string", + "userEditable": false, + "viewable": false, + }, + "templateVersion": { + "description": "The template version", + "searchable": false, + "title": "Template Version", + "type": "string", + "userEditable": false, + "viewable": false, + }, + "uiConfig": { + "description": "UI Config", + "isPersonal": false, + "properties": {}, + "searchable": false, + "title": "UI Config", + "type": "object", + "usageDescription": "", + "viewable": false, + }, + "url": { + "searchable": true, + "title": "Url", + "type": "string", + "userEditable": true, + "viewable": true, + }, + }, + "required": [ + "name", + ], + "title": "Alpha realm - Application", + "type": "object", + }, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/managed/alpha_assignment.managed.json 1`] = ` +{ + "attributeEncryption": {}, + "name": "alpha_assignment", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "A role assignment", + "icon": "fa-key", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment", + "mat-icon": "vpn_key", + "order": [ + "_id", + "name", + "description", + "type", + "mapping", + "attributes", + "linkQualifiers", + "roles", + "members", + "condition", + "weight", + ], + "properties": { + "_id": { + "description": "The assignment ID", + "searchable": false, + "title": "Name", + "type": "string", + "viewable": false, + }, + "attributes": { + "description": "The attributes operated on by this assignment.", + "items": { + "order": [ + "assignmentOperation", + "unassignmentOperation", + "name", + "value", + ], + "properties": { + "assignmentOperation": { + "description": "Assignment operation", + "type": "string", + }, + "name": { + "description": "Name", + "type": "string", + }, + "unassignmentOperation": { + "description": "Unassignment operation", + "type": "string", + }, + "value": { + "description": "Value", + "type": "string", + }, + }, + "required": [], + "title": "Assignment Attributes Items", + "type": "object", + }, + "notifyRelationships": [ + "roles", + "members", + ], + "title": "Assignment Attributes", + "type": "array", + "viewable": true, + }, + "condition": { + "description": "A conditional filter for this assignment", + "isConditional": true, + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false, + }, + "description": { + "description": "The assignment description, used for display purposes.", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true, + }, + "linkQualifiers": { + "description": "Conditional link qualifiers to restrict this assignment to.", + "items": { + "title": "Link Qualifiers Items", + "type": "string", + }, + "title": "Link Qualifiers", + "type": "array", + "viewable": true, + }, + "mapping": { + "description": "The name of the mapping this assignment applies to", + "policies": [ + { + "policyId": "mapping-exists", + }, + ], + "searchable": true, + "title": "Mapping", + "type": "string", + "viewable": true, + }, + "members": { + "description": "Assignment Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string", + }, + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + "_uniqueId": { + "description": "Unique identifier", + "type": "string", + }, + }, + "title": "Assignment Members Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "assignments", + "reverseRelationship": true, + "title": "Assignment Members Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Assignment Members", + "type": "array", + "viewable": true, + }, + "name": { + "description": "The assignment name, used for display purposes.", + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true, + }, + "roles": { + "description": "Managed Roles", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Managed Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Role", + "notify": true, + "path": "managed/alpha_role", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "assignments", + "reverseRelationship": true, + "title": "Managed Roles Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Managed Roles", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "type": { + "description": "The type of object this assignment represents", + "title": "Type", + "type": "string", + "viewable": true, + }, + "weight": { + "description": "The weight of the assignment.", + "notifyRelationships": [ + "roles", + "members", + ], + "searchable": false, + "title": "Weight", + "type": [ + "number", + "null", + ], + "viewable": true, + }, + }, + "required": [ + "name", + "description", + "mapping", + ], + "title": "Alpha realm - Assignment", + "type": "object", + }, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/managed/alpha_group.managed.json 1`] = ` +{ + "name": "alpha_group", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "icon": "fa-group", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Group", + "mat-icon": "group", + "order": [ + "_id", + "name", + "description", + "condition", + "members", + ], + "properties": { + "_id": { + "description": "Group ID", + "isPersonal": false, + "policies": [ + { + "params": { + "propertyName": "name", + }, + "policyId": "id-must-equal-property", + }, + ], + "searchable": false, + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": false, + }, + "condition": { + "description": "A filter for conditionally assigned members", + "isConditional": true, + "policies": [ + { + "policyId": "valid-query-filter", + }, + ], + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false, + }, + "description": { + "description": "Group Description", + "searchable": true, + "title": "Description", + "type": "string", + "userEditable": false, + "viewable": true, + }, + "members": { + "description": "Group Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Group:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Group Members Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "groups", + "reverseRelationship": true, + "title": "Group Members Items", + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Members", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "name": { + "description": "Group Name", + "policies": [ + { + "policyId": "required", + }, + { + "params": { + "forbiddenChars": [ + "/*", + ], + }, + "policyId": "cannot-contain-characters", + }, + ], + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true, + }, + }, + "required": [ + "name", + ], + "title": "Alpha realm - Group", + "viewable": true, + }, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/managed/alpha_organization.managed.json 1`] = ` +{ + "name": "alpha_organization", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "An organization or tenant, whose resources are managed by organizational admins.", + "icon": "fa-building", + "mat-icon": "domain", + "order": [ + "name", + "description", + "owners", + "admins", + "members", + "parent", + "children", + "adminIDs", + "ownerIDs", + "parentAdminIDs", + "parentOwnerIDs", + "parentIDs", + ], + "properties": { + "adminIDs": { + "isVirtual": true, + "items": { + "title": "admin ids", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + ], + "referencedRelationshipFields": [ + "admins", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "Admin user ids", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "admins": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "notify": false, + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "adminOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "notifyRelationships": [ + "children", + ], + "returnByDefault": false, + "searchable": false, + "title": "Administrators", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "children": { + "description": "Child Organizations", + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/alpha_organization", + "query": { + "fields": [ + "name", + "description", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "parent", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Child Organizations", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "description": { + "searchable": true, + "title": "Description", + "type": "string", + "userEditable": true, + "viewable": true, + }, + "members": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "notify": true, + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "memberOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "searchable": false, + "title": "Members", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "name": { + "searchable": true, + "title": "Name", + "type": "string", + "userEditable": true, + "viewable": true, + }, + "ownerIDs": { + "isVirtual": true, + "items": { + "title": "owner ids", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + ], + "referencedRelationshipFields": [ + "owners", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "Owner user ids", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "owners": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "notify": false, + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "ownerOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "notifyRelationships": [ + "children", + ], + "returnByDefault": false, + "searchable": false, + "title": "Owner", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "parent": { + "description": "Parent Organization", + "notifyRelationships": [ + "children", + "members", + ], + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/alpha_organization", + "query": { + "fields": [ + "name", + "description", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "returnByDefault": false, + "reversePropertyName": "children", + "reverseRelationship": true, + "searchable": false, + "title": "Parent Organization", + "type": "relationship", + "userEditable": false, + "validate": true, + "viewable": true, + }, + "parentAdminIDs": { + "isVirtual": true, + "items": { + "title": "user ids of parent admins", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "adminIDs", + "parentAdminIDs", + ], + "referencedRelationshipFields": [ + "parent", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent admins", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "parentIDs": { + "isVirtual": true, + "items": { + "title": "parent org ids", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs", + ], + "referencedRelationshipFields": [ + "parent", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "parent org ids", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "parentOwnerIDs": { + "isVirtual": true, + "items": { + "title": "user ids of parent owners", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "ownerIDs", + "parentOwnerIDs", + ], + "referencedRelationshipFields": [ + "parent", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent owners", + "type": "array", + "userEditable": false, + "viewable": false, + }, + }, + "required": [ + "name", + ], + "title": "Alpha realm - Organization", + "type": "object", + }, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/managed/alpha_role.managed.json 1`] = ` +{ + "name": "alpha_role", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "", + "icon": "fa-check-square-o", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role", + "mat-icon": "assignment_ind", + "order": [ + "_id", + "name", + "description", + "members", + "assignments", + "applications", + "condition", + "temporalConstraints", + ], + "properties": { + "_id": { + "description": "Role ID", + "searchable": false, + "title": "Name", + "type": "string", + "viewable": false, + }, + "applications": { + "description": "Role Applications", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:applications:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Role Application Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Application", + "path": "managed/alpha_application", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Role Application Items", + "type": "relationship", + "validate": true, + }, + "notifyRelationships": [ + "members", + ], + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Applications", + "type": "array", + "viewable": false, + }, + "assignments": { + "description": "Managed Assignments", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Managed Assignments Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Assignment", + "path": "managed/alpha_assignment", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Managed Assignments Items", + "type": "relationship", + "validate": true, + }, + "notifyRelationships": [ + "members", + ], + "returnByDefault": false, + "title": "Managed Assignments", + "type": "array", + "viewable": true, + }, + "condition": { + "description": "A conditional filter for this role", + "isConditional": true, + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false, + }, + "description": { + "description": "The role description, used for display purposes.", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true, + }, + "members": { + "description": "Role Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Role Members Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Role Members Items", + "type": "relationship", + "validate": true, + }, + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Role Members", + "type": "array", + "viewable": true, + }, + "name": { + "description": "The role name, used for display purposes.", + "policies": [ + { + "policyId": "unique", + }, + ], + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true, + }, + "temporalConstraints": { + "description": "An array of temporal constraints for a role", + "isTemporalConstraint": true, + "items": { + "order": [ + "duration", + ], + "properties": { + "duration": { + "description": "Duration", + "type": "string", + }, + }, + "required": [ + "duration", + ], + "title": "Temporal Constraints Items", + "type": "object", + }, + "notifyRelationships": [ + "members", + ], + "returnByDefault": true, + "title": "Temporal Constraints", + "type": "array", + "viewable": false, + }, + }, + "required": [ + "name", + ], + "title": "Alpha realm - Role", + "type": "object", + }, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/managed/alpha_user.managed.json 1`] = ` +{ + "lastSync": { + "effectiveAssignmentsProperty": "effectiveAssignments", + "lastSyncProperty": "lastSync", + }, + "name": "alpha_user", + "notifications": {}, + "onCreate": { + "globals": {}, + "source": "file://alpha_user.managed.scripts/onCreate.script.js", + "type": "text/javascript", + }, + "schema": { + "$schema": "http://json-schema.org/draft-03/schema", + "icon": "fa-user", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User", + "mat-icon": "people", + "order": [ + "_id", + "userName", + "password", + "givenName", + "cn", + "sn", + "mail", + "profileImage", + "description", + "accountStatus", + "telephoneNumber", + "postalAddress", + "city", + "postalCode", + "country", + "stateProvince", + "roles", + "assignments", + "groups", + "applications", + "manager", + "authzRoles", + "reports", + "effectiveRoles", + "effectiveAssignments", + "effectiveGroups", + "effectiveApplications", + "lastSync", + "kbaInfo", + "preferences", + "consentedMappings", + "ownerOfOrg", + "adminOfOrg", + "memberOfOrg", + "memberOfOrgIDs", + "ownerOfApp", + "passwordLastChangedTime", + "passwordExpirationTime", + "frIndexedString1", + "frIndexedString2", + "frIndexedString3", + "frIndexedString4", + "frIndexedString5", + "frIndexedString6", + "frIndexedString7", + "frIndexedString8", + "frIndexedString9", + "frIndexedString10", + "frIndexedString11", + "frIndexedString12", + "frIndexedString13", + "frIndexedString14", + "frIndexedString15", + "frIndexedString16", + "frIndexedString17", + "frIndexedString18", + "frIndexedString19", + "frIndexedString20", + "frUnindexedString1", + "frUnindexedString2", + "frUnindexedString3", + "frUnindexedString4", + "frUnindexedString5", + "frIndexedMultivalued1", + "frIndexedMultivalued2", + "frIndexedMultivalued3", + "frIndexedMultivalued4", + "frIndexedMultivalued5", + "frUnindexedMultivalued1", + "frUnindexedMultivalued2", + "frUnindexedMultivalued3", + "frUnindexedMultivalued4", + "frUnindexedMultivalued5", + "frIndexedDate1", + "frIndexedDate2", + "frIndexedDate3", + "frIndexedDate4", + "frIndexedDate5", + "frUnindexedDate1", + "frUnindexedDate2", + "frUnindexedDate3", + "frUnindexedDate4", + "frUnindexedDate5", + "frIndexedInteger1", + "frIndexedInteger2", + "frIndexedInteger3", + "frIndexedInteger4", + "frIndexedInteger5", + "frUnindexedInteger1", + "frUnindexedInteger2", + "frUnindexedInteger3", + "frUnindexedInteger4", + "frUnindexedInteger5", + "assignedDashboard", + "devicePrintProfiles", + "deviceProfiles", + "oathDeviceProfiles", + "pushDeviceProfiles", + "webauthnDeviceProfiles", + ], + "properties": { + "_id": { + "description": "User ID", + "isPersonal": false, + "policies": [ + { + "params": { + "forbiddenChars": [ + "/", + ], + }, + "policyId": "cannot-contain-characters", + }, + ], + "searchable": false, + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": false, + }, + "accountStatus": { + "default": "active", + "description": "Status", + "isPersonal": false, + "searchable": false, + "title": "Status", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "adminOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/alpha_organization", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "admins", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Administer", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "aliasList": { + "description": "List of identity aliases used primarily to record social IdP subjects for this user", + "isVirtual": false, + "items": { + "title": "User Alias Names Items", + "type": "string", + }, + "returnByDefault": false, + "searchable": false, + "title": "User Alias Names List", + "type": "array", + "userEditable": true, + "viewable": false, + }, + "applications": { + "description": "Applications", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:applications", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:applications:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + "_uniqueId": { + "description": "Unique identifier", + "type": "string", + }, + }, + "title": "Groups Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Application", + "path": "managed/alpha_application", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [ + "name", + ], + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Groups Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Applications", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": false, + }, + "assignedDashboard": { + "description": "List of items to click on for this user", + "isVirtual": true, + "items": { + "title": "Assigned Dashboard Items", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "name", + ], + "referencedRelationshipFields": [ + [ + "roles", + "applications", + ], + [ + "applications", + ], + ], + }, + "searchable": false, + "title": "Assigned Dashboard", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "assignments": { + "description": "Assignments", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string", + }, + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + "_uniqueId": { + "description": "Unique identifier", + "type": "string", + }, + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Assignment", + "path": "managed/alpha_assignment", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Assignments Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Assignments", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "authzRoles": { + "description": "Authorization Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Authorization Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Internal Role", + "path": "internal/role", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "authzMembers", + "reverseRelationship": true, + "title": "Authorization Roles Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Authorization Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "city": { + "description": "City", + "isPersonal": false, + "title": "City", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "cn": { + "default": "{{givenName}} {{sn}}", + "description": "Common Name", + "isPersonal": true, + "scope": "private", + "searchable": false, + "title": "Common Name", + "type": "string", + "userEditable": false, + "viewable": false, + }, + "consentedMappings": { + "description": "Consented Mappings", + "isPersonal": false, + "isVirtual": false, + "items": { + "items": { + "order": [ + "mapping", + "consentDate", + ], + "properties": { + "consentDate": { + "description": "Consent Date", + "searchable": false, + "title": "Consent Date", + "type": "string", + "userEditable": true, + "viewable": true, + }, + "mapping": { + "description": "Mapping", + "searchable": false, + "title": "Mapping", + "type": "string", + "userEditable": true, + "viewable": true, + }, + }, + "required": [ + "mapping", + "consentDate", + ], + "title": "Consented Mappings Item", + "type": "object", + }, + "title": "Consented Mappings Items", + "type": "array", + }, + "returnByDefault": false, + "searchable": false, + "title": "Consented Mappings", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false, + }, + "country": { + "description": "Country", + "isPersonal": false, + "title": "Country", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "description": { + "description": "Description", + "isPersonal": false, + "searchable": false, + "title": "Description", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "devicePrintProfiles": { + "description": "Device Print Profiles Information", + "isPersonal": false, + "items": { + "title": "Profile", + "type": "string", + }, + "searchable": false, + "title": "Device Print Profiles", + "type": "array", + "userEditable": true, + "viewable": true, + }, + "deviceProfiles": { + "description": "Device Profiles", + "isPersonal": false, + "items": { + "title": "Profile", + "type": "string", + }, + "searchable": false, + "title": "Device Profiles", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "effectiveApplications": { + "description": "Effective Applications", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Assigned Application Items", + "type": "object", + }, + "queryConfig": { + "referencedObjectFields": [ + "name", + ], + "referencedRelationshipFields": [ + [ + "roles", + "applications", + ], + [ + "applications", + ], + ], + }, + "returnByDefault": true, + "title": "Effective Applications", + "type": "array", + "viewable": false, + }, + "effectiveAssignments": { + "description": "Effective Assignments", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Assignments Items", + "type": "object", + }, + "queryConfig": { + "referencedObjectFields": [ + "*", + ], + "referencedRelationshipFields": [ + [ + "roles", + "assignments", + ], + [ + "assignments", + ], + ], + }, + "returnByDefault": true, + "title": "Effective Assignments", + "type": "array", + "usageDescription": "", + "viewable": false, + }, + "effectiveGroups": { + "description": "Effective Groups", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Groups Items", + "type": "object", + }, + "queryConfig": { + "referencedRelationshipFields": [ + "groups", + ], + }, + "returnByDefault": true, + "title": "Effective Groups", + "type": "array", + "usageDescription": "", + "viewable": false, + }, + "effectiveRoles": { + "description": "Effective Roles", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Roles Items", + "type": "object", + }, + "queryConfig": { + "referencedRelationshipFields": [ + "roles", + ], + }, + "returnByDefault": true, + "title": "Effective Roles", + "type": "array", + "usageDescription": "", + "viewable": false, + }, + "frIndexedDate1": { + "description": "Generic Indexed Date 1", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Date 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedDate2": { + "description": "Generic Indexed Date 2", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Date 2", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedDate3": { + "description": "Generic Indexed Date 3", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Date 3", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedDate4": { + "description": "Generic Indexed Date 4", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Date 4", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedDate5": { + "description": "Generic Indexed Date 5", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Date 5", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedInteger1": { + "description": "Generic Indexed Integer 1", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Integer 1", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedInteger2": { + "description": "Generic Indexed Integer 2", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Integer 2", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedInteger3": { + "description": "Generic Indexed Integer 3", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Integer 3", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedInteger4": { + "description": "Generic Indexed Integer 4", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Integer 4", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedInteger5": { + "description": "Generic Indexed Integer 5", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Integer 5", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedMultivalued1": { + "description": "Generic Indexed Multivalue 1", + "isPersonal": false, + "items": { + "type": "string", + }, + "searchable": true, + "title": "Generic Indexed Multivalue 1", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedMultivalued2": { + "description": "Generic Indexed Multivalue 2", + "isPersonal": false, + "items": { + "type": "string", + }, + "searchable": true, + "title": "Generic Indexed Multivalue 2", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedMultivalued3": { + "description": "Generic Indexed Multivalue 3", + "isPersonal": false, + "items": { + "type": "string", + }, + "searchable": true, + "title": "Generic Indexed Multivalue 3", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedMultivalued4": { + "description": "Generic Indexed Multivalue 4", + "isPersonal": false, + "items": { + "type": "string", + }, + "searchable": true, + "title": "Generic Indexed Multivalue 4", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedMultivalued5": { + "description": "Generic Indexed Multivalue 5", + "isPersonal": false, + "items": { + "type": "string", + }, + "searchable": true, + "title": "Generic Indexed Multivalue 5", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString1": { + "description": "Generic Indexed String 1", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString10": { + "description": "Generic Indexed String 10", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 10", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString11": { + "description": "Generic Indexed String 11", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 11", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString12": { + "description": "Generic Indexed String 12", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 12", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString13": { + "description": "Generic Indexed String 13", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 13", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString14": { + "description": "Generic Indexed String 14", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 14", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString15": { + "description": "Generic Indexed String 15", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 15", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString16": { + "description": "Generic Indexed String 16", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 16", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString17": { + "description": "Generic Indexed String 17", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 17", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString18": { + "description": "Generic Indexed String 18", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 18", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString19": { + "description": "Generic Indexed String 19", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 19", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString2": { + "description": "Generic Indexed String 2", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 2", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString20": { + "description": "Generic Indexed String 20", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 20", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString3": { + "description": "Generic Indexed String 3", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 3", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString4": { + "description": "Generic Indexed String 4", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 4", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString5": { + "description": "Generic Indexed String 5", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 5", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString6": { + "description": "Generic Indexed String 6", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 6", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString7": { + "description": "Generic Indexed String 7", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 7", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString8": { + "description": "Generic Indexed String 8", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 8", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString9": { + "description": "Generic Indexed String 9", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 9", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedDate1": { + "description": "Generic Unindexed Date 1", + "isPersonal": false, + "title": "Generic Unindexed Date 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedDate2": { + "description": "Generic Unindexed Date 2", + "isPersonal": false, + "title": "Generic Unindexed Date 2", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedDate3": { + "description": "Generic Unindexed Date 3", + "isPersonal": false, + "title": "Generic Unindexed Date 3", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedDate4": { + "description": "Generic Unindexed Date 4", + "isPersonal": false, + "title": "Generic Unindexed Date 4", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedDate5": { + "description": "Generic Unindexed Date 5", + "isPersonal": false, + "title": "Generic Unindexed Date 5", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedInteger1": { + "description": "Generic Unindexed Integer 1", + "isPersonal": false, + "title": "Generic Unindexed Integer 1", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedInteger2": { + "description": "Generic Unindexed Integer 2", + "isPersonal": false, + "title": "Generic Unindexed Integer 2", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedInteger3": { + "description": "Generic Unindexed Integer 3", + "isPersonal": false, + "title": "Generic Unindexed Integer 3", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedInteger4": { + "description": "Generic Unindexed Integer 4", + "isPersonal": false, + "title": "Generic Unindexed Integer 4", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedInteger5": { + "description": "Generic Unindexed Integer 5", + "isPersonal": false, + "title": "Generic Unindexed Integer 5", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedMultivalued1": { + "description": "Generic Unindexed Multivalue 1", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Unindexed Multivalue 1", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedMultivalued2": { + "description": "Generic Unindexed Multivalue 2", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Unindexed Multivalue 2", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedMultivalued3": { + "description": "Generic Unindexed Multivalue 3", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Unindexed Multivalue 3", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedMultivalued4": { + "description": "Generic Unindexed Multivalue 4", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Unindexed Multivalue 4", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedMultivalued5": { + "description": "Generic Unindexed Multivalue 5", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Unindexed Multivalue 5", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedString1": { + "description": "Generic Unindexed String 1", + "isPersonal": false, + "title": "Generic Unindexed String 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedString2": { + "description": "Generic Unindexed String 2", + "isPersonal": false, + "title": "Generic Unindexed String 2", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedString3": { + "description": "Generic Unindexed String 3", + "isPersonal": false, + "title": "Generic Unindexed String 3", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedString4": { + "description": "Generic Unindexed String 4", + "isPersonal": false, + "title": "Generic Unindexed String 4", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedString5": { + "description": "Generic Unindexed String 5", + "isPersonal": false, + "title": "Generic Unindexed String 5", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "givenName": { + "description": "First Name", + "isPersonal": true, + "searchable": true, + "title": "First Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "groups": { + "description": "Groups", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:groups", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:groups:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Groups Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Group", + "path": "managed/alpha_group", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Groups Items", + "type": "relationship", + "validate": true, + }, + "relationshipGrantTemporalConstraintsEnforced": false, + "returnByDefault": false, + "title": "Groups", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "kbaInfo": { + "description": "KBA Info", + "isPersonal": true, + "items": { + "order": [ + "answer", + "customQuestion", + "questionId", + ], + "properties": { + "answer": { + "description": "Answer", + "type": "string", + }, + "customQuestion": { + "description": "Custom question", + "type": "string", + }, + "questionId": { + "description": "Question ID", + "type": "string", + }, + }, + "required": [], + "title": "KBA Info Items", + "type": "object", + }, + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false, + }, + "lastSync": { + "description": "Last Sync timestamp", + "isPersonal": false, + "order": [ + "effectiveAssignments", + "timestamp", + ], + "properties": { + "effectiveAssignments": { + "description": "Effective Assignments", + "items": { + "title": "Effective Assignments Items", + "type": "object", + }, + "title": "Effective Assignments", + "type": "array", + }, + "timestamp": { + "description": "Timestamp", + "type": "string", + }, + }, + "required": [], + "scope": "private", + "searchable": false, + "title": "Last Sync timestamp", + "type": "object", + "usageDescription": "", + "viewable": false, + }, + "mail": { + "description": "Email Address", + "isPersonal": true, + "policies": [ + { + "policyId": "valid-email-address-format", + }, + ], + "searchable": true, + "title": "Email Address", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "manager": { + "description": "Manager", + "isPersonal": false, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Manager _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "reports", + "reverseRelationship": true, + "searchable": false, + "title": "Manager", + "type": "relationship", + "usageDescription": "", + "userEditable": false, + "validate": true, + "viewable": true, + }, + "memberOfOrg": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/alpha_organization", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations to which I Belong", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "memberOfOrgIDs": { + "isVirtual": true, + "items": { + "title": "org identifiers", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs", + ], + "referencedRelationshipFields": [ + "memberOfOrg", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "MemberOfOrgIDs", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "oathDeviceProfiles": { + "description": "Oath Device Profiles", + "isPersonal": false, + "items": { + "title": "Profile", + "type": "string", + }, + "searchable": false, + "title": "Oath Device Profiles", + "type": "array", + "userEditable": true, + "viewable": true, + }, + "ownerOfApp": { + "items": { + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Application", + "path": "managed/alpha_application", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [ + "name", + ], + }, + }, + ], + "reversePropertyName": "owners", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "searchable": false, + "title": "Applications I Own", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "ownerOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/alpha_organization", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "owners", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Own", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "password": { + "description": "Password", + "isPersonal": false, + "isProtected": true, + "scope": "private", + "searchable": false, + "title": "Password", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": false, + }, + "passwordExpirationTime": { + "description": "Password Expiration Time", + "searchable": true, + "title": "Password Expiration Time", + "type": "string", + "userEditable": false, + "viewable": true, + }, + "passwordLastChangedTime": { + "description": "Password Last Changed Time", + "searchable": true, + "title": "Password Last Changed Time", + "type": "string", + "userEditable": false, + "viewable": true, + }, + "postalAddress": { + "description": "Address 1", + "isPersonal": true, + "title": "Address 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "postalCode": { + "description": "Postal Code", + "isPersonal": false, + "title": "Postal Code", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "preferences": { + "description": "Preferences", + "isPersonal": false, + "order": [ + "updates", + "marketing", + ], + "properties": { + "marketing": { + "description": "Send me special offers and services", + "type": "boolean", + }, + "updates": { + "description": "Send me news and updates", + "type": "boolean", + }, + }, + "required": [], + "searchable": false, + "title": "Preferences", + "type": "object", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "profileImage": { + "description": "Profile Image", + "isPersonal": true, + "searchable": false, + "title": "Profile Image", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": false, + }, + "pushDeviceProfiles": { + "description": "Push Device Profiles", + "isPersonal": false, + "items": { + "title": "Profile", + "type": "string", + }, + "searchable": false, + "title": "Push Device Profiles", + "type": "array", + "userEditable": true, + "viewable": true, + }, + "reports": { + "description": "Direct Reports", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Direct Reports Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "manager", + "reverseRelationship": true, + "title": "Direct Reports Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Direct Reports", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "roles": { + "description": "Provisioning Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Role", + "path": "managed/alpha_role", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Provisioning Roles Items", + "type": "relationship", + "validate": true, + }, + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Provisioning Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "sn": { + "description": "Last Name", + "isPersonal": true, + "searchable": true, + "title": "Last Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "stateProvince": { + "description": "State/Province", + "isPersonal": false, + "title": "State/Province", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "telephoneNumber": { + "description": "Telephone Number", + "isPersonal": true, + "pattern": "^\\+?([0-9\\- \\(\\)])*$", + "title": "Telephone Number", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "userName": { + "description": "Username", + "isPersonal": true, + "minLength": 1, + "policies": [ + { + "policyId": "valid-username", + }, + { + "params": { + "forbiddenChars": [ + "/", + ], + }, + "policyId": "cannot-contain-characters", + }, + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "searchable": true, + "title": "Username", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "webauthnDeviceProfiles": { + "description": "Web AuthN Device Profiles", + "isPersonal": false, + "items": { + "title": "Profile", + "type": "string", + }, + "searchable": false, + "title": "Web AuthN Device Profiles", + "type": "array", + "userEditable": true, + "viewable": true, + }, + }, + "required": [ + "userName", + "givenName", + "sn", + "mail", + ], + "title": "Alpha realm - User", + "type": "object", + "viewable": true, + }, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/managed/alpha_user.managed.scripts/onCreate.script.js 1`] = ` +"//extract script test UPDATED + + +//test UPDATED + +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/managed/bravo_application.managed.json 1`] = ` +{ + "name": "bravo_application", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "Application Object", + "icon": "fa-folder", + "order": [ + "name", + "description", + "url", + "icon", + "mappingNames", + "owners", + "roles", + "members", + ], + "properties": { + "_id": { + "description": "Application ID", + "isPersonal": false, + "searchable": false, + "type": "string", + "userEditable": false, + "viewable": false, + }, + "authoritative": { + "description": "Is this an authoritative application", + "searchable": false, + "title": "Authoritative", + "type": "boolean", + "viewable": false, + }, + "connectorId": { + "description": "Id of the connector associated with the application", + "searchable": false, + "title": "Connector ID", + "type": "string", + "userEditable": false, + "viewable": false, + }, + "description": { + "description": "Application Description", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true, + }, + "icon": { + "searchable": true, + "title": "Icon", + "type": "string", + "userEditable": true, + "viewable": true, + }, + "mappingNames": { + "description": "Names of the sync mappings used by an application with provisioning configured.", + "items": { + "title": "Mapping Name Items", + "type": "string", + }, + "searchable": true, + "title": "Sync Mapping Names", + "type": "array", + "viewable": true, + }, + "members": { + "description": "Application Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Application:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string", + }, + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + "_uniqueId": { + "description": "Unique identifier", + "type": "string", + }, + }, + "title": "Group Members Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "notify": true, + "path": "managed/bravo_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "applications", + "reverseRelationship": true, + "title": "Group Members Items", + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Members", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "name": { + "description": "Application name", + "notifyRelationships": [ + "roles", + "members", + ], + "policies": [ + { + "policyId": "unique", + }, + ], + "returnByDefault": true, + "searchable": true, + "title": "Name", + "type": "string", + "userEditable": true, + "viewable": true, + }, + "owners": { + "description": "Application Owners", + "items": { + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Application _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/bravo_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "ownerOfApp", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "searchable": false, + "title": "Owners", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "roles": { + "description": "Roles granting users the application", + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_accountType": { + "description": "Account type", + "type": "string", + }, + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Role", + "notify": true, + "path": "managed/bravo_role", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "applications", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "searchable": false, + "title": "Roles", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "ssoEntities": { + "description": "SSO Entity Id", + "properties": { + "domain": { + "type": "string", + }, + "federatedDomain": { + "type": "string", + }, + "idpLocation": { + "type": "string", + }, + "idpLoginUrl": { + "type": "string", + }, + "idpPrivateId": { + "type": "string", + }, + "key": { + "type": "string", + }, + "oidcId": { + "type": "string", + }, + "pfApcId": { + "type": "string", + }, + "pfIdpAdapterId": { + "type": "string", + }, + "pfPolicyId": { + "type": "string", + }, + "pfSigningCertId": { + "type": "string", + }, + "pfSpConnectionId": { + "type": "string", + }, + "spLocation": { + "type": "string", + }, + "spPrivate": { + "type": "string", + }, + }, + "searchable": false, + "title": "SSO Entity Id", + "type": "object", + "userEditable": false, + "viewable": false, + }, + "templateName": { + "description": "Name of the template the application was created from", + "searchable": false, + "title": "Template Name", + "type": "string", + "userEditable": false, + "viewable": false, + }, + "templateVersion": { + "description": "The template version", + "searchable": false, + "title": "Template Version", + "type": "string", + "userEditable": false, + "viewable": false, + }, + "uiConfig": { + "description": "UI Config", + "isPersonal": false, + "properties": {}, + "searchable": false, + "title": "UI Config", + "type": "object", + "usageDescription": "", + "viewable": false, + }, + "url": { + "searchable": true, + "title": "Url", + "type": "string", + "userEditable": true, + "viewable": true, + }, + }, + "required": [ + "name", + ], + "title": "Bravo realm - Application", + "type": "object", + }, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/managed/bravo_assignment.managed.json 1`] = ` +{ + "attributeEncryption": {}, + "name": "bravo_assignment", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "A role assignment", + "icon": "fa-key", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment", + "mat-icon": "vpn_key", + "order": [ + "_id", + "name", + "description", + "type", + "mapping", + "attributes", + "linkQualifiers", + "roles", + "members", + "condition", + "weight", + ], + "properties": { + "_id": { + "description": "The assignment ID", + "searchable": false, + "title": "Name", + "type": "string", + "viewable": false, + }, + "attributes": { + "description": "The attributes operated on by this assignment.", + "items": { + "order": [ + "assignmentOperation", + "unassignmentOperation", + "name", + "value", + ], + "properties": { + "assignmentOperation": { + "description": "Assignment operation", + "type": "string", + }, + "name": { + "description": "Name", + "type": "string", + }, + "unassignmentOperation": { + "description": "Unassignment operation", + "type": "string", + }, + "value": { + "description": "Value", + "type": "string", + }, + }, + "required": [], + "title": "Assignment Attributes Items", + "type": "object", + }, + "notifyRelationships": [ + "roles", + "members", + ], + "title": "Assignment Attributes", + "type": "array", + "viewable": true, + }, + "condition": { + "description": "A conditional filter for this assignment", + "isConditional": true, + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false, + }, + "description": { + "description": "The assignment description, used for display purposes.", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true, + }, + "linkQualifiers": { + "description": "Conditional link qualifiers to restrict this assignment to.", + "items": { + "title": "Link Qualifiers Items", + "type": "string", + }, + "title": "Link Qualifiers", + "type": "array", + "viewable": true, + }, + "mapping": { + "description": "The name of the mapping this assignment applies to", + "policies": [ + { + "policyId": "mapping-exists", + }, + ], + "searchable": true, + "title": "Mapping", + "type": "string", + "viewable": true, + }, + "members": { + "description": "Assignment Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string", + }, + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + "_uniqueId": { + "description": "Unique identifier", + "type": "string", + }, + }, + "title": "Assignment Members Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/bravo_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "assignments", + "reverseRelationship": true, + "title": "Assignment Members Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Assignment Members", + "type": "array", + "viewable": true, + }, + "name": { + "description": "The assignment name, used for display purposes.", + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true, + }, + "roles": { + "description": "Managed Roles", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Managed Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Role", + "notify": true, + "path": "managed/bravo_role", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "assignments", + "reverseRelationship": true, + "title": "Managed Roles Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Managed Roles", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "type": { + "description": "The type of object this assignment represents", + "title": "Type", + "type": "string", + "viewable": true, + }, + "weight": { + "description": "The weight of the assignment.", + "notifyRelationships": [ + "roles", + "members", + ], + "searchable": false, + "title": "Weight", + "type": [ + "number", + "null", + ], + "viewable": true, + }, + }, + "required": [ + "name", + "description", + "mapping", + ], + "title": "Bravo realm - Assignment", + "type": "object", + }, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/managed/bravo_group.managed.json 1`] = ` +{ + "name": "bravo_group", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "icon": "fa-group", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Group", + "mat-icon": "group", + "order": [ + "_id", + "name", + "description", + "condition", + "members", + ], + "properties": { + "_id": { + "description": "Group ID", + "isPersonal": false, + "policies": [ + { + "params": { + "propertyName": "name", + }, + "policyId": "id-must-equal-property", + }, + ], + "searchable": false, + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": false, + }, + "condition": { + "description": "A filter for conditionally assigned members", + "isConditional": true, + "policies": [ + { + "policyId": "valid-query-filter", + }, + ], + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false, + }, + "description": { + "description": "Group Description", + "searchable": true, + "title": "Description", + "type": "string", + "userEditable": false, + "viewable": true, + }, + "members": { + "description": "Group Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Group:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Group Members Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/bravo_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "groups", + "reverseRelationship": true, + "title": "Group Members Items", + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Members", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "name": { + "description": "Group Name", + "policies": [ + { + "policyId": "required", + }, + { + "params": { + "forbiddenChars": [ + "/*", + ], + }, + "policyId": "cannot-contain-characters", + }, + ], + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true, + }, + }, + "required": [ + "name", + ], + "title": "Bravo realm - Group", + "viewable": true, + }, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/managed/bravo_organization.managed.json 1`] = ` +{ + "name": "bravo_organization", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "An organization or tenant, whose resources are managed by organizational admins.", + "icon": "fa-building", + "mat-icon": "domain", + "order": [ + "name", + "description", + "owners", + "admins", + "members", + "parent", + "children", + "adminIDs", + "ownerIDs", + "parentAdminIDs", + "parentOwnerIDs", + "parentIDs", + ], + "properties": { + "adminIDs": { + "isVirtual": true, + "items": { + "title": "admin ids", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + ], + "referencedRelationshipFields": [ + "admins", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "Admin user ids", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "admins": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "notify": false, + "path": "managed/bravo_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "adminOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "notifyRelationships": [ + "children", + ], + "returnByDefault": false, + "searchable": false, + "title": "Administrators", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "children": { + "description": "Child Organizations", + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/bravo_organization", + "query": { + "fields": [ + "name", + "description", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "parent", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Child Organizations", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "description": { + "searchable": true, + "title": "Description", + "type": "string", + "userEditable": true, + "viewable": true, + }, + "members": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "notify": true, + "path": "managed/bravo_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "memberOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "searchable": false, + "title": "Members", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "name": { + "searchable": true, + "title": "Name", + "type": "string", + "userEditable": true, + "viewable": true, + }, + "ownerIDs": { + "isVirtual": true, + "items": { + "title": "owner ids", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + ], + "referencedRelationshipFields": [ + "owners", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "Owner user ids", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "owners": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "notify": false, + "path": "managed/bravo_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "ownerOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "notifyRelationships": [ + "children", + ], + "returnByDefault": false, + "searchable": false, + "title": "Owner", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "parent": { + "description": "Parent Organization", + "notifyRelationships": [ + "children", + "members", + ], + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/bravo_organization", + "query": { + "fields": [ + "name", + "description", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "returnByDefault": false, + "reversePropertyName": "children", + "reverseRelationship": true, + "searchable": false, + "title": "Parent Organization", + "type": "relationship", + "userEditable": false, + "validate": true, + "viewable": true, + }, + "parentAdminIDs": { + "isVirtual": true, + "items": { + "title": "user ids of parent admins", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "adminIDs", + "parentAdminIDs", + ], + "referencedRelationshipFields": [ + "parent", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent admins", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "parentIDs": { + "isVirtual": true, + "items": { + "title": "parent org ids", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs", + ], + "referencedRelationshipFields": [ + "parent", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "parent org ids", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "parentOwnerIDs": { + "isVirtual": true, + "items": { + "title": "user ids of parent owners", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "ownerIDs", + "parentOwnerIDs", + ], + "referencedRelationshipFields": [ + "parent", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent owners", + "type": "array", + "userEditable": false, + "viewable": false, + }, + }, + "required": [ + "name", + ], + "title": "Bravo realm - Organization", + "type": "object", + }, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/managed/bravo_role.managed.json 1`] = ` +{ + "name": "bravo_role", + "onValidate": { + "globals": {}, + "source": "file://bravo_role.managed.scripts/onValidate.script.js", + "type": "text/javascript", + }, + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "icon": "fa-check-square-o", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role", + "mat-icon": "assignment_ind", + "order": [ + "_id", + "name", + "description", + "members", + "assignments", + "applications", + "condition", + "temporalConstraints", + ], + "properties": { + "_id": { + "description": "Role ID", + "searchable": false, + "title": "Name", + "type": "string", + "viewable": false, + }, + "applications": { + "description": "Role Applications", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:applications:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Role Application Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Application", + "path": "managed/bravo_application", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Role Application Items", + "type": "relationship", + "validate": true, + }, + "notifyRelationships": [ + "members", + ], + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Applications", + "type": "array", + "viewable": false, + }, + "assignments": { + "description": "Managed Assignments", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Managed Assignments Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Assignment", + "path": "managed/bravo_assignment", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Managed Assignments Items", + "type": "relationship", + "validate": true, + }, + "notifyRelationships": [ + "members", + ], + "returnByDefault": false, + "title": "Managed Assignments", + "type": "array", + "viewable": true, + }, + "condition": { + "description": "A conditional filter for this role", + "isConditional": true, + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false, + }, + "description": { + "description": "The role description, used for display purposes.", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true, + }, + "members": { + "description": "Role Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Role Members Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/bravo_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Role Members Items", + "type": "relationship", + "validate": true, + }, + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Role Members", + "type": "array", + "viewable": true, + }, + "name": { + "description": "The role name, used for display purposes.", + "policies": [ + { + "policyId": "unique", + }, + ], + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true, + }, + "temporalConstraints": { + "description": "An array of temporal constraints for a role", + "isTemporalConstraint": true, + "items": { + "order": [ + "duration", + ], + "properties": { + "duration": { + "description": "Duration", + "type": "string", + }, + }, + "required": [ + "duration", + ], + "title": "Temporal Constraints Items", + "type": "object", + }, + "notifyRelationships": [ + "members", + ], + "returnByDefault": true, + "title": "Temporal Constraints", + "type": "array", + "viewable": false, + }, + }, + "required": [ + "name", + ], + "title": "Bravo realm - Role", + "type": "object", + }, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/managed/bravo_role.managed.scripts/onValidate.script.js 1`] = ` +"//extract script test UPDATED ONVALIDATE + +//test UPDATED +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/managed/bravo_user.managed.json 1`] = ` +{ + "lastSync": { + "effectiveAssignmentsProperty": "effectiveAssignments", + "lastSyncProperty": "lastSync", + }, + "name": "bravo_user", + "notifications": {}, + "postUpdate": { + "globals": {}, + "source": "file://bravo_user.managed.scripts/postUpdate.script.js", + "type": "text/javascript", + }, + "schema": { + "$schema": "http://json-schema.org/draft-03/schema", + "icon": "fa-user", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User", + "mat-icon": "people", + "order": [ + "_id", + "userName", + "password", + "givenName", + "cn", + "sn", + "mail", + "profileImage", + "description", + "accountStatus", + "telephoneNumber", + "postalAddress", + "city", + "postalCode", + "country", + "stateProvince", + "roles", + "assignments", + "groups", + "applications", + "manager", + "authzRoles", + "reports", + "effectiveRoles", + "effectiveAssignments", + "effectiveGroups", + "effectiveApplications", + "lastSync", + "kbaInfo", + "preferences", + "consentedMappings", + "ownerOfOrg", + "adminOfOrg", + "memberOfOrg", + "memberOfOrgIDs", + "ownerOfApp", + "passwordLastChangedTime", + "passwordExpirationTime", + "frIndexedString1", + "frIndexedString2", + "frIndexedString3", + "frIndexedString4", + "frIndexedString5", + "frIndexedString6", + "frIndexedString7", + "frIndexedString8", + "frIndexedString9", + "frIndexedString10", + "frIndexedString11", + "frIndexedString12", + "frIndexedString13", + "frIndexedString14", + "frIndexedString15", + "frIndexedString16", + "frIndexedString17", + "frIndexedString18", + "frIndexedString19", + "frIndexedString20", + "frUnindexedString1", + "frUnindexedString2", + "frUnindexedString3", + "frUnindexedString4", + "frUnindexedString5", + "frIndexedMultivalued1", + "frIndexedMultivalued2", + "frIndexedMultivalued3", + "frIndexedMultivalued4", + "frIndexedMultivalued5", + "frUnindexedMultivalued1", + "frUnindexedMultivalued2", + "frUnindexedMultivalued3", + "frUnindexedMultivalued4", + "frUnindexedMultivalued5", + "frIndexedDate1", + "frIndexedDate2", + "frIndexedDate3", + "frIndexedDate4", + "frIndexedDate5", + "frUnindexedDate1", + "frUnindexedDate2", + "frUnindexedDate3", + "frUnindexedDate4", + "frUnindexedDate5", + "frIndexedInteger1", + "frIndexedInteger2", + "frIndexedInteger3", + "frIndexedInteger4", + "frIndexedInteger5", + "frUnindexedInteger1", + "frUnindexedInteger2", + "frUnindexedInteger3", + "frUnindexedInteger4", + "frUnindexedInteger5", + "assignedDashboard", + "devicePrintProfiles", + "deviceProfiles", + "oathDeviceProfiles", + "pushDeviceProfiles", + "webauthnDeviceProfiles", + ], + "properties": { + "_id": { + "description": "User ID", + "isPersonal": false, + "policies": [ + { + "params": { + "forbiddenChars": [ + "/", + ], + }, + "policyId": "cannot-contain-characters", + }, + ], + "searchable": false, + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": false, + }, + "accountStatus": { + "default": "active", + "description": "Status", + "isPersonal": false, + "searchable": false, + "title": "Status", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "adminOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/bravo_organization", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "admins", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Administer", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "aliasList": { + "description": "List of identity aliases used primarily to record social IdP subjects for this user", + "isVirtual": false, + "items": { + "title": "User Alias Names Items", + "type": "string", + }, + "returnByDefault": false, + "searchable": false, + "title": "User Alias Names List", + "type": "array", + "userEditable": true, + "viewable": false, + }, + "applications": { + "description": "Applications", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:applications", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:applications:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + "_uniqueId": { + "description": "Unique identifier", + "type": "string", + }, + }, + "title": "Groups Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Application", + "path": "managed/bravo_application", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [ + "name", + ], + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Groups Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Applications", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": false, + }, + "assignedDashboard": { + "description": "List of items to click on for this user", + "isVirtual": true, + "items": { + "title": "Assigned Dashboard Items", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "name", + ], + "referencedRelationshipFields": [ + [ + "roles", + "applications", + ], + [ + "applications", + ], + ], + }, + "searchable": false, + "title": "Assigned Dashboard", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "assignments": { + "description": "Assignments", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string", + }, + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + "_uniqueId": { + "description": "Unique identifier", + "type": "string", + }, + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Assignment", + "path": "managed/bravo_assignment", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Assignments Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Assignments", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "authzRoles": { + "description": "Authorization Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Authorization Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Internal Role", + "path": "internal/role", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "authzMembers", + "reverseRelationship": true, + "title": "Authorization Roles Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Authorization Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "city": { + "description": "City", + "isPersonal": false, + "title": "City", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "cn": { + "default": "{{givenName}} {{sn}}", + "description": "Common Name", + "isPersonal": true, + "scope": "private", + "searchable": false, + "title": "Common Name", + "type": "string", + "userEditable": false, + "viewable": false, + }, + "consentedMappings": { + "description": "Consented Mappings", + "isPersonal": false, + "isVirtual": false, + "items": { + "items": { + "order": [ + "mapping", + "consentDate", + ], + "properties": { + "consentDate": { + "description": "Consent Date", + "searchable": false, + "title": "Consent Date", + "type": "string", + "userEditable": true, + "viewable": true, + }, + "mapping": { + "description": "Mapping", + "searchable": false, + "title": "Mapping", + "type": "string", + "userEditable": true, + "viewable": true, + }, + }, + "required": [ + "mapping", + "consentDate", + ], + "title": "Consented Mappings Item", + "type": "object", + }, + "title": "Consented Mappings Items", + "type": "array", + }, + "returnByDefault": false, + "searchable": false, + "title": "Consented Mappings", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false, + }, + "country": { + "description": "Country", + "isPersonal": false, + "title": "Country", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "description": { + "description": "Description", + "isPersonal": false, + "searchable": false, + "title": "Description", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "devicePrintProfiles": { + "description": "Device Print Profiles Information", + "isPersonal": false, + "items": { + "title": "Profile", + "type": "string", + }, + "searchable": false, + "title": "Device Print Profiles", + "type": "array", + "userEditable": true, + "viewable": true, + }, + "deviceProfiles": { + "description": "Device Profiles", + "isPersonal": false, + "items": { + "title": "Profile", + "type": "string", + }, + "searchable": false, + "title": "Device Profiles", + "type": "array", + "userEditable": true, + "viewable": true, + }, + "effectiveApplications": { + "description": "Effective Applications", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Assigned Application Items", + "type": "object", + }, + "queryConfig": { + "referencedObjectFields": [ + "name", + ], + "referencedRelationshipFields": [ + [ + "roles", + "applications", + ], + [ + "applications", + ], + ], + }, + "returnByDefault": true, + "title": "Effective Applications", + "type": "array", + "viewable": false, + }, + "effectiveAssignments": { + "description": "Effective Assignments", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Assignments Items", + "type": "object", + }, + "queryConfig": { + "referencedObjectFields": [ + "*", + ], + "referencedRelationshipFields": [ + [ + "roles", + "assignments", + ], + [ + "assignments", + ], + ], + }, + "returnByDefault": true, + "title": "Effective Assignments", + "type": "array", + "usageDescription": "", + "viewable": false, + }, + "effectiveGroups": { + "description": "Effective Groups", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Groups Items", + "type": "object", + }, + "queryConfig": { + "referencedRelationshipFields": [ + "groups", + ], + }, + "returnByDefault": true, + "title": "Effective Groups", + "type": "array", + "usageDescription": "", + "viewable": false, + }, + "effectiveRoles": { + "description": "Effective Roles", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Roles Items", + "type": "object", + }, + "queryConfig": { + "referencedRelationshipFields": [ + "roles", + ], + }, + "returnByDefault": true, + "title": "Effective Roles", + "type": "array", + "usageDescription": "", + "viewable": false, + }, + "frIndexedDate1": { + "description": "Generic Indexed Date 1", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Date 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedDate2": { + "description": "Generic Indexed Date 2", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Date 2", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedDate3": { + "description": "Generic Indexed Date 3", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Date 3", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedDate4": { + "description": "Generic Indexed Date 4", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Date 4", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedDate5": { + "description": "Generic Indexed Date 5", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Date 5", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedInteger1": { + "description": "Generic Indexed Integer 1", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Integer 1", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedInteger2": { + "description": "Generic Indexed Integer 2", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Integer 2", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedInteger3": { + "description": "Generic Indexed Integer 3", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Integer 3", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedInteger4": { + "description": "Generic Indexed Integer 4", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Integer 4", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedInteger5": { + "description": "Generic Indexed Integer 5", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Integer 5", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedMultivalued1": { + "description": "Generic Indexed Multivalue 1", + "isPersonal": false, + "items": { + "type": "string", + }, + "searchable": true, + "title": "Generic Indexed Multivalue 1", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedMultivalued2": { + "description": "Generic Indexed Multivalue 2", + "isPersonal": false, + "items": { + "type": "string", + }, + "searchable": true, + "title": "Generic Indexed Multivalue 2", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedMultivalued3": { + "description": "Generic Indexed Multivalue 3", + "isPersonal": false, + "items": { + "type": "string", + }, + "searchable": true, + "title": "Generic Indexed Multivalue 3", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedMultivalued4": { + "description": "Generic Indexed Multivalue 4", + "isPersonal": false, + "items": { + "type": "string", + }, + "searchable": true, + "title": "Generic Indexed Multivalue 4", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedMultivalued5": { + "description": "Generic Indexed Multivalue 5", + "isPersonal": false, + "items": { + "type": "string", + }, + "searchable": true, + "title": "Generic Indexed Multivalue 5", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString1": { + "description": "Generic Indexed String 1", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString10": { + "description": "Generic Indexed String 10", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 10", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString11": { + "description": "Generic Indexed String 11", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 11", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString12": { + "description": "Generic Indexed String 12", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 12", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString13": { + "description": "Generic Indexed String 13", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 13", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString14": { + "description": "Generic Indexed String 14", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 14", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString15": { + "description": "Generic Indexed String 15", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 15", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString16": { + "description": "Generic Indexed String 16", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 16", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString17": { + "description": "Generic Indexed String 17", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 17", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString18": { + "description": "Generic Indexed String 18", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 18", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString19": { + "description": "Generic Indexed String 19", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 19", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString2": { + "description": "Generic Indexed String 2", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 2", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString20": { + "description": "Generic Indexed String 20", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 20", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString3": { + "description": "Generic Indexed String 3", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 3", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString4": { + "description": "Generic Indexed String 4", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 4", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString5": { + "description": "Generic Indexed String 5", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 5", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString6": { + "description": "Generic Indexed String 6", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 6", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString7": { + "description": "Generic Indexed String 7", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 7", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString8": { + "description": "Generic Indexed String 8", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 8", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString9": { + "description": "Generic Indexed String 9", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 9", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedDate1": { + "description": "Generic Unindexed Date 1", + "isPersonal": false, + "title": "Generic Unindexed Date 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedDate2": { + "description": "Generic Unindexed Date 2", + "isPersonal": false, + "title": "Generic Unindexed Date 2", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedDate3": { + "description": "Generic Unindexed Date 3", + "isPersonal": false, + "title": "Generic Unindexed Date 3", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedDate4": { + "description": "Generic Unindexed Date 4", + "isPersonal": false, + "title": "Generic Unindexed Date 4", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedDate5": { + "description": "Generic Unindexed Date 5", + "isPersonal": false, + "title": "Generic Unindexed Date 5", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedInteger1": { + "description": "Generic Unindexed Integer 1", + "isPersonal": false, + "title": "Generic Unindexed Integer 1", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedInteger2": { + "description": "Generic Unindexed Integer 2", + "isPersonal": false, + "title": "Generic Unindexed Integer 2", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedInteger3": { + "description": "Generic Unindexed Integer 3", + "isPersonal": false, + "title": "Generic Unindexed Integer 3", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedInteger4": { + "description": "Generic Unindexed Integer 4", + "isPersonal": false, + "title": "Generic Unindexed Integer 4", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedInteger5": { + "description": "Generic Unindexed Integer 5", + "isPersonal": false, + "title": "Generic Unindexed Integer 5", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedMultivalued1": { + "description": "Generic Unindexed Multivalue 1", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Unindexed Multivalue 1", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedMultivalued2": { + "description": "Generic Unindexed Multivalue 2", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Unindexed Multivalue 2", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedMultivalued3": { + "description": "Generic Unindexed Multivalue 3", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Unindexed Multivalue 3", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedMultivalued4": { + "description": "Generic Unindexed Multivalue 4", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Unindexed Multivalue 4", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedMultivalued5": { + "description": "Generic Unindexed Multivalue 5", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Unindexed Multivalue 5", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedString1": { + "description": "Generic Unindexed String 1", + "isPersonal": false, + "title": "Generic Unindexed String 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedString2": { + "description": "Generic Unindexed String 2", + "isPersonal": false, + "title": "Generic Unindexed String 2", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedString3": { + "description": "Generic Unindexed String 3", + "isPersonal": false, + "title": "Generic Unindexed String 3", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedString4": { + "description": "Generic Unindexed String 4", + "isPersonal": false, + "title": "Generic Unindexed String 4", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedString5": { + "description": "Generic Unindexed String 5", + "isPersonal": false, + "title": "Generic Unindexed String 5", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "givenName": { + "description": "First Name", + "isPersonal": true, + "searchable": true, + "title": "First Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "groups": { + "description": "Groups", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:groups", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:groups:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Groups Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Group", + "path": "managed/bravo_group", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Groups Items", + "type": "relationship", + "validate": true, + }, + "relationshipGrantTemporalConstraintsEnforced": false, + "returnByDefault": false, + "title": "Groups", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "kbaInfo": { + "description": "KBA Info", + "isPersonal": true, + "items": { + "order": [ + "answer", + "customQuestion", + "questionId", + ], + "properties": { + "answer": { + "description": "Answer", + "type": "string", + }, + "customQuestion": { + "description": "Custom question", + "type": "string", + }, + "questionId": { + "description": "Question ID", + "type": "string", + }, + }, + "required": [], + "title": "KBA Info Items", + "type": "object", + }, + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false, + }, + "lastSync": { + "description": "Last Sync timestamp", + "isPersonal": false, + "order": [ + "effectiveAssignments", + "timestamp", + ], + "properties": { + "effectiveAssignments": { + "description": "Effective Assignments", + "items": { + "title": "Effective Assignments Items", + "type": "object", + }, + "title": "Effective Assignments", + "type": "array", + }, + "timestamp": { + "description": "Timestamp", + "type": "string", + }, + }, + "required": [], + "scope": "private", + "searchable": false, + "title": "Last Sync timestamp", + "type": "object", + "usageDescription": "", + "viewable": false, + }, + "mail": { + "description": "Email Address", + "isPersonal": true, + "policies": [ + { + "policyId": "valid-email-address-format", + }, + ], + "searchable": true, + "title": "Email Address", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "manager": { + "description": "Manager", + "isPersonal": false, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Manager _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/bravo_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "reports", + "reverseRelationship": true, + "searchable": false, + "title": "Manager", + "type": "relationship", + "usageDescription": "", + "userEditable": false, + "validate": true, + "viewable": true, + }, + "memberOfOrg": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/bravo_organization", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations to which I Belong", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "memberOfOrgIDs": { + "isVirtual": true, + "items": { + "title": "org identifiers", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs", + ], + "referencedRelationshipFields": [ + "memberOfOrg", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "MemberOfOrgIDs", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "oathDeviceProfiles": { + "description": "Oath Device Profiles", + "isPersonal": false, + "items": { + "title": "Profile", + "type": "string", + }, + "searchable": false, + "title": "Oath Device Profiles", + "type": "array", + "userEditable": true, + "viewable": true, + }, + "ownerOfApp": { + "items": { + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Application", + "path": "managed/bravo_application", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [ + "name", + ], + }, + }, + ], + "reversePropertyName": "owners", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "searchable": false, + "title": "Applications I Own", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "ownerOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/bravo_organization", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "owners", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Own", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "password": { + "description": "Password", + "isPersonal": false, + "isProtected": true, + "scope": "private", + "searchable": false, + "title": "Password", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": false, + }, + "passwordExpirationTime": { + "description": "Password Expiration Time", + "searchable": true, + "title": "Password Expiration Time", + "type": "string", + "userEditable": false, + "viewable": true, + }, + "passwordLastChangedTime": { + "description": "Password Last Changed Time", + "searchable": true, + "title": "Password Last Changed Time", + "type": "string", + "userEditable": false, + "viewable": true, + }, + "postalAddress": { + "description": "Address 1", + "isPersonal": true, + "title": "Address 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "postalCode": { + "description": "Postal Code", + "isPersonal": false, + "title": "Postal Code", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "preferences": { + "description": "Preferences", + "isPersonal": false, + "order": [ + "updates", + "marketing", + ], + "properties": { + "marketing": { + "description": "Send me special offers and services", + "type": "boolean", + }, + "updates": { + "description": "Send me news and updates", + "type": "boolean", + }, + }, + "required": [], + "searchable": false, + "title": "Preferences", + "type": "object", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "profileImage": { + "description": "Profile Image", + "isPersonal": true, + "searchable": false, + "title": "Profile Image", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": false, + }, + "pushDeviceProfiles": { + "description": "Push Device Profiles", + "isPersonal": false, + "items": { + "title": "Profile", + "type": "string", + }, + "searchable": false, + "title": "Push Device Profiles", + "type": "array", + "userEditable": true, + "viewable": true, + }, + "reports": { + "description": "Direct Reports", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Direct Reports Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/bravo_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "manager", + "reverseRelationship": true, + "title": "Direct Reports Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Direct Reports", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "roles": { + "description": "Provisioning Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Role", + "path": "managed/bravo_role", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Provisioning Roles Items", + "type": "relationship", + "validate": true, + }, + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Provisioning Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "sn": { + "description": "Last Name", + "isPersonal": true, + "searchable": true, + "title": "Last Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "stateProvince": { + "description": "State/Province", + "isPersonal": false, + "title": "State/Province", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "telephoneNumber": { + "description": "Telephone Number", + "isPersonal": true, + "pattern": "^\\+?([0-9\\- \\(\\)])*$", + "title": "Telephone Number", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "userName": { + "description": "Username", + "isPersonal": true, + "minLength": 1, + "policies": [ + { + "policyId": "valid-username", + }, + { + "params": { + "forbiddenChars": [ + "/", + ], + }, + "policyId": "cannot-contain-characters", + }, + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "searchable": true, + "title": "Username", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "webauthnDeviceProfiles": { + "description": "Web AuthN Device Profiles", + "isPersonal": false, + "items": { + "title": "Profile", + "type": "string", + }, + "searchable": false, + "title": "Web AuthN Device Profiles", + "type": "array", + "userEditable": true, + "viewable": true, + }, + }, + "required": [ + "userName", + "givenName", + "sn", + "mail", + ], + "title": "Bravo realm - User", + "type": "object", + "viewable": true, + }, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/managed/bravo_user.managed.scripts/postUpdate.script.js 1`] = ` +"//extract feature test UPDATED POSTUPDATE SCRIPT + + +//test UPDATED +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/managed/managed.idm.json 1`] = ` +{ + "idm": { + "managed": { + "_id": "managed", + "objects": [ + "file://alpha_user.managed.json", + "file://bravo_user.managed.json", + "file://alpha_role.managed.json", + "file://bravo_role.managed.json", + "file://alpha_assignment.managed.json", + "file://bravo_assignment.managed.json", + "file://alpha_organization.managed.json", + "file://bravo_organization.managed.json", + "file://alpha_group.managed.json", + "file://bravo_group.managed.json", + "file://alpha_application.managed.json", + "file://bravo_application.managed.json", + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/policy.idm.json 1`] = ` +{ + "idm": { + "policy": { + "_id": "policy", + "additionalFiles": [], + "resources": [], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/privilegeAssignments.idm.json 1`] = ` +{ + "idm": { + "privilegeAssignments": { + "_id": "privilegeAssignments", + "privilegeAssignments": [ + { + "name": "ownerPrivileges", + "privileges": [ + "owner-view-update-delete-orgs", + "owner-create-orgs", + "owner-view-update-delete-admins-and-members", + "owner-create-admins", + "admin-view-update-delete-members", + "admin-create-members", + ], + "relationshipField": "ownerOfOrg", + }, + { + "name": "adminPrivileges", + "privileges": [ + "admin-view-update-delete-orgs", + "admin-create-orgs", + "admin-view-update-delete-members", + "admin-create-members", + ], + "relationshipField": "adminOfOrg", + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/privileges.idm.json 1`] = ` +{ + "idm": { + "privileges": { + "_id": "privileges", + "privileges": [], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/repo.ds.idm.json 1`] = ` +{ + "idm": { + "repo.ds": { + "_id": "repo.ds", + "resourceMapping": { + "genericMapping": { + "managed/alpha_application": { + "dnTemplate": "ou=application,o=alpha,o=root,ou=identities", + "jsonAttribute": "fr-idm-managed-application-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-application", + ], + "properties": { + "members": { + "isMultiValued": true, + "propertyName": "applications", + "resourcePath": "managed/alpha_user", + "type": "reverseReference", + }, + "name": { + "ldapAttribute": "fr-idm-managed-application-name", + "type": "simple", + }, + "owners": { + "isMultiValued": true, + "propertyName": "ownerOfApp", + "resourcePath": "managed/alpha_user", + "type": "reverseReference", + }, + "roles": { + "isMultiValued": true, + "propertyName": "applications", + "resourcePath": "managed/alpha_role", + "type": "reverseReference", + }, + }, + }, + "managed/alpha_assignment": { + "dnTemplate": "ou=assignment,o=alpha,o=root,ou=identities", + "jsonAttribute": "fr-idm-managed-assignment-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-assignment", + ], + "properties": { + "condition": { + "ldapAttribute": "fr-idm-assignment-condition", + "type": "simple", + }, + "members": { + "isMultiValued": true, + "propertyName": "assignments", + "resourcePath": "managed/alpha_user", + "type": "reverseReference", + }, + "roles": { + "isMultiValued": true, + "propertyName": "assignments", + "resourcePath": "managed/alpha_role", + "type": "reverseReference", + }, + }, + }, + "managed/alpha_group": { + "dnTemplate": "ou=groups,o=alpha,o=root,ou=identities", + "idGenerator": { + "propertyName": "name", + "type": "property", + }, + "jsonAttribute": "fr-idm-managed-group-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "namingStrategy": { + "dnAttribute": "cn", + "type": "clientDnNaming", + }, + "nativeId": false, + "objectClasses": [ + "top", + "groupOfURLs", + "fr-idm-managed-group", + ], + "properties": { + "_id": { + "ldapAttribute": "cn", + "primaryKey": true, + "type": "simple", + "writability": "createOnly", + }, + "condition": { + "ldapAttribute": "fr-idm-managed-group-condition", + "type": "simple", + }, + "description": { + "ldapAttribute": "description", + "type": "simple", + }, + "members": { + "isMultiValued": true, + "propertyName": "groups", + "resourcePath": "managed/alpha_user", + "type": "reverseReference", + }, + }, + }, + "managed/alpha_organization": { + "dnTemplate": "ou=organization,o=alpha,o=root,ou=identities", + "jsonAttribute": "fr-idm-managed-organization-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-organization", + "fr-ext-attrs", + ], + "properties": { + "admins": { + "isMultiValued": true, + "propertyName": "adminOfOrg", + "resourcePath": "managed/alpha_user", + "type": "reverseReference", + }, + "children": { + "isMultiValued": true, + "propertyName": "parent", + "resourcePath": "managed/alpha_organization", + "type": "reverseReference", + }, + "members": { + "isMultiValued": true, + "propertyName": "memberOfOrg", + "resourcePath": "managed/alpha_user", + "type": "reverseReference", + }, + "name": { + "ldapAttribute": "fr-idm-managed-organization-name", + "type": "simple", + }, + "owners": { + "isMultiValued": true, + "propertyName": "ownerOfOrg", + "resourcePath": "managed/alpha_user", + "type": "reverseReference", + }, + "parent": { + "ldapAttribute": "fr-idm-managed-organization-parent", + "primaryKey": "uid", + "resourcePath": "managed/alpha_organization", + "type": "reference", + }, + }, + }, + "managed/alpha_role": { + "dnTemplate": "ou=role,o=alpha,o=root,ou=identities", + "jsonAttribute": "fr-idm-managed-role-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchManagedRole", + "objectClasses": [ + "uidObject", + "fr-idm-managed-role", + ], + "properties": { + "applications": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-role-applications", + "primaryKey": "uid", + "resourcePath": "managed/alpha_application", + "type": "reference", + }, + "assignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-role-assignments", + "primaryKey": "uid", + "resourcePath": "managed/alpha_assignment", + "type": "reference", + }, + "members": { + "isMultiValued": true, + "propertyName": "roles", + "resourcePath": "managed/alpha_user", + "type": "reverseReference", + }, + }, + }, + "managed/alpha_user": { + "dnTemplate": "ou=user,o=alpha,o=root,ou=identities", + "jsonAttribute": "fr-idm-custom-attrs", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "namingStrategy": { + "dnAttribute": "fr-idm-uuid", + "type": "clientDnNaming", + }, + "nativeId": false, + "objectClasses": [ + "person", + "organizationalPerson", + "inetOrgPerson", + "iplanet-am-user-service", + "devicePrintProfilesContainer", + "deviceProfilesContainer", + "kbaInfoContainer", + "fr-idm-managed-user-explicit", + "forgerock-am-dashboard-service", + "inetuser", + "iplanet-am-auth-configuration-service", + "iplanet-am-managed-person", + "iPlanetPreferences", + "oathDeviceProfilesContainer", + "pushDeviceProfilesContainer", + "sunAMAuthAccountLockout", + "sunFMSAML2NameIdentifier", + "webauthnDeviceProfilesContainer", + "fr-idm-hybrid-obj", + "fr-ext-attrs", + ], + "properties": { + "_id": { + "ldapAttribute": "fr-idm-uuid", + "primaryKey": true, + "type": "simple", + }, + "_meta": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-meta", + "primaryKey": "uid", + "resourcePath": "managed/alpha_usermeta", + "type": "reference", + }, + "_notifications": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-notifications", + "primaryKey": "uid", + "resourcePath": "internal/notification", + "type": "reference", + }, + "accountStatus": { + "ldapAttribute": "inetUserStatus", + "type": "simple", + }, + "adminOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-admin", + "primaryKey": "uid", + "resourcePath": "managed/alpha_organization", + "type": "reference", + }, + "aliasList": { + "isMultiValued": true, + "ldapAttribute": "iplanet-am-user-alias-list", + "type": "simple", + }, + "applications": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-application-member", + "primaryKey": "uid", + "resourcePath": "managed/alpha_application", + "type": "reference", + }, + "assignedDashboard": { + "isMultiValued": true, + "ldapAttribute": "assignedDashboard", + "type": "simple", + }, + "assignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-assignment-member", + "primaryKey": "uid", + "resourcePath": "managed/alpha_assignment", + "type": "reference", + }, + "authzRoles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-authzroles-internal-role", + "primaryKey": "cn", + "resourcePath": "internal/role", + "type": "reference", + }, + "city": { + "ldapAttribute": "l", + "type": "simple", + }, + "cn": { + "ldapAttribute": "cn", + "type": "simple", + }, + "consentedMappings": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-consentedMapping", + "type": "json", + }, + "country": { + "ldapAttribute": "co", + "type": "simple", + }, + "description": { + "ldapAttribute": "description", + "type": "simple", + }, + "devicePrintProfiles": { + "isMultiValued": true, + "ldapAttribute": "devicePrintProfiles", + "type": "simple", + }, + "deviceProfiles": { + "isMultiValued": true, + "ldapAttribute": "deviceProfiles", + "type": "simple", + }, + "displayName": { + "ldapAttribute": "displayName", + "type": "simple", + }, + "effectiveApplications": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-effectiveApplications", + "type": "json", + }, + "effectiveAssignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-effectiveAssignment", + "type": "json", + }, + "effectiveGroups": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-effectiveGroup", + "type": "json", + }, + "effectiveRoles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-effectiveRole", + "type": "json", + }, + "frIndexedDate1": { + "ldapAttribute": "fr-attr-idate1", + "type": "simple", + }, + "frIndexedDate2": { + "ldapAttribute": "fr-attr-idate2", + "type": "simple", + }, + "frIndexedDate3": { + "ldapAttribute": "fr-attr-idate3", + "type": "simple", + }, + "frIndexedDate4": { + "ldapAttribute": "fr-attr-idate4", + "type": "simple", + }, + "frIndexedDate5": { + "ldapAttribute": "fr-attr-idate5", + "type": "simple", + }, + "frIndexedInteger1": { + "ldapAttribute": "fr-attr-iint1", + "type": "simple", + }, + "frIndexedInteger2": { + "ldapAttribute": "fr-attr-iint2", + "type": "simple", + }, + "frIndexedInteger3": { + "ldapAttribute": "fr-attr-iint3", + "type": "simple", + }, + "frIndexedInteger4": { + "ldapAttribute": "fr-attr-iint4", + "type": "simple", + }, + "frIndexedInteger5": { + "ldapAttribute": "fr-attr-iint5", + "type": "simple", + }, + "frIndexedMultivalued1": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti1", + "type": "simple", + }, + "frIndexedMultivalued2": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti2", + "type": "simple", + }, + "frIndexedMultivalued3": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti3", + "type": "simple", + }, + "frIndexedMultivalued4": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti4", + "type": "simple", + }, + "frIndexedMultivalued5": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti5", + "type": "simple", + }, + "frIndexedString1": { + "ldapAttribute": "fr-attr-istr1", + "type": "simple", + }, + "frIndexedString10": { + "ldapAttribute": "fr-attr-istr10", + "type": "simple", + }, + "frIndexedString11": { + "ldapAttribute": "fr-attr-istr11", + "type": "simple", + }, + "frIndexedString12": { + "ldapAttribute": "fr-attr-istr12", + "type": "simple", + }, + "frIndexedString13": { + "ldapAttribute": "fr-attr-istr13", + "type": "simple", + }, + "frIndexedString14": { + "ldapAttribute": "fr-attr-istr14", + "type": "simple", + }, + "frIndexedString15": { + "ldapAttribute": "fr-attr-istr15", + "type": "simple", + }, + "frIndexedString16": { + "ldapAttribute": "fr-attr-istr16", + "type": "simple", + }, + "frIndexedString17": { + "ldapAttribute": "fr-attr-istr17", + "type": "simple", + }, + "frIndexedString18": { + "ldapAttribute": "fr-attr-istr18", + "type": "simple", + }, + "frIndexedString19": { + "ldapAttribute": "fr-attr-istr19", + "type": "simple", + }, + "frIndexedString2": { + "ldapAttribute": "fr-attr-istr2", + "type": "simple", + }, + "frIndexedString20": { + "ldapAttribute": "fr-attr-istr20", + "type": "simple", + }, + "frIndexedString3": { + "ldapAttribute": "fr-attr-istr3", + "type": "simple", + }, + "frIndexedString4": { + "ldapAttribute": "fr-attr-istr4", + "type": "simple", + }, + "frIndexedString5": { + "ldapAttribute": "fr-attr-istr5", + "type": "simple", + }, + "frIndexedString6": { + "ldapAttribute": "fr-attr-istr6", + "type": "simple", + }, + "frIndexedString7": { + "ldapAttribute": "fr-attr-istr7", + "type": "simple", + }, + "frIndexedString8": { + "ldapAttribute": "fr-attr-istr8", + "type": "simple", + }, + "frIndexedString9": { + "ldapAttribute": "fr-attr-istr9", + "type": "simple", + }, + "frUnindexedDate1": { + "ldapAttribute": "fr-attr-date1", + "type": "simple", + }, + "frUnindexedDate2": { + "ldapAttribute": "fr-attr-date2", + "type": "simple", + }, + "frUnindexedDate3": { + "ldapAttribute": "fr-attr-date3", + "type": "simple", + }, + "frUnindexedDate4": { + "ldapAttribute": "fr-attr-date4", + "type": "simple", + }, + "frUnindexedDate5": { + "ldapAttribute": "fr-attr-date5", + "type": "simple", + }, + "frUnindexedInteger1": { + "ldapAttribute": "fr-attr-int1", + "type": "simple", + }, + "frUnindexedInteger2": { + "ldapAttribute": "fr-attr-int2", + "type": "simple", + }, + "frUnindexedInteger3": { + "ldapAttribute": "fr-attr-int3", + "type": "simple", + }, + "frUnindexedInteger4": { + "ldapAttribute": "fr-attr-int4", + "type": "simple", + }, + "frUnindexedInteger5": { + "ldapAttribute": "fr-attr-int5", + "type": "simple", + }, + "frUnindexedMultivalued1": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi1", + "type": "simple", + }, + "frUnindexedMultivalued2": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi2", + "type": "simple", + }, + "frUnindexedMultivalued3": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi3", + "type": "simple", + }, + "frUnindexedMultivalued4": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi4", + "type": "simple", + }, + "frUnindexedMultivalued5": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi5", + "type": "simple", + }, + "frUnindexedString1": { + "ldapAttribute": "fr-attr-str1", + "type": "simple", + }, + "frUnindexedString2": { + "ldapAttribute": "fr-attr-str2", + "type": "simple", + }, + "frUnindexedString3": { + "ldapAttribute": "fr-attr-str3", + "type": "simple", + }, + "frUnindexedString4": { + "ldapAttribute": "fr-attr-str4", + "type": "simple", + }, + "frUnindexedString5": { + "ldapAttribute": "fr-attr-str5", + "type": "simple", + }, + "givenName": { + "ldapAttribute": "givenName", + "type": "simple", + }, + "groups": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-groups", + "primaryKey": "cn", + "resourcePath": "managed/alpha_group", + "type": "reference", + }, + "kbaInfo": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-kbaInfo", + "type": "json", + }, + "lastSync": { + "ldapAttribute": "fr-idm-lastSync", + "type": "json", + }, + "mail": { + "ldapAttribute": "mail", + "type": "simple", + }, + "manager": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-manager", + "primaryKey": "uid", + "resourcePath": "managed/alpha_user", + "type": "reference", + }, + "memberOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-member", + "primaryKey": "uid", + "resourcePath": "managed/alpha_organization", + "type": "reference", + }, + "memberOfOrgIDs": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-memberoforgid", + "type": "simple", + }, + "oathDeviceProfiles": { + "isMultiValued": true, + "ldapAttribute": "oathDeviceProfiles", + "type": "simple", + }, + "ownerOfApp": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-application-owner", + "primaryKey": "uid", + "resourcePath": "managed/alpha_application", + "type": "reference", + }, + "ownerOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-owner", + "primaryKey": "uid", + "resourcePath": "managed/alpha_organization", + "type": "reference", + }, + "password": { + "ldapAttribute": "userPassword", + "type": "simple", + }, + "passwordExpirationTime": { + "ldapAttribute": "pwdExpirationTime", + "type": "simple", + "writability": "readOnlyDiscardWrites", + }, + "passwordLastChangedTime": { + "ldapAttribute": "pwdChangedTime", + "type": "simple", + "writability": "readOnlyDiscardWrites", + }, + "postalAddress": { + "ldapAttribute": "street", + "type": "simple", + }, + "postalCode": { + "ldapAttribute": "postalCode", + "type": "simple", + }, + "preferences": { + "ldapAttribute": "fr-idm-preferences", + "type": "json", + }, + "profileImage": { + "ldapAttribute": "labeledURI", + "type": "simple", + }, + "pushDeviceProfiles": { + "isMultiValued": true, + "ldapAttribute": "pushDeviceProfiles", + "type": "simple", + }, + "reports": { + "isMultiValued": true, + "propertyName": "manager", + "resourcePath": "managed/alpha_user", + "type": "reverseReference", + }, + "roles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-roles", + "primaryKey": "uid", + "resourcePath": "managed/alpha_role", + "type": "reference", + }, + "sn": { + "ldapAttribute": "sn", + "type": "simple", + }, + "stateProvince": { + "ldapAttribute": "st", + "type": "simple", + }, + "telephoneNumber": { + "ldapAttribute": "telephoneNumber", + "type": "simple", + }, + "userName": { + "ldapAttribute": "uid", + "type": "simple", + }, + "webauthnDeviceProfiles": { + "isMultiValued": true, + "ldapAttribute": "webauthnDeviceProfiles", + "type": "simple", + }, + }, + }, + "managed/alpha_usermeta": { + "dnTemplate": "ou=usermeta,o=alpha,o=root,ou=identities", + "jsonAttribute": "fr-idm-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-generic-obj", + ], + "properties": { + "target": { + "propertyName": "_meta", + "resourcePath": "managed/alpha_user", + "type": "reverseReference", + }, + }, + }, + "managed/bravo_application": { + "dnTemplate": "ou=application,o=bravo,o=root,ou=identities", + "jsonAttribute": "fr-idm-managed-application-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-application", + ], + "properties": { + "members": { + "isMultiValued": true, + "propertyName": "applications", + "resourcePath": "managed/bravo_user", + "type": "reverseReference", + }, + "name": { + "ldapAttribute": "fr-idm-managed-application-name", + "type": "simple", + }, + "owners": { + "isMultiValued": true, + "propertyName": "ownerOfApp", + "resourcePath": "managed/bravo_user", + "type": "reverseReference", + }, + "roles": { + "isMultiValued": true, + "propertyName": "applications", + "resourcePath": "managed/bravo_role", + "type": "reverseReference", + }, + }, + }, + "managed/bravo_assignment": { + "dnTemplate": "ou=assignment,o=bravo,o=root,ou=identities", + "jsonAttribute": "fr-idm-managed-assignment-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-assignment", + ], + "properties": { + "condition": { + "ldapAttribute": "fr-idm-assignment-condition", + "type": "simple", + }, + "members": { + "isMultiValued": true, + "propertyName": "assignments", + "resourcePath": "managed/bravo_user", + "type": "reverseReference", + }, + "roles": { + "isMultiValued": true, + "propertyName": "assignments", + "resourcePath": "managed/bravo_role", + "type": "reverseReference", + }, + }, + }, + "managed/bravo_group": { + "dnTemplate": "ou=groups,o=bravo,o=root,ou=identities", + "idGenerator": { + "propertyName": "name", + "type": "property", + }, + "jsonAttribute": "fr-idm-managed-group-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "namingStrategy": { + "dnAttribute": "cn", + "type": "clientDnNaming", + }, + "nativeId": false, + "objectClasses": [ + "top", + "groupOfURLs", + "fr-idm-managed-group", + ], + "properties": { + "_id": { + "ldapAttribute": "cn", + "primaryKey": true, + "type": "simple", + "writability": "createOnly", + }, + "condition": { + "ldapAttribute": "fr-idm-managed-group-condition", + "type": "simple", + }, + "description": { + "ldapAttribute": "description", + "type": "simple", + }, + "members": { + "isMultiValued": true, + "propertyName": "groups", + "resourcePath": "managed/bravo_user", + "type": "reverseReference", + }, + }, + }, + "managed/bravo_organization": { + "dnTemplate": "ou=organization,o=bravo,o=root,ou=identities", + "jsonAttribute": "fr-idm-managed-organization-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-organization", + "fr-ext-attrs", + ], + "properties": { + "admins": { + "isMultiValued": true, + "propertyName": "adminOfOrg", + "resourcePath": "managed/bravo_user", + "type": "reverseReference", + }, + "children": { + "isMultiValued": true, + "propertyName": "parent", + "resourcePath": "managed/bravo_organization", + "type": "reverseReference", + }, + "members": { + "isMultiValued": true, + "propertyName": "memberOfOrg", + "resourcePath": "managed/bravo_user", + "type": "reverseReference", + }, + "name": { + "ldapAttribute": "fr-idm-managed-organization-name", + "type": "simple", + }, + "owners": { + "isMultiValued": true, + "propertyName": "ownerOfOrg", + "resourcePath": "managed/bravo_user", + "type": "reverseReference", + }, + "parent": { + "ldapAttribute": "fr-idm-managed-organization-parent", + "primaryKey": "uid", + "resourcePath": "managed/bravo_organization", + "type": "reference", + }, + }, + }, + "managed/bravo_role": { + "dnTemplate": "ou=role,o=bravo,o=root,ou=identities", + "jsonAttribute": "fr-idm-managed-role-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchManagedRole", + "objectClasses": [ + "uidObject", + "fr-idm-managed-role", + ], + "properties": { + "applications": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-role-applications", + "primaryKey": "uid", + "resourcePath": "managed/bravo_application", + "type": "reference", + }, + "assignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-role-assignments", + "primaryKey": "uid", + "resourcePath": "managed/bravo_assignment", + "type": "reference", + }, + "members": { + "isMultiValued": true, + "propertyName": "roles", + "resourcePath": "managed/bravo_user", + "type": "reverseReference", + }, + }, + }, + "managed/bravo_user": { + "dnTemplate": "ou=user,o=bravo,o=root,ou=identities", + "jsonAttribute": "fr-idm-custom-attrs", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "namingStrategy": { + "dnAttribute": "fr-idm-uuid", + "type": "clientDnNaming", + }, + "nativeId": false, + "objectClasses": [ + "person", + "organizationalPerson", + "inetOrgPerson", + "iplanet-am-user-service", + "devicePrintProfilesContainer", + "deviceProfilesContainer", + "kbaInfoContainer", + "fr-idm-managed-user-explicit", + "forgerock-am-dashboard-service", + "inetuser", + "iplanet-am-auth-configuration-service", + "iplanet-am-managed-person", + "iPlanetPreferences", + "oathDeviceProfilesContainer", + "pushDeviceProfilesContainer", + "sunAMAuthAccountLockout", + "sunFMSAML2NameIdentifier", + "webauthnDeviceProfilesContainer", + "fr-idm-hybrid-obj", + "fr-ext-attrs", + ], + "properties": { + "_id": { + "ldapAttribute": "fr-idm-uuid", + "primaryKey": true, + "type": "simple", + }, + "_meta": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-meta", + "primaryKey": "uid", + "resourcePath": "managed/bravo_usermeta", + "type": "reference", + }, + "_notifications": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-notifications", + "primaryKey": "uid", + "resourcePath": "internal/notification", + "type": "reference", + }, + "accountStatus": { + "ldapAttribute": "inetUserStatus", + "type": "simple", + }, + "adminOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-admin", + "primaryKey": "uid", + "resourcePath": "managed/bravo_organization", + "type": "reference", + }, + "aliasList": { + "isMultiValued": true, + "ldapAttribute": "iplanet-am-user-alias-list", + "type": "simple", + }, + "applications": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-application-member", + "primaryKey": "uid", + "resourcePath": "managed/bravo_application", + "type": "reference", + }, + "assignedDashboard": { + "isMultiValued": true, + "ldapAttribute": "assignedDashboard", + "type": "simple", + }, + "assignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-assignment-member", + "primaryKey": "uid", + "resourcePath": "managed/bravo_assignment", + "type": "reference", + }, + "authzRoles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-authzroles-internal-role", + "primaryKey": "cn", + "resourcePath": "internal/role", + "type": "reference", + }, + "city": { + "ldapAttribute": "l", + "type": "simple", + }, + "cn": { + "ldapAttribute": "cn", + "type": "simple", + }, + "consentedMappings": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-consentedMapping", + "type": "json", + }, + "country": { + "ldapAttribute": "co", + "type": "simple", + }, + "description": { + "ldapAttribute": "description", + "type": "simple", + }, + "devicePrintProfiles": { + "isMultiValued": true, + "ldapAttribute": "devicePrintProfiles", + "type": "simple", + }, + "deviceProfiles": { + "isMultiValued": true, + "ldapAttribute": "deviceProfiles", + "type": "simple", + }, + "displayName": { + "ldapAttribute": "displayName", + "type": "simple", + }, + "effectiveApplications": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-effectiveApplications", + "type": "json", + }, + "effectiveAssignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-effectiveAssignment", + "type": "json", + }, + "effectiveGroups": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-effectiveGroup", + "type": "json", + }, + "effectiveRoles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-effectiveRole", + "type": "json", + }, + "frIndexedDate1": { + "ldapAttribute": "fr-attr-idate1", + "type": "simple", + }, + "frIndexedDate2": { + "ldapAttribute": "fr-attr-idate2", + "type": "simple", + }, + "frIndexedDate3": { + "ldapAttribute": "fr-attr-idate3", + "type": "simple", + }, + "frIndexedDate4": { + "ldapAttribute": "fr-attr-idate4", + "type": "simple", + }, + "frIndexedDate5": { + "ldapAttribute": "fr-attr-idate5", + "type": "simple", + }, + "frIndexedInteger1": { + "ldapAttribute": "fr-attr-iint1", + "type": "simple", + }, + "frIndexedInteger2": { + "ldapAttribute": "fr-attr-iint2", + "type": "simple", + }, + "frIndexedInteger3": { + "ldapAttribute": "fr-attr-iint3", + "type": "simple", + }, + "frIndexedInteger4": { + "ldapAttribute": "fr-attr-iint4", + "type": "simple", + }, + "frIndexedInteger5": { + "ldapAttribute": "fr-attr-iint5", + "type": "simple", + }, + "frIndexedMultivalued1": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti1", + "type": "simple", + }, + "frIndexedMultivalued2": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti2", + "type": "simple", + }, + "frIndexedMultivalued3": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti3", + "type": "simple", + }, + "frIndexedMultivalued4": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti4", + "type": "simple", + }, + "frIndexedMultivalued5": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti5", + "type": "simple", + }, + "frIndexedString1": { + "ldapAttribute": "fr-attr-istr1", + "type": "simple", + }, + "frIndexedString10": { + "ldapAttribute": "fr-attr-istr10", + "type": "simple", + }, + "frIndexedString11": { + "ldapAttribute": "fr-attr-istr11", + "type": "simple", + }, + "frIndexedString12": { + "ldapAttribute": "fr-attr-istr12", + "type": "simple", + }, + "frIndexedString13": { + "ldapAttribute": "fr-attr-istr13", + "type": "simple", + }, + "frIndexedString14": { + "ldapAttribute": "fr-attr-istr14", + "type": "simple", + }, + "frIndexedString15": { + "ldapAttribute": "fr-attr-istr15", + "type": "simple", + }, + "frIndexedString16": { + "ldapAttribute": "fr-attr-istr16", + "type": "simple", + }, + "frIndexedString17": { + "ldapAttribute": "fr-attr-istr17", + "type": "simple", + }, + "frIndexedString18": { + "ldapAttribute": "fr-attr-istr18", + "type": "simple", + }, + "frIndexedString19": { + "ldapAttribute": "fr-attr-istr19", + "type": "simple", + }, + "frIndexedString2": { + "ldapAttribute": "fr-attr-istr2", + "type": "simple", + }, + "frIndexedString20": { + "ldapAttribute": "fr-attr-istr20", + "type": "simple", + }, + "frIndexedString3": { + "ldapAttribute": "fr-attr-istr3", + "type": "simple", + }, + "frIndexedString4": { + "ldapAttribute": "fr-attr-istr4", + "type": "simple", + }, + "frIndexedString5": { + "ldapAttribute": "fr-attr-istr5", + "type": "simple", + }, + "frIndexedString6": { + "ldapAttribute": "fr-attr-istr6", + "type": "simple", + }, + "frIndexedString7": { + "ldapAttribute": "fr-attr-istr7", + "type": "simple", + }, + "frIndexedString8": { + "ldapAttribute": "fr-attr-istr8", + "type": "simple", + }, + "frIndexedString9": { + "ldapAttribute": "fr-attr-istr9", + "type": "simple", + }, + "frUnindexedDate1": { + "ldapAttribute": "fr-attr-date1", + "type": "simple", + }, + "frUnindexedDate2": { + "ldapAttribute": "fr-attr-date2", + "type": "simple", + }, + "frUnindexedDate3": { + "ldapAttribute": "fr-attr-date3", + "type": "simple", + }, + "frUnindexedDate4": { + "ldapAttribute": "fr-attr-date4", + "type": "simple", + }, + "frUnindexedDate5": { + "ldapAttribute": "fr-attr-date5", + "type": "simple", + }, + "frUnindexedInteger1": { + "ldapAttribute": "fr-attr-int1", + "type": "simple", + }, + "frUnindexedInteger2": { + "ldapAttribute": "fr-attr-int2", + "type": "simple", + }, + "frUnindexedInteger3": { + "ldapAttribute": "fr-attr-int3", + "type": "simple", + }, + "frUnindexedInteger4": { + "ldapAttribute": "fr-attr-int4", + "type": "simple", + }, + "frUnindexedInteger5": { + "ldapAttribute": "fr-attr-int5", + "type": "simple", + }, + "frUnindexedMultivalued1": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi1", + "type": "simple", + }, + "frUnindexedMultivalued2": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi2", + "type": "simple", + }, + "frUnindexedMultivalued3": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi3", + "type": "simple", + }, + "frUnindexedMultivalued4": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi4", + "type": "simple", + }, + "frUnindexedMultivalued5": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi5", + "type": "simple", + }, + "frUnindexedString1": { + "ldapAttribute": "fr-attr-str1", + "type": "simple", + }, + "frUnindexedString2": { + "ldapAttribute": "fr-attr-str2", + "type": "simple", + }, + "frUnindexedString3": { + "ldapAttribute": "fr-attr-str3", + "type": "simple", + }, + "frUnindexedString4": { + "ldapAttribute": "fr-attr-str4", + "type": "simple", + }, + "frUnindexedString5": { + "ldapAttribute": "fr-attr-str5", + "type": "simple", + }, + "givenName": { + "ldapAttribute": "givenName", + "type": "simple", + }, + "groups": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-groups", + "primaryKey": "cn", + "resourcePath": "managed/bravo_group", + "type": "reference", + }, + "kbaInfo": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-kbaInfo", + "type": "json", + }, + "lastSync": { + "ldapAttribute": "fr-idm-lastSync", + "type": "json", + }, + "mail": { + "ldapAttribute": "mail", + "type": "simple", + }, + "manager": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-manager", + "primaryKey": "uid", + "resourcePath": "managed/bravo_user", + "type": "reference", + }, + "memberOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-member", + "primaryKey": "uid", + "resourcePath": "managed/bravo_organization", + "type": "reference", + }, + "memberOfOrgIDs": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-memberoforgid", + "type": "simple", + }, + "oathDeviceProfiles": { + "isMultiValued": true, + "ldapAttribute": "oathDeviceProfiles", + "type": "simple", + }, + "ownerOfApp": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-application-owner", + "primaryKey": "uid", + "resourcePath": "managed/bravo_application", + "type": "reference", + }, + "ownerOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-owner", + "primaryKey": "uid", + "resourcePath": "managed/bravo_organization", + "type": "reference", + }, + "password": { + "ldapAttribute": "userPassword", + "type": "simple", + }, + "passwordExpirationTime": { + "ldapAttribute": "pwdExpirationTime", + "type": "simple", + "writability": "readOnlyDiscardWrites", + }, + "passwordLastChangedTime": { + "ldapAttribute": "pwdChangedTime", + "type": "simple", + "writability": "readOnlyDiscardWrites", + }, + "postalAddress": { + "ldapAttribute": "street", + "type": "simple", + }, + "postalCode": { + "ldapAttribute": "postalCode", + "type": "simple", + }, + "preferences": { + "ldapAttribute": "fr-idm-preferences", + "type": "json", + }, + "profileImage": { + "ldapAttribute": "labeledURI", + "type": "simple", + }, + "pushDeviceProfiles": { + "isMultiValued": true, + "ldapAttribute": "pushDeviceProfiles", + "type": "simple", + }, + "reports": { + "isMultiValued": true, + "propertyName": "manager", + "resourcePath": "managed/bravo_user", + "type": "reverseReference", + }, + "roles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-roles", + "primaryKey": "uid", + "resourcePath": "managed/bravo_role", + "type": "reference", + }, + "sn": { + "ldapAttribute": "sn", + "type": "simple", + }, + "stateProvince": { + "ldapAttribute": "st", + "type": "simple", + }, + "telephoneNumber": { + "ldapAttribute": "telephoneNumber", + "type": "simple", + }, + "userName": { + "ldapAttribute": "uid", + "type": "simple", + }, + "webauthnDeviceProfiles": { + "isMultiValued": true, + "ldapAttribute": "webauthnDeviceProfiles", + "type": "simple", + }, + }, + }, + "managed/bravo_usermeta": { + "dnTemplate": "ou=usermeta,o=bravo,o=root,ou=identities", + "jsonAttribute": "fr-idm-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-generic-obj", + ], + "properties": { + "target": { + "propertyName": "_meta", + "resourcePath": "managed/bravo_user", + "type": "reverseReference", + }, + }, + }, + "managed/teammembermeta": { + "dnTemplate": "ou=teammembermeta,o=root,ou=identities", + "jsonAttribute": "fr-idm-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-generic-obj", + ], + "properties": { + "target": { + "propertyName": "_meta", + "resourcePath": "managed/teammember", + "type": "reverseReference", + }, + }, + }, + }, + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/router.idm.json 1`] = ` +{ + "idm": { + "router": { + "_id": "router", + "filters": [], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/secrets.idm.json 1`] = ` +{ + "idm": { + "secrets": { + "_id": "secrets", + "stores": [ + { + "class": "org.forgerock.openidm.secrets.config.KeyStoreSecretStore", + "config": { + "file": "&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}", + "mappings": [ + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}", + "openidm-localhost", + ], + "secretId": "idm.default", + "types": [ + "ENCRYPT", + "DECRYPT", + ], + }, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}", + ], + "secretId": "idm.config.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], + }, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}", + ], + "secretId": "idm.password.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], + }, + { + "aliases": [ + "&{openidm.https.keystore.cert.alias|openidm-localhost}", + ], + "secretId": "idm.jwt.session.module.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], + }, + { + "aliases": [ + "&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}", + ], + "secretId": "idm.jwt.session.module.signing", + "types": [ + "SIGN", + "VERIFY", + ], + }, + { + "aliases": [ + "selfservice", + ], + "secretId": "idm.selfservice.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], + }, + { + "aliases": [ + "&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}", + ], + "secretId": "idm.selfservice.signing", + "types": [ + "SIGN", + "VERIFY", + ], + }, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}", + ], + "secretId": "idm.assignment.attribute.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], + }, + ], + "providerName": "&{openidm.keystore.provider|SunJCE}", + "storePassword": "&{openidm.keystore.password|changeit}", + "storetype": "&{openidm.keystore.type|JCEKS}", + }, + "name": "mainKeyStore", + }, + { + "class": "org.forgerock.openidm.secrets.config.KeyStoreSecretStore", + "config": { + "file": "&{openidm.truststore.location|&{idm.install.dir}/security/truststore}", + "mappings": [], + "providerName": "&{openidm.truststore.provider|SUN}", + "storePassword": "&{openidm.truststore.password|changeit}", + "storetype": "&{openidm.truststore.type|JKS}", + }, + "name": "mainTrustStore", + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/selfservice.kba.idm.json 1`] = ` +{ + "idm": { + "selfservice.kba": { + "_id": "selfservice.kba", + "kbaPropertyName": "kbaInfo", + "minimumAnswersToDefine": 1, + "minimumAnswersToVerify": 1, + "questions": { + "1": { + "en": "What's your favorite color?", + }, + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/selfservice.terms.idm.json 1`] = ` +{ + "idm": { + "selfservice.terms": { + "_id": "selfservice.terms", + "active": "0.0", + "uiConfig": { + "buttonText": "Accept", + "displayName": "We've updated our terms", + "purpose": "You must accept the updated terms in order to proceed.", + }, + "versions": [ + { + "createDate": "2019-10-28T04:20:11.320Z", + "termsTranslations": { + "en": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.", + }, + "version": "0.0", + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/servletfilter/cors.idm.json 1`] = ` +{ + "idm": { + "servletfilter/cors": { + "_id": "servletfilter/cors", + "initParams": { + "allowCredentials": false, + "allowedHeaders": "authorization,accept,content-type,origin,x-requested-with,cache-control,accept-api-version,if-match,if-none-match", + "allowedMethods": "GET,POST,PUT,DELETE,PATCH", + "allowedOrigins": "*", + "chainPreflight": false, + "exposedHeaders": "WWW-Authenticate", + }, + "urlPatterns": [ + "/*", + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/servletfilter/payload.idm.json 1`] = ` +{ + "idm": { + "servletfilter/payload": { + "_id": "servletfilter/payload", + "initParams": { + "maxRequestSizeInMegabytes": 5, + }, + "urlPatterns": [ + "&{openidm.servlet.alias}/*", + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/servletfilter/upload.idm.json 1`] = ` +{ + "idm": { + "servletfilter/upload": { + "_id": "servletfilter/upload", + "initParams": { + "maxRequestSizeInMegabytes": 50, + }, + "urlPatterns": [ + "&{openidm.servlet.upload.alias}/*", + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/sync/extract_script_test.sync.json 1`] = ` +{ + "_id": "sync/extract_script_test", + "consentRequired": false, + "correlationScript": { + "globals": {}, + "source": "file://extract_script_test.sync.scripts/correlationScript.script.js", + "type": "text/javascript", + }, + "displayName": "extract_script_test", + "icon": null, + "name": "extract_script_test", + "onCreate": { + "globals": {}, + "source": "file://extract_script_test.sync.scripts/onCreate.script.js", + "type": "text/javascript", + }, + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [ + { + "source": "", + "target": "name", + "transform": { + "globals": {}, + "source": "file://extract_script_test.sync.scripts/properties.SOURCE.name.transform.script.groovy", + "type": "groovy", + }, + }, + ], + "result": { + "globals": {}, + "source": "file://extract_script_test.sync.scripts/result.script.js", + "type": "text/javascript", + }, + "source": "managed/alpha_user", + "syncAfter": [], + "target": "managed/alpha_group", + "validSource": { + "globals": {}, + "source": "file://extract_script_test.sync.scripts/validSource.script.js", + "type": "text/javascript", + }, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/sync/extract_script_test.sync.scripts/correlationScript.script.js 1`] = ` +"//extract script test UPDATED CORRELATION QUERY +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/sync/extract_script_test.sync.scripts/onCreate.script.js 1`] = ` +"//test UPDATED ONCREATED +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/sync/extract_script_test.sync.scripts/properties.SOURCE.name.transform.script.groovy 1`] = ` +"//groovy EXTRACT SCRIPT test UPDATED +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/sync/extract_script_test.sync.scripts/result.script.js 1`] = ` +"//tests UPDATED RESULT SCRIPT +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/sync/extract_script_test.sync.scripts/validSource.script.js 1`] = ` +"//extract script test UPDATED VALIDSOURCE +" +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/sync/sync.idm.json 1`] = ` +{ + "idm": { + "sync": { + "_id": "sync", + "mappings": [ + "file://extract_script_test.sync.json", + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/ui.context/admin.idm.json 1`] = ` +{ + "idm": { + "ui.context/admin": { + "_id": "ui.context/admin", + "defaultDir": "&{idm.install.dir}/ui/admin/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/admin/extension", + "responseHeaders": { + "X-Frame-Options": "SAMEORIGIN", + }, + "urlContextRoot": "/admin", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/ui.context/api.idm.json 1`] = ` +{ + "idm": { + "ui.context/api": { + "_id": "ui.context/api", + "authEnabled": true, + "cacheEnabled": false, + "defaultDir": "&{idm.install.dir}/ui/api/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/api/extension", + "urlContextRoot": "/api", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/ui.context/enduser.idm.json 1`] = ` +{ + "idm": { + "ui.context/enduser": { + "_id": "ui.context/enduser", + "defaultDir": "&{idm.install.dir}/ui/enduser", + "enabled": true, + "responseHeaders": { + "X-Frame-Options": "DENY", + }, + "urlContextRoot": "/", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/ui.context/oauth.idm.json 1`] = ` +{ + "idm": { + "ui.context/oauth": { + "_id": "ui.context/oauth", + "cacheEnabled": true, + "defaultDir": "&{idm.install.dir}/ui/oauth/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/oauth/extension", + "urlContextRoot": "/oauthReturn", + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/ui/configuration.idm.json 1`] = ` +{ + "idm": { + "ui/configuration": { + "_id": "ui/configuration", + "configuration": { + "defaultNotificationType": "info", + "forgotUsername": false, + "lang": "en", + "notificationTypes": { + "error": { + "iconPath": "images/notifications/error.png", + "name": "common.notification.types.error", + }, + "info": { + "iconPath": "images/notifications/info.png", + "name": "common.notification.types.info", + }, + "warning": { + "iconPath": "images/notifications/warning.png", + "name": "common.notification.types.warning", + }, + }, + "passwordReset": true, + "passwordResetLink": "", + "platformSettings": { + "adminOauthClient": "idmAdminClient", + "adminOauthClientScopes": "fr:idm:*", + "amUrl": "/am", + "loginUrl": "", + }, + "roles": { + "internal/role/openidm-admin": "ui-admin", + "internal/role/openidm-authorized": "ui-user", + "super-admins": "ui-admin", + "tenant-admins": "ui-admin", + }, + "selfRegistration": true, + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/ui/dashboard.idm.json 1`] = ` +{ + "idm": { + "ui/dashboard": { + "_id": "ui/dashboard", + "adminDashboards": [ + { + "isDefault": true, + "name": "Quick Start", + "widgets": [ + { + "cards": [ + { + "href": "#resource/managed/alpha_user/list/", + "icon": "fa-user", + "name": "Manage Users", + }, + { + "href": "#resource/managed/alpha_role/list/", + "icon": "fa-check-square-o", + "name": "Manage Roles", + }, + { + "href": "#connectors/add/", + "icon": "fa-database", + "name": "Add Connector", + }, + { + "href": "#mapping/add/", + "icon": "fa-map-marker", + "name": "Create Mapping", + }, + { + "href": "#managed/add/", + "icon": "fa-tablet", + "name": "Add Device", + }, + { + "href": "#settings/", + "icon": "fa-user", + "name": "Configure System Preferences", + }, + ], + "size": "large", + "type": "quickStart", + }, + ], + }, + { + "isDefault": false, + "name": "System Monitoring", + "widgets": [ + { + "legendRange": { + "month": [ + 500, + 2500, + 5000, + ], + "week": [ + 10, + 30, + 90, + 270, + 810, + ], + "year": [ + 10000, + 40000, + 100000, + 250000, + ], + }, + "maxRange": "#24423c", + "minRange": "#b0d4cd", + "size": "large", + "type": "audit", + }, + { + "size": "large", + "type": "clusterStatus", + }, + { + "size": "large", + "type": "systemHealthFull", + }, + { + "barchart": "false", + "size": "large", + "type": "lastRecon", + }, + ], + }, + { + "isDefault": false, + "name": "Resource Report", + "widgets": [ + { + "selected": "activeUsers", + "size": "x-small", + "type": "counter", + }, + { + "selected": "rolesEnabled", + "size": "x-small", + "type": "counter", + }, + { + "selected": "activeConnectors", + "size": "x-small", + "type": "counter", + }, + { + "size": "large", + "type": "resourceList", + }, + ], + }, + { + "isDefault": false, + "name": "Business Report", + "widgets": [ + { + "graphType": "fa-pie-chart", + "providers": [ + "Username/Password", + ], + "size": "x-small", + "type": "signIns", + "widgetTitle": "Sign-Ins", + }, + { + "graphType": "fa-bar-chart", + "size": "x-small", + "type": "passwordResets", + "widgetTitle": "Password Resets", + }, + { + "graphType": "fa-line-chart", + "providers": [ + "Username/Password", + ], + "size": "x-small", + "type": "newRegistrations", + "widgetTitle": "New Registrations", + }, + { + "size": "x-small", + "timezone": { + "hours": "07", + "minutes": "00", + "negative": true, + }, + "type": "socialLogin", + }, + { + "selected": "socialEnabled", + "size": "x-small", + "type": "counter", + }, + { + "selected": "manualRegistrations", + "size": "x-small", + "type": "counter", + }, + ], + }, + ], + "dashboard": { + "widgets": [ + { + "size": "large", + "type": "Welcome", + }, + ], + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/ui/profile.idm.json 1`] = ` +{ + "idm": { + "ui/profile": { + "_id": "ui/profile", + "tabs": [ + { + "name": "personalInfoTab", + "view": "org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab", + }, + { + "name": "signInAndSecurity", + "view": "org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab", + }, + { + "name": "preference", + "view": "org/forgerock/openidm/ui/user/profile/PreferencesTab", + }, + { + "name": "trustedDevice", + "view": "org/forgerock/openidm/ui/user/profile/TrustedDevicesTab", + }, + { + "name": "oauthApplication", + "view": "org/forgerock/openidm/ui/user/profile/OauthApplicationsTab", + }, + { + "name": "privacyAndConsent", + "view": "org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab", + }, + { + "name": "sharing", + "view": "org/forgerock/openidm/ui/user/profile/uma/SharingTab", + }, + { + "name": "auditHistory", + "view": "org/forgerock/openidm/ui/user/profile/uma/ActivityTab", + }, + { + "name": "accountControls", + "view": "org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab", + }, + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/ui/themeconfig.idm.json 1`] = ` +{ + "idm": { + "ui/themeconfig": { + "_id": "ui/themeconfig", + "icon": "favicon.ico", + "path": "", + "settings": { + "footer": { + "mailto": "info@pingidentity.com", + }, + "loginLogo": { + "alt": "Ping Identity", + "height": "120px", + "src": "images/login-logo-dark.png", + "title": "Ping Identity", + "width": "120px", + }, + "logo": { + "alt": "Ping Identity", + "src": "images/logo-horizontal-white.png", + "title": "Ping Identity", + }, + }, + "stylesheets": [ + "css/bootstrap-3.4.1-custom.css", + "css/structure.css", + "css/theme.css", + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -AxD idmTestDir9": should export and extract the scripts in idm: idmTestDir9/ui/themerealm.idm.json 1`] = ` +{ + "idm": { + "ui/themerealm": { + "_id": "ui/themerealm", + "realm": { + "alpha": [ + { + "_id": "abb4efed-ae70-4064-91a7-936be552d6fc", + "accountFooter": "", + "accountFooterEnabled": false, + "accountPageSections": { + "accountControls": { + "enabled": false, + }, + "accountSecurity": { + "enabled": true, + "subsections": { + "password": { + "enabled": true, + }, + "securityQuestions": { + "enabled": false, + }, + "twoStepVerification": { + "enabled": true, + }, + "username": { + "enabled": true, + }, + }, + }, + "consent": { + "enabled": false, + }, + "oauthApplications": { + "enabled": false, + }, + "personalInformation": { + "enabled": true, + }, + "preferences": { + "enabled": false, + }, + "social": { + "enabled": false, + }, + "trustedDevices": { + "enabled": true, + }, + }, + "backgroundColor": "#FFFFFF", + "backgroundImage": "", + "bodyText": "#000000", + "buttonRounded": "0", + "dangerColor": "#f7685b", + "favicon": "", + "isDefault": false, + "journeyFooter": "", + "journeyFooterEnabled": false, + "journeyHeader": "
Header Content
", + "journeyHeaderEnabled": false, + "journeyJustifiedContent": "", + "journeyJustifiedContentEnabled": false, + "journeyLayout": "card", + "journeyTheaterMode": false, + "linkActiveColor": "#000000", + "linkColor": "#000000", + "linkedTrees": [], + "logo": "https://cdn.forgerock.com/platform/themes/contrast/logo-contrast.svg", + "logoAltText": "Contrast", + "logoEnabled": true, + "logoHeight": "72", + "logoProfile": "data:image/svg+xml,%0A%3Csvg width='46' height='46' viewBox='0 0 46 46' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24.3477 13.5664H43.9438C43.5192 12.6317 43.0319 11.734 42.4905 10.8711H24.3477V13.5664Z' fill='black'/%3E%3Cpath d='M24.3477 8.17578H40.5261C39.6996 7.2052 38.7974 6.30182 37.8224 5.48047H24.3477V8.17578Z' fill='black'/%3E%3Cpath d='M24.3477 40.5195H37.8224C38.7975 39.6982 39.6996 38.7948 40.5261 37.8242H24.3477V40.5195Z' fill='black'/%3E%3Cpath d='M24.3477 2.78516H33.8482C31.0136 1.27039 27.7313 0.198195 24.3477 0V2.78516Z' fill='black'/%3E%3Cpath d='M24.3477 18.957H45.6208C45.4566 18.0405 45.2557 17.1372 44.9856 16.2617H24.3477V18.957Z' fill='black'/%3E%3Cpath d='M24.3477 21.6523V24.3477H45.9317C45.958 23.8992 46 23.4549 46 23C46 22.5451 45.958 22.1008 45.9317 21.6523H24.3477Z' fill='black'/%3E%3Cpath d='M0 23C0 35.1781 9.64778 45.2964 21.6523 46V0C9.64778 0.703566 0 10.8219 0 23Z' fill='black'/%3E%3Cpath d='M24.3477 46C27.7313 45.8018 31.0136 44.7296 33.8482 43.2148H24.3477V46Z' fill='black'/%3E%3Cpath d='M45.6208 27.043H24.3477V29.7383H44.9857C45.2557 28.8628 45.4566 27.9595 45.6208 27.043V27.043Z' fill='black'/%3E%3Cpath d='M24.3477 35.1289H42.4905C43.0319 34.266 43.5192 33.3683 43.9438 32.4336H24.3477V35.1289Z' fill='black'/%3E%3C/svg%3E%0A", + "logoProfileAltText": "Contrast", + "logoProfileCollapsed": "data:image/svg+xml,%0A%3Csvg width='46' height='46' viewBox='0 0 46 46' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24.3477 13.5664H43.9438C43.5192 12.6317 43.0319 11.734 42.4905 10.8711H24.3477V13.5664Z' fill='black'/%3E%3Cpath d='M24.3477 8.17578H40.5261C39.6996 7.2052 38.7974 6.30182 37.8224 5.48047H24.3477V8.17578Z' fill='black'/%3E%3Cpath d='M24.3477 40.5195H37.8224C38.7975 39.6982 39.6996 38.7948 40.5261 37.8242H24.3477V40.5195Z' fill='black'/%3E%3Cpath d='M24.3477 2.78516H33.8482C31.0136 1.27039 27.7313 0.198195 24.3477 0V2.78516Z' fill='black'/%3E%3Cpath d='M24.3477 18.957H45.6208C45.4566 18.0405 45.2557 17.1372 44.9856 16.2617H24.3477V18.957Z' fill='black'/%3E%3Cpath d='M24.3477 21.6523V24.3477H45.9317C45.958 23.8992 46 23.4549 46 23C46 22.5451 45.958 22.1008 45.9317 21.6523H24.3477Z' fill='black'/%3E%3Cpath d='M0 23C0 35.1781 9.64778 45.2964 21.6523 46V0C9.64778 0.703566 0 10.8219 0 23Z' fill='black'/%3E%3Cpath d='M24.3477 46C27.7313 45.8018 31.0136 44.7296 33.8482 43.2148H24.3477V46Z' fill='black'/%3E%3Cpath d='M45.6208 27.043H24.3477V29.7383H44.9857C45.2557 28.8628 45.4566 27.9595 45.6208 27.043V27.043Z' fill='black'/%3E%3Cpath d='M24.3477 35.1289H42.4905C43.0319 34.266 43.5192 33.3683 43.9438 32.4336H24.3477V35.1289Z' fill='black'/%3E%3C/svg%3E%0A", + "logoProfileCollapsedAltText": "", + "logoProfileCollapsedHeight": "22", + "logoProfileHeight": "22", + "name": "Contrast", + "pageTitle": "#23282e", + "primaryColor": "#000000", + "primaryOffColor": "#000000", + "profileBackgroundColor": "#FFFFFF", + "profileMenuHighlightColor": "#FFFFFF", + "profileMenuHoverColor": "#FFFFFF", + "profileMenuHoverTextColor": "#000000", + "profileMenuTextHighlightColor": "#455469", + "secondaryColor": "#69788b", + "textColor": "#ffffff", + }, + { + "_id": "72ef4fcb-aae2-4c78-a050-d0e373c6a175", + "accountFooter": " +", + "accountFooterEnabled": true, + "accountPageSections": { + "accountControls": { + "enabled": false, + }, + "accountSecurity": { + "enabled": true, + "subsections": { + "password": { + "enabled": true, + }, + "securityQuestions": { + "enabled": false, + }, + "twoStepVerification": { + "enabled": true, + }, + "username": { + "enabled": true, + }, + }, + }, + "consent": { + "enabled": false, + }, + "oauthApplications": { + "enabled": false, + }, + "personalInformation": { + "enabled": true, + }, + "preferences": { + "enabled": false, + }, + "social": { + "enabled": false, + }, + "trustedDevices": { + "enabled": true, + }, + }, + "backgroundColor": "#FFFFFF", + "backgroundImage": "", + "bodyText": "#5E6D82", + "buttonRounded": "50", + "dangerColor": "#f7685b", + "favicon": "", + "isDefault": false, + "journeyFooter": " + +", + "journeyFooterEnabled": true, + "journeyHeader": "
+ +
+", + "journeyHeaderEnabled": true, + "journeyJustifiedContent": "", + "journeyJustifiedContentEnabled": false, + "journeyLayout": "card", + "journeyTheaterMode": false, + "linkActiveColor": "#C60819", + "linkColor": "#EB0A1E", + "linkedTrees": [], + "logo": "https://cdn.forgerock.com/platform/themes/highlander/logo-highlander-icon.svg", + "logoAltText": "", + "logoEnabled": true, + "logoHeight": "40", + "logoProfile": "https://cdn.forgerock.com/platform/themes/highlander/logo-highlander-full.svg", + "logoProfileAltText": "Highlander", + "logoProfileCollapsed": "https://cdn.forgerock.com/platform/themes/highlander/logo-highlander-icon.svg", + "logoProfileCollapsedAltText": "Highlander", + "logoProfileCollapsedHeight": "28", + "logoProfileHeight": "28", + "name": "Highlander", + "pageTitle": "#23282e", + "primaryColor": "#EB0A1E", + "primaryOffColor": "#C60819", + "profileBackgroundColor": "#FFFFFF", + "profileMenuHighlightColor": "#FFFFFF", + "profileMenuHoverColor": "#FFFFFF", + "profileMenuHoverTextColor": "#455469", + "profileMenuTextHighlightColor": "#EB0A1E", + "secondaryColor": "#69788b", + "textColor": "#ffffff", + }, + { + "_id": "8e756273-9dbb-42dd-babe-52912336ea3d", + "accountFooter": " +", + "accountFooterEnabled": true, + "accountPageSections": { + "accountControls": { + "enabled": false, + }, + "accountSecurity": { + "enabled": true, + "subsections": { + "password": { + "enabled": true, + }, + "securityQuestions": { + "enabled": false, + }, + "twoStepVerification": { + "enabled": true, + }, + "username": { + "enabled": true, + }, + }, + }, + "consent": { + "enabled": false, + }, + "oauthApplications": { + "enabled": false, + }, + "personalInformation": { + "enabled": true, + }, + "preferences": { + "enabled": false, + }, + "social": { + "enabled": false, + }, + "trustedDevices": { + "enabled": true, + }, + }, + "backgroundColor": "#FFFFFF", + "backgroundImage": "", + "bodyText": "#5E6D82", + "buttonRounded": "50", + "dangerColor": "#f7685b", + "favicon": "", + "isDefault": false, + "journeyFooter": " +", + "journeyFooterEnabled": true, + "journeyHeader": "
+ +
+", + "journeyHeaderEnabled": true, + "journeyJustifiedContent": "", + "journeyJustifiedContentEnabled": true, + "journeyLayout": "justified-right", + "journeyTheaterMode": false, + "linkActiveColor": "#49871E", + "linkColor": "#5AA625", + "linkedTrees": [], + "logo": "https://cdn.forgerock.com/platform/themes/robroy/logo-robroy-icon.svg", + "logoAltText": "", + "logoEnabled": true, + "logoHeight": "40", + "logoProfile": "data:image/svg+xml,%0A%3Csvg width='156' height='34' viewBox='0 0 156 34' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0)'%3E%3Cpath d='M32.5539 32.5538C32.5539 32.5538 17.0796 35.6024 7.23861 25.7614C-2.60242 15.9204 0.446148 0.446137 0.446148 0.446137C0.446148 0.446137 15.9204 -2.60243 25.7614 7.23866C35.6024 17.0797 32.5539 32.5538 32.5539 32.5538Z' fill='%23C3EA21'/%3E%3Cpath d='M32.5537 32.554C32.5537 32.554 17.0795 35.6026 7.23845 25.7615C-2.60257 15.9205 0.445995 0.446289 0.445995 0.446289L32.5537 32.554Z' fill='%238ADB53'/%3E%3C/g%3E%3Cpath d='M51.053 25.38L53.186 25.11V8.964L51.161 8.586V6.939H55.076C55.418 6.939 55.796 6.93 56.21 6.912C56.624 6.894 56.939 6.876 57.155 6.858C58.091 6.786 58.865 6.75 59.477 6.75C61.331 6.75 62.816 6.939 63.932 7.317C65.048 7.695 65.858 8.271 66.362 9.045C66.866 9.819 67.118 10.836 67.118 12.096C67.118 13.338 66.785 14.49 66.119 15.552C65.453 16.614 64.49 17.343 63.23 17.739C63.95 18.045 64.589 18.603 65.147 19.413C65.705 20.223 66.299 21.276 66.929 22.572C67.379 23.454 67.721 24.093 67.955 24.489C68.207 24.867 68.45 25.083 68.684 25.137L69.575 25.407V27H64.985C64.697 27 64.391 26.712 64.067 26.136C63.761 25.542 63.356 24.615 62.852 23.355C62.258 21.879 61.745 20.727 61.313 19.899C60.881 19.071 60.422 18.558 59.936 18.36H57.155V25.11L59.639 25.38V27H51.053V25.38ZM59.639 16.713C60.665 16.713 61.466 16.344 62.042 15.606C62.618 14.868 62.906 13.761 62.906 12.285C62.906 10.971 62.618 9.999 62.042 9.369C61.484 8.739 60.512 8.424 59.126 8.424C58.622 8.424 58.19 8.451 57.83 8.505C57.488 8.541 57.263 8.559 57.155 8.559V16.659C57.371 16.695 57.893 16.713 58.721 16.713H59.639ZM70.674 19.521C70.674 17.829 71.007 16.389 71.673 15.201C72.357 14.013 73.266 13.122 74.4 12.528C75.534 11.916 76.767 11.61 78.099 11.61C80.367 11.61 82.113 12.312 83.337 13.716C84.579 15.102 85.2 16.992 85.2 19.386C85.2 21.096 84.858 22.554 84.174 23.76C83.508 24.948 82.608 25.839 81.474 26.433C80.358 27.009 79.125 27.297 77.775 27.297C75.525 27.297 73.779 26.604 72.537 25.218C71.295 23.814 70.674 21.915 70.674 19.521ZM77.991 25.542C80.025 25.542 81.042 23.58 81.042 19.656C81.042 17.604 80.799 16.047 80.313 14.985C79.827 13.905 79.035 13.365 77.937 13.365C75.849 13.365 74.805 15.327 74.805 19.251C74.805 21.303 75.057 22.869 75.561 23.949C76.083 25.011 76.893 25.542 77.991 25.542ZM86.4395 5.454L91.3805 4.86H91.4345L92.1905 5.373V13.338C92.6765 12.852 93.2705 12.447 93.9725 12.123C94.6925 11.781 95.4665 11.61 96.2945 11.61C98.0225 11.61 99.4265 12.222 100.506 13.446C101.604 14.652 102.153 16.506 102.153 19.008C102.153 20.556 101.829 21.96 101.181 23.22C100.533 24.48 99.5975 25.479 98.3735 26.217C97.1675 26.937 95.7635 27.297 94.1615 27.297C92.7395 27.297 91.5065 27.18 90.4625 26.946C89.4185 26.694 88.7525 26.469 88.4645 26.271V7.182L86.4395 6.858V5.454ZM94.8635 13.986C94.3235 13.986 93.8105 14.112 93.3245 14.364C92.8565 14.598 92.4785 14.868 92.1905 15.174V25.029C92.2985 25.227 92.5505 25.389 92.9465 25.515C93.3425 25.641 93.7925 25.704 94.2965 25.704C95.4485 25.704 96.3665 25.173 97.0505 24.111C97.7525 23.031 98.1035 21.438 98.1035 19.332C98.1035 17.514 97.8065 16.173 97.2125 15.309C96.6185 14.427 95.8355 13.986 94.8635 13.986Z' fill='black'/%3E%3Cpath d='M104.183 25.38L106.316 25.11V8.964L104.291 8.586V6.939H108.206C108.548 6.939 108.926 6.93 109.34 6.912C109.754 6.894 110.069 6.876 110.285 6.858C111.221 6.786 111.995 6.75 112.607 6.75C114.461 6.75 115.946 6.939 117.062 7.317C118.178 7.695 118.988 8.271 119.492 9.045C119.996 9.819 120.248 10.836 120.248 12.096C120.248 13.338 119.915 14.49 119.249 15.552C118.583 16.614 117.62 17.343 116.36 17.739C117.08 18.045 117.719 18.603 118.277 19.413C118.835 20.223 119.429 21.276 120.059 22.572C120.509 23.454 120.851 24.093 121.085 24.489C121.337 24.867 121.58 25.083 121.814 25.137L122.705 25.407V27H118.115C117.827 27 117.521 26.712 117.197 26.136C116.891 25.542 116.486 24.615 115.982 23.355C115.388 21.879 114.875 20.727 114.443 19.899C114.011 19.071 113.552 18.558 113.066 18.36H110.285V25.11L112.769 25.38V27H104.183V25.38ZM112.769 16.713C113.795 16.713 114.596 16.344 115.172 15.606C115.748 14.868 116.036 13.761 116.036 12.285C116.036 10.971 115.748 9.999 115.172 9.369C114.614 8.739 113.642 8.424 112.256 8.424C111.752 8.424 111.32 8.451 110.96 8.505C110.618 8.541 110.393 8.559 110.285 8.559V16.659C110.501 16.695 111.023 16.713 111.851 16.713H112.769ZM123.804 19.521C123.804 17.829 124.137 16.389 124.803 15.201C125.487 14.013 126.396 13.122 127.53 12.528C128.664 11.916 129.897 11.61 131.229 11.61C133.497 11.61 135.243 12.312 136.467 13.716C137.709 15.102 138.33 16.992 138.33 19.386C138.33 21.096 137.988 22.554 137.304 23.76C136.638 24.948 135.738 25.839 134.604 26.433C133.488 27.009 132.255 27.297 130.905 27.297C128.655 27.297 126.909 26.604 125.667 25.218C124.425 23.814 123.804 21.915 123.804 19.521ZM131.121 25.542C133.155 25.542 134.172 23.58 134.172 19.656C134.172 17.604 133.929 16.047 133.443 14.985C132.957 13.905 132.165 13.365 131.067 13.365C128.979 13.365 127.935 15.327 127.935 19.251C127.935 21.303 128.187 22.869 128.691 23.949C129.213 25.011 130.023 25.542 131.121 25.542ZM143.187 33.723C142.863 33.723 142.512 33.696 142.134 33.642C141.774 33.588 141.513 33.525 141.351 33.453V30.564C141.477 30.636 141.729 30.708 142.107 30.78C142.485 30.852 142.827 30.888 143.133 30.888C144.033 30.888 144.771 30.591 145.347 29.997C145.941 29.403 146.49 28.404 146.994 27H145.536L140.46 13.905L139.245 13.554V11.988H146.67V13.554L144.699 13.878L147.102 21.357L148.074 24.543L148.911 21.357L151.125 13.878L149.424 13.554V11.988H155.283V13.554L153.96 13.878C152.97 16.902 151.989 19.818 151.017 22.626C150.045 25.434 149.478 27.009 149.316 27.351C148.74 28.863 148.191 30.069 147.669 30.969C147.147 31.869 146.526 32.553 145.806 33.021C145.086 33.489 144.213 33.723 143.187 33.723Z' fill='%236CBE34'/%3E%3Cdefs%3E%3CclipPath id='clip0'%3E%3Crect width='33' height='33' fill='white' transform='matrix(-1 0 0 1 33 0)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A", + "logoProfileAltText": "RobRoy", + "logoProfileCollapsed": "data:image/svg+xml,%0A%3Csvg width='33' height='33' viewBox='0 0 33 33' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0)'%3E%3Cpath d='M32.5539 32.5538C32.5539 32.5538 17.0796 35.6024 7.23861 25.7614C-2.60242 15.9204 0.446148 0.446137 0.446148 0.446137C0.446148 0.446137 15.9204 -2.60243 25.7614 7.23866C35.6024 17.0797 32.5539 32.5538 32.5539 32.5538Z' fill='%23C3EA21'/%3E%3Cpath d='M32.5537 32.554C32.5537 32.554 17.0795 35.6026 7.23845 25.7615C-2.60257 15.9205 0.445996 0.446289 0.445996 0.446289L32.5537 32.554Z' fill='%238ADB53'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0'%3E%3Crect width='33' height='33' fill='white' transform='matrix(-1 0 0 1 33 0)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A", + "logoProfileCollapsedAltText": "RobRoy", + "logoProfileCollapsedHeight": "28", + "logoProfileHeight": "28", + "name": "Robroy", + "pageTitle": "#23282e", + "primaryColor": "#5AA625", + "primaryOffColor": "#49871E", + "profileBackgroundColor": "#FFFFFF", + "profileMenuHighlightColor": "#FFFFFF", + "profileMenuHoverColor": "#FFFFFF", + "profileMenuHoverTextColor": "#455469", + "profileMenuTextHighlightColor": "#5AA625", + "secondaryColor": "#69788b", + "textColor": "#ffffff", + }, + { + "_id": "33b89c09-2a29-4e9b-9e2b-12fd7e1c7466", + "accountFooter": "", + "accountFooterEnabled": false, + "accountPageSections": { + "accountControls": { + "enabled": false, + }, + "accountSecurity": { + "enabled": true, + "subsections": { + "password": { + "enabled": true, + }, + "securityQuestions": { + "enabled": false, + }, + "twoStepVerification": { + "enabled": true, + }, + "username": { + "enabled": true, + }, + }, + }, + "consent": { + "enabled": false, + }, + "oauthApplications": { + "enabled": false, + }, + "personalInformation": { + "enabled": true, + }, + "preferences": { + "enabled": false, + }, + "social": { + "enabled": false, + }, + "trustedDevices": { + "enabled": true, + }, + }, + "backgroundColor": "#324054", + "backgroundImage": "", + "bodyText": "#23282e", + "buttonRounded": 5, + "dangerColor": "#f7685b", + "favicon": "", + "isDefault": true, + "journeyFooter": "", + "journeyFooterEnabled": false, + "journeyHeader": "
Header Content
", + "journeyHeaderEnabled": false, + "journeyJustifiedContent": "", + "journeyJustifiedContentEnabled": false, + "journeyLayout": "card", + "journeyTheaterMode": false, + "linkActiveColor": "#0c85cf", + "linkColor": "#109cf1", + "linkedTrees": [], + "logo": "", + "logoAltText": "", + "logoHeight": "40", + "logoProfile": "", + "logoProfileAltText": "", + "logoProfileCollapsed": "", + "logoProfileCollapsedAltText": "", + "logoProfileCollapsedHeight": "40", + "logoProfileHeight": "40", + "name": "Starter Theme", + "pageTitle": "#23282e", + "primaryColor": "#324054", + "primaryOffColor": "#242E3C", + "profileBackgroundColor": "#f6f8fa", + "profileMenuHighlightColor": "#f3f5f8", + "profileMenuHoverColor": "#324054", + "profileMenuHoverTextColor": "#ffffff", + "profileMenuTextHighlightColor": "#455469", + "secondaryColor": "#69788b", + "textColor": "#ffffff", + }, + { + "_id": "8ee2e08a-db04-4a16-b3d9-6f52c9aee5cb", + "accountFooter": " +", + "accountFooterEnabled": true, + "accountPageSections": { + "accountControls": { + "enabled": false, + }, + "accountSecurity": { + "enabled": true, + "subsections": { + "password": { + "enabled": true, + }, + "securityQuestions": { + "enabled": false, + }, + "twoStepVerification": { + "enabled": true, + }, + "username": { + "enabled": true, + }, + }, + }, + "consent": { + "enabled": false, + }, + "oauthApplications": { + "enabled": false, + }, + "personalInformation": { + "enabled": true, + }, + "preferences": { + "enabled": false, + }, + "social": { + "enabled": false, + }, + "trustedDevices": { + "enabled": true, + }, + }, + "backgroundColor": "#FFFFFF", + "backgroundImage": "", + "bodyText": "#5E6D82", + "buttonRounded": "50", + "dangerColor": "#f7685b", + "favicon": "", + "isDefault": false, + "journeyFooter": " +", + "journeyFooterEnabled": true, + "journeyHeader": "
Header Content
", + "journeyHeaderEnabled": false, + "journeyJustifiedContent": "
+

Uptime & Performance Benchmarking Made Easy

+
+ +", + "journeyJustifiedContentEnabled": true, + "journeyLayout": "justified-right", + "journeyTheaterMode": true, + "linkActiveColor": "#007661", + "linkColor": "#009C80", + "linkedTrees": [], + "logo": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", + "logoAltText": "Zardoz Logo", + "logoEnabled": true, + "logoHeight": "47", + "logoProfile": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", + "logoProfileAltText": "Zardaz Logo", + "logoProfileCollapsed": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", + "logoProfileCollapsedAltText": "Zardaz Logo", + "logoProfileCollapsedHeight": "28", + "logoProfileHeight": "40", + "name": "Zardoz", + "pageTitle": "#23282e", + "primaryColor": "#009C80", + "primaryOffColor": "#007661", + "profileBackgroundColor": "#FFFFFF", + "profileMenuHighlightColor": "#FFFFFF", + "profileMenuHoverColor": "#FFFFFF", + "profileMenuHoverTextColor": "#455469", + "profileMenuTextHighlightColor": "#009C80", + "secondaryColor": "#69788b", + "textColor": "#ffffff", + }, + ], + "bravo": [ + { + "_id": "bf4828bd-6e24-41ba-8773-0a4a349399d3", + "accountFooter": "", + "accountFooterEnabled": false, + "accountPageSections": { + "accountControls": { + "enabled": false, + }, + "accountSecurity": { + "enabled": true, + "subsections": { + "password": { + "enabled": true, + }, + "securityQuestions": { + "enabled": false, + }, + "twoStepVerification": { + "enabled": true, + }, + "username": { + "enabled": true, + }, + }, + }, + "consent": { + "enabled": false, + }, + "oauthApplications": { + "enabled": false, + }, + "personalInformation": { + "enabled": true, + }, + "preferences": { + "enabled": false, + }, + "social": { + "enabled": false, + }, + "trustedDevices": { + "enabled": true, + }, + }, + "backgroundColor": "#FFFFFF", + "backgroundImage": "", + "bodyText": "#000000", + "buttonRounded": "0", + "dangerColor": "#f7685b", + "favicon": "", + "isDefault": false, + "journeyFooter": "", + "journeyFooterEnabled": false, + "journeyHeader": "
Header Content
", + "journeyHeaderEnabled": false, + "journeyJustifiedContent": "", + "journeyJustifiedContentEnabled": false, + "journeyLayout": "card", + "journeyTheaterMode": false, + "linkActiveColor": "#000000", + "linkColor": "#000000", + "linkedTrees": [], + "logo": "https://cdn.forgerock.com/platform/themes/contrast/logo-contrast.svg", + "logoAltText": "Contrast", + "logoEnabled": true, + "logoHeight": "72", + "logoProfile": "data:image/svg+xml,%0A%3Csvg width='46' height='46' viewBox='0 0 46 46' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24.3477 13.5664H43.9438C43.5192 12.6317 43.0319 11.734 42.4905 10.8711H24.3477V13.5664Z' fill='black'/%3E%3Cpath d='M24.3477 8.17578H40.5261C39.6996 7.2052 38.7974 6.30182 37.8224 5.48047H24.3477V8.17578Z' fill='black'/%3E%3Cpath d='M24.3477 40.5195H37.8224C38.7975 39.6982 39.6996 38.7948 40.5261 37.8242H24.3477V40.5195Z' fill='black'/%3E%3Cpath d='M24.3477 2.78516H33.8482C31.0136 1.27039 27.7313 0.198195 24.3477 0V2.78516Z' fill='black'/%3E%3Cpath d='M24.3477 18.957H45.6208C45.4566 18.0405 45.2557 17.1372 44.9856 16.2617H24.3477V18.957Z' fill='black'/%3E%3Cpath d='M24.3477 21.6523V24.3477H45.9317C45.958 23.8992 46 23.4549 46 23C46 22.5451 45.958 22.1008 45.9317 21.6523H24.3477Z' fill='black'/%3E%3Cpath d='M0 23C0 35.1781 9.64778 45.2964 21.6523 46V0C9.64778 0.703566 0 10.8219 0 23Z' fill='black'/%3E%3Cpath d='M24.3477 46C27.7313 45.8018 31.0136 44.7296 33.8482 43.2148H24.3477V46Z' fill='black'/%3E%3Cpath d='M45.6208 27.043H24.3477V29.7383H44.9857C45.2557 28.8628 45.4566 27.9595 45.6208 27.043V27.043Z' fill='black'/%3E%3Cpath d='M24.3477 35.1289H42.4905C43.0319 34.266 43.5192 33.3683 43.9438 32.4336H24.3477V35.1289Z' fill='black'/%3E%3C/svg%3E%0A", + "logoProfileAltText": "Contrast", + "logoProfileCollapsed": "data:image/svg+xml,%0A%3Csvg width='46' height='46' viewBox='0 0 46 46' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24.3477 13.5664H43.9438C43.5192 12.6317 43.0319 11.734 42.4905 10.8711H24.3477V13.5664Z' fill='black'/%3E%3Cpath d='M24.3477 8.17578H40.5261C39.6996 7.2052 38.7974 6.30182 37.8224 5.48047H24.3477V8.17578Z' fill='black'/%3E%3Cpath d='M24.3477 40.5195H37.8224C38.7975 39.6982 39.6996 38.7948 40.5261 37.8242H24.3477V40.5195Z' fill='black'/%3E%3Cpath d='M24.3477 2.78516H33.8482C31.0136 1.27039 27.7313 0.198195 24.3477 0V2.78516Z' fill='black'/%3E%3Cpath d='M24.3477 18.957H45.6208C45.4566 18.0405 45.2557 17.1372 44.9856 16.2617H24.3477V18.957Z' fill='black'/%3E%3Cpath d='M24.3477 21.6523V24.3477H45.9317C45.958 23.8992 46 23.4549 46 23C46 22.5451 45.958 22.1008 45.9317 21.6523H24.3477Z' fill='black'/%3E%3Cpath d='M0 23C0 35.1781 9.64778 45.2964 21.6523 46V0C9.64778 0.703566 0 10.8219 0 23Z' fill='black'/%3E%3Cpath d='M24.3477 46C27.7313 45.8018 31.0136 44.7296 33.8482 43.2148H24.3477V46Z' fill='black'/%3E%3Cpath d='M45.6208 27.043H24.3477V29.7383H44.9857C45.2557 28.8628 45.4566 27.9595 45.6208 27.043V27.043Z' fill='black'/%3E%3Cpath d='M24.3477 35.1289H42.4905C43.0319 34.266 43.5192 33.3683 43.9438 32.4336H24.3477V35.1289Z' fill='black'/%3E%3C/svg%3E%0A", + "logoProfileCollapsedAltText": "", + "logoProfileCollapsedHeight": "22", + "logoProfileHeight": "22", + "name": "Contrast", + "pageTitle": "#23282e", + "primaryColor": "#000000", + "primaryOffColor": "#000000", + "profileBackgroundColor": "#FFFFFF", + "profileMenuHighlightColor": "#FFFFFF", + "profileMenuHoverColor": "#FFFFFF", + "profileMenuHoverTextColor": "#000000", + "profileMenuTextHighlightColor": "#455469", + "secondaryColor": "#69788b", + "textColor": "#ffffff", + }, + { + "_id": "f2bdd040-2e46-4602-a0ab-24ed52103cdc", + "accountFooter": " +", + "accountFooterEnabled": true, + "accountPageSections": { + "accountControls": { + "enabled": false, + }, + "accountSecurity": { + "enabled": true, + "subsections": { + "password": { + "enabled": true, + }, + "securityQuestions": { + "enabled": false, + }, + "twoStepVerification": { + "enabled": true, + }, + "username": { + "enabled": true, + }, + }, + }, + "consent": { + "enabled": false, + }, + "oauthApplications": { + "enabled": false, + }, + "personalInformation": { + "enabled": true, + }, + "preferences": { + "enabled": false, + }, + "social": { + "enabled": false, + }, + "trustedDevices": { + "enabled": true, + }, + }, + "backgroundColor": "#FFFFFF", + "backgroundImage": "", + "bodyText": "#5E6D82", + "buttonRounded": "50", + "dangerColor": "#f7685b", + "favicon": "", + "isDefault": false, + "journeyFooter": " + +", + "journeyFooterEnabled": true, + "journeyHeader": "
+ +
+", + "journeyHeaderEnabled": true, + "journeyJustifiedContent": "", + "journeyJustifiedContentEnabled": false, + "journeyLayout": "card", + "journeyTheaterMode": false, + "linkActiveColor": "#C60819", + "linkColor": "#EB0A1E", + "linkedTrees": [], + "logo": "https://cdn.forgerock.com/platform/themes/highlander/logo-highlander-icon.svg", + "logoAltText": "", + "logoEnabled": true, + "logoHeight": "40", + "logoProfile": "https://cdn.forgerock.com/platform/themes/highlander/logo-highlander-full.svg", + "logoProfileAltText": "Highlander", + "logoProfileCollapsed": "https://cdn.forgerock.com/platform/themes/highlander/logo-highlander-icon.svg", + "logoProfileCollapsedAltText": "Highlander", + "logoProfileCollapsedHeight": "28", + "logoProfileHeight": "28", + "name": "Highlander", + "pageTitle": "#23282e", + "primaryColor": "#EB0A1E", + "primaryOffColor": "#C60819", + "profileBackgroundColor": "#FFFFFF", + "profileMenuHighlightColor": "#FFFFFF", + "profileMenuHoverColor": "#FFFFFF", + "profileMenuHoverTextColor": "#455469", + "profileMenuTextHighlightColor": "#EB0A1E", + "secondaryColor": "#69788b", + "textColor": "#ffffff", + }, + { + "_id": "62ac2a64-9db9-4f0a-a7e4-74f3d662bc42", + "accountFooter": " +", + "accountFooterEnabled": true, + "accountPageSections": { + "accountControls": { + "enabled": false, + }, + "accountSecurity": { + "enabled": true, + "subsections": { + "password": { + "enabled": true, + }, + "securityQuestions": { + "enabled": false, + }, + "twoStepVerification": { + "enabled": true, + }, + "username": { + "enabled": true, + }, + }, + }, + "consent": { + "enabled": false, + }, + "oauthApplications": { + "enabled": false, + }, + "personalInformation": { + "enabled": true, + }, + "preferences": { + "enabled": false, + }, + "social": { + "enabled": false, + }, + "trustedDevices": { + "enabled": true, + }, + }, + "backgroundColor": "#FFFFFF", + "backgroundImage": "", + "bodyText": "#5E6D82", + "buttonRounded": "50", + "dangerColor": "#f7685b", + "favicon": "", + "isDefault": false, + "journeyFooter": " +", + "journeyFooterEnabled": true, + "journeyHeader": "
+ +
+", + "journeyHeaderEnabled": true, + "journeyJustifiedContent": "", + "journeyJustifiedContentEnabled": true, + "journeyLayout": "justified-right", + "journeyTheaterMode": false, + "linkActiveColor": "#49871E", + "linkColor": "#5AA625", + "linkedTrees": [], + "logo": "https://cdn.forgerock.com/platform/themes/robroy/logo-robroy-icon.svg", + "logoAltText": "", + "logoEnabled": true, + "logoHeight": "40", + "logoProfile": "data:image/svg+xml,%0A%3Csvg width='156' height='34' viewBox='0 0 156 34' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0)'%3E%3Cpath d='M32.5539 32.5538C32.5539 32.5538 17.0796 35.6024 7.23861 25.7614C-2.60242 15.9204 0.446148 0.446137 0.446148 0.446137C0.446148 0.446137 15.9204 -2.60243 25.7614 7.23866C35.6024 17.0797 32.5539 32.5538 32.5539 32.5538Z' fill='%23C3EA21'/%3E%3Cpath d='M32.5537 32.554C32.5537 32.554 17.0795 35.6026 7.23845 25.7615C-2.60257 15.9205 0.445995 0.446289 0.445995 0.446289L32.5537 32.554Z' fill='%238ADB53'/%3E%3C/g%3E%3Cpath d='M51.053 25.38L53.186 25.11V8.964L51.161 8.586V6.939H55.076C55.418 6.939 55.796 6.93 56.21 6.912C56.624 6.894 56.939 6.876 57.155 6.858C58.091 6.786 58.865 6.75 59.477 6.75C61.331 6.75 62.816 6.939 63.932 7.317C65.048 7.695 65.858 8.271 66.362 9.045C66.866 9.819 67.118 10.836 67.118 12.096C67.118 13.338 66.785 14.49 66.119 15.552C65.453 16.614 64.49 17.343 63.23 17.739C63.95 18.045 64.589 18.603 65.147 19.413C65.705 20.223 66.299 21.276 66.929 22.572C67.379 23.454 67.721 24.093 67.955 24.489C68.207 24.867 68.45 25.083 68.684 25.137L69.575 25.407V27H64.985C64.697 27 64.391 26.712 64.067 26.136C63.761 25.542 63.356 24.615 62.852 23.355C62.258 21.879 61.745 20.727 61.313 19.899C60.881 19.071 60.422 18.558 59.936 18.36H57.155V25.11L59.639 25.38V27H51.053V25.38ZM59.639 16.713C60.665 16.713 61.466 16.344 62.042 15.606C62.618 14.868 62.906 13.761 62.906 12.285C62.906 10.971 62.618 9.999 62.042 9.369C61.484 8.739 60.512 8.424 59.126 8.424C58.622 8.424 58.19 8.451 57.83 8.505C57.488 8.541 57.263 8.559 57.155 8.559V16.659C57.371 16.695 57.893 16.713 58.721 16.713H59.639ZM70.674 19.521C70.674 17.829 71.007 16.389 71.673 15.201C72.357 14.013 73.266 13.122 74.4 12.528C75.534 11.916 76.767 11.61 78.099 11.61C80.367 11.61 82.113 12.312 83.337 13.716C84.579 15.102 85.2 16.992 85.2 19.386C85.2 21.096 84.858 22.554 84.174 23.76C83.508 24.948 82.608 25.839 81.474 26.433C80.358 27.009 79.125 27.297 77.775 27.297C75.525 27.297 73.779 26.604 72.537 25.218C71.295 23.814 70.674 21.915 70.674 19.521ZM77.991 25.542C80.025 25.542 81.042 23.58 81.042 19.656C81.042 17.604 80.799 16.047 80.313 14.985C79.827 13.905 79.035 13.365 77.937 13.365C75.849 13.365 74.805 15.327 74.805 19.251C74.805 21.303 75.057 22.869 75.561 23.949C76.083 25.011 76.893 25.542 77.991 25.542ZM86.4395 5.454L91.3805 4.86H91.4345L92.1905 5.373V13.338C92.6765 12.852 93.2705 12.447 93.9725 12.123C94.6925 11.781 95.4665 11.61 96.2945 11.61C98.0225 11.61 99.4265 12.222 100.506 13.446C101.604 14.652 102.153 16.506 102.153 19.008C102.153 20.556 101.829 21.96 101.181 23.22C100.533 24.48 99.5975 25.479 98.3735 26.217C97.1675 26.937 95.7635 27.297 94.1615 27.297C92.7395 27.297 91.5065 27.18 90.4625 26.946C89.4185 26.694 88.7525 26.469 88.4645 26.271V7.182L86.4395 6.858V5.454ZM94.8635 13.986C94.3235 13.986 93.8105 14.112 93.3245 14.364C92.8565 14.598 92.4785 14.868 92.1905 15.174V25.029C92.2985 25.227 92.5505 25.389 92.9465 25.515C93.3425 25.641 93.7925 25.704 94.2965 25.704C95.4485 25.704 96.3665 25.173 97.0505 24.111C97.7525 23.031 98.1035 21.438 98.1035 19.332C98.1035 17.514 97.8065 16.173 97.2125 15.309C96.6185 14.427 95.8355 13.986 94.8635 13.986Z' fill='black'/%3E%3Cpath d='M104.183 25.38L106.316 25.11V8.964L104.291 8.586V6.939H108.206C108.548 6.939 108.926 6.93 109.34 6.912C109.754 6.894 110.069 6.876 110.285 6.858C111.221 6.786 111.995 6.75 112.607 6.75C114.461 6.75 115.946 6.939 117.062 7.317C118.178 7.695 118.988 8.271 119.492 9.045C119.996 9.819 120.248 10.836 120.248 12.096C120.248 13.338 119.915 14.49 119.249 15.552C118.583 16.614 117.62 17.343 116.36 17.739C117.08 18.045 117.719 18.603 118.277 19.413C118.835 20.223 119.429 21.276 120.059 22.572C120.509 23.454 120.851 24.093 121.085 24.489C121.337 24.867 121.58 25.083 121.814 25.137L122.705 25.407V27H118.115C117.827 27 117.521 26.712 117.197 26.136C116.891 25.542 116.486 24.615 115.982 23.355C115.388 21.879 114.875 20.727 114.443 19.899C114.011 19.071 113.552 18.558 113.066 18.36H110.285V25.11L112.769 25.38V27H104.183V25.38ZM112.769 16.713C113.795 16.713 114.596 16.344 115.172 15.606C115.748 14.868 116.036 13.761 116.036 12.285C116.036 10.971 115.748 9.999 115.172 9.369C114.614 8.739 113.642 8.424 112.256 8.424C111.752 8.424 111.32 8.451 110.96 8.505C110.618 8.541 110.393 8.559 110.285 8.559V16.659C110.501 16.695 111.023 16.713 111.851 16.713H112.769ZM123.804 19.521C123.804 17.829 124.137 16.389 124.803 15.201C125.487 14.013 126.396 13.122 127.53 12.528C128.664 11.916 129.897 11.61 131.229 11.61C133.497 11.61 135.243 12.312 136.467 13.716C137.709 15.102 138.33 16.992 138.33 19.386C138.33 21.096 137.988 22.554 137.304 23.76C136.638 24.948 135.738 25.839 134.604 26.433C133.488 27.009 132.255 27.297 130.905 27.297C128.655 27.297 126.909 26.604 125.667 25.218C124.425 23.814 123.804 21.915 123.804 19.521ZM131.121 25.542C133.155 25.542 134.172 23.58 134.172 19.656C134.172 17.604 133.929 16.047 133.443 14.985C132.957 13.905 132.165 13.365 131.067 13.365C128.979 13.365 127.935 15.327 127.935 19.251C127.935 21.303 128.187 22.869 128.691 23.949C129.213 25.011 130.023 25.542 131.121 25.542ZM143.187 33.723C142.863 33.723 142.512 33.696 142.134 33.642C141.774 33.588 141.513 33.525 141.351 33.453V30.564C141.477 30.636 141.729 30.708 142.107 30.78C142.485 30.852 142.827 30.888 143.133 30.888C144.033 30.888 144.771 30.591 145.347 29.997C145.941 29.403 146.49 28.404 146.994 27H145.536L140.46 13.905L139.245 13.554V11.988H146.67V13.554L144.699 13.878L147.102 21.357L148.074 24.543L148.911 21.357L151.125 13.878L149.424 13.554V11.988H155.283V13.554L153.96 13.878C152.97 16.902 151.989 19.818 151.017 22.626C150.045 25.434 149.478 27.009 149.316 27.351C148.74 28.863 148.191 30.069 147.669 30.969C147.147 31.869 146.526 32.553 145.806 33.021C145.086 33.489 144.213 33.723 143.187 33.723Z' fill='%236CBE34'/%3E%3Cdefs%3E%3CclipPath id='clip0'%3E%3Crect width='33' height='33' fill='white' transform='matrix(-1 0 0 1 33 0)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A", + "logoProfileAltText": "RobRoy", + "logoProfileCollapsed": "data:image/svg+xml,%0A%3Csvg width='33' height='33' viewBox='0 0 33 33' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0)'%3E%3Cpath d='M32.5539 32.5538C32.5539 32.5538 17.0796 35.6024 7.23861 25.7614C-2.60242 15.9204 0.446148 0.446137 0.446148 0.446137C0.446148 0.446137 15.9204 -2.60243 25.7614 7.23866C35.6024 17.0797 32.5539 32.5538 32.5539 32.5538Z' fill='%23C3EA21'/%3E%3Cpath d='M32.5537 32.554C32.5537 32.554 17.0795 35.6026 7.23845 25.7615C-2.60257 15.9205 0.445996 0.446289 0.445996 0.446289L32.5537 32.554Z' fill='%238ADB53'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0'%3E%3Crect width='33' height='33' fill='white' transform='matrix(-1 0 0 1 33 0)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A", + "logoProfileCollapsedAltText": "RobRoy", + "logoProfileCollapsedHeight": "28", + "logoProfileHeight": "28", + "name": "Robroy", + "pageTitle": "#23282e", + "primaryColor": "#5AA625", + "primaryOffColor": "#49871E", + "profileBackgroundColor": "#FFFFFF", + "profileMenuHighlightColor": "#FFFFFF", + "profileMenuHoverColor": "#FFFFFF", + "profileMenuHoverTextColor": "#455469", + "profileMenuTextHighlightColor": "#5AA625", + "secondaryColor": "#69788b", + "textColor": "#ffffff", + }, + { + "_id": "b7d8de5a-f788-4ac8-b80a-3220a5f977ec", + "accountFooter": "", + "accountFooterEnabled": false, + "accountPageSections": { + "accountControls": { + "enabled": false, + }, + "accountSecurity": { + "enabled": true, + "subsections": { + "password": { + "enabled": true, + }, + "securityQuestions": { + "enabled": false, + }, + "twoStepVerification": { + "enabled": true, + }, + "username": { + "enabled": true, + }, + }, + }, + "consent": { + "enabled": false, + }, + "oauthApplications": { + "enabled": false, + }, + "personalInformation": { + "enabled": true, + }, + "preferences": { + "enabled": false, + }, + "social": { + "enabled": false, + }, + "trustedDevices": { + "enabled": true, + }, + }, + "backgroundColor": "#324054", + "backgroundImage": "", + "bodyText": "#23282e", + "buttonRounded": 5, + "dangerColor": "#f7685b", + "favicon": "", + "isDefault": true, + "journeyFooter": "", + "journeyFooterEnabled": false, + "journeyHeader": "
Header Content
", + "journeyHeaderEnabled": false, + "journeyJustifiedContent": "", + "journeyJustifiedContentEnabled": false, + "journeyLayout": "card", + "journeyTheaterMode": false, + "linkActiveColor": "#0c85cf", + "linkColor": "#109cf1", + "linkedTrees": [], + "logo": "", + "logoAltText": "", + "logoHeight": "40", + "logoProfile": "", + "logoProfileAltText": "", + "logoProfileCollapsed": "", + "logoProfileCollapsedAltText": "", + "logoProfileCollapsedHeight": "40", + "logoProfileHeight": "40", + "name": "Starter Theme", + "pageTitle": "#23282e", + "primaryColor": "#324054", + "primaryOffColor": "#242E3C", + "profileBackgroundColor": "#f6f8fa", + "profileMenuHighlightColor": "#f3f5f8", + "profileMenuHoverColor": "#324054", + "profileMenuHoverTextColor": "#ffffff", + "profileMenuTextHighlightColor": "#455469", + "secondaryColor": "#69788b", + "textColor": "#ffffff", + }, + { + "_id": "8dfd6c93-972a-4786-950d-79904f66af4b", + "accountFooter": " +", + "accountFooterEnabled": true, + "accountPageSections": { + "accountControls": { + "enabled": false, + }, + "accountSecurity": { + "enabled": true, + "subsections": { + "password": { + "enabled": true, + }, + "securityQuestions": { + "enabled": false, + }, + "twoStepVerification": { + "enabled": true, + }, + "username": { + "enabled": true, + }, + }, + }, + "consent": { + "enabled": false, + }, + "oauthApplications": { + "enabled": false, + }, + "personalInformation": { + "enabled": true, + }, + "preferences": { + "enabled": false, + }, + "social": { + "enabled": false, + }, + "trustedDevices": { + "enabled": true, + }, + }, + "backgroundColor": "#FFFFFF", + "backgroundImage": "", + "bodyText": "#5E6D82", + "buttonRounded": "50", + "dangerColor": "#f7685b", + "favicon": "", + "isDefault": false, + "journeyFooter": " +", + "journeyFooterEnabled": true, + "journeyHeader": "
Header Content
", + "journeyHeaderEnabled": false, + "journeyJustifiedContent": "
+

Uptime & Performance Benchmarking Made Easy

+
+ +", + "journeyJustifiedContentEnabled": true, + "journeyLayout": "justified-right", + "journeyTheaterMode": true, + "linkActiveColor": "#007661", + "linkColor": "#009C80", + "linkedTrees": [], + "logo": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", + "logoAltText": "Zardoz Logo", + "logoEnabled": true, + "logoHeight": "47", + "logoProfile": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", + "logoProfileAltText": "Zardaz Logo", + "logoProfileCollapsed": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", + "logoProfileCollapsedAltText": "Zardaz Logo", + "logoProfileCollapsedHeight": "28", + "logoProfileHeight": "40", + "name": "Zardoz", + "pageTitle": "#23282e", + "primaryColor": "#009C80", + "primaryOffColor": "#007661", + "profileBackgroundColor": "#FFFFFF", + "profileMenuHighlightColor": "#FFFFFF", + "profileMenuHoverColor": "#FFFFFF", + "profileMenuHoverTextColor": "#455469", + "profileMenuTextHighlightColor": "#009C80", + "secondaryColor": "#69788b", + "textColor": "#ffffff", + }, + ], + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -Ni sync": should export the idm config entity with idm id "sync" separately 1`] = `0`; + +exports[`frodo idm export "frodo idm export -Ni sync": should export the idm config entity with idm id "sync" separately 2`] = `""`; + +exports[`frodo idm export "frodo idm export -Ni sync": should export the idm config entity with idm id "sync" separately: sync.idm.json 1`] = ` +{ + "idm": { + "sync": { + "_id": "sync", + "mappings": [ + { + "_id": "sync/managedBravo_user_managedBravo_user", + "consentRequired": false, + "displayName": "managedBravo_user_managedBravo_user", + "icon": null, + "name": "managedBravo_user_managedBravo_user", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/bravo_user", + "syncAfter": [], + "target": "managed/bravo_user", + }, + { + "_id": "sync/managedAlpha_application_managedBravo_application", + "consentRequired": true, + "displayName": "Test Application Mapping", + "icon": null, + "name": "managedAlpha_application_managedBravo_application", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [ + { + "source": "authoritative", + "target": "_id", + }, + ], + "source": "managed/alpha_application", + "sourceQuery": { + "_queryFilter": "(eq "" or eq "")", + }, + "syncAfter": [ + "managedBravo_user_managedBravo_user", + ], + "target": "managed/bravo_application", + "targetQuery": { + "_queryFilter": "!(eq "")", + }, + }, + { + "_id": "sync/managedAlpha_user_managedBravo_user", + "consentRequired": true, + "displayName": "Test Mapping for Frodo", + "icon": null, + "name": "managedAlpha_user_managedBravo_user", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [ + { + "condition": { + "globals": {}, + "source": "console.log("Hello World!");", + "type": "text/javascript", + }, + "default": [ + "Default value string", + ], + "source": "accountStatus", + "target": "applications", + "transform": { + "globals": {}, + "source": "console.log("hello");", + "type": "text/javascript", + }, + }, + ], + "source": "managed/alpha_user", + "syncAfter": [ + "managedBravo_user_managedBravo_user", + "managedAlpha_application_managedBravo_application", + ], + "target": "managed/bravo_user", + }, + { + "_id": "sync/managedBravo_user_managedAlpha_user", + "consentRequired": false, + "displayName": "Frodo test mapping", + "icon": null, + "name": "managedBravo_user_managedAlpha_user", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/bravo_user", + "syncAfter": [ + "managedBravo_user_managedBravo_user", + "managedAlpha_application_managedBravo_application", + "managedAlpha_user_managedBravo_user", + ], + "target": "managed/alpha_user", + }, + { + "_id": "sync/AlphaUser2GoogleApps", + "consentRequired": false, + "correlationQuery": [ + { + "expressionTree": { + "all": [ + "__NAME__", + ], + }, + "file": "ui/correlateTreeToQueryFilter.js", + "linkQualifier": "default", + "mapping": "AlphaUser2GoogleApps", + "type": "text/javascript", + }, + ], + "displayName": "AlphaUser2GoogleApps", + "enableSync": { + "$bool": "&{esv.gac.enable.mapping}", + }, + "icon": null, + "name": "AlphaUser2GoogleApps", + "onCreate": { + "globals": {}, + "source": "target.orgUnitPath = "/NewAccounts";", + "type": "text/javascript", + }, + "onUpdate": { + "globals": {}, + "source": "//testing1234 +target.givenName = oldTarget.givenName; +target.familyName = oldTarget.familyName; +target.__NAME__ = oldTarget.__NAME__;", + "type": "text/javascript", + }, + "policies": [ + { + "action": "EXCEPTION", + "situation": "AMBIGUOUS", + }, + { + "action": "UNLINK", + "situation": "SOURCE_MISSING", + }, + { + "action": { + "globals": {}, + "source": "// Timing Constants +var ATTEMPT = 6; // Number of attempts to find the Google user. +var SLEEP_TIME = 500; // Milliseconds between retries. +var SYSTEM_ENDPOINT = "system/GoogleApps/__ACCOUNT__"; +var MAPPING_NAME = "AlphaUser2GoogleApps"; +var GOOGLE_DOMAIN = identityServer.getProperty("esv.gac.domain"); +var googleEmail = source.userName + "@" + GOOGLE_DOMAIN; +var frUserGUID = source._id; +var resultingAction = "ASYNC"; + +// Get the Google GUID +var linkQueryParams = {'_queryFilter': 'firstId eq "' + frUserGUID + '" and linkType eq "' + MAPPING_NAME + '"'}; +var linkResults = openidm.query("repo/link/", linkQueryParams, null); +var googleGUID; + +if (linkResults.resultCount === 1) { + googleGUID = linkResults.result[0].secondId; +} + +var queryResults; // Resulting query from looking for the Google user. +var params = {'_queryFilter': '__UID__ eq "' + googleGUID + '"'}; + +for (var i = 1; i <= ATTEMPT; i++) { + queryResults = openidm.query(SYSTEM_ENDPOINT, params); + if (queryResults.result && queryResults.result.length > 0) { + logger.info("idmlog: ---AlphaUser2GoogleApps - Missing->UPDATE - Result found in " + i + " attempts. Query result: " + JSON.stringify(queryResults)); + resultingAction = "UPDATE"; + break; + } + java.lang.Thread.sleep(SLEEP_TIME); // Wait before trying again. +} + +if (!queryResults.result || queryResults.resultCount === 0) { + logger.warn("idmlog: ---AlphaUser2GoogleApps - Missing->UNLINK - " + googleEmail + " not found after " + ATTEMPT + " attempts."); + resultingAction = "UNLINK"; +} +resultingAction; +", + "type": "text/javascript", + }, + "situation": "MISSING", + }, + { + "action": "EXCEPTION", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "IGNORE", + "situation": "UNQUALIFIED", + }, + { + "action": "IGNORE", + "situation": "UNASSIGNED", + }, + { + "action": "UNLINK", + "situation": "LINK_ONLY", + }, + { + "action": "IGNORE", + "situation": "TARGET_IGNORED", + }, + { + "action": "IGNORE", + "situation": "SOURCE_IGNORED", + }, + { + "action": "IGNORE", + "situation": "ALL_GONE", + }, + { + "action": "UPDATE", + "situation": "CONFIRMED", + }, + { + "action": "LINK", + "situation": "FOUND", + }, + { + "action": "CREATE", + "situation": "ABSENT", + }, + ], + "properties": [ + { + "condition": { + "globals": {}, + "source": "object.custom_password_encrypted != null", + "type": "text/javascript", + }, + "source": "custom_password_encrypted", + "target": "__PASSWORD__", + "transform": { + "globals": {}, + "source": "openidm.decrypt(source);", + "type": "text/javascript", + }, + }, + { + "source": "cn", + "target": "__NAME__", + "transform": { + "globals": {}, + "source": "source + "@" + identityServer.getProperty("esv.gac.domain");", + "type": "text/javascript", + }, + }, + { + "source": "givenName", + "target": "givenName", + }, + { + "source": "", + "target": "familyName", + "transform": { + "globals": {}, + "source": "if (source.frIndexedInteger1 > 2 && source.frIndexedInteger1 < 6) { + source.sn + " (Student)" +} else { + source.sn +}", + "type": "text/javascript", + }, + }, + ], + "queuedSync": { + "enabled": true, + "maxQueueSize": 20000, + "maxRetries": 5, + "pageSize": 100, + "pollingInterval": 1000, + "postRetryAction": "logged-ignore", + "retryDelay": 1000, + }, + "source": "managed/alpha_user", + "syncAfter": [ + "managedBravo_user_managedBravo_user", + "managedAlpha_application_managedBravo_application", + "managedAlpha_user_managedBravo_user", + "managedBravo_user_managedAlpha_user", + ], + "target": "system/GoogleApps/__ACCOUNT__", + "validSource": { + "globals": {}, + "source": "var isGoogleEligible = true; +//var logMsg = "idmlog: ---AplhaUser2GAC (username: " + source.userName + " - userType: " + source.frIndexedInteger1 + " cn: " + source.cn + ") -"; +var logMsg = "idmlog: ---AplhaUser2GAC (username: " + source.userName + " - userType: " + source.frIndexedInteger1 + ") -"; + +//Get Applicable userTypes (no Parent accounts) +if (source.frIndexedInteger1 !== 0 && source.frIndexedInteger1 !== 1 && source.frIndexedInteger1 !== 3 && source.frIndexedInteger1 !== 4 && source.frIndexedInteger1 !== 5) { + isGoogleEligible = false; + logMsg = logMsg + " Account type not eligible."; +} + +//Make sure the account has a valid encrypted password. +if (source.custom_password_encrypted == undefined || source.custom_password_encrypted == null) { + isGoogleEligible = false; + logMsg = logMsg + " No encrypted password yet."; +} + +//Check that CN exists and has no space. +if (source.cn && source.cn.includes(' ')) { + isGoogleEligible = false; + logMsg = logMsg + " CN with a space is not allowed."; +} + +if (!isGoogleEligible) { + logMsg = logMsg + " Not sent to Google." + logger.info(logMsg); +} + +if (isGoogleEligible) { + logMsg = logMsg + " Sent to Google." + logger.info(logMsg); +} + +isGoogleEligible; +", + "type": "text/javascript", + }, + }, + ], + }, + }, +} +`; + +exports[`frodo idm export "frodo idm export -a": should export all idm config entities to a single file 1`] = `1`; + +exports[`frodo idm export "frodo idm export -a": should export all idm config entities to a single file 2`] = `""`; + +exports[`frodo idm export "frodo idm export -a": should export all idm config entities to a single file: all.idm.json 1`] = ` +{ + "idm": { + "access": { + "_id": "access", + "configs": [ + { + "actions": "*", + "methods": "read", + "pattern": "info/*", + "roles": "*", + }, + { + "actions": "login,logout", + "methods": "read,action", + "pattern": "authentication", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/fidc/*", + "roles": "*", + }, + { + "actions": "*", + "methods": "*", + "pattern": "config/fidc/*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/themeconfig", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/themerealm", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/uilocale/*", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/fieldPolicy/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "read", + "pattern": "info/uiconfig", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/dashboard", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "query", + "pattern": "info/features", + "roles": "*", + }, + { + "actions": "listPrivileges", + "methods": "action", + "pattern": "privilege", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "privilege/*", + "roles": "*", + }, + { + "actions": "validate", + "methods": "action", + "pattern": "util/validateQueryFilter", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "customAuthz": "checkIfAnyFeatureEnabled('kba')", + "methods": "read", + "pattern": "selfservice/kba", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "read", + "pattern": "schema/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "action,query", + "pattern": "consent", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "excludePatterns": "repo,repo/*", + "methods": "*", + "pattern": "*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "", + "methods": "create,read,update,delete,patch,query", + "pattern": "system/*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "*", + "methods": "script", + "pattern": "system/*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "test,testConfig,createconfiguration,liveSync,authenticate", + "methods": "action", + "pattern": "system/*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "*", + "customAuthz": "disallowCommandAction()", + "methods": "*", + "pattern": "repo", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "*", + "customAuthz": "disallowCommandAction()", + "methods": "*", + "pattern": "repo/*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "command", + "customAuthz": "request.additionalParameters.commandId === 'delete-mapping-links'", + "methods": "action", + "pattern": "repo/link", + "roles": "internal/role/openidm-admin", + }, + { + "methods": "create,read,query,patch", + "pattern": "managed/*", + "roles": "internal/role/platform-provisioning", + }, + { + "methods": "read,query", + "pattern": "internal/role/*", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "*", + "methods": "create,read,action,update", + "pattern": "profile/*", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "*", + "methods": "read,action", + "pattern": "policy/*", + "roles": "internal/role/platform-provisioning", + }, + { + "methods": "read", + "pattern": "schema/*", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "*", + "methods": "action,query", + "pattern": "consent", + "roles": "internal/role/platform-provisioning", + }, + { + "methods": "read", + "pattern": "selfservice/kba", + "roles": "internal/role/platform-provisioning", + }, + { + "methods": "read", + "pattern": "selfservice/terms", + "roles": "internal/role/platform-provisioning", + }, + { + "methods": "read", + "pattern": "identityProviders", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "sendTemplate", + "methods": "action", + "pattern": "external/email", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "authenticate", + "methods": "action", + "pattern": "system/*", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "*", + "methods": "read,action", + "pattern": "policy/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "bind,unbind", + "customAuthz": "ownDataOnly()", + "methods": "read,action,delete", + "pattern": "*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "patch", + "customAuthz": "ownDataOnly() && onlyEditableManagedObjectProperties('user', [])", + "methods": "update,patch,action", + "pattern": "*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "patch", + "customAuthz": "(request.resourcePath === 'selfservice/user/' + context.security.authorization.id) && onlyEditableManagedObjectProperties('user', [])", + "methods": "patch,action", + "pattern": "selfservice/user/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "patch", + "customAuthz": "isQueryOneOf({'managed/user': ['for-userName']}) && restrictPatchToFields(['password'])", + "methods": "patch,action", + "pattern": "managed/user", + "roles": "internal/role/openidm-cert", + }, + { + "actions": "*", + "customAuthz": "ownRelationshipProperty('_meta', false)", + "methods": "read", + "pattern": "internal/usermeta/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "customAuthz": "ownRelationshipProperty('_notifications', true)", + "methods": "read,delete", + "pattern": "internal/notification/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "customAuthz": "ownRelationshipCollection(['_meta','_notifications'])", + "methods": "read,query", + "pattern": "managed/user/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "", + "customAuthz": "ownDataOnly()", + "methods": "read,delete", + "pattern": "managed/alpha_user/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "patch", + "customAuthz": "ownDataOnly() && onlyEditableManagedObjectProperties('alpha_user', [])", + "methods": "update,patch,action", + "pattern": "managed/alpha_user/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "customAuthz": "ownRelationshipCollection(['_meta','_notifications'])", + "methods": "read,query", + "pattern": "managed/alpha_user/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "", + "customAuthz": "ownDataOnly()", + "methods": "read,delete", + "pattern": "managed/bravo_user/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "patch", + "customAuthz": "ownDataOnly() && onlyEditableManagedObjectProperties('bravo_user', [])", + "methods": "update,patch,action", + "pattern": "managed/bravo_user/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "customAuthz": "ownRelationshipCollection(['_meta','_notifications'])", + "methods": "read,query", + "pattern": "managed/bravo_user/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "deleteNotificationsForTarget", + "customAuthz": "request.additionalParameters.target === (context.security.authorization.component + '/' + context.security.authorization.id)", + "methods": "action", + "pattern": "notification", + "roles": "internal/role/openidm-authorized", + }, + ], + }, + "alphaOrgPrivileges": { + "_id": "alphaOrgPrivileges", + "privileges": [ + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "owners", "readOnly": true, }, { @@ -41322,174 +67828,2703 @@ a{ "enabled": true, "type": "character-set", }, - ], - }, - "internal": { - "_id": "internal", - "objects": [ + ], + }, + "internal": { + "_id": "internal", + "objects": [ + { + "name": "role", + "properties": { + "authzMembers": { + "items": { + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + }, + }, + }, + }, + ], + }, + "managed": { + "_id": "managed", + "objects": [ + { + "lastSync": { + "effectiveAssignmentsProperty": "effectiveAssignments", + "lastSyncProperty": "lastSync", + }, + "meta": { + "property": "_meta", + "resourceCollection": "managed/alpha_usermeta", + "trackedProperties": [ + "createDate", + "lastChanged", + ], + }, + "name": "alpha_user", + "notifications": {}, + "schema": { + "$schema": "http://json-schema.org/draft-03/schema", + "icon": "fa-user", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User", + "mat-icon": "people", + "order": [ + "_id", + "userName", + "password", + "givenName", + "cn", + "sn", + "mail", + "profileImage", + "description", + "accountStatus", + "telephoneNumber", + "postalAddress", + "city", + "postalCode", + "country", + "stateProvince", + "roles", + "assignments", + "groups", + "applications", + "manager", + "authzRoles", + "reports", + "effectiveRoles", + "effectiveAssignments", + "effectiveGroups", + "effectiveApplications", + "lastSync", + "kbaInfo", + "preferences", + "consentedMappings", + "ownerOfOrg", + "adminOfOrg", + "memberOfOrg", + "memberOfOrgIDs", + "ownerOfApp", + "frIndexedString1", + "frIndexedString2", + "frIndexedString3", + "frIndexedString4", + "frIndexedString5", + "frUnindexedString1", + "frUnindexedString2", + "frUnindexedString3", + "frUnindexedString4", + "frUnindexedString5", + "frIndexedMultivalued1", + "frIndexedMultivalued2", + "frIndexedMultivalued3", + "frIndexedMultivalued4", + "frIndexedMultivalued5", + "frUnindexedMultivalued1", + "frUnindexedMultivalued2", + "frUnindexedMultivalued3", + "frUnindexedMultivalued4", + "frUnindexedMultivalued5", + "frIndexedDate1", + "frIndexedDate2", + "frIndexedDate3", + "frIndexedDate4", + "frIndexedDate5", + "frUnindexedDate1", + "frUnindexedDate2", + "frUnindexedDate3", + "frUnindexedDate4", + "frUnindexedDate5", + "frIndexedInteger1", + "frIndexedInteger2", + "frIndexedInteger3", + "frIndexedInteger4", + "frIndexedInteger5", + "frUnindexedInteger1", + "frUnindexedInteger2", + "frUnindexedInteger3", + "frUnindexedInteger4", + "frUnindexedInteger5", + "assignedDashboard", + ], + "properties": { + "_id": { + "description": "User ID", + "isPersonal": false, + "policies": [ + { + "params": { + "forbiddenChars": [ + "/", + ], + }, + "policyId": "cannot-contain-characters", + }, + ], + "searchable": false, + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": false, + }, + "accountStatus": { + "default": "active", + "description": "Status", + "isPersonal": false, + "searchable": true, + "title": "Status", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "adminOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/alpha_organization", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "admins", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Administer", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "aliasList": { + "description": "List of identity aliases used primarily to record social IdP subjects for this user", + "isVirtual": false, + "items": { + "title": "User Alias Names Items", + "type": "string", + }, + "returnByDefault": false, + "searchable": false, + "title": "User Alias Names List", + "type": "array", + "userEditable": true, + "viewable": false, + }, + "applications": { + "description": "Applications", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:applications", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:applications:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Groups Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Application", + "path": "managed/alpha_application", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [ + "name", + ], + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Groups Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Applications", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": false, + }, + "assignedDashboard": { + "description": "List of items to click on for this user", + "isVirtual": true, + "items": { + "title": "Assigned Dashboard Items", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "name", + ], + "referencedRelationshipFields": [ + [ + "roles", + "applications", + ], + [ + "applications", + ], + ], + }, + "searchable": false, + "title": "Assigned Dashboard", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "assignments": { + "description": "Assignments", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Assignment", + "path": "managed/alpha_assignment", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Assignments Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Assignments", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "authzRoles": { + "description": "Authorization Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Authorization Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Internal Role", + "path": "internal/role", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "authzMembers", + "reverseRelationship": true, + "title": "Authorization Roles Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Authorization Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "city": { + "description": "City", + "isPersonal": false, + "title": "City", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "cn": { + "default": "{{givenName}} {{sn}}", + "description": "Common Name", + "isPersonal": true, + "scope": "private", + "searchable": false, + "title": "Common Name", + "type": "string", + "userEditable": false, + "viewable": false, + }, + "consentedMappings": { + "description": "Consented Mappings", + "isPersonal": false, + "isVirtual": false, + "items": { + "items": { + "order": [ + "mapping", + "consentDate", + ], + "properties": { + "consentDate": { + "description": "Consent Date", + "searchable": true, + "title": "Consent Date", + "type": "string", + "userEditable": true, + "viewable": true, + }, + "mapping": { + "description": "Mapping", + "searchable": true, + "title": "Mapping", + "type": "string", + "userEditable": true, + "viewable": true, + }, + }, + "required": [ + "mapping", + "consentDate", + ], + "title": "Consented Mappings Item", + "type": "object", + }, + "title": "Consented Mappings Items", + "type": "array", + }, + "returnByDefault": false, + "searchable": false, + "title": "Consented Mappings", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false, + }, + "country": { + "description": "Country", + "isPersonal": false, + "title": "Country", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "description": { + "description": "Description", + "isPersonal": false, + "searchable": true, + "title": "Description", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "effectiveApplications": { + "description": "Effective Applications", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Assigned Application Items", + "type": "object", + }, + "queryConfig": { + "referencedObjectFields": [ + "name", + ], + "referencedRelationshipFields": [ + [ + "roles", + "applications", + ], + [ + "applications", + ], + ], + }, + "returnByDefault": true, + "title": "Effective Applications", + "type": "array", + "viewable": false, + }, + "effectiveAssignments": { + "description": "Effective Assignments", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Assignments Items", + "type": "object", + }, + "queryConfig": { + "referencedObjectFields": [ + "*", + ], + "referencedRelationshipFields": [ + [ + "roles", + "assignments", + ], + [ + "assignments", + ], + ], + }, + "returnByDefault": true, + "title": "Effective Assignments", + "type": "array", + "usageDescription": "", + "viewable": false, + }, + "effectiveGroups": { + "description": "Effective Groups", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Groups Items", + "type": "object", + }, + "queryConfig": { + "referencedRelationshipFields": [ + "groups", + ], + }, + "returnByDefault": true, + "title": "Effective Groups", + "type": "array", + "usageDescription": "", + "viewable": false, + }, + "effectiveRoles": { + "description": "Effective Roles", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Roles Items", + "type": "object", + }, + "queryConfig": { + "referencedRelationshipFields": [ + "roles", + ], + }, + "returnByDefault": true, + "title": "Effective Roles", + "type": "array", + "usageDescription": "", + "viewable": false, + }, + "frIndexedDate1": { + "description": "Generic Indexed Date 1", + "isPersonal": false, + "title": "Generic Indexed Date 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedDate2": { + "description": "Generic Indexed Date 2", + "isPersonal": false, + "title": "Generic Indexed Date 2", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedDate3": { + "description": "Generic Indexed Date 3", + "isPersonal": false, + "title": "Generic Indexed Date 3", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedDate4": { + "description": "Generic Indexed Date 4", + "isPersonal": false, + "title": "Generic Indexed Date 4", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedDate5": { + "description": "Generic Indexed Date 5", + "isPersonal": false, + "title": "Generic Indexed Date 5", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedInteger1": { + "description": "Generic Indexed Integer 1", + "isPersonal": false, + "title": "Generic Indexed Integer 1", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedInteger2": { + "description": "Generic Indexed Integer 2", + "isPersonal": false, + "title": "Generic Indexed Integer 2", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedInteger3": { + "description": "Generic Indexed Integer 3", + "isPersonal": false, + "title": "Generic Indexed Integer 3", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedInteger4": { + "description": "Generic Indexed Integer 4", + "isPersonal": false, + "title": "Generic Indexed Integer 4", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedInteger5": { + "description": "Generic Indexed Integer 5", + "isPersonal": false, + "title": "Generic Indexed Integer 5", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedMultivalued1": { + "description": "Generic Indexed Multivalue 1", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Indexed Multivalue 1", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedMultivalued2": { + "description": "Generic Indexed Multivalue 2", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Indexed Multivalue 2", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedMultivalued3": { + "description": "Generic Indexed Multivalue 3", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Indexed Multivalue 3", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedMultivalued4": { + "description": "Generic Indexed Multivalue 4", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Indexed Multivalue 4", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedMultivalued5": { + "description": "Generic Indexed Multivalue 5", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Indexed Multivalue 5", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString1": { + "description": "Generic Indexed String 1", + "isPersonal": false, + "title": "Generic Indexed String 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString2": { + "description": "Generic Indexed String 2", + "isPersonal": false, + "title": "Generic Indexed String 2", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString3": { + "description": "Generic Indexed String 3", + "isPersonal": false, + "title": "Generic Indexed String 3", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString4": { + "description": "Generic Indexed String 4", + "isPersonal": false, + "title": "Generic Indexed String 4", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString5": { + "description": "Generic Indexed String 5", + "isPersonal": false, + "title": "Generic Indexed String 5", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedDate1": { + "description": "Generic Unindexed Date 1", + "isPersonal": false, + "title": "Generic Unindexed Date 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedDate2": { + "description": "Generic Unindexed Date 2", + "isPersonal": false, + "title": "Generic Unindexed Date 2", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedDate3": { + "description": "Generic Unindexed Date 3", + "isPersonal": false, + "title": "Generic Unindexed Date 3", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedDate4": { + "description": "Generic Unindexed Date 4", + "isPersonal": false, + "title": "Generic Unindexed Date 4", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedDate5": { + "description": "Generic Unindexed Date 5", + "isPersonal": false, + "title": "Generic Unindexed Date 5", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedInteger1": { + "description": "Generic Unindexed Integer 1", + "isPersonal": false, + "title": "Generic Unindexed Integer 1", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedInteger2": { + "description": "Generic Unindexed Integer 2", + "isPersonal": false, + "title": "Generic Unindexed Integer 2", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedInteger3": { + "description": "Generic Unindexed Integer 3", + "isPersonal": false, + "title": "Generic Unindexed Integer 3", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedInteger4": { + "description": "Generic Unindexed Integer 4", + "isPersonal": false, + "title": "Generic Unindexed Integer 4", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedInteger5": { + "description": "Generic Unindexed Integer 5", + "isPersonal": false, + "title": "Generic Unindexed Integer 5", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedMultivalued1": { + "description": "Generic Unindexed Multivalue 1", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Unindexed Multivalue 1", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedMultivalued2": { + "description": "Generic Unindexed Multivalue 2", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Unindexed Multivalue 2", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedMultivalued3": { + "description": "Generic Unindexed Multivalue 3", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Unindexed Multivalue 3", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedMultivalued4": { + "description": "Generic Unindexed Multivalue 4", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Unindexed Multivalue 4", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedMultivalued5": { + "description": "Generic Unindexed Multivalue 5", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Unindexed Multivalue 5", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedString1": { + "description": "Generic Unindexed String 1", + "isPersonal": false, + "title": "Generic Unindexed String 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedString2": { + "description": "Generic Unindexed String 2", + "isPersonal": false, + "title": "Generic Unindexed String 2", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedString3": { + "description": "Generic Unindexed String 3", + "isPersonal": false, + "title": "Generic Unindexed String 3", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedString4": { + "description": "Generic Unindexed String 4", + "isPersonal": false, + "title": "Generic Unindexed String 4", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedString5": { + "description": "Generic Unindexed String 5", + "isPersonal": false, + "title": "Generic Unindexed String 5", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "givenName": { + "description": "First Name", + "isPersonal": true, + "searchable": true, + "title": "First Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "groups": { + "description": "Groups", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:groups", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:groups:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Groups Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Group", + "path": "managed/alpha_group", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Groups Items", + "type": "relationship", + "validate": true, + }, + "relationshipGrantTemporalConstraintsEnforced": false, + "returnByDefault": false, + "title": "Groups", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "kbaInfo": { + "description": "KBA Info", + "isPersonal": true, + "items": { + "order": [ + "answer", + "customQuestion", + "questionId", + ], + "properties": { + "answer": { + "description": "Answer", + "type": "string", + }, + "customQuestion": { + "description": "Custom question", + "type": "string", + }, + "questionId": { + "description": "Question ID", + "type": "string", + }, + }, + "required": [], + "title": "KBA Info Items", + "type": "object", + }, + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false, + }, + "lastSync": { + "description": "Last Sync timestamp", + "isPersonal": false, + "order": [ + "effectiveAssignments", + "timestamp", + ], + "properties": { + "effectiveAssignments": { + "description": "Effective Assignments", + "items": { + "title": "Effective Assignments Items", + "type": "object", + }, + "title": "Effective Assignments", + "type": "array", + }, + "timestamp": { + "description": "Timestamp", + "type": "string", + }, + }, + "required": [], + "scope": "private", + "searchable": false, + "title": "Last Sync timestamp", + "type": "object", + "usageDescription": "", + "viewable": false, + }, + "mail": { + "description": "Email Address", + "isPersonal": true, + "policies": [ + { + "policyId": "valid-email-address-format", + }, + ], + "searchable": true, + "title": "Email Address", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "manager": { + "description": "Manager", + "isPersonal": false, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Manager _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "reports", + "reverseRelationship": true, + "searchable": false, + "title": "Manager", + "type": "relationship", + "usageDescription": "", + "userEditable": false, + "validate": true, + "viewable": true, + }, + "memberOfOrg": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/alpha_organization", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations to which I Belong", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "memberOfOrgIDs": { + "isVirtual": true, + "items": { + "title": "org identifiers", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs", + ], + "referencedRelationshipFields": [ + "memberOfOrg", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "MemberOfOrgIDs", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "ownerOfApp": { + "items": { + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Application", + "path": "managed/alpha_application", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [ + "name", + ], + }, + }, + ], + "reversePropertyName": "owners", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "searchable": false, + "title": "Applications I Own", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "ownerOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/alpha_organization", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "owners", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Own", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "password": { + "description": "Password", + "isPersonal": false, + "isProtected": true, + "scope": "private", + "searchable": false, + "title": "Password", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": false, + }, + "postalAddress": { + "description": "Address 1", + "isPersonal": true, + "title": "Address 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "postalCode": { + "description": "Postal Code", + "isPersonal": false, + "title": "Postal Code", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "preferences": { + "description": "Preferences", + "isPersonal": false, + "order": [ + "updates", + "marketing", + ], + "properties": { + "marketing": { + "description": "Send me special offers and services", + "type": "boolean", + }, + "updates": { + "description": "Send me news and updates", + "type": "boolean", + }, + }, + "required": [], + "searchable": false, + "title": "Preferences", + "type": "object", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "profileImage": { + "description": "Profile Image", + "isPersonal": true, + "searchable": true, + "title": "Profile Image", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": false, + }, + "reports": { + "description": "Direct Reports", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Direct Reports Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "manager", + "reverseRelationship": true, + "title": "Direct Reports Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Direct Reports", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "roles": { + "description": "Provisioning Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Role", + "path": "managed/alpha_role", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Provisioning Roles Items", + "type": "relationship", + "validate": true, + }, + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Provisioning Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "sn": { + "description": "Last Name", + "isPersonal": true, + "searchable": true, + "title": "Last Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "stateProvince": { + "description": "State/Province", + "isPersonal": false, + "title": "State/Province", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "telephoneNumber": { + "description": "Telephone Number", + "isPersonal": true, + "pattern": "^\\+?([0-9\\- \\(\\)])*$", + "title": "Telephone Number", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "userName": { + "description": "Username", + "isPersonal": true, + "minLength": 1, + "policies": [ + { + "policyId": "valid-username", + }, + { + "params": { + "forbiddenChars": [ + "/", + ], + }, + "policyId": "cannot-contain-characters", + }, + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "searchable": true, + "title": "Username", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + }, + "required": [ + "userName", + "givenName", + "sn", + "mail", + ], + "title": "Alpha realm - User", + "type": "object", + "viewable": true, + }, + }, { - "name": "role", - "properties": { - "authzMembers": { - "items": { - "resourceCollection": [ + "lastSync": { + "effectiveAssignmentsProperty": "effectiveAssignments", + "lastSyncProperty": "lastSync", + }, + "meta": { + "property": "_meta", + "resourceCollection": "managed/bravo_usermeta", + "trackedProperties": [ + "createDate", + "lastChanged", + ], + }, + "name": "bravo_user", + "notifications": {}, + "schema": { + "$schema": "http://json-schema.org/draft-03/schema", + "icon": "fa-user", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User", + "mat-icon": "people", + "order": [ + "_id", + "userName", + "password", + "givenName", + "cn", + "sn", + "mail", + "profileImage", + "description", + "accountStatus", + "telephoneNumber", + "postalAddress", + "city", + "postalCode", + "country", + "stateProvince", + "roles", + "assignments", + "groups", + "applications", + "manager", + "authzRoles", + "reports", + "effectiveRoles", + "effectiveAssignments", + "effectiveGroups", + "effectiveApplications", + "lastSync", + "kbaInfo", + "preferences", + "consentedMappings", + "ownerOfOrg", + "adminOfOrg", + "memberOfOrg", + "memberOfOrgIDs", + "ownerOfApp", + "frIndexedString1", + "frIndexedString2", + "frIndexedString3", + "frIndexedString4", + "frIndexedString5", + "frUnindexedString1", + "frUnindexedString2", + "frUnindexedString3", + "frUnindexedString4", + "frUnindexedString5", + "frIndexedMultivalued1", + "frIndexedMultivalued2", + "frIndexedMultivalued3", + "frIndexedMultivalued4", + "frIndexedMultivalued5", + "frUnindexedMultivalued1", + "frUnindexedMultivalued2", + "frUnindexedMultivalued3", + "frUnindexedMultivalued4", + "frUnindexedMultivalued5", + "frIndexedDate1", + "frIndexedDate2", + "frIndexedDate3", + "frIndexedDate4", + "frIndexedDate5", + "frUnindexedDate1", + "frUnindexedDate2", + "frUnindexedDate3", + "frUnindexedDate4", + "frUnindexedDate5", + "frIndexedInteger1", + "frIndexedInteger2", + "frIndexedInteger3", + "frIndexedInteger4", + "frIndexedInteger5", + "frUnindexedInteger1", + "frUnindexedInteger2", + "frUnindexedInteger3", + "frUnindexedInteger4", + "frUnindexedInteger5", + "assignedDashboard", + ], + "properties": { + "_id": { + "description": "User ID", + "isPersonal": false, + "policies": [ { - "conditionalAssociation": true, - "label": "User", - "notify": true, - "path": "managed/alpha_user", - "query": { - "fields": [ - "userName", - "givenName", - "sn", + "params": { + "forbiddenChars": [ + "/", ], - "queryFilter": "true", + }, + "policyId": "cannot-contain-characters", + }, + ], + "searchable": false, + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": false, + }, + "accountStatus": { + "default": "active", + "description": "Status", + "isPersonal": false, + "searchable": true, + "title": "Status", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "adminOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/bravo_organization", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "admins", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Administer", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "aliasList": { + "description": "List of identity aliases used primarily to record social IdP subjects for this user", + "isVirtual": false, + "items": { + "title": "User Alias Names Items", + "type": "string", + }, + "returnByDefault": false, + "searchable": false, + "title": "User Alias Names List", + "type": "array", + "userEditable": true, + "viewable": false, + }, + "applications": { + "description": "Applications", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:applications", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:applications:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Groups Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Application", + "path": "managed/bravo_application", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [ + "name", + ], + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Groups Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Applications", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": false, + }, + "assignedDashboard": { + "description": "List of items to click on for this user", + "isVirtual": true, + "items": { + "title": "Assigned Dashboard Items", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "name", + ], + "referencedRelationshipFields": [ + [ + "roles", + "applications", + ], + [ + "applications", + ], + ], + }, + "searchable": false, + "title": "Assigned Dashboard", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "assignments": { + "description": "Assignments", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Assignment", + "path": "managed/bravo_assignment", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Assignments Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Assignments", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "authzRoles": { + "description": "Authorization Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Authorization Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Internal Role", + "path": "internal/role", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "authzMembers", + "reverseRelationship": true, + "title": "Authorization Roles Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Authorization Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "city": { + "description": "City", + "isPersonal": false, + "title": "City", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "cn": { + "default": "{{givenName}} {{sn}}", + "description": "Common Name", + "isPersonal": true, + "scope": "private", + "searchable": false, + "title": "Common Name", + "type": "string", + "userEditable": false, + "viewable": false, + }, + "consentedMappings": { + "description": "Consented Mappings", + "isPersonal": false, + "isVirtual": false, + "items": { + "items": { + "order": [ + "mapping", + "consentDate", + ], + "properties": { + "consentDate": { + "description": "Consent Date", + "searchable": true, + "title": "Consent Date", + "type": "string", + "userEditable": true, + "viewable": true, + }, + "mapping": { + "description": "Mapping", + "searchable": true, + "title": "Mapping", + "type": "string", + "userEditable": true, + "viewable": true, + }, + }, + "required": [ + "mapping", + "consentDate", + ], + "title": "Consented Mappings Item", + "type": "object", + }, + "title": "Consented Mappings Items", + "type": "array", + }, + "returnByDefault": false, + "searchable": false, + "title": "Consented Mappings", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false, + }, + "country": { + "description": "Country", + "isPersonal": false, + "title": "Country", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "description": { + "description": "Description", + "isPersonal": false, + "searchable": true, + "title": "Description", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "effectiveApplications": { + "description": "Effective Applications", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Assigned Application Items", + "type": "object", + }, + "queryConfig": { + "referencedObjectFields": [ + "name", + ], + "referencedRelationshipFields": [ + [ + "roles", + "applications", + ], + [ + "applications", + ], + ], + }, + "returnByDefault": true, + "title": "Effective Applications", + "type": "array", + "viewable": false, + }, + "effectiveAssignments": { + "description": "Effective Assignments", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Assignments Items", + "type": "object", + }, + "queryConfig": { + "referencedObjectFields": [ + "*", + ], + "referencedRelationshipFields": [ + [ + "roles", + "assignments", + ], + [ + "assignments", + ], + ], + }, + "returnByDefault": true, + "title": "Effective Assignments", + "type": "array", + "usageDescription": "", + "viewable": false, + }, + "effectiveGroups": { + "description": "Effective Groups", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Groups Items", + "type": "object", + }, + "queryConfig": { + "referencedRelationshipFields": [ + "groups", + ], + }, + "returnByDefault": true, + "title": "Effective Groups", + "type": "array", + "usageDescription": "", + "viewable": false, + }, + "effectiveRoles": { + "description": "Effective Roles", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Roles Items", + "type": "object", + }, + "queryConfig": { + "referencedRelationshipFields": [ + "roles", + ], + }, + "returnByDefault": true, + "title": "Effective Roles", + "type": "array", + "usageDescription": "", + "viewable": false, + }, + "frIndexedDate1": { + "description": "Generic Indexed Date 1", + "isPersonal": false, + "title": "Generic Indexed Date 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedDate2": { + "description": "Generic Indexed Date 2", + "isPersonal": false, + "title": "Generic Indexed Date 2", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedDate3": { + "description": "Generic Indexed Date 3", + "isPersonal": false, + "title": "Generic Indexed Date 3", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedDate4": { + "description": "Generic Indexed Date 4", + "isPersonal": false, + "title": "Generic Indexed Date 4", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedDate5": { + "description": "Generic Indexed Date 5", + "isPersonal": false, + "title": "Generic Indexed Date 5", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedInteger1": { + "description": "Generic Indexed Integer 1", + "isPersonal": false, + "title": "Generic Indexed Integer 1", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedInteger2": { + "description": "Generic Indexed Integer 2", + "isPersonal": false, + "title": "Generic Indexed Integer 2", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedInteger3": { + "description": "Generic Indexed Integer 3", + "isPersonal": false, + "title": "Generic Indexed Integer 3", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedInteger4": { + "description": "Generic Indexed Integer 4", + "isPersonal": false, + "title": "Generic Indexed Integer 4", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedInteger5": { + "description": "Generic Indexed Integer 5", + "isPersonal": false, + "title": "Generic Indexed Integer 5", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedMultivalued1": { + "description": "Generic Indexed Multivalue 1", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Indexed Multivalue 1", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedMultivalued2": { + "description": "Generic Indexed Multivalue 2", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Indexed Multivalue 2", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedMultivalued3": { + "description": "Generic Indexed Multivalue 3", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Indexed Multivalue 3", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedMultivalued4": { + "description": "Generic Indexed Multivalue 4", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Indexed Multivalue 4", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedMultivalued5": { + "description": "Generic Indexed Multivalue 5", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Indexed Multivalue 5", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString1": { + "description": "Generic Indexed String 1", + "isPersonal": false, + "title": "Generic Indexed String 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString2": { + "description": "Generic Indexed String 2", + "isPersonal": false, + "title": "Generic Indexed String 2", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString3": { + "description": "Generic Indexed String 3", + "isPersonal": false, + "title": "Generic Indexed String 3", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString4": { + "description": "Generic Indexed String 4", + "isPersonal": false, + "title": "Generic Indexed String 4", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frIndexedString5": { + "description": "Generic Indexed String 5", + "isPersonal": false, + "title": "Generic Indexed String 5", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedDate1": { + "description": "Generic Unindexed Date 1", + "isPersonal": false, + "title": "Generic Unindexed Date 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedDate2": { + "description": "Generic Unindexed Date 2", + "isPersonal": false, + "title": "Generic Unindexed Date 2", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedDate3": { + "description": "Generic Unindexed Date 3", + "isPersonal": false, + "title": "Generic Unindexed Date 3", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedDate4": { + "description": "Generic Unindexed Date 4", + "isPersonal": false, + "title": "Generic Unindexed Date 4", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedDate5": { + "description": "Generic Unindexed Date 5", + "isPersonal": false, + "title": "Generic Unindexed Date 5", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedInteger1": { + "description": "Generic Unindexed Integer 1", + "isPersonal": false, + "title": "Generic Unindexed Integer 1", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedInteger2": { + "description": "Generic Unindexed Integer 2", + "isPersonal": false, + "title": "Generic Unindexed Integer 2", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedInteger3": { + "description": "Generic Unindexed Integer 3", + "isPersonal": false, + "title": "Generic Unindexed Integer 3", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedInteger4": { + "description": "Generic Unindexed Integer 4", + "isPersonal": false, + "title": "Generic Unindexed Integer 4", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedInteger5": { + "description": "Generic Unindexed Integer 5", + "isPersonal": false, + "title": "Generic Unindexed Integer 5", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedMultivalued1": { + "description": "Generic Unindexed Multivalue 1", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Unindexed Multivalue 1", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedMultivalued2": { + "description": "Generic Unindexed Multivalue 2", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Unindexed Multivalue 2", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedMultivalued3": { + "description": "Generic Unindexed Multivalue 3", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Unindexed Multivalue 3", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedMultivalued4": { + "description": "Generic Unindexed Multivalue 4", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Unindexed Multivalue 4", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedMultivalued5": { + "description": "Generic Unindexed Multivalue 5", + "isPersonal": false, + "items": { + "type": "string", + }, + "title": "Generic Unindexed Multivalue 5", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedString1": { + "description": "Generic Unindexed String 1", + "isPersonal": false, + "title": "Generic Unindexed String 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedString2": { + "description": "Generic Unindexed String 2", + "isPersonal": false, + "title": "Generic Unindexed String 2", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedString3": { + "description": "Generic Unindexed String 3", + "isPersonal": false, + "title": "Generic Unindexed String 3", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedString4": { + "description": "Generic Unindexed String 4", + "isPersonal": false, + "title": "Generic Unindexed String 4", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "frUnindexedString5": { + "description": "Generic Unindexed String 5", + "isPersonal": false, + "title": "Generic Unindexed String 5", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "givenName": { + "description": "First Name", + "isPersonal": true, + "searchable": true, + "title": "First Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "groups": { + "description": "Groups", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:groups", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:groups:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Groups Items _refProperties", + "type": "object", }, }, - ], + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Group", + "path": "managed/bravo_group", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Groups Items", + "type": "relationship", + "validate": true, + }, + "relationshipGrantTemporalConstraintsEnforced": false, + "returnByDefault": false, + "title": "Groups", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, }, - }, - }, - }, - ], - }, - "managed": { - "_id": "managed", - "objects": [ - { - "lastSync": { - "effectiveAssignmentsProperty": "effectiveAssignments", - "lastSyncProperty": "lastSync", - }, - "meta": { - "property": "_meta", - "resourceCollection": "managed/alpha_usermeta", - "trackedProperties": [ - "createDate", - "lastChanged", - ], - }, - "name": "alpha_user", - "notifications": {}, - "schema": { - "$schema": "http://json-schema.org/draft-03/schema", - "icon": "fa-user", - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User", - "mat-icon": "people", - "order": [ - "_id", - "userName", - "password", - "givenName", - "cn", - "sn", - "mail", - "profileImage", - "description", - "accountStatus", - "telephoneNumber", - "postalAddress", - "city", - "postalCode", - "country", - "stateProvince", - "roles", - "assignments", - "groups", - "applications", - "manager", - "authzRoles", - "reports", - "effectiveRoles", - "effectiveAssignments", - "effectiveGroups", - "effectiveApplications", - "lastSync", - "kbaInfo", - "preferences", - "consentedMappings", - "ownerOfOrg", - "adminOfOrg", - "memberOfOrg", - "memberOfOrgIDs", - "ownerOfApp", - "frIndexedString1", - "frIndexedString2", - "frIndexedString3", - "frIndexedString4", - "frIndexedString5", - "frUnindexedString1", - "frUnindexedString2", - "frUnindexedString3", - "frUnindexedString4", - "frUnindexedString5", - "frIndexedMultivalued1", - "frIndexedMultivalued2", - "frIndexedMultivalued3", - "frIndexedMultivalued4", - "frIndexedMultivalued5", - "frUnindexedMultivalued1", - "frUnindexedMultivalued2", - "frUnindexedMultivalued3", - "frUnindexedMultivalued4", - "frUnindexedMultivalued5", - "frIndexedDate1", - "frIndexedDate2", - "frIndexedDate3", - "frIndexedDate4", - "frIndexedDate5", - "frUnindexedDate1", - "frUnindexedDate2", - "frUnindexedDate3", - "frUnindexedDate4", - "frUnindexedDate5", - "frIndexedInteger1", - "frIndexedInteger2", - "frIndexedInteger3", - "frIndexedInteger4", - "frIndexedInteger5", - "frUnindexedInteger1", - "frUnindexedInteger2", - "frUnindexedInteger3", - "frUnindexedInteger4", - "frUnindexedInteger5", - "assignedDashboard", - ], - "properties": { - "_id": { - "description": "User ID", + "kbaInfo": { + "description": "KBA Info", + "isPersonal": true, + "items": { + "order": [ + "answer", + "customQuestion", + "questionId", + ], + "properties": { + "answer": { + "description": "Answer", + "type": "string", + }, + "customQuestion": { + "description": "Custom question", + "type": "string", + }, + "questionId": { + "description": "Question ID", + "type": "string", + }, + }, + "required": [], + "title": "KBA Info Items", + "type": "object", + }, + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false, + }, + "lastSync": { + "description": "Last Sync timestamp", "isPersonal": false, - "policies": [ - { - "params": { - "forbiddenChars": [ - "/", - ], + "order": [ + "effectiveAssignments", + "timestamp", + ], + "properties": { + "effectiveAssignments": { + "description": "Effective Assignments", + "items": { + "title": "Effective Assignments Items", + "type": "object", }, - "policyId": "cannot-contain-characters", + "title": "Effective Assignments", + "type": "array", }, - ], + "timestamp": { + "description": "Timestamp", + "type": "string", + }, + }, + "required": [], + "scope": "private", "searchable": false, - "type": "string", + "title": "Last Sync timestamp", + "type": "object", "usageDescription": "", - "userEditable": false, "viewable": false, }, - "accountStatus": { - "default": "active", - "description": "Status", - "isPersonal": false, + "mail": { + "description": "Email Address", + "isPersonal": true, + "policies": [ + { + "policyId": "valid-email-address-format", + }, + ], "searchable": true, - "title": "Status", + "title": "Email Address", "type": "string", "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "manager": { + "description": "Manager", + "isPersonal": false, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Manager _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/bravo_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "reports", + "reverseRelationship": true, + "searchable": false, + "title": "Manager", + "type": "relationship", + "usageDescription": "", "userEditable": false, + "validate": true, "viewable": true, }, - "adminOfOrg": { + "memberOfOrg": { "items": { - "notifySelf": false, + "notifySelf": true, "properties": { "_ref": { "type": "string", @@ -41508,8 +70543,8 @@ a{ "resourceCollection": [ { "label": "Organization", - "notify": true, - "path": "managed/alpha_organization", + "notify": false, + "path": "managed/bravo_organization", "query": { "fields": [ "name", @@ -41519,7 +70554,7 @@ a{ }, }, ], - "reversePropertyName": "admins", + "reversePropertyName": "members", "reverseRelationship": true, "type": "relationship", "validate": true, @@ -41527,32 +70562,192 @@ a{ "policies": [], "returnByDefault": false, "searchable": false, - "title": "Organizations I Administer", + "title": "Organizations to which I Belong", "type": "array", "userEditable": false, "viewable": true, }, - "aliasList": { - "description": "List of identity aliases used primarily to record social IdP subjects for this user", - "isVirtual": false, + "memberOfOrgIDs": { + "isVirtual": true, "items": { - "title": "User Alias Names Items", + "title": "org identifiers", "type": "string", }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs", + ], + "referencedRelationshipFields": [ + "memberOfOrg", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "MemberOfOrgIDs", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "ownerOfApp": { + "items": { + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Application", + "path": "managed/bravo_application", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [ + "name", + ], + }, + }, + ], + "reversePropertyName": "owners", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, "returnByDefault": false, "searchable": false, - "title": "User Alias Names List", + "title": "Applications I Own", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "ownerOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/bravo_organization", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "owners", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Own", "type": "array", + "userEditable": false, + "viewable": true, + }, + "password": { + "description": "Password", + "isPersonal": false, + "isProtected": true, + "scope": "private", + "searchable": false, + "title": "Password", + "type": "string", + "usageDescription": "", "userEditable": true, "viewable": false, }, - "applications": { - "description": "Applications", - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:applications", + "postalAddress": { + "description": "Address 1", + "isPersonal": true, + "title": "Address 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "postalCode": { + "description": "Postal Code", + "isPersonal": false, + "title": "Postal Code", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "preferences": { + "description": "Preferences", + "isPersonal": false, + "order": [ + "updates", + "marketing", + ], + "properties": { + "marketing": { + "description": "Send me special offers and services", + "type": "boolean", + }, + "updates": { + "description": "Send me news and updates", + "type": "boolean", + }, + }, + "required": [], + "searchable": false, + "title": "Preferences", + "type": "object", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "profileImage": { + "description": "Profile Image", + "isPersonal": true, + "searchable": true, + "title": "Profile Image", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": false, + }, + "reports": { + "description": "Direct Reports", "isPersonal": false, "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:applications:items", - "notifySelf": true, + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items", "properties": { "_ref": { "description": "References a relationship from a managed object", @@ -41566,72 +70761,249 @@ a{ "type": "string", }, }, - "title": "Groups Items _refProperties", + "title": "Direct Reports Items _refProperties", "type": "object", }, }, "resourceCollection": [ { - "label": "Application", - "path": "managed/alpha_application", + "label": "User", + "path": "managed/bravo_user", "query": { "fields": [ - "name", + "userName", + "givenName", + "sn", ], "queryFilter": "true", - "sortKeys": [ + }, + }, + ], + "reversePropertyName": "manager", + "reverseRelationship": true, + "title": "Direct Reports Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Direct Reports", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, + }, + "roles": { + "description": "Provisioning Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Role", + "path": "managed/bravo_role", + "query": { + "fields": [ "name", ], + "queryFilter": "true", }, }, ], "reversePropertyName": "members", "reverseRelationship": true, - "title": "Groups Items", + "title": "Provisioning Roles Items", "type": "relationship", "validate": true, }, + "relationshipGrantTemporalConstraintsEnforced": true, "returnByDefault": false, - "title": "Applications", + "title": "Provisioning Roles", "type": "array", "usageDescription": "", "userEditable": false, + "viewable": true, + }, + "sn": { + "description": "Last Name", + "isPersonal": true, + "searchable": true, + "title": "Last Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "stateProvince": { + "description": "State/Province", + "isPersonal": false, + "title": "State/Province", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "telephoneNumber": { + "description": "Telephone Number", + "isPersonal": true, + "pattern": "^\\+?([0-9\\- \\(\\)])*$", + "title": "Telephone Number", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + "userName": { + "description": "Username", + "isPersonal": true, + "minLength": 1, + "policies": [ + { + "policyId": "valid-username", + }, + { + "params": { + "forbiddenChars": [ + "/", + ], + }, + "policyId": "cannot-contain-characters", + }, + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "searchable": true, + "title": "Username", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, + }, + }, + "required": [ + "userName", + "givenName", + "sn", + "mail", + ], + "title": "Bravo realm - User", + "type": "object", + "viewable": true, + }, + }, + { + "name": "alpha_role", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "", + "icon": "fa-check-square-o", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role", + "mat-icon": "assignment_ind", + "order": [ + "_id", + "name", + "description", + "members", + "assignments", + "applications", + "condition", + "temporalConstraints", + ], + "properties": { + "_id": { + "description": "Role ID", + "searchable": false, + "title": "Name", + "type": "string", "viewable": false, }, - "assignedDashboard": { - "description": "List of items to click on for this user", - "isVirtual": true, + "applications": { + "description": "Role Applications", "items": { - "title": "Assigned Dashboard Items", - "type": "string", - }, - "queryConfig": { - "flattenProperties": true, - "referencedObjectFields": [ - "name", - ], - "referencedRelationshipFields": [ - [ - "roles", - "applications", - ], - [ - "applications", - ], + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:applications:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Role Application Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Application", + "path": "managed/alpha_application", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, ], - }, - "searchable": false, - "title": "Assigned Dashboard", + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Role Application Items", + "type": "relationship", + "validate": true, + }, + "notifyRelationships": [ + "members", + ], + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Applications", "type": "array", - "userEditable": false, - "viewable": true, + "viewable": false, }, "assignments": { - "description": "Assignments", - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments", - "isPersonal": false, + "description": "Managed Assignments", "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items", "notifySelf": true, "properties": { "_ref": { @@ -41641,23 +71013,17 @@ a{ "_refProperties": { "description": "Supports metadata within the relationship", "properties": { - "_grantType": { - "description": "Grant Type", - "label": "Grant Type", - "type": "string", - }, "_id": { "description": "_refProperties object ID", "type": "string", }, }, - "title": "Provisioning Roles Items _refProperties", + "title": "Managed Assignments Items _refProperties", "type": "object", }, }, "resourceCollection": [ { - "conditionalAssociationField": "condition", "label": "Assignment", "path": "managed/alpha_assignment", "query": { @@ -41668,25 +71034,39 @@ a{ }, }, ], - "reversePropertyName": "members", + "reversePropertyName": "roles", "reverseRelationship": true, - "title": "Assignments Items", + "title": "Managed Assignments Items", "type": "relationship", "validate": true, }, + "notifyRelationships": [ + "members", + ], "returnByDefault": false, - "title": "Assignments", + "title": "Managed Assignments", "type": "array", - "usageDescription": "", - "userEditable": false, "viewable": true, }, - "authzRoles": { - "description": "Authorization Roles", - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles", - "isPersonal": false, + "condition": { + "description": "A conditional filter for this role", + "isConditional": true, + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false, + }, + "description": { + "description": "The role description, used for display purposes.", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true, + }, + "members": { + "description": "Role Members", "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items", "properties": { "_ref": { "description": "References a relationship from a managed object", @@ -41695,626 +71075,686 @@ a{ "_refProperties": { "description": "Supports metadata within the relationship", "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, "_id": { "description": "_refProperties object ID", "type": "string", }, }, - "title": "Authorization Roles Items _refProperties", + "title": "Role Members Items _refProperties", "type": "object", }, }, "resourceCollection": [ { - "conditionalAssociationField": "condition", - "label": "Internal Role", - "path": "internal/role", + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/alpha_user", "query": { "fields": [ - "name", + "userName", + "givenName", + "sn", ], "queryFilter": "true", }, }, ], - "reversePropertyName": "authzMembers", + "reversePropertyName": "roles", "reverseRelationship": true, - "title": "Authorization Roles Items", + "title": "Role Members Items", "type": "relationship", "validate": true, }, + "relationshipGrantTemporalConstraintsEnforced": true, "returnByDefault": false, - "title": "Authorization Roles", + "title": "Role Members", "type": "array", - "usageDescription": "", - "userEditable": false, - "viewable": true, - }, - "city": { - "description": "City", - "isPersonal": false, - "title": "City", - "type": "string", - "usageDescription": "", - "userEditable": true, "viewable": true, }, - "cn": { - "default": "{{givenName}} {{sn}}", - "description": "Common Name", - "isPersonal": true, - "scope": "private", - "searchable": false, - "title": "Common Name", - "type": "string", - "userEditable": false, - "viewable": false, - }, - "consentedMappings": { - "description": "Consented Mappings", - "isPersonal": false, - "isVirtual": false, - "items": { - "items": { - "order": [ - "mapping", - "consentDate", - ], - "properties": { - "consentDate": { - "description": "Consent Date", - "searchable": true, - "title": "Consent Date", - "type": "string", - "userEditable": true, - "viewable": true, - }, - "mapping": { - "description": "Mapping", - "searchable": true, - "title": "Mapping", - "type": "string", - "userEditable": true, - "viewable": true, - }, - }, - "required": [ - "mapping", - "consentDate", - ], - "title": "Consented Mappings Item", - "type": "object", + "name": { + "description": "The role name, used for display purposes.", + "policies": [ + { + "policyId": "unique", }, - "title": "Consented Mappings Items", - "type": "array", - }, - "returnByDefault": false, - "searchable": false, - "title": "Consented Mappings", - "type": "array", - "usageDescription": "", - "userEditable": true, - "viewable": false, - }, - "country": { - "description": "Country", - "isPersonal": false, - "title": "Country", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "description": { - "description": "Description", - "isPersonal": false, + ], "searchable": true, - "title": "Description", + "title": "Name", "type": "string", - "usageDescription": "", - "userEditable": true, "viewable": true, }, - "effectiveApplications": { - "description": "Effective Applications", - "isPersonal": false, - "isVirtual": true, + "temporalConstraints": { + "description": "An array of temporal constraints for a role", + "isTemporalConstraint": true, "items": { - "title": "Effective Assigned Application Items", - "type": "object", - }, - "queryConfig": { - "referencedObjectFields": [ - "name", + "order": [ + "duration", ], - "referencedRelationshipFields": [ - [ - "roles", - "applications", - ], - [ - "applications", - ], + "properties": { + "duration": { + "description": "Duration", + "type": "string", + }, + }, + "required": [ + "duration", ], - }, - "returnByDefault": true, - "title": "Effective Applications", - "type": "array", - "viewable": false, - }, - "effectiveAssignments": { - "description": "Effective Assignments", - "isPersonal": false, - "isVirtual": true, - "items": { - "title": "Effective Assignments Items", + "title": "Temporal Constraints Items", "type": "object", }, - "queryConfig": { - "referencedObjectFields": [ - "*", - ], - "referencedRelationshipFields": [ - [ - "roles", - "assignments", - ], - [ - "assignments", - ], - ], - }, + "notifyRelationships": [ + "members", + ], "returnByDefault": true, - "title": "Effective Assignments", + "title": "Temporal Constraints", "type": "array", - "usageDescription": "", "viewable": false, }, - "effectiveGroups": { - "description": "Effective Groups", - "isPersonal": false, - "isVirtual": true, - "items": { - "title": "Effective Groups Items", - "type": "object", - }, - "queryConfig": { - "referencedRelationshipFields": [ - "groups", - ], - }, - "returnByDefault": true, - "title": "Effective Groups", - "type": "array", - "usageDescription": "", + }, + "required": [ + "name", + ], + "title": "Alpha realm - Role", + "type": "object", + }, + }, + { + "name": "bravo_role", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "", + "icon": "fa-check-square-o", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role", + "mat-icon": "assignment_ind", + "order": [ + "_id", + "name", + "description", + "members", + "assignments", + "applications", + "condition", + "temporalConstraints", + ], + "properties": { + "_id": { + "description": "Role ID", + "searchable": false, + "title": "Name", + "type": "string", "viewable": false, }, - "effectiveRoles": { - "description": "Effective Roles", - "isPersonal": false, - "isVirtual": true, + "applications": { + "description": "Role Applications", "items": { - "title": "Effective Roles Items", - "type": "object", - }, - "queryConfig": { - "referencedRelationshipFields": [ - "roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:applications:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Role Application Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Application", + "path": "managed/bravo_application", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Role Application Items", + "type": "relationship", + "validate": true, }, - "returnByDefault": true, - "title": "Effective Roles", + "notifyRelationships": [ + "members", + ], + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Applications", "type": "array", - "usageDescription": "", "viewable": false, }, - "frIndexedDate1": { - "description": "Generic Indexed Date 1", - "isPersonal": false, - "title": "Generic Indexed Date 1", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedDate2": { - "description": "Generic Indexed Date 2", - "isPersonal": false, - "title": "Generic Indexed Date 2", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedDate3": { - "description": "Generic Indexed Date 3", - "isPersonal": false, - "title": "Generic Indexed Date 3", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedDate4": { - "description": "Generic Indexed Date 4", - "isPersonal": false, - "title": "Generic Indexed Date 4", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedDate5": { - "description": "Generic Indexed Date 5", - "isPersonal": false, - "title": "Generic Indexed Date 5", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedInteger1": { - "description": "Generic Indexed Integer 1", - "isPersonal": false, - "title": "Generic Indexed Integer 1", - "type": "number", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedInteger2": { - "description": "Generic Indexed Integer 2", - "isPersonal": false, - "title": "Generic Indexed Integer 2", - "type": "number", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedInteger3": { - "description": "Generic Indexed Integer 3", - "isPersonal": false, - "title": "Generic Indexed Integer 3", - "type": "number", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedInteger4": { - "description": "Generic Indexed Integer 4", - "isPersonal": false, - "title": "Generic Indexed Integer 4", - "type": "number", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedInteger5": { - "description": "Generic Indexed Integer 5", - "isPersonal": false, - "title": "Generic Indexed Integer 5", - "type": "number", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedMultivalued1": { - "description": "Generic Indexed Multivalue 1", - "isPersonal": false, - "items": { - "type": "string", - }, - "title": "Generic Indexed Multivalue 1", - "type": "array", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedMultivalued2": { - "description": "Generic Indexed Multivalue 2", - "isPersonal": false, - "items": { - "type": "string", - }, - "title": "Generic Indexed Multivalue 2", - "type": "array", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedMultivalued3": { - "description": "Generic Indexed Multivalue 3", - "isPersonal": false, - "items": { - "type": "string", - }, - "title": "Generic Indexed Multivalue 3", - "type": "array", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedMultivalued4": { - "description": "Generic Indexed Multivalue 4", - "isPersonal": false, - "items": { - "type": "string", - }, - "title": "Generic Indexed Multivalue 4", - "type": "array", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedMultivalued5": { - "description": "Generic Indexed Multivalue 5", - "isPersonal": false, + "assignments": { + "description": "Managed Assignments", "items": { - "type": "string", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Managed Assignments Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Assignment", + "path": "managed/bravo_assignment", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Managed Assignments Items", + "type": "relationship", + "validate": true, }, - "title": "Generic Indexed Multivalue 5", + "notifyRelationships": [ + "members", + ], + "returnByDefault": false, + "title": "Managed Assignments", "type": "array", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedString1": { - "description": "Generic Indexed String 1", - "isPersonal": false, - "title": "Generic Indexed String 1", - "type": "string", - "usageDescription": "", - "userEditable": true, "viewable": true, }, - "frIndexedString2": { - "description": "Generic Indexed String 2", - "isPersonal": false, - "title": "Generic Indexed String 2", + "condition": { + "description": "A conditional filter for this role", + "isConditional": true, + "searchable": false, + "title": "Condition", "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, + "viewable": false, }, - "frIndexedString3": { - "description": "Generic Indexed String 3", - "isPersonal": false, - "title": "Generic Indexed String 3", + "description": { + "description": "The role description, used for display purposes.", + "searchable": true, + "title": "Description", "type": "string", - "usageDescription": "", - "userEditable": true, "viewable": true, }, - "frIndexedString4": { - "description": "Generic Indexed String 4", - "isPersonal": false, - "title": "Generic Indexed String 4", - "type": "string", - "usageDescription": "", - "userEditable": true, + "members": { + "description": "Role Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Role Members Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/bravo_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Role Members Items", + "type": "relationship", + "validate": true, + }, + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Role Members", + "type": "array", "viewable": true, }, - "frIndexedString5": { - "description": "Generic Indexed String 5", - "isPersonal": false, - "title": "Generic Indexed String 5", + "name": { + "description": "The role name, used for display purposes.", + "policies": [ + { + "policyId": "unique", + }, + ], + "searchable": true, + "title": "Name", "type": "string", - "usageDescription": "", - "userEditable": true, "viewable": true, }, - "frUnindexedDate1": { - "description": "Generic Unindexed Date 1", - "isPersonal": false, - "title": "Generic Unindexed Date 1", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, + "temporalConstraints": { + "description": "An array of temporal constraints for a role", + "isTemporalConstraint": true, + "items": { + "order": [ + "duration", + ], + "properties": { + "duration": { + "description": "Duration", + "type": "string", + }, + }, + "required": [ + "duration", + ], + "title": "Temporal Constraints Items", + "type": "object", + }, + "notifyRelationships": [ + "members", + ], + "returnByDefault": true, + "title": "Temporal Constraints", + "type": "array", + "viewable": false, }, - "frUnindexedDate2": { - "description": "Generic Unindexed Date 2", - "isPersonal": false, - "title": "Generic Unindexed Date 2", + }, + "required": [ + "name", + ], + "title": "Bravo realm - Role", + "type": "object", + }, + }, + { + "attributeEncryption": {}, + "name": "alpha_assignment", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "A role assignment", + "icon": "fa-key", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment", + "mat-icon": "vpn_key", + "order": [ + "_id", + "name", + "description", + "type", + "mapping", + "attributes", + "linkQualifiers", + "roles", + "members", + "condition", + "weight", + ], + "properties": { + "_id": { + "description": "The assignment ID", + "searchable": false, + "title": "Name", "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, + "viewable": false, }, - "frUnindexedDate3": { - "description": "Generic Unindexed Date 3", - "isPersonal": false, - "title": "Generic Unindexed Date 3", - "type": "string", - "usageDescription": "", - "userEditable": true, + "attributes": { + "description": "The attributes operated on by this assignment.", + "items": { + "order": [ + "assignmentOperation", + "unassignmentOperation", + "name", + "value", + ], + "properties": { + "assignmentOperation": { + "description": "Assignment operation", + "type": "string", + }, + "name": { + "description": "Name", + "type": "string", + }, + "unassignmentOperation": { + "description": "Unassignment operation", + "type": "string", + }, + "value": { + "description": "Value", + "type": "string", + }, + }, + "required": [], + "title": "Assignment Attributes Items", + "type": "object", + }, + "notifyRelationships": [ + "roles", + "members", + ], + "title": "Assignment Attributes", + "type": "array", "viewable": true, }, - "frUnindexedDate4": { - "description": "Generic Unindexed Date 4", - "isPersonal": false, - "title": "Generic Unindexed Date 4", + "condition": { + "description": "A conditional filter for this assignment", + "isConditional": true, + "searchable": false, + "title": "Condition", "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, + "viewable": false, }, - "frUnindexedDate5": { - "description": "Generic Unindexed Date 5", - "isPersonal": false, - "title": "Generic Unindexed Date 5", + "description": { + "description": "The assignment description, used for display purposes.", + "searchable": true, + "title": "Description", "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frUnindexedInteger1": { - "description": "Generic Unindexed Integer 1", - "isPersonal": false, - "title": "Generic Unindexed Integer 1", - "type": "number", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frUnindexedInteger2": { - "description": "Generic Unindexed Integer 2", - "isPersonal": false, - "title": "Generic Unindexed Integer 2", - "type": "number", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frUnindexedInteger3": { - "description": "Generic Unindexed Integer 3", - "isPersonal": false, - "title": "Generic Unindexed Integer 3", - "type": "number", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frUnindexedInteger4": { - "description": "Generic Unindexed Integer 4", - "isPersonal": false, - "title": "Generic Unindexed Integer 4", - "type": "number", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frUnindexedInteger5": { - "description": "Generic Unindexed Integer 5", - "isPersonal": false, - "title": "Generic Unindexed Integer 5", - "type": "number", - "usageDescription": "", - "userEditable": true, "viewable": true, }, - "frUnindexedMultivalued1": { - "description": "Generic Unindexed Multivalue 1", - "isPersonal": false, + "linkQualifiers": { + "description": "Conditional link qualifiers to restrict this assignment to.", "items": { + "title": "Link Qualifiers Items", "type": "string", }, - "title": "Generic Unindexed Multivalue 1", + "title": "Link Qualifiers", "type": "array", - "usageDescription": "", - "userEditable": true, "viewable": true, }, - "frUnindexedMultivalued2": { - "description": "Generic Unindexed Multivalue 2", - "isPersonal": false, - "items": { - "type": "string", - }, - "title": "Generic Unindexed Multivalue 2", - "type": "array", - "usageDescription": "", - "userEditable": true, + "mapping": { + "description": "The name of the mapping this assignment applies to", + "policies": [ + { + "policyId": "mapping-exists", + }, + ], + "searchable": true, + "title": "Mapping", + "type": "string", "viewable": true, }, - "frUnindexedMultivalued3": { - "description": "Generic Unindexed Multivalue 3", - "isPersonal": false, + "members": { + "description": "Assignment Members", "items": { - "type": "string", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Assignment Members Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "assignments", + "reverseRelationship": true, + "title": "Assignment Members Items", + "type": "relationship", + "validate": true, }, - "title": "Generic Unindexed Multivalue 3", + "returnByDefault": false, + "title": "Assignment Members", "type": "array", - "usageDescription": "", - "userEditable": true, "viewable": true, }, - "frUnindexedMultivalued4": { - "description": "Generic Unindexed Multivalue 4", - "isPersonal": false, + "name": { + "description": "The assignment name, used for display purposes.", + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true, + }, + "roles": { + "description": "Managed Roles", "items": { - "type": "string", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Managed Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Role", + "notify": true, + "path": "managed/alpha_role", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "assignments", + "reverseRelationship": true, + "title": "Managed Roles Items", + "type": "relationship", + "validate": true, }, - "title": "Generic Unindexed Multivalue 4", + "returnByDefault": false, + "title": "Managed Roles", "type": "array", - "usageDescription": "", - "userEditable": true, + "userEditable": false, + "viewable": true, + }, + "type": { + "description": "The type of object this assignment represents", + "title": "Type", + "type": "string", + "viewable": true, + }, + "weight": { + "description": "The weight of the assignment.", + "notifyRelationships": [ + "roles", + "members", + ], + "searchable": false, + "title": "Weight", + "type": [ + "number", + "null", + ], "viewable": true, }, - "frUnindexedMultivalued5": { - "description": "Generic Unindexed Multivalue 5", - "isPersonal": false, + }, + "required": [ + "name", + "description", + "mapping", + ], + "title": "Alpha realm - Assignment", + "type": "object", + }, + }, + { + "attributeEncryption": {}, + "name": "bravo_assignment", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "A role assignment", + "icon": "fa-key", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment", + "mat-icon": "vpn_key", + "order": [ + "_id", + "name", + "description", + "type", + "mapping", + "attributes", + "linkQualifiers", + "roles", + "members", + "condition", + "weight", + ], + "properties": { + "_id": { + "description": "The assignment ID", + "searchable": false, + "title": "Name", + "type": "string", + "viewable": false, + }, + "attributes": { + "description": "The attributes operated on by this assignment.", "items": { - "type": "string", + "order": [ + "assignmentOperation", + "unassignmentOperation", + "name", + "value", + ], + "properties": { + "assignmentOperation": { + "description": "Assignment operation", + "type": "string", + }, + "name": { + "description": "Name", + "type": "string", + }, + "unassignmentOperation": { + "description": "Unassignment operation", + "type": "string", + }, + "value": { + "description": "Value", + "type": "string", + }, + }, + "required": [], + "title": "Assignment Attributes Items", + "type": "object", }, - "title": "Generic Unindexed Multivalue 5", + "notifyRelationships": [ + "roles", + "members", + ], + "title": "Assignment Attributes", "type": "array", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frUnindexedString1": { - "description": "Generic Unindexed String 1", - "isPersonal": false, - "title": "Generic Unindexed String 1", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frUnindexedString2": { - "description": "Generic Unindexed String 2", - "isPersonal": false, - "title": "Generic Unindexed String 2", - "type": "string", - "usageDescription": "", - "userEditable": true, "viewable": true, }, - "frUnindexedString3": { - "description": "Generic Unindexed String 3", - "isPersonal": false, - "title": "Generic Unindexed String 3", + "condition": { + "description": "A conditional filter for this assignment", + "isConditional": true, + "searchable": false, + "title": "Condition", "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, + "viewable": false, }, - "frUnindexedString4": { - "description": "Generic Unindexed String 4", - "isPersonal": false, - "title": "Generic Unindexed String 4", + "description": { + "description": "The assignment description, used for display purposes.", + "searchable": true, + "title": "Description", "type": "string", - "usageDescription": "", - "userEditable": true, "viewable": true, }, - "frUnindexedString5": { - "description": "Generic Unindexed String 5", - "isPersonal": false, - "title": "Generic Unindexed String 5", - "type": "string", - "usageDescription": "", - "userEditable": true, + "linkQualifiers": { + "description": "Conditional link qualifiers to restrict this assignment to.", + "items": { + "title": "Link Qualifiers Items", + "type": "string", + }, + "title": "Link Qualifiers", + "type": "array", "viewable": true, }, - "givenName": { - "description": "First Name", - "isPersonal": true, + "mapping": { + "description": "The name of the mapping this assignment applies to", + "policies": [ + { + "policyId": "mapping-exists", + }, + ], "searchable": true, - "title": "First Name", + "title": "Mapping", "type": "string", - "usageDescription": "", - "userEditable": true, "viewable": true, }, - "groups": { - "description": "Groups", - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:groups", - "isPersonal": false, + "members": { + "description": "Assignment Members", "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:groups:items", - "notifySelf": true, + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items", "properties": { "_ref": { "description": "References a relationship from a managed object", @@ -42333,228 +71773,167 @@ a{ "type": "string", }, }, - "title": "Groups Items _refProperties", + "title": "Assignment Members Items _refProperties", "type": "object", }, }, "resourceCollection": [ { - "conditionalAssociationField": "condition", - "label": "Group", - "path": "managed/alpha_group", + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/bravo_user", "query": { "fields": [ - "name", + "userName", + "givenName", + "sn", ], "queryFilter": "true", }, }, ], - "reversePropertyName": "members", + "reversePropertyName": "assignments", "reverseRelationship": true, - "title": "Groups Items", + "title": "Assignment Members Items", "type": "relationship", "validate": true, }, - "relationshipGrantTemporalConstraintsEnforced": false, "returnByDefault": false, - "title": "Groups", + "title": "Assignment Members", "type": "array", - "usageDescription": "", - "userEditable": false, "viewable": true, }, - "kbaInfo": { - "description": "KBA Info", - "isPersonal": true, - "items": { - "order": [ - "answer", - "customQuestion", - "questionId", - ], - "properties": { - "answer": { - "description": "Answer", - "type": "string", - }, - "customQuestion": { - "description": "Custom question", - "type": "string", - }, - "questionId": { - "description": "Question ID", - "type": "string", - }, - }, - "required": [], - "title": "KBA Info Items", - "type": "object", - }, - "type": "array", - "usageDescription": "", - "userEditable": true, - "viewable": false, - }, - "lastSync": { - "description": "Last Sync timestamp", - "isPersonal": false, - "order": [ - "effectiveAssignments", - "timestamp", - ], - "properties": { - "effectiveAssignments": { - "description": "Effective Assignments", - "items": { - "title": "Effective Assignments Items", - "type": "object", - }, - "title": "Effective Assignments", - "type": "array", - }, - "timestamp": { - "description": "Timestamp", - "type": "string", - }, - }, - "required": [], - "scope": "private", - "searchable": false, - "title": "Last Sync timestamp", - "type": "object", - "usageDescription": "", - "viewable": false, - }, - "mail": { - "description": "Email Address", - "isPersonal": true, - "policies": [ - { - "policyId": "valid-email-address-format", - }, - ], + "name": { + "description": "The assignment name, used for display purposes.", "searchable": true, - "title": "Email Address", + "title": "Name", "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "manager": { - "description": "Manager", - "isPersonal": false, - "properties": { - "_ref": { - "description": "References a relationship from a managed object", - "type": "string", - }, - "_refProperties": { - "description": "Supports metadata within the relationship", - "properties": { - "_id": { - "description": "_refProperties object ID", - "type": "string", - }, - }, - "title": "Manager _refProperties", - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "User", - "path": "managed/alpha_user", - "query": { - "fields": [ - "userName", - "givenName", - "sn", - ], - "queryFilter": "true", - }, - }, - ], - "reversePropertyName": "reports", - "reverseRelationship": true, - "searchable": false, - "title": "Manager", - "type": "relationship", - "usageDescription": "", - "userEditable": false, - "validate": true, "viewable": true, }, - "memberOfOrg": { + "roles": { + "description": "Managed Roles", "items": { - "notifySelf": true, + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items", "properties": { "_ref": { + "description": "References a relationship from a managed object", "type": "string", }, "_refProperties": { + "description": "Supports metadata within the relationship", "properties": { "_id": { - "propName": "_id", - "required": false, + "description": "_refProperties object ID", "type": "string", }, }, + "title": "Managed Roles Items _refProperties", "type": "object", }, }, "resourceCollection": [ { - "label": "Organization", - "notify": false, - "path": "managed/alpha_organization", + "label": "Role", + "notify": true, + "path": "managed/bravo_role", "query": { "fields": [ "name", ], "queryFilter": "true", - "sortKeys": [], }, }, ], - "reversePropertyName": "members", + "reversePropertyName": "assignments", "reverseRelationship": true, + "title": "Managed Roles Items", "type": "relationship", "validate": true, }, - "policies": [], "returnByDefault": false, - "searchable": false, - "title": "Organizations to which I Belong", + "title": "Managed Roles", "type": "array", "userEditable": false, "viewable": true, }, - "memberOfOrgIDs": { + "type": { + "description": "The type of object this assignment represents", + "title": "Type", + "type": "string", + "viewable": true, + }, + "weight": { + "description": "The weight of the assignment.", + "notifyRelationships": [ + "roles", + "members", + ], + "searchable": false, + "title": "Weight", + "type": [ + "number", + "null", + ], + "viewable": true, + }, + }, + "required": [ + "name", + "description", + "mapping", + ], + "title": "Bravo realm - Assignment", + "type": "object", + }, + }, + { + "name": "alpha_organization", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "An organization or tenant, whose resources are managed by organizational admins.", + "icon": "fa-building", + "mat-icon": "domain", + "order": [ + "name", + "description", + "owners", + "admins", + "members", + "parent", + "children", + "adminIDs", + "ownerIDs", + "parentAdminIDs", + "parentOwnerIDs", + "parentIDs", + ], + "properties": { + "adminIDs": { "isVirtual": true, "items": { - "title": "org identifiers", + "title": "admin ids", "type": "string", }, "queryConfig": { "flattenProperties": true, "referencedObjectFields": [ "_id", - "parentIDs", ], "referencedRelationshipFields": [ - "memberOfOrg", + "admins", ], }, "returnByDefault": true, "searchable": false, - "title": "MemberOfOrgIDs", + "title": "Admin user ids", "type": "array", "userEditable": false, "viewable": false, }, - "ownerOfApp": { + "admins": { "items": { + "notifySelf": true, "properties": { "_ref": { "type": "string", @@ -42562,7 +71941,8 @@ a{ "_refProperties": { "properties": { "_id": { - "description": "_refProperties object ID", + "propName": "_id", + "required": false, "type": "string", }, }, @@ -42571,34 +71951,39 @@ a{ }, "resourceCollection": [ { - "label": "Application", - "path": "managed/alpha_application", + "label": "User", + "notify": false, + "path": "managed/alpha_user", "query": { "fields": [ - "name", + "userName", + "givenName", + "sn", ], "queryFilter": "true", - "sortKeys": [ - "name", - ], + "sortKeys": [], }, }, ], - "reversePropertyName": "owners", + "reversePropertyName": "adminOfOrg", "reverseRelationship": true, "type": "relationship", "validate": true, }, + "notifyRelationships": [ + "children", + ], "returnByDefault": false, "searchable": false, - "title": "Applications I Own", + "title": "Administrators", "type": "array", "userEditable": false, "viewable": true, }, - "ownerOfOrg": { + "children": { + "description": "Child Organizations", "items": { - "notifySelf": false, + "notifySelf": true, "properties": { "_ref": { "type": "string", @@ -42622,13 +72007,14 @@ a{ "query": { "fields": [ "name", + "description", ], "queryFilter": "true", "sortKeys": [], }, }, ], - "reversePropertyName": "owners", + "reversePropertyName": "parent", "reverseRelationship": true, "type": "relationship", "validate": true, @@ -42636,391 +72022,96 @@ a{ "policies": [], "returnByDefault": false, "searchable": false, - "title": "Organizations I Own", + "title": "Child Organizations", "type": "array", "userEditable": false, - "viewable": true, - }, - "password": { - "description": "Password", - "isPersonal": false, - "isProtected": true, - "scope": "private", - "searchable": false, - "title": "Password", - "type": "string", - "usageDescription": "", - "userEditable": true, "viewable": false, }, - "postalAddress": { - "description": "Address 1", - "isPersonal": true, - "title": "Address 1", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "postalCode": { - "description": "Postal Code", - "isPersonal": false, - "title": "Postal Code", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "preferences": { - "description": "Preferences", - "isPersonal": false, - "order": [ - "updates", - "marketing", - ], - "properties": { - "marketing": { - "description": "Send me special offers and services", - "type": "boolean", - }, - "updates": { - "description": "Send me news and updates", - "type": "boolean", - }, - }, - "required": [], - "searchable": false, - "title": "Preferences", - "type": "object", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "profileImage": { - "description": "Profile Image", - "isPersonal": true, + "description": { "searchable": true, - "title": "Profile Image", + "title": "Description", "type": "string", - "usageDescription": "", "userEditable": true, - "viewable": false, - }, - "reports": { - "description": "Direct Reports", - "isPersonal": false, - "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items", - "properties": { - "_ref": { - "description": "References a relationship from a managed object", - "type": "string", - }, - "_refProperties": { - "description": "Supports metadata within the relationship", - "properties": { - "_id": { - "description": "_refProperties object ID", - "type": "string", - }, - }, - "title": "Direct Reports Items _refProperties", - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "User", - "path": "managed/alpha_user", - "query": { - "fields": [ - "userName", - "givenName", - "sn", - ], - "queryFilter": "true", - }, - }, - ], - "reversePropertyName": "manager", - "reverseRelationship": true, - "title": "Direct Reports Items", - "type": "relationship", - "validate": true, - }, - "returnByDefault": false, - "title": "Direct Reports", - "type": "array", - "usageDescription": "", - "userEditable": false, "viewable": true, }, - "roles": { - "description": "Provisioning Roles", - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles", - "isPersonal": false, + "members": { "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items", - "notifySelf": true, + "notifySelf": false, "properties": { "_ref": { - "description": "References a relationship from a managed object", "type": "string", }, - "_refProperties": { - "description": "Supports metadata within the relationship", - "properties": { - "_grantType": { - "description": "Grant Type", - "label": "Grant Type", - "type": "string", - }, + "_refProperties": { + "properties": { "_id": { - "description": "_refProperties object ID", + "propName": "_id", + "required": false, "type": "string", }, }, - "title": "Provisioning Roles Items _refProperties", "type": "object", }, }, "resourceCollection": [ { - "conditionalAssociationField": "condition", - "label": "Role", - "path": "managed/alpha_role", + "label": "User", + "notify": true, + "path": "managed/alpha_user", "query": { "fields": [ - "name", + "userName", + "givenName", + "sn", ], "queryFilter": "true", + "sortKeys": [], }, }, ], - "reversePropertyName": "members", + "reversePropertyName": "memberOfOrg", "reverseRelationship": true, - "title": "Provisioning Roles Items", "type": "relationship", "validate": true, }, - "relationshipGrantTemporalConstraintsEnforced": true, "returnByDefault": false, - "title": "Provisioning Roles", + "searchable": false, + "title": "Members", "type": "array", - "usageDescription": "", "userEditable": false, "viewable": true, }, - "sn": { - "description": "Last Name", - "isPersonal": true, - "searchable": true, - "title": "Last Name", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "stateProvince": { - "description": "State/Province", - "isPersonal": false, - "title": "State/Province", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "telephoneNumber": { - "description": "Telephone Number", - "isPersonal": true, - "pattern": "^\\+?([0-9\\- \\(\\)])*$", - "title": "Telephone Number", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "userName": { - "description": "Username", - "isPersonal": true, - "minLength": 1, - "policies": [ - { - "policyId": "valid-username", - }, - { - "params": { - "forbiddenChars": [ - "/", - ], - }, - "policyId": "cannot-contain-characters", - }, - { - "params": { - "minLength": 1, - }, - "policyId": "minimum-length", - }, - { - "params": { - "maxLength": 255, - }, - "policyId": "maximum-length", - }, - ], + "name": { "searchable": true, - "title": "Username", + "title": "Name", "type": "string", - "usageDescription": "", "userEditable": true, "viewable": true, }, - }, - "required": [ - "userName", - "givenName", - "sn", - "mail", - ], - "title": "Alpha realm - User", - "type": "object", - "viewable": true, - }, - }, - { - "lastSync": { - "effectiveAssignmentsProperty": "effectiveAssignments", - "lastSyncProperty": "lastSync", - }, - "meta": { - "property": "_meta", - "resourceCollection": "managed/bravo_usermeta", - "trackedProperties": [ - "createDate", - "lastChanged", - ], - }, - "name": "bravo_user", - "notifications": {}, - "schema": { - "$schema": "http://json-schema.org/draft-03/schema", - "icon": "fa-user", - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User", - "mat-icon": "people", - "order": [ - "_id", - "userName", - "password", - "givenName", - "cn", - "sn", - "mail", - "profileImage", - "description", - "accountStatus", - "telephoneNumber", - "postalAddress", - "city", - "postalCode", - "country", - "stateProvince", - "roles", - "assignments", - "groups", - "applications", - "manager", - "authzRoles", - "reports", - "effectiveRoles", - "effectiveAssignments", - "effectiveGroups", - "effectiveApplications", - "lastSync", - "kbaInfo", - "preferences", - "consentedMappings", - "ownerOfOrg", - "adminOfOrg", - "memberOfOrg", - "memberOfOrgIDs", - "ownerOfApp", - "frIndexedString1", - "frIndexedString2", - "frIndexedString3", - "frIndexedString4", - "frIndexedString5", - "frUnindexedString1", - "frUnindexedString2", - "frUnindexedString3", - "frUnindexedString4", - "frUnindexedString5", - "frIndexedMultivalued1", - "frIndexedMultivalued2", - "frIndexedMultivalued3", - "frIndexedMultivalued4", - "frIndexedMultivalued5", - "frUnindexedMultivalued1", - "frUnindexedMultivalued2", - "frUnindexedMultivalued3", - "frUnindexedMultivalued4", - "frUnindexedMultivalued5", - "frIndexedDate1", - "frIndexedDate2", - "frIndexedDate3", - "frIndexedDate4", - "frIndexedDate5", - "frUnindexedDate1", - "frUnindexedDate2", - "frUnindexedDate3", - "frUnindexedDate4", - "frUnindexedDate5", - "frIndexedInteger1", - "frIndexedInteger2", - "frIndexedInteger3", - "frIndexedInteger4", - "frIndexedInteger5", - "frUnindexedInteger1", - "frUnindexedInteger2", - "frUnindexedInteger3", - "frUnindexedInteger4", - "frUnindexedInteger5", - "assignedDashboard", - ], - "properties": { - "_id": { - "description": "User ID", - "isPersonal": false, - "policies": [ - { - "params": { - "forbiddenChars": [ - "/", - ], - }, - "policyId": "cannot-contain-characters", - }, - ], + "ownerIDs": { + "isVirtual": true, + "items": { + "title": "owner ids", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + ], + "referencedRelationshipFields": [ + "owners", + ], + }, + "returnByDefault": true, "searchable": false, - "type": "string", - "usageDescription": "", + "title": "Owner user ids", + "type": "array", "userEditable": false, "viewable": false, }, - "accountStatus": { - "default": "active", - "description": "Status", - "isPersonal": false, - "searchable": true, - "title": "Status", - "type": "string", - "usageDescription": "", - "userEditable": false, - "viewable": true, - }, - "adminOfOrg": { + "owners": { "items": { - "notifySelf": false, + "notifySelf": true, "properties": { "_ref": { "type": "string", @@ -43038,814 +72129,897 @@ a{ }, "resourceCollection": [ { - "label": "Organization", - "notify": true, - "path": "managed/bravo_organization", + "label": "User", + "notify": false, + "path": "managed/alpha_user", "query": { "fields": [ - "name", + "userName", + "givenName", + "sn", ], "queryFilter": "true", "sortKeys": [], }, }, ], - "reversePropertyName": "admins", + "reversePropertyName": "ownerOfOrg", "reverseRelationship": true, "type": "relationship", "validate": true, }, - "policies": [], + "notifyRelationships": [ + "children", + ], "returnByDefault": false, "searchable": false, - "title": "Organizations I Administer", + "title": "Owner", "type": "array", "userEditable": false, "viewable": true, }, - "aliasList": { - "description": "List of identity aliases used primarily to record social IdP subjects for this user", - "isVirtual": false, + "parent": { + "description": "Parent Organization", + "notifyRelationships": [ + "children", + "members", + ], + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/alpha_organization", + "query": { + "fields": [ + "name", + "description", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "returnByDefault": false, + "reversePropertyName": "children", + "reverseRelationship": true, + "searchable": false, + "title": "Parent Organization", + "type": "relationship", + "userEditable": false, + "validate": true, + "viewable": true, + }, + "parentAdminIDs": { + "isVirtual": true, "items": { - "title": "User Alias Names Items", + "title": "user ids of parent admins", "type": "string", }, - "returnByDefault": false, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "adminIDs", + "parentAdminIDs", + ], + "referencedRelationshipFields": [ + "parent", + ], + }, + "returnByDefault": true, "searchable": false, - "title": "User Alias Names List", + "title": "user ids of parent admins", "type": "array", - "userEditable": true, + "userEditable": false, "viewable": false, }, - "applications": { - "description": "Applications", - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:applications", - "isPersonal": false, + "parentIDs": { + "isVirtual": true, + "items": { + "title": "parent org ids", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs", + ], + "referencedRelationshipFields": [ + "parent", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "parent org ids", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "parentOwnerIDs": { + "isVirtual": true, + "items": { + "title": "user ids of parent owners", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "ownerIDs", + "parentOwnerIDs", + ], + "referencedRelationshipFields": [ + "parent", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent owners", + "type": "array", + "userEditable": false, + "viewable": false, + }, + }, + "required": [ + "name", + ], + "title": "Alpha realm - Organization", + "type": "object", + }, + }, + { + "name": "bravo_organization", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "An organization or tenant, whose resources are managed by organizational admins.", + "icon": "fa-building", + "mat-icon": "domain", + "order": [ + "name", + "description", + "owners", + "admins", + "members", + "parent", + "children", + "adminIDs", + "ownerIDs", + "parentAdminIDs", + "parentOwnerIDs", + "parentIDs", + ], + "properties": { + "adminIDs": { + "isVirtual": true, + "items": { + "title": "admin ids", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + ], + "referencedRelationshipFields": [ + "admins", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "Admin user ids", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "admins": { "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:applications:items", "notifySelf": true, "properties": { "_ref": { - "description": "References a relationship from a managed object", "type": "string", }, "_refProperties": { - "description": "Supports metadata within the relationship", "properties": { "_id": { - "description": "_refProperties object ID", + "propName": "_id", + "required": false, "type": "string", }, }, - "title": "Groups Items _refProperties", "type": "object", }, }, "resourceCollection": [ { - "label": "Application", - "path": "managed/bravo_application", + "label": "User", + "notify": false, + "path": "managed/bravo_user", "query": { "fields": [ - "name", + "userName", + "givenName", + "sn", ], "queryFilter": "true", - "sortKeys": [ - "name", - ], + "sortKeys": [], }, }, ], - "reversePropertyName": "members", + "reversePropertyName": "adminOfOrg", "reverseRelationship": true, - "title": "Groups Items", "type": "relationship", "validate": true, }, + "notifyRelationships": [ + "children", + ], "returnByDefault": false, - "title": "Applications", - "type": "array", - "usageDescription": "", - "userEditable": false, - "viewable": false, - }, - "assignedDashboard": { - "description": "List of items to click on for this user", - "isVirtual": true, - "items": { - "title": "Assigned Dashboard Items", - "type": "string", - }, - "queryConfig": { - "flattenProperties": true, - "referencedObjectFields": [ - "name", - ], - "referencedRelationshipFields": [ - [ - "roles", - "applications", - ], - [ - "applications", - ], - ], - }, "searchable": false, - "title": "Assigned Dashboard", + "title": "Administrators", "type": "array", "userEditable": false, "viewable": true, }, - "assignments": { - "description": "Assignments", - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments", - "isPersonal": false, + "children": { + "description": "Child Organizations", "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items", "notifySelf": true, "properties": { "_ref": { - "description": "References a relationship from a managed object", "type": "string", }, "_refProperties": { - "description": "Supports metadata within the relationship", "properties": { - "_grantType": { - "description": "Grant Type", - "label": "Grant Type", - "type": "string", - }, "_id": { - "description": "_refProperties object ID", + "propName": "_id", + "required": false, "type": "string", }, }, - "title": "Provisioning Roles Items _refProperties", "type": "object", }, }, "resourceCollection": [ { - "conditionalAssociationField": "condition", - "label": "Assignment", - "path": "managed/bravo_assignment", + "label": "Organization", + "notify": true, + "path": "managed/bravo_organization", "query": { "fields": [ "name", + "description", ], "queryFilter": "true", + "sortKeys": [], }, }, ], - "reversePropertyName": "members", + "reversePropertyName": "parent", "reverseRelationship": true, - "title": "Assignments Items", "type": "relationship", "validate": true, }, + "policies": [], "returnByDefault": false, - "title": "Assignments", + "searchable": false, + "title": "Child Organizations", "type": "array", - "usageDescription": "", "userEditable": false, + "viewable": false, + }, + "description": { + "searchable": true, + "title": "Description", + "type": "string", + "userEditable": true, "viewable": true, }, - "authzRoles": { - "description": "Authorization Roles", - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles", - "isPersonal": false, + "members": { "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items", + "notifySelf": false, "properties": { "_ref": { - "description": "References a relationship from a managed object", "type": "string", }, "_refProperties": { - "description": "Supports metadata within the relationship", "properties": { "_id": { - "description": "_refProperties object ID", + "propName": "_id", + "required": false, "type": "string", }, }, - "title": "Authorization Roles Items _refProperties", "type": "object", }, }, "resourceCollection": [ { - "conditionalAssociationField": "condition", - "label": "Internal Role", - "path": "internal/role", + "label": "User", + "notify": true, + "path": "managed/bravo_user", "query": { "fields": [ - "name", + "userName", + "givenName", + "sn", ], "queryFilter": "true", + "sortKeys": [], }, }, ], - "reversePropertyName": "authzMembers", + "reversePropertyName": "memberOfOrg", "reverseRelationship": true, - "title": "Authorization Roles Items", "type": "relationship", "validate": true, }, "returnByDefault": false, - "title": "Authorization Roles", - "type": "array", - "usageDescription": "", - "userEditable": false, - "viewable": true, - }, - "city": { - "description": "City", - "isPersonal": false, - "title": "City", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "cn": { - "default": "{{givenName}} {{sn}}", - "description": "Common Name", - "isPersonal": true, - "scope": "private", - "searchable": false, - "title": "Common Name", - "type": "string", - "userEditable": false, - "viewable": false, - }, - "consentedMappings": { - "description": "Consented Mappings", - "isPersonal": false, - "isVirtual": false, - "items": { - "items": { - "order": [ - "mapping", - "consentDate", - ], - "properties": { - "consentDate": { - "description": "Consent Date", - "searchable": true, - "title": "Consent Date", - "type": "string", - "userEditable": true, - "viewable": true, - }, - "mapping": { - "description": "Mapping", - "searchable": true, - "title": "Mapping", - "type": "string", - "userEditable": true, - "viewable": true, - }, - }, - "required": [ - "mapping", - "consentDate", - ], - "title": "Consented Mappings Item", - "type": "object", - }, - "title": "Consented Mappings Items", - "type": "array", - }, - "returnByDefault": false, "searchable": false, - "title": "Consented Mappings", + "title": "Members", "type": "array", - "usageDescription": "", - "userEditable": true, - "viewable": false, - }, - "country": { - "description": "Country", - "isPersonal": false, - "title": "Country", - "type": "string", - "usageDescription": "", - "userEditable": true, + "userEditable": false, "viewable": true, }, - "description": { - "description": "Description", - "isPersonal": false, + "name": { "searchable": true, - "title": "Description", + "title": "Name", "type": "string", - "usageDescription": "", "userEditable": true, "viewable": true, }, - "effectiveApplications": { - "description": "Effective Applications", - "isPersonal": false, - "isVirtual": true, - "items": { - "title": "Effective Assigned Application Items", - "type": "object", - }, - "queryConfig": { - "referencedObjectFields": [ - "name", - ], - "referencedRelationshipFields": [ - [ - "roles", - "applications", - ], - [ - "applications", - ], - ], - }, - "returnByDefault": true, - "title": "Effective Applications", - "type": "array", - "viewable": false, - }, - "effectiveAssignments": { - "description": "Effective Assignments", - "isPersonal": false, + "ownerIDs": { "isVirtual": true, "items": { - "title": "Effective Assignments Items", - "type": "object", + "title": "owner ids", + "type": "string", }, "queryConfig": { + "flattenProperties": true, "referencedObjectFields": [ - "*", - ], - "referencedRelationshipFields": [ - [ - "roles", - "assignments", - ], - [ - "assignments", - ], - ], - }, - "returnByDefault": true, - "title": "Effective Assignments", - "type": "array", - "usageDescription": "", - "viewable": false, - }, - "effectiveGroups": { - "description": "Effective Groups", - "isPersonal": false, - "isVirtual": true, - "items": { - "title": "Effective Groups Items", - "type": "object", - }, - "queryConfig": { - "referencedRelationshipFields": [ - "groups", + "_id", ], - }, - "returnByDefault": true, - "title": "Effective Groups", - "type": "array", - "usageDescription": "", - "viewable": false, - }, - "effectiveRoles": { - "description": "Effective Roles", - "isPersonal": false, - "isVirtual": true, - "items": { - "title": "Effective Roles Items", - "type": "object", - }, - "queryConfig": { "referencedRelationshipFields": [ - "roles", + "owners", ], }, "returnByDefault": true, - "title": "Effective Roles", + "searchable": false, + "title": "Owner user ids", "type": "array", - "usageDescription": "", + "userEditable": false, "viewable": false, }, - "frIndexedDate1": { - "description": "Generic Indexed Date 1", - "isPersonal": false, - "title": "Generic Indexed Date 1", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedDate2": { - "description": "Generic Indexed Date 2", - "isPersonal": false, - "title": "Generic Indexed Date 2", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedDate3": { - "description": "Generic Indexed Date 3", - "isPersonal": false, - "title": "Generic Indexed Date 3", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedDate4": { - "description": "Generic Indexed Date 4", - "isPersonal": false, - "title": "Generic Indexed Date 4", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedDate5": { - "description": "Generic Indexed Date 5", - "isPersonal": false, - "title": "Generic Indexed Date 5", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedInteger1": { - "description": "Generic Indexed Integer 1", - "isPersonal": false, - "title": "Generic Indexed Integer 1", - "type": "number", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedInteger2": { - "description": "Generic Indexed Integer 2", - "isPersonal": false, - "title": "Generic Indexed Integer 2", - "type": "number", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedInteger3": { - "description": "Generic Indexed Integer 3", - "isPersonal": false, - "title": "Generic Indexed Integer 3", - "type": "number", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedInteger4": { - "description": "Generic Indexed Integer 4", - "isPersonal": false, - "title": "Generic Indexed Integer 4", - "type": "number", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedInteger5": { - "description": "Generic Indexed Integer 5", - "isPersonal": false, - "title": "Generic Indexed Integer 5", - "type": "number", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedMultivalued1": { - "description": "Generic Indexed Multivalue 1", - "isPersonal": false, - "items": { - "type": "string", - }, - "title": "Generic Indexed Multivalue 1", - "type": "array", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedMultivalued2": { - "description": "Generic Indexed Multivalue 2", - "isPersonal": false, - "items": { - "type": "string", - }, - "title": "Generic Indexed Multivalue 2", - "type": "array", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedMultivalued3": { - "description": "Generic Indexed Multivalue 3", - "isPersonal": false, - "items": { - "type": "string", - }, - "title": "Generic Indexed Multivalue 3", - "type": "array", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedMultivalued4": { - "description": "Generic Indexed Multivalue 4", - "isPersonal": false, - "items": { - "type": "string", - }, - "title": "Generic Indexed Multivalue 4", - "type": "array", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedMultivalued5": { - "description": "Generic Indexed Multivalue 5", - "isPersonal": false, + "owners": { "items": { - "type": "string", - }, - "title": "Generic Indexed Multivalue 5", - "type": "array", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedString1": { - "description": "Generic Indexed String 1", - "isPersonal": false, - "title": "Generic Indexed String 1", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedString2": { - "description": "Generic Indexed String 2", - "isPersonal": false, - "title": "Generic Indexed String 2", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedString3": { - "description": "Generic Indexed String 3", - "isPersonal": false, - "title": "Generic Indexed String 3", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedString4": { - "description": "Generic Indexed String 4", - "isPersonal": false, - "title": "Generic Indexed String 4", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frIndexedString5": { - "description": "Generic Indexed String 5", - "isPersonal": false, - "title": "Generic Indexed String 5", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frUnindexedDate1": { - "description": "Generic Unindexed Date 1", - "isPersonal": false, - "title": "Generic Unindexed Date 1", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frUnindexedDate2": { - "description": "Generic Unindexed Date 2", - "isPersonal": false, - "title": "Generic Unindexed Date 2", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frUnindexedDate3": { - "description": "Generic Unindexed Date 3", - "isPersonal": false, - "title": "Generic Unindexed Date 3", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frUnindexedDate4": { - "description": "Generic Unindexed Date 4", - "isPersonal": false, - "title": "Generic Unindexed Date 4", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frUnindexedDate5": { - "description": "Generic Unindexed Date 5", - "isPersonal": false, - "title": "Generic Unindexed Date 5", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frUnindexedInteger1": { - "description": "Generic Unindexed Integer 1", - "isPersonal": false, - "title": "Generic Unindexed Integer 1", - "type": "number", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frUnindexedInteger2": { - "description": "Generic Unindexed Integer 2", - "isPersonal": false, - "title": "Generic Unindexed Integer 2", - "type": "number", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frUnindexedInteger3": { - "description": "Generic Unindexed Integer 3", - "isPersonal": false, - "title": "Generic Unindexed Integer 3", - "type": "number", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "frUnindexedInteger4": { - "description": "Generic Unindexed Integer 4", - "isPersonal": false, - "title": "Generic Unindexed Integer 4", - "type": "number", - "usageDescription": "", - "userEditable": true, + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "notify": false, + "path": "managed/bravo_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "ownerOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "notifyRelationships": [ + "children", + ], + "returnByDefault": false, + "searchable": false, + "title": "Owner", + "type": "array", + "userEditable": false, "viewable": true, }, - "frUnindexedInteger5": { - "description": "Generic Unindexed Integer 5", - "isPersonal": false, - "title": "Generic Unindexed Integer 5", - "type": "number", - "usageDescription": "", - "userEditable": true, + "parent": { + "description": "Parent Organization", + "notifyRelationships": [ + "children", + "members", + ], + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/bravo_organization", + "query": { + "fields": [ + "name", + "description", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "returnByDefault": false, + "reversePropertyName": "children", + "reverseRelationship": true, + "searchable": false, + "title": "Parent Organization", + "type": "relationship", + "userEditable": false, + "validate": true, "viewable": true, }, - "frUnindexedMultivalued1": { - "description": "Generic Unindexed Multivalue 1", - "isPersonal": false, + "parentAdminIDs": { + "isVirtual": true, "items": { + "title": "user ids of parent admins", "type": "string", }, - "title": "Generic Unindexed Multivalue 1", + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "adminIDs", + "parentAdminIDs", + ], + "referencedRelationshipFields": [ + "parent", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent admins", "type": "array", - "usageDescription": "", - "userEditable": true, - "viewable": true, + "userEditable": false, + "viewable": false, }, - "frUnindexedMultivalued2": { - "description": "Generic Unindexed Multivalue 2", - "isPersonal": false, + "parentIDs": { + "isVirtual": true, "items": { + "title": "parent org ids", "type": "string", }, - "title": "Generic Unindexed Multivalue 2", + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs", + ], + "referencedRelationshipFields": [ + "parent", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "parent org ids", "type": "array", - "usageDescription": "", - "userEditable": true, - "viewable": true, + "userEditable": false, + "viewable": false, }, - "frUnindexedMultivalued3": { - "description": "Generic Unindexed Multivalue 3", - "isPersonal": false, + "parentOwnerIDs": { + "isVirtual": true, "items": { + "title": "user ids of parent owners", "type": "string", }, - "title": "Generic Unindexed Multivalue 3", + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "ownerIDs", + "parentOwnerIDs", + ], + "referencedRelationshipFields": [ + "parent", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent owners", "type": "array", - "usageDescription": "", - "userEditable": true, - "viewable": true, + "userEditable": false, + "viewable": false, }, - "frUnindexedMultivalued4": { - "description": "Generic Unindexed Multivalue 4", + }, + "required": [ + "name", + ], + "title": "Bravo realm - Organization", + "type": "object", + }, + }, + { + "name": "alpha_group", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "icon": "fa-group", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Group", + "mat-icon": "group", + "order": [ + "_id", + "name", + "description", + "condition", + "members", + ], + "properties": { + "_id": { + "description": "Group ID", "isPersonal": false, - "items": { - "type": "string", - }, - "title": "Generic Unindexed Multivalue 4", - "type": "array", + "policies": [ + { + "params": { + "propertyName": "name", + }, + "policyId": "id-must-equal-property", + }, + ], + "searchable": false, + "type": "string", "usageDescription": "", - "userEditable": true, + "userEditable": false, + "viewable": false, + }, + "condition": { + "description": "A filter for conditionally assigned members", + "isConditional": true, + "policies": [ + { + "policyId": "valid-query-filter", + }, + ], + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false, + }, + "description": { + "description": "Group Description", + "searchable": true, + "title": "Description", + "type": "string", + "userEditable": false, "viewable": true, }, - "frUnindexedMultivalued5": { - "description": "Generic Unindexed Multivalue 5", - "isPersonal": false, + "members": { + "description": "Group Members", "items": { - "type": "string", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Group:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Group Members Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "groups", + "reverseRelationship": true, + "title": "Group Members Items", + "type": "relationship", + "validate": true, }, - "title": "Generic Unindexed Multivalue 5", + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Members", "type": "array", - "usageDescription": "", - "userEditable": true, + "userEditable": false, "viewable": true, }, - "frUnindexedString1": { - "description": "Generic Unindexed String 1", - "isPersonal": false, - "title": "Generic Unindexed String 1", + "name": { + "description": "Group Name", + "policies": [ + { + "policyId": "required", + }, + { + "params": { + "forbiddenChars": [ + "/*", + ], + }, + "policyId": "cannot-contain-characters", + }, + ], + "searchable": true, + "title": "Name", "type": "string", - "usageDescription": "", - "userEditable": true, "viewable": true, }, - "frUnindexedString2": { - "description": "Generic Unindexed String 2", + }, + "required": [ + "name", + ], + "title": "Alpha realm - Group", + "viewable": true, + }, + }, + { + "name": "bravo_group", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "icon": "fa-group", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Group", + "mat-icon": "group", + "order": [ + "_id", + "name", + "description", + "condition", + "members", + ], + "properties": { + "_id": { + "description": "Group ID", "isPersonal": false, - "title": "Generic Unindexed String 2", + "policies": [ + { + "params": { + "propertyName": "name", + }, + "policyId": "id-must-equal-property", + }, + ], + "searchable": false, "type": "string", "usageDescription": "", - "userEditable": true, - "viewable": true, + "userEditable": false, + "viewable": false, }, - "frUnindexedString3": { - "description": "Generic Unindexed String 3", - "isPersonal": false, - "title": "Generic Unindexed String 3", + "condition": { + "description": "A filter for conditionally assigned members", + "isConditional": true, + "policies": [ + { + "policyId": "valid-query-filter", + }, + ], + "searchable": false, + "title": "Condition", "type": "string", - "usageDescription": "", - "userEditable": true, + "viewable": false, + }, + "description": { + "description": "Group Description", + "searchable": true, + "title": "Description", + "type": "string", + "userEditable": false, "viewable": true, }, - "frUnindexedString4": { - "description": "Generic Unindexed String 4", - "isPersonal": false, - "title": "Generic Unindexed String 4", + "members": { + "description": "Group Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Group:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Group Members Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/bravo_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "groups", + "reverseRelationship": true, + "title": "Group Members Items", + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Members", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "name": { + "description": "Group Name", + "policies": [ + { + "policyId": "required", + }, + { + "params": { + "forbiddenChars": [ + "/*", + ], + }, + "policyId": "cannot-contain-characters", + }, + ], + "searchable": true, + "title": "Name", "type": "string", - "usageDescription": "", - "userEditable": true, "viewable": true, }, - "frUnindexedString5": { - "description": "Generic Unindexed String 5", + }, + "required": [ + "name", + ], + "title": "Bravo realm - Group", + "viewable": true, + }, + }, + { + "name": "alpha_application", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "Application Object", + "icon": "fa-folder", + "order": [ + "name", + "description", + "url", + "icon", + "mappingNames", + "owners", + "roles", + "members", + ], + "properties": { + "_id": { + "description": "Application ID", "isPersonal": false, - "title": "Generic Unindexed String 5", + "searchable": false, + "type": "string", + "userEditable": false, + "viewable": false, + }, + "authoritative": { + "description": "Is this an authoritative application", + "searchable": false, + "title": "Authoritative", + "type": "boolean", + "viewable": false, + }, + "connectorId": { + "description": "Id of the connector associated with the application", + "searchable": false, + "title": "Connector ID", + "type": "string", + "userEditable": false, + "viewable": false, + }, + "description": { + "description": "Application Description", + "searchable": true, + "title": "Description", "type": "string", - "usageDescription": "", - "userEditable": true, "viewable": true, }, - "givenName": { - "description": "First Name", - "isPersonal": true, + "icon": { "searchable": true, - "title": "First Name", + "title": "Icon", "type": "string", - "usageDescription": "", "userEditable": true, "viewable": true, }, - "groups": { - "description": "Groups", - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:groups", - "isPersonal": false, + "mappingNames": { + "description": "Names of the sync mappings used by an application with provisioning configured.", "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:groups:items", - "notifySelf": true, + "title": "Mapping Name Items", + "type": "string", + }, + "searchable": true, + "title": "Sync Mapping Names", + "type": "array", + "viewable": true, + }, + "members": { + "description": "Application Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Application:members:items", "properties": { "_ref": { "description": "References a relationship from a managed object", @@ -43864,161 +73038,60 @@ a{ "type": "string", }, }, - "title": "Groups Items _refProperties", + "title": "Group Members Items _refProperties", "type": "object", }, }, "resourceCollection": [ { - "conditionalAssociationField": "condition", - "label": "Group", - "path": "managed/bravo_group", + "label": "User", + "notify": true, + "path": "managed/alpha_user", "query": { "fields": [ - "name", + "userName", + "givenName", + "sn", ], "queryFilter": "true", }, }, ], - "reversePropertyName": "members", + "reversePropertyName": "applications", "reverseRelationship": true, - "title": "Groups Items", + "title": "Group Members Items", "type": "relationship", "validate": true, }, - "relationshipGrantTemporalConstraintsEnforced": false, + "policies": [], "returnByDefault": false, - "title": "Groups", + "searchable": false, + "title": "Members", "type": "array", - "usageDescription": "", "userEditable": false, "viewable": true, }, - "kbaInfo": { - "description": "KBA Info", - "isPersonal": true, - "items": { - "order": [ - "answer", - "customQuestion", - "questionId", - ], - "properties": { - "answer": { - "description": "Answer", - "type": "string", - }, - "customQuestion": { - "description": "Custom question", - "type": "string", - }, - "questionId": { - "description": "Question ID", - "type": "string", - }, - }, - "required": [], - "title": "KBA Info Items", - "type": "object", - }, - "type": "array", - "usageDescription": "", - "userEditable": true, - "viewable": false, - }, - "lastSync": { - "description": "Last Sync timestamp", - "isPersonal": false, - "order": [ - "effectiveAssignments", - "timestamp", + "name": { + "description": "Application name", + "notifyRelationships": [ + "roles", + "members", ], - "properties": { - "effectiveAssignments": { - "description": "Effective Assignments", - "items": { - "title": "Effective Assignments Items", - "type": "object", - }, - "title": "Effective Assignments", - "type": "array", - }, - "timestamp": { - "description": "Timestamp", - "type": "string", - }, - }, - "required": [], - "scope": "private", - "searchable": false, - "title": "Last Sync timestamp", - "type": "object", - "usageDescription": "", - "viewable": false, - }, - "mail": { - "description": "Email Address", - "isPersonal": true, "policies": [ { - "policyId": "valid-email-address-format", + "policyId": "unique", }, ], + "returnByDefault": true, "searchable": true, - "title": "Email Address", + "title": "Name", "type": "string", - "usageDescription": "", "userEditable": true, "viewable": true, }, - "manager": { - "description": "Manager", - "isPersonal": false, - "properties": { - "_ref": { - "description": "References a relationship from a managed object", - "type": "string", - }, - "_refProperties": { - "description": "Supports metadata within the relationship", - "properties": { - "_id": { - "description": "_refProperties object ID", - "type": "string", - }, - }, - "title": "Manager _refProperties", - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "User", - "path": "managed/bravo_user", - "query": { - "fields": [ - "userName", - "givenName", - "sn", - ], - "queryFilter": "true", - }, - }, - ], - "reversePropertyName": "reports", - "reverseRelationship": true, - "searchable": false, - "title": "Manager", - "type": "relationship", - "usageDescription": "", - "userEditable": false, - "validate": true, - "viewable": true, - }, - "memberOfOrg": { + "owners": { + "description": "Application Owners", "items": { - "notifySelf": true, "properties": { "_ref": { "type": "string", @@ -44026,66 +73099,44 @@ a{ "_refProperties": { "properties": { "_id": { - "propName": "_id", - "required": false, + "description": "_refProperties object ID", "type": "string", }, }, + "title": "Application _refProperties", "type": "object", }, }, "resourceCollection": [ { - "label": "Organization", - "notify": false, - "path": "managed/bravo_organization", + "label": "User", + "path": "managed/alpha_user", "query": { "fields": [ - "name", + "userName", + "givenName", + "sn", ], "queryFilter": "true", - "sortKeys": [], }, }, ], - "reversePropertyName": "members", + "reversePropertyName": "ownerOfApp", "reverseRelationship": true, "type": "relationship", "validate": true, }, - "policies": [], "returnByDefault": false, "searchable": false, - "title": "Organizations to which I Belong", + "title": "Owners", "type": "array", "userEditable": false, "viewable": true, }, - "memberOfOrgIDs": { - "isVirtual": true, - "items": { - "title": "org identifiers", - "type": "string", - }, - "queryConfig": { - "flattenProperties": true, - "referencedObjectFields": [ - "_id", - "parentIDs", - ], - "referencedRelationshipFields": [ - "memberOfOrg", - ], - }, - "returnByDefault": true, - "searchable": false, - "title": "MemberOfOrgIDs", - "type": "array", - "userEditable": false, - "viewable": false, - }, - "ownerOfApp": { + "roles": { + "description": "Roles granting users the application", "items": { + "notifySelf": true, "properties": { "_ref": { "type": "string", @@ -44093,7 +73144,8 @@ a{ "_refProperties": { "properties": { "_id": { - "description": "_refProperties object ID", + "propName": "_id", + "required": false, "type": "string", }, }, @@ -44102,160 +73154,246 @@ a{ }, "resourceCollection": [ { - "label": "Application", - "path": "managed/bravo_application", + "label": "Role", + "notify": true, + "path": "managed/alpha_role", "query": { "fields": [ "name", ], "queryFilter": "true", - "sortKeys": [ - "name", - ], + "sortKeys": [], }, }, ], - "reversePropertyName": "owners", + "reversePropertyName": "applications", "reverseRelationship": true, "type": "relationship", "validate": true, }, "returnByDefault": false, "searchable": false, - "title": "Applications I Own", + "title": "Roles", "type": "array", "userEditable": false, "viewable": true, }, - "ownerOfOrg": { + "ssoEntities": { + "description": "SSO Entity Id", + "properties": { + "idpLocation": { + "type": "string", + }, + "idpPrivateId": { + "type": "string", + }, + "spLocation": { + "type": "string", + }, + "spPrivate": { + "type": "string", + }, + }, + "searchable": false, + "title": "SSO Entity Id", + "type": "object", + "userEditable": false, + "viewable": false, + }, + "templateName": { + "description": "Name of the template the application was created from", + "searchable": false, + "title": "Template Name", + "type": "string", + "userEditable": false, + "viewable": false, + }, + "templateVersion": { + "description": "The template version", + "searchable": false, + "title": "Template Version", + "type": "string", + "userEditable": false, + "viewable": false, + }, + "uiConfig": { + "description": "UI Config", + "isPersonal": false, + "properties": {}, + "searchable": false, + "title": "UI Config", + "type": "object", + "usageDescription": "", + "viewable": false, + }, + "url": { + "searchable": true, + "title": "Url", + "type": "string", + "userEditable": true, + "viewable": true, + }, + }, + "required": [ + "name", + ], + "title": "Alpha realm - Application", + "type": "object", + }, + }, + { + "name": "bravo_application", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "Application Object", + "icon": "fa-folder", + "order": [ + "name", + "description", + "url", + "icon", + "mappingNames", + "owners", + "roles", + "members", + ], + "properties": { + "_id": { + "description": "Application ID", + "isPersonal": false, + "searchable": false, + "type": "string", + "userEditable": false, + "viewable": false, + }, + "authoritative": { + "description": "Is this an authoritative application", + "searchable": false, + "title": "Authoritative", + "type": "boolean", + "viewable": false, + }, + "connectorId": { + "description": "Id of the connector associated with the application", + "searchable": false, + "title": "Connector ID", + "type": "string", + "userEditable": false, + "viewable": false, + }, + "description": { + "description": "Application Description", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true, + }, + "icon": { + "searchable": true, + "title": "Icon", + "type": "string", + "userEditable": true, + "viewable": true, + }, + "mappingNames": { + "description": "Names of the sync mappings used by an application with provisioning configured.", "items": { - "notifySelf": false, + "title": "Mapping Name Items", + "type": "string", + }, + "searchable": true, + "title": "Sync Mapping Names", + "type": "array", + "viewable": true, + }, + "members": { + "description": "Application Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Application:members:items", "properties": { "_ref": { + "description": "References a relationship from a managed object", "type": "string", }, "_refProperties": { + "description": "Supports metadata within the relationship", "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, "_id": { - "propName": "_id", - "required": false, + "description": "_refProperties object ID", "type": "string", }, }, + "title": "Group Members Items _refProperties", "type": "object", }, }, "resourceCollection": [ { - "label": "Organization", + "label": "User", "notify": true, - "path": "managed/bravo_organization", + "path": "managed/bravo_user", "query": { "fields": [ - "name", + "userName", + "givenName", + "sn", ], "queryFilter": "true", - "sortKeys": [], }, }, ], - "reversePropertyName": "owners", + "reversePropertyName": "applications", "reverseRelationship": true, + "title": "Group Members Items", "type": "relationship", "validate": true, }, "policies": [], "returnByDefault": false, "searchable": false, - "title": "Organizations I Own", + "title": "Members", "type": "array", "userEditable": false, "viewable": true, }, - "password": { - "description": "Password", - "isPersonal": false, - "isProtected": true, - "scope": "private", - "searchable": false, - "title": "Password", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": false, - }, - "postalAddress": { - "description": "Address 1", - "isPersonal": true, - "title": "Address 1", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "postalCode": { - "description": "Postal Code", - "isPersonal": false, - "title": "Postal Code", - "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "preferences": { - "description": "Preferences", - "isPersonal": false, - "order": [ - "updates", - "marketing", + "name": { + "description": "Application name", + "notifyRelationships": [ + "roles", + "members", ], - "properties": { - "marketing": { - "description": "Send me special offers and services", - "type": "boolean", - }, - "updates": { - "description": "Send me news and updates", - "type": "boolean", + "policies": [ + { + "policyId": "unique", }, - }, - "required": [], - "searchable": false, - "title": "Preferences", - "type": "object", - "usageDescription": "", - "userEditable": true, - "viewable": true, - }, - "profileImage": { - "description": "Profile Image", - "isPersonal": true, + ], + "returnByDefault": true, "searchable": true, - "title": "Profile Image", + "title": "Name", "type": "string", - "usageDescription": "", "userEditable": true, - "viewable": false, + "viewable": true, }, - "reports": { - "description": "Direct Reports", - "isPersonal": false, + "owners": { + "description": "Application Owners", "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items", "properties": { "_ref": { - "description": "References a relationship from a managed object", "type": "string", }, "_refProperties": { - "description": "Supports metadata within the relationship", "properties": { "_id": { "description": "_refProperties object ID", "type": "string", }, }, - "title": "Direct Reports Items _refProperties", + "title": "Application _refProperties", "type": "object", }, }, @@ -44273,10460 +73411,13835 @@ a{ }, }, ], - "reversePropertyName": "manager", + "reversePropertyName": "ownerOfApp", "reverseRelationship": true, - "title": "Direct Reports Items", "type": "relationship", "validate": true, }, "returnByDefault": false, - "title": "Direct Reports", + "searchable": false, + "title": "Owners", "type": "array", - "usageDescription": "", "userEditable": false, "viewable": true, }, "roles": { - "description": "Provisioning Roles", - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles", - "isPersonal": false, + "description": "Roles granting users the application", "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items", "notifySelf": true, "properties": { "_ref": { - "description": "References a relationship from a managed object", "type": "string", }, "_refProperties": { - "description": "Supports metadata within the relationship", "properties": { - "_grantType": { - "description": "Grant Type", - "label": "Grant Type", - "type": "string", - }, "_id": { - "description": "_refProperties object ID", + "propName": "_id", + "required": false, "type": "string", }, }, - "title": "Provisioning Roles Items _refProperties", "type": "object", }, }, "resourceCollection": [ { - "conditionalAssociationField": "condition", "label": "Role", + "notify": true, "path": "managed/bravo_role", "query": { "fields": [ "name", ], "queryFilter": "true", + "sortKeys": [], }, }, ], - "reversePropertyName": "members", + "reversePropertyName": "applications", "reverseRelationship": true, - "title": "Provisioning Roles Items", "type": "relationship", "validate": true, }, - "relationshipGrantTemporalConstraintsEnforced": true, - "returnByDefault": false, - "title": "Provisioning Roles", - "type": "array", - "usageDescription": "", + "returnByDefault": false, + "searchable": false, + "title": "Roles", + "type": "array", + "userEditable": false, + "viewable": true, + }, + "ssoEntities": { + "description": "SSO Entity Id", + "properties": { + "idpLocation": { + "type": "string", + }, + "idpPrivateId": { + "type": "string", + }, + "spLocation": { + "type": "string", + }, + "spPrivate": { + "type": "string", + }, + }, + "searchable": false, + "title": "SSO Entity Id", + "type": "object", "userEditable": false, - "viewable": true, + "viewable": false, }, - "sn": { - "description": "Last Name", - "isPersonal": true, - "searchable": true, - "title": "Last Name", + "templateName": { + "description": "Name of the template the application was created from", + "searchable": false, + "title": "Template Name", "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, + "userEditable": false, + "viewable": false, }, - "stateProvince": { - "description": "State/Province", - "isPersonal": false, - "title": "State/Province", + "templateVersion": { + "description": "The template version", + "searchable": false, + "title": "Template Version", "type": "string", - "usageDescription": "", - "userEditable": true, - "viewable": true, + "userEditable": false, + "viewable": false, }, - "telephoneNumber": { - "description": "Telephone Number", - "isPersonal": true, - "pattern": "^\\+?([0-9\\- \\(\\)])*$", - "title": "Telephone Number", - "type": "string", + "uiConfig": { + "description": "UI Config", + "isPersonal": false, + "properties": {}, + "searchable": false, + "title": "UI Config", + "type": "object", "usageDescription": "", - "userEditable": true, - "viewable": true, + "viewable": false, }, - "userName": { - "description": "Username", - "isPersonal": true, - "minLength": 1, - "policies": [ - { - "policyId": "valid-username", - }, - { - "params": { - "forbiddenChars": [ - "/", - ], - }, - "policyId": "cannot-contain-characters", - }, - { - "params": { - "minLength": 1, - }, - "policyId": "minimum-length", - }, - { - "params": { - "maxLength": 255, - }, - "policyId": "maximum-length", - }, - ], + "url": { "searchable": true, - "title": "Username", + "title": "Url", "type": "string", - "usageDescription": "", "userEditable": true, "viewable": true, }, }, - "required": [ - "userName", - "givenName", - "sn", - "mail", - ], - "title": "Bravo realm - User", - "type": "object", - "viewable": true, + "required": [ + "name", + ], + "title": "Bravo realm - Application", + "type": "object", + }, + }, + ], + }, + "mapping/managedAlpha_assignment_managedBravo_assignment": { + "_id": "mapping/managedAlpha_assignment_managedBravo_assignment", + "consentRequired": false, + "displayName": "managedAlpha_assignment_managedBravo_assignment", + "icon": null, + "name": "managedAlpha_assignment_managedBravo_assignment", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/alpha_assignment", + "target": "managed/bravo_assignment", + }, + "mapping/managedAlpha_user_systemAzureUser": { + "_id": "mapping/managedAlpha_user_systemAzureUser", + "consentRequired": false, + "defaultSourceFields": [ + "*", + "assignments", + ], + "defaultTargetFields": [ + "*", + "memberOf", + "__roles__", + "__servicePlanIds__", + ], + "displayName": "managedAlpha_user_systemAzureUser", + "icon": null, + "name": "managedAlpha_user_systemAzureUser", + "optimizeAssignmentSync": true, + "policies": [ + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "DELETE", + "situation": "UNQUALIFIED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "UPDATE", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "CREATE", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "SOURCE_TARGET_CONFLICT", + }, + { + "action": "INCORPORATE_CHANGES", + "situation": "TARGET_CHANGED", + }, + ], + "properties": [ + { + "source": "mail", + "target": "mail", + }, + { + "source": "givenName", + "target": "givenName", + }, + { + "source": "sn", + "target": "surname", + }, + { + "source": "", + "target": "displayName", + "transform": { + "source": "source.givenName+" "+source.sn", + "type": "text/javascript", + }, + }, + { + "source": "", + "target": "mailNickname", + "transform": { + "source": "source.givenName[0].toLowerCase()+source.sn.toLowerCase()", + "type": "text/javascript", + }, + }, + { + "source": "", + "target": "accountEnabled", + "transform": { + "source": "true", + "type": "text/javascript", + }, + }, + { + "condition": { + "globals": {}, + "source": "(typeof oldTarget === 'undefined' || oldTarget === null)", + "type": "text/javascript", + }, + "source": "", + "target": "__PASSWORD__", + "transform": { + "source": ""!@#$%"[Math.floor(Math.random()*5)] + Math.random().toString(36).slice(2, 13).toUpperCase()+Math.random().toString(36).slice(2,13)", + "type": "text/javascript", + }, + }, + ], + "queuedSync": { + "enabled": true, + "maxRetries": 0, + "pollingInterval": 10000, + }, + "runTargetPhase": false, + "source": "managed/alpha_user", + "sourceCondition": "/source/effectiveApplications[_id eq "0f357b7e-6c54-4351-a094-43916877d7e5"] or /source/effectiveAssignments[(mapping eq "managedAlpha_user_systemAzureUser" and type eq "__ENTITLEMENT__")]", + "sourceQuery": { + "_queryFilter": "effectiveApplications[_id eq "0f357b7e-6c54-4351-a094-43916877d7e5"] or lastSync/managedAlpha_user_systemAzureUser pr or /source/effectiveAssignments[(mapping eq "managedAlpha_user_systemAzureUser" and type eq "__ENTITLEMENT__")]", + }, + "target": "system/Azure/User", + }, + "mapping/managedBravo_group_managedBravo_group": { + "_id": "mapping/managedBravo_group_managedBravo_group", + "consentRequired": false, + "displayName": "managedBravo_group_managedBravo_group", + "icon": null, + "name": "managedBravo_group_managedBravo_group", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/bravo_group", + "target": "managed/bravo_group", + }, + "mapping/managedBravo_user_managedBravo_user0": { + "_id": "mapping/managedBravo_user_managedBravo_user0", + "consentRequired": false, + "displayName": "managedBravo_user_managedBravo_user0", + "icon": null, + "name": "managedBravo_user_managedBravo_user0", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/bravo_user", + "target": "managed/bravo_user", + }, + "mapping/mapping12": { + "_id": "mapping/mapping12", + "consentRequired": false, + "displayName": "mapping12", + "linkQualifiers": [], + "name": "mapping12", + "policies": [], + "properties": [], + "source": "managed/bravo_user", + "syncAfter": [], + "target": "managed/bravo_user", + }, + "mapping/systemAzureDirectoryrole_managedAlpha_assignment": { + "_id": "mapping/systemAzureDirectoryrole_managedAlpha_assignment", + "consentRequired": false, + "displayName": "systemAzureDirectoryrole_managedAlpha_assignment", + "icon": null, + "name": "systemAzureDirectoryrole_managedAlpha_assignment", + "policies": [ + { + "action": "EXCEPTION", + "situation": "AMBIGUOUS", + }, + { + "action": "DELETE", + "situation": "SOURCE_MISSING", + }, + { + "action": "CREATE", + "situation": "MISSING", + }, + { + "action": "EXCEPTION", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "DELETE", + "situation": "UNQUALIFIED", + }, + { + "action": "EXCEPTION", + "situation": "UNASSIGNED", + }, + { + "action": "EXCEPTION", + "situation": "LINK_ONLY", + }, + { + "action": "IGNORE", + "situation": "TARGET_IGNORED", + }, + { + "action": "IGNORE", + "situation": "SOURCE_IGNORED", + }, + { + "action": "IGNORE", + "situation": "ALL_GONE", + }, + { + "action": "UPDATE", + "situation": "CONFIRMED", + }, + { + "action": "LINK", + "situation": "FOUND", + }, + { + "action": "CREATE", + "situation": "ABSENT", + }, + ], + "properties": [ + { + "default": "__RESOURCE__", + "target": "type", + }, + { + "source": "", + "target": "description", + "transform": { + "globals": {}, + "source": "(typeof source.description !== "undefined" && source.description !== null) ? source.description : source._id", + "type": "text/javascript", + }, + }, + { + "default": "managedAlpha_user_systemAzureUser", + "target": "mapping", + }, + { + "source": "", + "target": "name", + "transform": { + "globals": {}, + "source": "(typeof source.displayName !== "undefined" && source.displayName !== null) ? source.displayName : source._id", + "type": "text/javascript", + }, + }, + { + "source": "_id", + "target": "attributes", + "transform": { + "globals": {}, + "source": "[ + { + 'name': '__roles__', + 'value': [source] + } +]", + "type": "text/javascript", + }, + }, + { + "source": "_id", + "target": "_id", + "transform": { + "globals": { + "sourceObjectSet": "system_Azure_directoryRole_", + }, + "source": "sourceObjectSet.concat(source)", + "type": "text/javascript", }, }, + ], + "source": "system/Azure/directoryRole", + "target": "managed/alpha_assignment", + "targetQuery": { + "_queryFilter": "mapping eq "managedAlpha_user_systemAzureUser" and attributes[name eq "__roles__"]", + }, + }, + "mapping/systemAzureServiceplan_managedAlpha_assignment": { + "_id": "mapping/systemAzureServiceplan_managedAlpha_assignment", + "consentRequired": false, + "displayName": "systemAzureServiceplan_managedAlpha_assignment", + "icon": null, + "name": "systemAzureServiceplan_managedAlpha_assignment", + "policies": [ { - "name": "alpha_role", - "schema": { - "$schema": "http://forgerock.org/json-schema#", - "description": "", - "icon": "fa-check-square-o", - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role", - "mat-icon": "assignment_ind", - "order": [ - "_id", - "name", - "description", - "members", - "assignments", - "applications", - "condition", - "temporalConstraints", - ], - "properties": { - "_id": { - "description": "Role ID", - "searchable": false, - "title": "Name", - "type": "string", - "viewable": false, - }, - "applications": { - "description": "Role Applications", - "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:applications:items", - "notifySelf": true, - "properties": { - "_ref": { - "description": "References a relationship from a managed object", - "type": "string", - }, - "_refProperties": { - "description": "Supports metadata within the relationship", - "properties": { - "_id": { - "description": "_refProperties object ID", - "type": "string", - }, - }, - "title": "Role Application Items _refProperties", - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "Application", - "path": "managed/alpha_application", - "query": { - "fields": [ - "name", - ], - "queryFilter": "true", - }, - }, - ], - "reversePropertyName": "roles", - "reverseRelationship": true, - "title": "Role Application Items", - "type": "relationship", - "validate": true, - }, - "notifyRelationships": [ - "members", - ], - "relationshipGrantTemporalConstraintsEnforced": true, - "returnByDefault": false, - "title": "Applications", - "type": "array", - "viewable": false, - }, - "assignments": { - "description": "Managed Assignments", - "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items", - "notifySelf": true, - "properties": { - "_ref": { - "description": "References a relationship from a managed object", - "type": "string", - }, - "_refProperties": { - "description": "Supports metadata within the relationship", - "properties": { - "_id": { - "description": "_refProperties object ID", - "type": "string", - }, - }, - "title": "Managed Assignments Items _refProperties", - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "Assignment", - "path": "managed/alpha_assignment", - "query": { - "fields": [ - "name", - ], - "queryFilter": "true", - }, - }, - ], - "reversePropertyName": "roles", - "reverseRelationship": true, - "title": "Managed Assignments Items", - "type": "relationship", - "validate": true, - }, - "notifyRelationships": [ - "members", - ], - "returnByDefault": false, - "title": "Managed Assignments", - "type": "array", - "viewable": true, - }, - "condition": { - "description": "A conditional filter for this role", - "isConditional": true, - "searchable": false, - "title": "Condition", - "type": "string", - "viewable": false, - }, - "description": { - "description": "The role description, used for display purposes.", - "searchable": true, - "title": "Description", - "type": "string", - "viewable": true, - }, - "members": { - "description": "Role Members", - "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items", - "properties": { - "_ref": { - "description": "References a relationship from a managed object", - "type": "string", - }, - "_refProperties": { - "description": "Supports metadata within the relationship", - "properties": { - "_grantType": { - "description": "Grant Type", - "label": "Grant Type", - "type": "string", - }, - "_id": { - "description": "_refProperties object ID", - "type": "string", - }, - }, - "title": "Role Members Items _refProperties", - "type": "object", - }, - }, - "resourceCollection": [ - { - "conditionalAssociation": true, - "label": "User", - "notify": true, - "path": "managed/alpha_user", - "query": { - "fields": [ - "userName", - "givenName", - "sn", - ], - "queryFilter": "true", - }, - }, - ], - "reversePropertyName": "roles", - "reverseRelationship": true, - "title": "Role Members Items", - "type": "relationship", - "validate": true, - }, - "relationshipGrantTemporalConstraintsEnforced": true, - "returnByDefault": false, - "title": "Role Members", - "type": "array", - "viewable": true, - }, - "name": { - "description": "The role name, used for display purposes.", - "policies": [ - { - "policyId": "unique", - }, - ], - "searchable": true, - "title": "Name", - "type": "string", - "viewable": true, - }, - "temporalConstraints": { - "description": "An array of temporal constraints for a role", - "isTemporalConstraint": true, - "items": { - "order": [ - "duration", - ], - "properties": { - "duration": { - "description": "Duration", - "type": "string", - }, - }, - "required": [ - "duration", - ], - "title": "Temporal Constraints Items", - "type": "object", - }, - "notifyRelationships": [ - "members", - ], - "returnByDefault": true, - "title": "Temporal Constraints", - "type": "array", - "viewable": false, - }, + "action": "EXCEPTION", + "situation": "AMBIGUOUS", + }, + { + "action": "DELETE", + "situation": "SOURCE_MISSING", + }, + { + "action": "CREATE", + "situation": "MISSING", + }, + { + "action": "EXCEPTION", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "DELETE", + "situation": "UNQUALIFIED", + }, + { + "action": "EXCEPTION", + "situation": "UNASSIGNED", + }, + { + "action": "EXCEPTION", + "situation": "LINK_ONLY", + }, + { + "action": "IGNORE", + "situation": "TARGET_IGNORED", + }, + { + "action": "IGNORE", + "situation": "SOURCE_IGNORED", + }, + { + "action": "IGNORE", + "situation": "ALL_GONE", + }, + { + "action": "UPDATE", + "situation": "CONFIRMED", + }, + { + "action": "LINK", + "situation": "FOUND", + }, + { + "action": "CREATE", + "situation": "ABSENT", + }, + ], + "properties": [ + { + "default": "__RESOURCE__", + "target": "type", + }, + { + "source": "", + "target": "description", + "transform": { + "globals": {}, + "source": "(typeof source.servicePlanName !== "undefined" && source.servicePlanName !== null) ? source.servicePlanName : source._id", + "type": "text/javascript", + }, + }, + { + "default": "managedAlpha_user_systemAzureUser", + "target": "mapping", + }, + { + "source": "", + "target": "name", + "transform": { + "globals": {}, + "source": "(typeof source.servicePlanName !== "undefined" && source.servicePlanName !== null) ? source.servicePlanName : source._id", + "type": "text/javascript", + }, + }, + { + "source": "_id", + "target": "attributes", + "transform": { + "globals": {}, + "source": "[ + { + 'name': '__servicePlanIds__', + 'value': [source] + } +]", + "type": "text/javascript", + }, + }, + { + "source": "_id", + "target": "_id", + "transform": { + "globals": { + "sourceObjectSet": "system_Azure_servicePlan_", + }, + "source": "sourceObjectSet.concat(source)", + "type": "text/javascript", + }, + }, + ], + "source": "system/Azure/servicePlan", + "target": "managed/alpha_assignment", + "targetQuery": { + "_queryFilter": "mapping eq "managedAlpha_user_systemAzureUser" and attributes[name eq "__servicePlanIds__"]", + }, + }, + "mapping/systemAzureUser_managedAlpha_user": { + "_id": "mapping/systemAzureUser_managedAlpha_user", + "consentRequired": false, + "correlationQuery": [ + { + "linkQualifier": "default", + "source": "var qry = {'_queryFilter': 'mail eq "' + source.mail + '"'}; qry", + "type": "text/javascript", + }, + ], + "defaultSourceFields": [ + "*", + "memberOf", + "__roles__", + "__servicePlanIds__", + ], + "defaultTargetFields": [ + "*", + "assignments", + ], + "displayName": "systemAzureUser_managedAlpha_user", + "icon": null, + "links": "managedAlpha_user_systemAzureUser", + "name": "systemAzureUser_managedAlpha_user", + "policies": [ + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "UPDATE", + "situation": "CONFIRMED", + }, + { + "action": "ONBOARD", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "SOURCE_TARGET_CONFLICT", + }, + ], + "properties": [ + { + "referencedObjectType": "__GROUP__", + "source": "memberOf", + "target": "assignments", + }, + { + "referencedObjectType": "directoryRole", + "source": "__roles__", + "target": "assignments", + }, + { + "referencedObjectType": "servicePlan", + "source": "__servicePlanIds__", + "target": "assignments", + }, + ], + "reconSourceQueryPageSize": 999, + "reconSourceQueryPaging": true, + "runTargetPhase": false, + "source": "system/Azure/User", + "sourceQueryFullEntry": true, + "target": "managed/alpha_user", + }, + "mapping/systemAzure__group___managedAlpha_assignment": { + "_id": "mapping/systemAzure__group___managedAlpha_assignment", + "consentRequired": false, + "displayName": "systemAzure__group___managedAlpha_assignment", + "icon": null, + "name": "systemAzure__group___managedAlpha_assignment", + "policies": [ + { + "action": "EXCEPTION", + "situation": "AMBIGUOUS", + }, + { + "action": "DELETE", + "situation": "SOURCE_MISSING", + }, + { + "action": "CREATE", + "situation": "MISSING", + }, + { + "action": "EXCEPTION", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "DELETE", + "situation": "UNQUALIFIED", + }, + { + "action": "EXCEPTION", + "situation": "UNASSIGNED", + }, + { + "action": "EXCEPTION", + "situation": "LINK_ONLY", + }, + { + "action": "IGNORE", + "situation": "TARGET_IGNORED", + }, + { + "action": "IGNORE", + "situation": "SOURCE_IGNORED", + }, + { + "action": "IGNORE", + "situation": "ALL_GONE", + }, + { + "action": "UPDATE", + "situation": "CONFIRMED", + }, + { + "action": "LINK", + "situation": "FOUND", + }, + { + "action": "CREATE", + "situation": "ABSENT", + }, + ], + "properties": [ + { + "default": "__RESOURCE__", + "target": "type", + }, + { + "source": "", + "target": "description", + "transform": { + "globals": {}, + "source": "(typeof source.description !== "undefined" && source.description !== null) ? source.description : source._id", + "type": "text/javascript", + }, + }, + { + "default": "managedAlpha_user_systemAzureUser", + "target": "mapping", + }, + { + "source": "", + "target": "name", + "transform": { + "globals": {}, + "source": "(typeof source.displayName !== "undefined" && source.displayName !== null) ? source.displayName : source._id", + "type": "text/javascript", + }, + }, + { + "source": "_id", + "target": "attributes", + "transform": { + "globals": {}, + "source": "[ + { + 'name': 'memberOf', + 'value': [source] + } +]", + "type": "text/javascript", + }, + }, + { + "source": "_id", + "target": "_id", + "transform": { + "globals": { + "sourceObjectSet": "system_Azure___GROUP___", }, - "required": [ - "name", - ], - "title": "Alpha realm - Role", - "type": "object", + "source": "sourceObjectSet.concat(source)", + "type": "text/javascript", }, }, + ], + "source": "system/Azure/__GROUP__", + "target": "managed/alpha_assignment", + "targetQuery": { + "_queryFilter": "mapping eq "managedAlpha_user_systemAzureUser" and attributes[name eq "memberOf"]", + }, + }, + "policy": { + "_id": "policy", + "additionalFiles": [], + "resources": [], + }, + "privilegeAssignments": { + "_id": "privilegeAssignments", + "privilegeAssignments": [ { - "name": "bravo_role", - "schema": { - "$schema": "http://forgerock.org/json-schema#", - "description": "", - "icon": "fa-check-square-o", - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role", - "mat-icon": "assignment_ind", - "order": [ - "_id", - "name", - "description", - "members", - "assignments", - "applications", - "condition", - "temporalConstraints", - ], - "properties": { - "_id": { - "description": "Role ID", - "searchable": false, - "title": "Name", - "type": "string", - "viewable": false, - }, - "applications": { - "description": "Role Applications", - "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:applications:items", - "notifySelf": true, - "properties": { - "_ref": { - "description": "References a relationship from a managed object", - "type": "string", - }, - "_refProperties": { - "description": "Supports metadata within the relationship", - "properties": { - "_id": { - "description": "_refProperties object ID", - "type": "string", - }, - }, - "title": "Role Application Items _refProperties", - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "Application", - "path": "managed/bravo_application", - "query": { - "fields": [ - "name", - ], - "queryFilter": "true", - }, - }, - ], - "reversePropertyName": "roles", - "reverseRelationship": true, - "title": "Role Application Items", - "type": "relationship", - "validate": true, - }, - "notifyRelationships": [ - "members", - ], - "relationshipGrantTemporalConstraintsEnforced": true, - "returnByDefault": false, - "title": "Applications", - "type": "array", - "viewable": false, - }, - "assignments": { - "description": "Managed Assignments", - "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items", - "notifySelf": true, - "properties": { - "_ref": { - "description": "References a relationship from a managed object", - "type": "string", - }, - "_refProperties": { - "description": "Supports metadata within the relationship", - "properties": { - "_id": { - "description": "_refProperties object ID", - "type": "string", - }, - }, - "title": "Managed Assignments Items _refProperties", - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "Assignment", - "path": "managed/bravo_assignment", - "query": { - "fields": [ - "name", - ], - "queryFilter": "true", - }, - }, - ], - "reversePropertyName": "roles", - "reverseRelationship": true, - "title": "Managed Assignments Items", - "type": "relationship", - "validate": true, - }, - "notifyRelationships": [ - "members", - ], - "returnByDefault": false, - "title": "Managed Assignments", - "type": "array", - "viewable": true, - }, - "condition": { - "description": "A conditional filter for this role", - "isConditional": true, - "searchable": false, - "title": "Condition", - "type": "string", - "viewable": false, - }, - "description": { - "description": "The role description, used for display purposes.", - "searchable": true, - "title": "Description", + "name": "ownerPrivileges", + "privileges": [ + "owner-view-update-delete-orgs", + "owner-create-orgs", + "owner-view-update-delete-admins-and-members", + "owner-create-admins", + "admin-view-update-delete-members", + "admin-create-members", + ], + "relationshipField": "ownerOfOrg", + }, + { + "name": "adminPrivileges", + "privileges": [ + "admin-view-update-delete-orgs", + "admin-create-orgs", + "admin-view-update-delete-members", + "admin-create-members", + ], + "relationshipField": "adminOfOrg", + }, + ], + }, + "privileges": { + "_id": "privileges", + "privileges": [], + }, + "provisioner.openic/GoogleApps": { + "_id": "provisioner.openic/GoogleApps", + "configurationProperties": { + "availableLicenses": [ + "101005/1010050001", + "101001/1010010001", + "101031/1010310010", + "101034/1010340002", + "101038/1010380002", + "101034/1010340001", + "101038/1010380003", + "101034/1010340004", + "101034/1010340003", + "101034/1010340006", + "Google-Apps/Google-Apps-For-Business", + "101034/1010340005", + "Google-Vault/Google-Vault", + "Google-Apps/1010020031", + "Google-Apps/1010020030", + "Google-Apps/1010060003", + "Google-Apps/1010060005", + "Google-Apps/Google-Apps-Unlimited", + "Google-Apps/1010020029", + "Google-Apps/Google-Apps-Lite", + "101031/1010310003", + "101033/1010330002", + "101033/1010330004", + "Google-Apps/Google-Apps-For-Education", + "101031/1010310002", + "101033/1010330003", + "Google-Apps/1010020026", + "101031/1010310007", + "Google-Apps/1010020025", + "101031/1010310008", + "Google-Apps/1010020028", + "Google-Apps/Google-Apps-For-Postini", + "101031/1010310005", + "Google-Apps/1010020027", + "101031/1010310006", + "101031/1010310009", + "Google-Vault/Google-Vault-Former-Employee", + "101038/1010370001", + "Google-Apps/1010020020", + "Google-Apps/1010060001", + ], + "clientId": "&{esv.gac.client.id}", + "clientSecret": "&{esv.gac.secret}", + "domain": "&{esv.gac.domain}", + "groupsMaxResults": "200", + "listProductAndSkuMaxResults": "100", + "listProductMaxResults": "100", + "membersMaxResults": "200", + "proxyHost": null, + "proxyPort": 8080, + "refreshToken": "&{esv.gac.refresh}", + "roleAssignmentMaxResults": 100, + "roleMaxResults": 100, + "usersMaxResults": "100", + "validateCertificate": true, + }, + "connectorRef": { + "bundleName": "org.forgerock.openicf.connectors.googleapps-connector", + "bundleVersion": "[1.5.0.0,1.6.0.0)", + "connectorHostRef": "", + "connectorName": "org.forgerock.openicf.connectors.googleapps.GoogleAppsConnector", + "displayName": "GoogleApps Connector", + "systemType": "provisioner.openicf", + }, + "enabled": { + "$bool": "&{esv.gac.enable.connector}", + }, + "objectTypes": { + "__ACCOUNT__": { + "$schema": "http://json-schema.org/draft-03/schema", + "id": "__ACCOUNT__", + "nativeType": "__ACCOUNT__", + "properties": { + "__GROUPS__": { + "flags": [ + "NOT_RETURNED_BY_DEFAULT", + ], + "items": { + "nativeType": "string", "type": "string", - "viewable": true, - }, - "members": { - "description": "Role Members", - "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items", - "properties": { - "_ref": { - "description": "References a relationship from a managed object", - "type": "string", - }, - "_refProperties": { - "description": "Supports metadata within the relationship", - "properties": { - "_grantType": { - "description": "Grant Type", - "label": "Grant Type", - "type": "string", - }, - "_id": { - "description": "_refProperties object ID", - "type": "string", - }, - }, - "title": "Role Members Items _refProperties", - "type": "object", - }, - }, - "resourceCollection": [ - { - "conditionalAssociation": true, - "label": "User", - "notify": true, - "path": "managed/bravo_user", - "query": { - "fields": [ - "userName", - "givenName", - "sn", - ], - "queryFilter": "true", - }, - }, - ], - "reversePropertyName": "roles", - "reverseRelationship": true, - "title": "Role Members Items", - "type": "relationship", - "validate": true, - }, - "relationshipGrantTemporalConstraintsEnforced": true, - "returnByDefault": false, - "title": "Role Members", - "type": "array", - "viewable": true, }, - "name": { - "description": "The role name, used for display purposes.", - "policies": [ - { - "policyId": "unique", - }, - ], - "searchable": true, - "title": "Name", - "type": "string", - "viewable": true, + "nativeName": "__GROUPS__", + "nativeType": "string", + "type": "array", + }, + "__NAME__": { + "nativeName": "__NAME__", + "nativeType": "string", + "type": "string", + }, + "__PASSWORD__": { + "flags": [ + "NOT_READABLE", + "NOT_RETURNED_BY_DEFAULT", + ], + "nativeName": "__PASSWORD__", + "nativeType": "JAVA_TYPE_GUARDEDSTRING", + "required": true, + "type": "string", + }, + "__PHOTO__": { + "flags": [ + "NOT_RETURNED_BY_DEFAULT", + ], + "nativeName": "__PHOTO__", + "nativeType": "JAVA_TYPE_BYTE_ARRAY", + "type": "string", + }, + "__SECONDARY_EMAILS__": { + "items": { + "nativeType": "object", + "type": "object", }, - "temporalConstraints": { - "description": "An array of temporal constraints for a role", - "isTemporalConstraint": true, - "items": { - "order": [ - "duration", - ], - "properties": { - "duration": { - "description": "Duration", - "type": "string", - }, - }, - "required": [ - "duration", - ], - "title": "Temporal Constraints Items", - "type": "object", - }, - "notifyRelationships": [ - "members", - ], - "returnByDefault": true, - "title": "Temporal Constraints", - "type": "array", - "viewable": false, + "nativeName": "__SECONDARY_EMAILS__", + "nativeType": "object", + "type": "array", + }, + "__UID__": { + "nativeName": "__UID__", + "nativeType": "string", + "required": false, + "type": "string", + }, + "addresses": { + "items": { + "nativeType": "object", + "type": "object", }, + "nativeName": "addresses", + "nativeType": "object", + "type": "array", }, - "required": [ - "name", - ], - "title": "Bravo realm - Role", - "type": "object", - }, - }, - { - "attributeEncryption": {}, - "name": "alpha_assignment", - "schema": { - "$schema": "http://forgerock.org/json-schema#", - "description": "A role assignment", - "icon": "fa-key", - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment", - "mat-icon": "vpn_key", - "order": [ - "_id", - "name", - "description", - "type", - "mapping", - "attributes", - "linkQualifiers", - "roles", - "members", - "condition", - "weight", - ], - "properties": { - "_id": { - "description": "The assignment ID", - "searchable": false, - "title": "Name", + "agreedToTerms": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "agreedToTerms", + "nativeType": "JAVA_TYPE_PRIMITIVE_BOOLEAN", + "type": "boolean", + }, + "aliases": { + "flags": [ + "NOT_CREATABLE", + ], + "items": { + "nativeType": "string", "type": "string", - "viewable": false, - }, - "attributes": { - "description": "The attributes operated on by this assignment.", - "items": { - "order": [ - "assignmentOperation", - "unassignmentOperation", - "name", - "value", - ], - "properties": { - "assignmentOperation": { - "description": "Assignment operation", - "type": "string", - }, - "name": { - "description": "Name", - "type": "string", - }, - "unassignmentOperation": { - "description": "Unassignment operation", - "type": "string", - }, - "value": { - "description": "Value", - "type": "string", - }, - }, - "required": [], - "title": "Assignment Attributes Items", - "type": "object", - }, - "notifyRelationships": [ - "roles", - "members", - ], - "title": "Assignment Attributes", - "type": "array", - "viewable": true, }, - "condition": { - "description": "A conditional filter for this assignment", - "isConditional": true, - "searchable": false, - "title": "Condition", + "nativeName": "aliases", + "nativeType": "string", + "type": "array", + }, + "archived": { + "nativeName": "archived", + "nativeType": "boolean", + "type": "boolean", + }, + "changePasswordAtNextLogin": { + "nativeName": "changePasswordAtNextLogin", + "nativeType": "boolean", + "type": "boolean", + }, + "creationTime": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "items": { + "nativeType": "string", "type": "string", - "viewable": false, }, - "description": { - "description": "The assignment description, used for display purposes.", - "searchable": true, - "title": "Description", - "type": "string", - "viewable": true, + "nativeName": "creationTime", + "nativeType": "string", + "type": "array", + }, + "customSchemas": { + "nativeName": "customSchemas", + "nativeType": "object", + "type": "object", + }, + "customerId": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "customerId", + "nativeType": "string", + "type": "string", + }, + "deletionTime": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "deletionTime", + "nativeType": "string", + "type": "string", + }, + "externalIds": { + "items": { + "nativeType": "object", + "type": "object", }, - "linkQualifiers": { - "description": "Conditional link qualifiers to restrict this assignment to.", - "items": { - "title": "Link Qualifiers Items", - "type": "string", - }, - "title": "Link Qualifiers", - "type": "array", - "viewable": true, + "nativeName": "externalIds", + "nativeType": "object", + "type": "array", + }, + "familyName": { + "nativeName": "familyName", + "nativeType": "string", + "type": "string", + }, + "fullName": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "fullName", + "nativeType": "string", + "type": "string", + }, + "givenName": { + "nativeName": "givenName", + "nativeType": "string", + "required": true, + "type": "string", + }, + "hashFunction": { + "flags": [ + "NOT_RETURNED_BY_DEFAULT", + ], + "nativeName": "hashFunction", + "nativeType": "string", + "type": "string", + }, + "ims": { + "items": { + "nativeType": "object", + "type": "object", }, - "mapping": { - "description": "The name of the mapping this assignment applies to", - "policies": [ - { - "policyId": "mapping-exists", - }, - ], - "searchable": true, - "title": "Mapping", - "type": "string", - "viewable": true, + "nativeName": "ims", + "nativeType": "object", + "type": "array", + }, + "includeInGlobalAddressList": { + "nativeName": "includeInGlobalAddressList", + "nativeType": "boolean", + "type": "boolean", + }, + "ipWhitelisted": { + "nativeName": "ipWhitelisted", + "nativeType": "boolean", + "type": "boolean", + }, + "isAdmin": { + "nativeName": "isAdmin", + "nativeType": "JAVA_TYPE_PRIMITIVE_BOOLEAN", + "type": "boolean", + }, + "isDelegatedAdmin": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "isDelegatedAdmin", + "nativeType": "JAVA_TYPE_PRIMITIVE_BOOLEAN", + "type": "boolean", + }, + "isEnforcedIn2Sv": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "isEnforcedIn2Sv", + "nativeType": "boolean", + "type": "boolean", + }, + "isEnrolledIn2Sv": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "isEnrolledIn2Sv", + "nativeType": "boolean", + "type": "boolean", + }, + "isMailboxSetup": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "isMailboxSetup", + "nativeType": "boolean", + "type": "boolean", + }, + "languages": { + "items": { + "nativeType": "object", + "type": "object", }, - "members": { - "description": "Assignment Members", - "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items", - "properties": { - "_ref": { - "description": "References a relationship from a managed object", - "type": "string", - }, - "_refProperties": { - "description": "Supports metadata within the relationship", - "properties": { - "_grantType": { - "description": "Grant Type", - "label": "Grant Type", - "type": "string", - }, - "_id": { - "description": "_refProperties object ID", - "type": "string", - }, - }, - "title": "Assignment Members Items _refProperties", - "type": "object", - }, - }, - "resourceCollection": [ - { - "conditionalAssociation": true, - "label": "User", - "notify": true, - "path": "managed/alpha_user", - "query": { - "fields": [ - "userName", - "givenName", - "sn", - ], - "queryFilter": "true", - }, - }, - ], - "reversePropertyName": "assignments", - "reverseRelationship": true, - "title": "Assignment Members Items", - "type": "relationship", - "validate": true, - }, - "returnByDefault": false, - "title": "Assignment Members", - "type": "array", - "viewable": true, + "nativeName": "languages", + "nativeType": "object", + "type": "array", + }, + "lastLoginTime": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "items": { + "nativeType": "string", + "type": "string", }, - "name": { - "description": "The assignment name, used for display purposes.", - "searchable": true, - "title": "Name", + "nativeName": "lastLoginTime", + "nativeType": "string", + "type": "array", + }, + "nonEditableAliases": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "items": { + "nativeType": "string", "type": "string", - "viewable": true, }, - "roles": { - "description": "Managed Roles", - "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items", - "properties": { - "_ref": { - "description": "References a relationship from a managed object", - "type": "string", - }, - "_refProperties": { - "description": "Supports metadata within the relationship", - "properties": { - "_id": { - "description": "_refProperties object ID", - "type": "string", - }, - }, - "title": "Managed Roles Items _refProperties", - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "Role", - "notify": true, - "path": "managed/alpha_role", - "query": { - "fields": [ - "name", - ], - "queryFilter": "true", - }, - }, - ], - "reversePropertyName": "assignments", - "reverseRelationship": true, - "title": "Managed Roles Items", - "type": "relationship", - "validate": true, - }, - "returnByDefault": false, - "title": "Managed Roles", - "type": "array", - "userEditable": false, - "viewable": true, + "nativeName": "nonEditableAliases", + "nativeType": "string", + "type": "array", + }, + "orgUnitPath": { + "nativeName": "orgUnitPath", + "nativeType": "string", + "type": "string", + }, + "organizations": { + "items": { + "nativeType": "object", + "type": "object", }, - "type": { - "description": "The type of object this assignment represents", - "title": "Type", - "type": "string", - "viewable": true, + "nativeName": "organizations", + "nativeType": "object", + "type": "array", + }, + "phones": { + "items": { + "nativeType": "object", + "type": "object", }, - "weight": { - "description": "The weight of the assignment.", - "notifyRelationships": [ - "roles", - "members", - ], - "searchable": false, - "title": "Weight", - "type": [ - "number", - "null", - ], - "viewable": true, + "nativeName": "phones", + "nativeType": "object", + "type": "array", + }, + "primaryEmail": { + "nativeName": "primaryEmail", + "nativeType": "string", + "type": "string", + }, + "recoveryEmail": { + "nativeName": "recoveryEmail", + "nativeType": "string", + "type": "string", + }, + "recoveryPhone": { + "nativeName": "recoveryPhone", + "nativeType": "string", + "type": "string", + }, + "relations": { + "items": { + "nativeType": "object", + "type": "object", }, + "nativeName": "relations", + "nativeType": "object", + "type": "array", + }, + "suspended": { + "nativeName": "suspended", + "nativeType": "boolean", + "type": "boolean", + }, + "suspensionReason": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "suspensionReason", + "nativeType": "string", + "type": "string", + }, + "thumbnailPhotoUrl": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "thumbnailPhotoUrl", + "nativeType": "string", + "type": "string", + }, + }, + "type": "object", + }, + }, + "operationTimeout": { + "AUTHENTICATE": -1, + "CREATE": -1, + "DELETE": -1, + "GET": -1, + "RESOLVEUSERNAME": -1, + "SCHEMA": -1, + "SCRIPT_ON_CONNECTOR": -1, + "SCRIPT_ON_RESOURCE": -1, + "SEARCH": -1, + "SYNC": -1, + "TEST": -1, + "UPDATE": -1, + "VALIDATE": -1, + }, + "poolConfigOption": { + "maxIdle": 10, + "maxObjects": 10, + "maxWait": 150000, + "minEvictableIdleTimeMillis": 120000, + "minIdle": 1, + }, + "resultsHandlerConfig": { + "enableAttributesToGetSearchResultsHandler": true, + "enableCaseInsensitiveFilter": false, + "enableFilteredResultsHandler": false, + "enableNormalizingResultsHandler": false, + }, + }, + "provisioner.openicf.connectorinfoprovider": { + "_id": "provisioner.openicf.connectorinfoprovider", + "connectorsLocation": "connectors", + "remoteConnectorClients": [ + { + "enabled": true, + "name": "rcs1", + "useSSL": true, + }, + ], + "remoteConnectorClientsGroups": [], + "remoteConnectorServers": [], + "remoteConnectorServersGroups": [], + }, + "provisioner.openicf/Azure": { + "_id": "provisioner.openicf/Azure", + "configurationProperties": { + "clientId": "4b07adcc-329c-434c-aa83-49a14bef3c49", + "clientSecret": { + "$crypto": { + "type": "x-simple-encryption", + "value": { + "cipher": "AES/CBC/PKCS5Padding", + "data": "W63amdvzlmynT40WOTl1wPWDc8FUlGWQZK158lmlFTrnhy9PbWZV5YE4v3VeMUDC", + "iv": "KG/YFc8v26QHJzRI3uFhzw==", + "keySize": 16, + "mac": "mA4BzCNS7tuLhosQ+es1Tg==", + "purpose": "idm.config.encryption", + "salt": "vvPwKk0KqOqMjElQgICqEA==", + "stableId": "openidm-sym-default", }, - "required": [ - "name", - "description", - "mapping", - ], - "title": "Alpha realm - Assignment", - "type": "object", }, }, - { - "attributeEncryption": {}, - "name": "bravo_assignment", - "schema": { - "$schema": "http://forgerock.org/json-schema#", - "description": "A role assignment", - "icon": "fa-key", - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment", - "mat-icon": "vpn_key", - "order": [ - "_id", - "name", - "description", - "type", - "mapping", - "attributes", - "linkQualifiers", - "roles", - "members", - "condition", - "weight", - ], - "properties": { - "_id": { - "description": "The assignment ID", - "searchable": false, - "title": "Name", + "httpProxyHost": null, + "httpProxyPassword": null, + "httpProxyPort": null, + "httpProxyUsername": null, + "licenseCacheExpiryTime": 60, + "performHardDelete": true, + "readRateLimit": null, + "tenant": "711ffa9c-5972-4713-ace3-688c9732614a", + "writeRateLimit": null, + }, + "connectorRef": { + "bundleName": "org.forgerock.openicf.connectors.msgraphapi-connector", + "bundleVersion": "1.5.20.21", + "connectorName": "org.forgerock.openicf.connectors.msgraphapi.MSGraphAPIConnector", + "displayName": "MSGraphAPI Connector", + "systemType": "provisioner.openicf", + }, + "enabled": true, + "objectTypes": { + "User": { + "$schema": "http://json-schema.org/draft-03/schema", + "id": "__ACCOUNT__", + "nativeType": "__ACCOUNT__", + "properties": { + "__PASSWORD__": { + "autocomplete": "new-password", + "flags": [ + "NOT_UPDATEABLE", + "NOT_READABLE", + "NOT_RETURNED_BY_DEFAULT", + ], + "nativeName": "__PASSWORD__", + "nativeType": "JAVA_TYPE_GUARDEDSTRING", + "required": true, + "type": "string", + }, + "__roles__": { + "flags": [ + "NOT_RETURNED_BY_DEFAULT", + ], + "items": { + "nativeType": "string", "type": "string", - "viewable": false, - }, - "attributes": { - "description": "The attributes operated on by this assignment.", - "items": { - "order": [ - "assignmentOperation", - "unassignmentOperation", - "name", - "value", - ], - "properties": { - "assignmentOperation": { - "description": "Assignment operation", - "type": "string", - }, - "name": { - "description": "Name", - "type": "string", - }, - "unassignmentOperation": { - "description": "Unassignment operation", - "type": "string", - }, - "value": { - "description": "Value", - "type": "string", - }, - }, - "required": [], - "title": "Assignment Attributes Items", - "type": "object", - }, - "notifyRelationships": [ - "roles", - "members", - ], - "title": "Assignment Attributes", - "type": "array", - "viewable": true, }, - "condition": { - "description": "A conditional filter for this assignment", - "isConditional": true, - "searchable": false, - "title": "Condition", + "nativeName": "__roles__", + "nativeType": "string", + "type": "array", + }, + "__servicePlanIds__": { + "items": { + "nativeType": "string", "type": "string", - "viewable": false, }, - "description": { - "description": "The assignment description, used for display purposes.", - "searchable": true, - "title": "Description", + "nativeName": "__servicePlanIds__", + "nativeType": "string", + "type": "array", + }, + "accountEnabled": { + "nativeName": "accountEnabled", + "nativeType": "boolean", + "required": true, + "type": "boolean", + }, + "city": { + "nativeName": "city", + "nativeType": "string", + "type": "string", + }, + "companyName": { + "nativeName": "companyName", + "nativeType": "string", + "type": "string", + }, + "country": { + "nativeName": "country", + "nativeType": "string", + "type": "string", + }, + "department": { + "nativeName": "department", + "nativeType": "string", + "type": "string", + }, + "displayName": { + "nativeName": "displayName", + "nativeType": "string", + "required": true, + "type": "string", + }, + "givenName": { + "nativeName": "givenName", + "nativeType": "string", + "type": "string", + }, + "jobTitle": { + "nativeName": "jobTitle", + "nativeType": "string", + "type": "string", + }, + "mail": { + "nativeName": "mail", + "nativeType": "string", + "required": true, + "type": "string", + }, + "mailNickname": { + "nativeName": "mailNickname", + "nativeType": "string", + "required": true, + "type": "string", + }, + "manager": { + "nativeName": "manager", + "nativeType": "object", + "type": "object", + }, + "memberOf": { + "flags": [ + "NOT_RETURNED_BY_DEFAULT", + ], + "items": { + "nativeType": "string", "type": "string", - "viewable": true, - }, - "linkQualifiers": { - "description": "Conditional link qualifiers to restrict this assignment to.", - "items": { - "title": "Link Qualifiers Items", - "type": "string", - }, - "title": "Link Qualifiers", - "type": "array", - "viewable": true, }, - "mapping": { - "description": "The name of the mapping this assignment applies to", - "policies": [ - { - "policyId": "mapping-exists", - }, - ], - "searchable": true, - "title": "Mapping", + "nativeName": "memberOf", + "nativeType": "string", + "type": "array", + }, + "mobilePhone": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "mobilePhone", + "nativeType": "string", + "type": "string", + }, + "onPremisesImmutableId": { + "flags": [ + "NOT_UPDATEABLE", + "NOT_CREATABLE", + ], + "nativeName": "onPremisesImmutableId", + "nativeType": "string", + "type": "string", + }, + "onPremisesSecurityIdentifier": { + "flags": [ + "NOT_UPDATEABLE", + "NOT_CREATABLE", + ], + "nativeName": "onPremisesSecurityIdentifier", + "nativeType": "string", + "type": "string", + }, + "otherMails": { + "items": { + "nativeType": "string", "type": "string", - "viewable": true, - }, - "members": { - "description": "Assignment Members", - "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items", - "properties": { - "_ref": { - "description": "References a relationship from a managed object", - "type": "string", - }, - "_refProperties": { - "description": "Supports metadata within the relationship", - "properties": { - "_grantType": { - "description": "Grant Type", - "label": "Grant Type", - "type": "string", - }, - "_id": { - "description": "_refProperties object ID", - "type": "string", - }, - }, - "title": "Assignment Members Items _refProperties", - "type": "object", - }, - }, - "resourceCollection": [ - { - "conditionalAssociation": true, - "label": "User", - "notify": true, - "path": "managed/bravo_user", - "query": { - "fields": [ - "userName", - "givenName", - "sn", - ], - "queryFilter": "true", - }, - }, - ], - "reversePropertyName": "assignments", - "reverseRelationship": true, - "title": "Assignment Members Items", - "type": "relationship", - "validate": true, - }, - "returnByDefault": false, - "title": "Assignment Members", - "type": "array", - "viewable": true, }, - "name": { - "description": "The assignment name, used for display purposes.", - "searchable": true, - "title": "Name", + "nativeName": "otherMails", + "nativeType": "string", + "type": "array", + }, + "postalCode": { + "nativeName": "postalCode", + "nativeType": "string", + "type": "string", + }, + "preferredLanguage": { + "nativeName": "preferredLanguage", + "nativeType": "string", + "type": "string", + }, + "proxyAddresses": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "items": { + "nativeType": "string", "type": "string", - "viewable": true, }, - "roles": { - "description": "Managed Roles", - "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items", - "properties": { - "_ref": { - "description": "References a relationship from a managed object", - "type": "string", - }, - "_refProperties": { - "description": "Supports metadata within the relationship", - "properties": { - "_id": { - "description": "_refProperties object ID", - "type": "string", - }, - }, - "title": "Managed Roles Items _refProperties", - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "Role", - "notify": true, - "path": "managed/bravo_role", - "query": { - "fields": [ - "name", - ], - "queryFilter": "true", - }, - }, - ], - "reversePropertyName": "assignments", - "reverseRelationship": true, - "title": "Managed Roles Items", - "type": "relationship", - "validate": true, - }, - "returnByDefault": false, - "title": "Managed Roles", - "type": "array", - "userEditable": false, - "viewable": true, + "nativeName": "proxyAddresses", + "nativeType": "string", + "type": "array", + }, + "state": { + "nativeName": "state", + "nativeType": "string", + "type": "string", + }, + "streetAddress": { + "nativeName": "streetAddress", + "nativeType": "string", + "type": "string", + }, + "surname": { + "nativeName": "surname", + "nativeType": "string", + "type": "string", + }, + "usageLocation": { + "nativeName": "usageLocation", + "nativeType": "string", + "type": "string", + }, + "userPrincipalName": { + "nativeName": "userPrincipalName", + "nativeType": "string", + "required": true, + "type": "string", + }, + "userType": { + "nativeName": "userType", + "nativeType": "string", + "type": "string", + }, + }, + "type": "object", + }, + "__GROUP__": { + "$schema": "http://json-schema.org/draft-03/schema", + "id": "__GROUP__", + "nativeType": "__GROUP__", + "properties": { + "__NAME__": { + "nativeName": "__NAME__", + "nativeType": "string", + "required": true, + "type": "string", + }, + "description": { + "nativeName": "description", + "nativeType": "string", + "type": "string", + }, + "displayName": { + "nativeName": "displayName", + "nativeType": "string", + "required": true, + "type": "string", + }, + "groupTypes": { + "items": { + "nativeType": "string", + "type": "string", }, - "type": { - "description": "The type of object this assignment represents", - "title": "Type", + "nativeName": "groupTypes", + "nativeType": "string", + "type": "string", + }, + "id": { + "flags": [ + "NOT_UPDATEABLE", + "NOT_CREATABLE", + ], + "nativeName": "id", + "type": "string", + }, + "mail": { + "nativeName": "mail", + "nativeType": "string", + "type": "string", + }, + "mailEnabled": { + "nativeName": "mailEnabled", + "nativeType": "boolean", + "required": true, + "type": "boolean", + }, + "onPremisesSecurityIdentifier": { + "flags": [ + "NOT_UPDATEABLE", + "NOT_CREATABLE", + ], + "nativeName": "onPremisesSecurityIdentifier", + "nativeType": "string", + "type": "string", + }, + "proxyAddresses": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "items": { + "nativeType": "string", "type": "string", - "viewable": true, - }, - "weight": { - "description": "The weight of the assignment.", - "notifyRelationships": [ - "roles", - "members", - ], - "searchable": false, - "title": "Weight", - "type": [ - "number", - "null", - ], - "viewable": true, }, + "nativeName": "proxyAddresses", + "nativeType": "string", + "type": "array", + }, + "securityEnabled": { + "nativeName": "securityEnabled", + "nativeType": "boolean", + "required": true, + "type": "boolean", + }, + "type": { + "nativeName": "type", + "required": true, + "type": "string", }, - "required": [ - "name", - "description", - "mapping", - ], - "title": "Bravo realm - Assignment", - "type": "object", }, + "type": "object", }, - { - "name": "alpha_organization", - "schema": { - "$schema": "http://forgerock.org/json-schema#", - "description": "An organization or tenant, whose resources are managed by organizational admins.", - "icon": "fa-building", - "mat-icon": "domain", - "order": [ - "name", - "description", - "owners", - "admins", - "members", - "parent", - "children", - "adminIDs", - "ownerIDs", - "parentAdminIDs", - "parentOwnerIDs", - "parentIDs", - ], - "properties": { - "adminIDs": { - "isVirtual": true, - "items": { - "title": "admin ids", - "type": "string", - }, - "queryConfig": { - "flattenProperties": true, - "referencedObjectFields": [ - "_id", - ], - "referencedRelationshipFields": [ - "admins", - ], - }, - "returnByDefault": true, - "searchable": false, - "title": "Admin user ids", - "type": "array", - "userEditable": false, - "viewable": false, + "directoryRole": { + "$schema": "http://json-schema.org/draft-03/schema", + "id": "directoryRole", + "nativeType": "directoryRole", + "properties": { + "description": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "description", + "nativeType": "string", + "type": "string", + }, + "displayName": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "displayName", + "nativeType": "string", + "type": "string", + }, + }, + "type": "object", + }, + "servicePlan": { + "$schema": "http://json-schema.org/draft-03/schema", + "id": "servicePlan", + "nativeType": "servicePlan", + "properties": { + "__NAME__": { + "nativeName": "__NAME__", + "nativeType": "string", + "type": "string", + }, + "appliesTo": { + "flags": [ + "NOT_UPDATEABLE", + "NOT_CREATABLE", + ], + "nativeName": "appliesTo", + "nativeType": "string", + "type": "string", + }, + "provisioningStatus": { + "flags": [ + "NOT_UPDATEABLE", + "NOT_CREATABLE", + ], + "nativeName": "provisioningStatus", + "nativeType": "string", + "type": "string", + }, + "servicePlanId": { + "flags": [ + "NOT_UPDATEABLE", + "NOT_CREATABLE", + ], + "nativeName": "servicePlanId", + "nativeType": "string", + "type": "string", + }, + "servicePlanName": { + "flags": [ + "NOT_UPDATEABLE", + "NOT_CREATABLE", + ], + "nativeName": "servicePlanName", + "nativeType": "string", + "type": "string", + }, + "subscriberSkuId": { + "flags": [ + "NOT_UPDATEABLE", + "NOT_CREATABLE", + ], + "nativeName": "subscriberSkuId", + "type": "string", + }, + }, + "type": "object", + }, + "servicePrincipal": { + "$schema": "http://json-schema.org/draft-03/schema", + "id": "servicePrincipal", + "nativeType": "servicePrincipal", + "properties": { + "__NAME__": { + "nativeName": "__NAME__", + "nativeType": "string", + "type": "string", + }, + "__addAppRoleAssignedTo__": { + "flags": [ + "NOT_READABLE", + "NOT_RETURNED_BY_DEFAULT", + ], + "items": { + "nativeType": "object", + "type": "object", }, - "admins": { - "items": { - "notifySelf": true, - "properties": { - "_ref": { - "type": "string", - }, - "_refProperties": { - "properties": { - "_id": { - "propName": "_id", - "required": false, - "type": "string", - }, - }, - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "User", - "notify": false, - "path": "managed/alpha_user", - "query": { - "fields": [ - "userName", - "givenName", - "sn", - ], - "queryFilter": "true", - "sortKeys": [], - }, - }, - ], - "reversePropertyName": "adminOfOrg", - "reverseRelationship": true, - "type": "relationship", - "validate": true, - }, - "notifyRelationships": [ - "children", - ], - "returnByDefault": false, - "searchable": false, - "title": "Administrators", - "type": "array", - "userEditable": false, - "viewable": true, + "nativeName": "__addAppRoleAssignedTo__", + "nativeType": "object", + "type": "array", + }, + "__addAppRoleAssignments__": { + "flags": [ + "NOT_READABLE", + "NOT_RETURNED_BY_DEFAULT", + ], + "items": { + "nativeType": "object", + "type": "object", }, - "children": { - "description": "Child Organizations", - "items": { - "notifySelf": true, - "properties": { - "_ref": { - "type": "string", - }, - "_refProperties": { - "properties": { - "_id": { - "propName": "_id", - "required": false, - "type": "string", - }, - }, - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "Organization", - "notify": true, - "path": "managed/alpha_organization", - "query": { - "fields": [ - "name", - "description", - ], - "queryFilter": "true", - "sortKeys": [], - }, - }, - ], - "reversePropertyName": "parent", - "reverseRelationship": true, - "type": "relationship", - "validate": true, - }, - "policies": [], - "returnByDefault": false, - "searchable": false, - "title": "Child Organizations", - "type": "array", - "userEditable": false, - "viewable": false, + "nativeName": "__addAppRoleAssignments__", + "nativeType": "object", + "type": "array", + }, + "__removeAppRoleAssignedTo__": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + "NOT_RETURNED_BY_DEFAULT", + ], + "items": { + "nativeType": "string", + "type": "string", }, - "description": { - "searchable": true, - "title": "Description", + "nativeName": "__removeAppRoleAssignedTo__", + "nativeType": "string", + "type": "array", + }, + "__removeAppRoleAssignments__": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + "NOT_RETURNED_BY_DEFAULT", + ], + "items": { + "nativeType": "string", "type": "string", - "userEditable": true, - "viewable": true, }, - "members": { - "items": { - "notifySelf": false, - "properties": { - "_ref": { - "type": "string", - }, - "_refProperties": { - "properties": { - "_id": { - "propName": "_id", - "required": false, - "type": "string", - }, - }, - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "User", - "notify": true, - "path": "managed/alpha_user", - "query": { - "fields": [ - "userName", - "givenName", - "sn", - ], - "queryFilter": "true", - "sortKeys": [], - }, - }, - ], - "reversePropertyName": "memberOfOrg", - "reverseRelationship": true, - "type": "relationship", - "validate": true, - }, - "returnByDefault": false, - "searchable": false, - "title": "Members", - "type": "array", - "userEditable": false, - "viewable": true, + "nativeName": "__removeAppRoleAssignments__", + "nativeType": "string", + "type": "array", + }, + "accountEnabled": { + "nativeName": "accountEnabled", + "nativeType": "boolean", + "type": "boolean", + }, + "addIns": { + "items": { + "nativeType": "object", + "type": "object", }, - "name": { - "searchable": true, - "title": "Name", + "nativeName": "addIns", + "nativeType": "object", + "type": "array", + }, + "alternativeNames": { + "items": { + "nativeType": "string", "type": "string", - "userEditable": true, - "viewable": true, }, - "ownerIDs": { - "isVirtual": true, - "items": { - "title": "owner ids", - "type": "string", - }, - "queryConfig": { - "flattenProperties": true, - "referencedObjectFields": [ - "_id", - ], - "referencedRelationshipFields": [ - "owners", - ], - }, - "returnByDefault": true, - "searchable": false, - "title": "Owner user ids", - "type": "array", - "userEditable": false, - "viewable": false, + "nativeName": "alternativeNames", + "nativeType": "string", + "type": "array", + }, + "appDescription": { + "nativeName": "appDescription", + "nativeType": "string", + "type": "string", + }, + "appDisplayName": { + "nativeName": "appDisplayName", + "nativeType": "string", + "type": "string", + }, + "appId": { + "nativeName": "appId", + "nativeType": "string", + "type": "string", + }, + "appOwnerOrganizationId": { + "nativeName": "appOwnerOrganizationId", + "nativeType": "string", + "type": "string", + }, + "appRoleAssignmentRequired": { + "nativeName": "appRoleAssignmentRequired", + "nativeType": "boolean", + "type": "boolean", + }, + "appRoles": { + "items": { + "nativeType": "object", + "type": "object", + }, + "nativeName": "appRoles", + "nativeType": "object", + "type": "array", + }, + "applicationTemplateId": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "applicationTemplateId", + "nativeType": "string", + "type": "string", + }, + "deletedDateTime": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "deletedDateTime", + "nativeType": "string", + "type": "string", + }, + "description": { + "nativeName": "description", + "nativeType": "string", + "type": "string", + }, + "disabledByMicrosoftStatus": { + "nativeName": "disabledByMicrosoftStatus", + "nativeType": "string", + "type": "string", + }, + "displayName": { + "nativeName": "displayName", + "nativeType": "string", + "type": "string", + }, + "homepage": { + "nativeName": "homepage", + "nativeType": "string", + "type": "string", + }, + "info": { + "nativeName": "info", + "nativeType": "object", + "type": "object", + }, + "keyCredentials": { + "items": { + "nativeType": "object", + "type": "object", + }, + "nativeName": "keyCredentials", + "nativeType": "object", + "type": "array", + }, + "loginUrl": { + "nativeName": "loginUrl", + "nativeType": "string", + "type": "string", + }, + "logoutUrl": { + "nativeName": "logoutUrl", + "nativeType": "string", + "type": "string", + }, + "notes": { + "nativeName": "notes", + "nativeType": "string", + "type": "string", + }, + "notificationEmailAddresses": { + "items": { + "nativeType": "string", + "type": "string", }, - "owners": { - "items": { - "notifySelf": true, - "properties": { - "_ref": { - "type": "string", - }, - "_refProperties": { - "properties": { - "_id": { - "propName": "_id", - "required": false, - "type": "string", - }, - }, - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "User", - "notify": false, - "path": "managed/alpha_user", - "query": { - "fields": [ - "userName", - "givenName", - "sn", - ], - "queryFilter": "true", - "sortKeys": [], - }, - }, - ], - "reversePropertyName": "ownerOfOrg", - "reverseRelationship": true, - "type": "relationship", - "validate": true, - }, - "notifyRelationships": [ - "children", - ], - "returnByDefault": false, - "searchable": false, - "title": "Owner", - "type": "array", - "userEditable": false, - "viewable": true, + "nativeName": "notificationEmailAddresses", + "nativeType": "string", + "type": "array", + }, + "oauth2PermissionScopes": { + "items": { + "nativeType": "object", + "type": "object", }, - "parent": { - "description": "Parent Organization", - "notifyRelationships": [ - "children", - "members", - ], - "notifySelf": true, - "properties": { - "_ref": { - "type": "string", - }, - "_refProperties": { - "properties": { - "_id": { - "propName": "_id", - "required": false, - "type": "string", - }, - }, - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "Organization", - "notify": false, - "path": "managed/alpha_organization", - "query": { - "fields": [ - "name", - "description", - ], - "queryFilter": "true", - "sortKeys": [], - }, - }, - ], - "returnByDefault": false, - "reversePropertyName": "children", - "reverseRelationship": true, - "searchable": false, - "title": "Parent Organization", - "type": "relationship", - "userEditable": false, - "validate": true, - "viewable": true, + "nativeName": "oauth2PermissionScopes", + "nativeType": "object", + "type": "array", + }, + "passwordCredentials": { + "items": { + "nativeType": "object", + "type": "object", }, - "parentAdminIDs": { - "isVirtual": true, - "items": { - "title": "user ids of parent admins", - "type": "string", - }, - "queryConfig": { - "flattenProperties": true, - "referencedObjectFields": [ - "adminIDs", - "parentAdminIDs", - ], - "referencedRelationshipFields": [ - "parent", - ], - }, - "returnByDefault": true, - "searchable": false, - "title": "user ids of parent admins", - "type": "array", - "userEditable": false, - "viewable": false, + "nativeName": "passwordCredentials", + "nativeType": "object", + "type": "array", + }, + "preferredSingleSignOnMode": { + "nativeName": "preferredSingleSignOnMode", + "nativeType": "string", + "type": "string", + }, + "replyUrls": { + "items": { + "nativeType": "string", + "type": "string", }, - "parentIDs": { - "isVirtual": true, - "items": { - "title": "parent org ids", - "type": "string", - }, - "queryConfig": { - "flattenProperties": true, - "referencedObjectFields": [ - "_id", - "parentIDs", - ], - "referencedRelationshipFields": [ - "parent", - ], - }, - "returnByDefault": true, - "searchable": false, - "title": "parent org ids", - "type": "array", - "userEditable": false, - "viewable": false, + "nativeName": "replyUrls", + "nativeType": "string", + "type": "array", + }, + "resourceSpecificApplicationPermissions": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "items": { + "nativeType": "object", + "type": "object", }, - "parentOwnerIDs": { - "isVirtual": true, - "items": { - "title": "user ids of parent owners", - "type": "string", - }, - "queryConfig": { - "flattenProperties": true, - "referencedObjectFields": [ - "ownerIDs", - "parentOwnerIDs", - ], - "referencedRelationshipFields": [ - "parent", - ], - }, - "returnByDefault": true, - "searchable": false, - "title": "user ids of parent owners", - "type": "array", - "userEditable": false, - "viewable": false, + "nativeName": "resourceSpecificApplicationPermissions", + "nativeType": "object", + "type": "array", + }, + "samlSingleSignOnSettings": { + "nativeName": "samlSingleSignOnSettings", + "nativeType": "object", + "type": "object", + }, + "servicePrincipalNames": { + "items": { + "nativeType": "string", + "type": "string", }, + "nativeName": "servicePrincipalNames", + "nativeType": "string", + "type": "array", + }, + "servicePrincipalType": { + "nativeName": "servicePrincipalType", + "nativeType": "string", + "type": "string", + }, + "signInAudience": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "signInAudience", + "nativeType": "string", + "type": "string", + }, + "tags": { + "items": { + "nativeType": "string", + "type": "string", + }, + "nativeName": "tags", + "nativeType": "string", + "type": "array", + }, + "tokenEncryptionKeyId": { + "nativeName": "tokenEncryptionKeyId", + "nativeType": "string", + "type": "string", + }, + "verifiedPublisher": { + "nativeName": "verifiedPublisher", + "nativeType": "object", + "type": "object", }, - "required": [ - "name", - ], - "title": "Alpha realm - Organization", - "type": "object", }, + "type": "object", }, - { - "name": "bravo_organization", - "schema": { - "$schema": "http://forgerock.org/json-schema#", - "description": "An organization or tenant, whose resources are managed by organizational admins.", - "icon": "fa-building", - "mat-icon": "domain", - "order": [ - "name", - "description", - "owners", - "admins", - "members", - "parent", - "children", - "adminIDs", - "ownerIDs", - "parentAdminIDs", - "parentOwnerIDs", - "parentIDs", - ], - "properties": { - "adminIDs": { - "isVirtual": true, - "items": { - "title": "admin ids", - "type": "string", - }, - "queryConfig": { - "flattenProperties": true, - "referencedObjectFields": [ - "_id", - ], - "referencedRelationshipFields": [ - "admins", - ], - }, - "returnByDefault": true, - "searchable": false, - "title": "Admin user ids", - "type": "array", - "userEditable": false, - "viewable": false, + }, + "operationTimeout": { + "AUTHENTICATE": -1, + "CREATE": -1, + "DELETE": -1, + "GET": -1, + "RESOLVEUSERNAME": -1, + "SCHEMA": -1, + "SCRIPT_ON_CONNECTOR": -1, + "SCRIPT_ON_RESOURCE": -1, + "SEARCH": -1, + "SYNC": -1, + "TEST": -1, + "UPDATE": -1, + "VALIDATE": -1, + }, + "poolConfigOption": { + "maxIdle": 10, + "maxObjects": 10, + "maxWait": 150000, + "minEvictableIdleTimeMillis": 120000, + "minIdle": 1, + }, + "resultsHandlerConfig": { + "enableAttributesToGetSearchResultsHandler": true, + "enableCaseInsensitiveFilter": false, + "enableFilteredResultsHandler": false, + "enableNormalizingResultsHandler": false, + }, + }, + "provisioner.openicf/GoogleApps": { + "_id": "provisioner.openicf/GoogleApps", + "configurationProperties": { + "availableLicenses": [ + "101005/1010050001", + "101001/1010010001", + "101031/1010310010", + "101034/1010340002", + "101038/1010380002", + "101034/1010340001", + "101038/1010380003", + "101034/1010340004", + "101034/1010340003", + "101034/1010340006", + "Google-Apps/Google-Apps-For-Business", + "101034/1010340005", + "Google-Vault/Google-Vault", + "Google-Apps/1010020031", + "Google-Apps/1010020030", + "Google-Apps/1010060003", + "Google-Apps/1010060005", + "Google-Apps/Google-Apps-Unlimited", + "Google-Apps/1010020029", + "Google-Apps/Google-Apps-Lite", + "101031/1010310003", + "101033/1010330002", + "101033/1010330004", + "Google-Apps/Google-Apps-For-Education", + "101031/1010310002", + "101033/1010330003", + "Google-Apps/1010020026", + "101031/1010310007", + "Google-Apps/1010020025", + "101031/1010310008", + "Google-Apps/1010020028", + "Google-Apps/Google-Apps-For-Postini", + "101031/1010310005", + "Google-Apps/1010020027", + "101031/1010310006", + "101031/1010310009", + "Google-Vault/Google-Vault-Former-Employee", + "101038/1010370001", + "Google-Apps/1010020020", + "Google-Apps/1010060001", + ], + "clientId": "&{esv.gac.client.id}", + "clientSecret": "&{esv.gac.secret}", + "domain": "&{esv.gac.domain}", + "groupsMaxResults": "200", + "listProductAndSkuMaxResults": "100", + "listProductMaxResults": "100", + "membersMaxResults": "200", + "proxyHost": null, + "proxyPort": 8080, + "refreshToken": "&{esv.gac.refresh}", + "roleAssignmentMaxResults": 100, + "roleMaxResults": 100, + "usersMaxResults": "100", + "validateCertificate": true, + }, + "connectorRef": { + "bundleName": "org.forgerock.openicf.connectors.googleapps-connector", + "bundleVersion": "[1.5.0.0,1.6.0.0)", + "connectorHostRef": "", + "connectorName": "org.forgerock.openicf.connectors.googleapps.GoogleAppsConnector", + "displayName": "GoogleApps Connector", + "systemType": "provisioner.openicf", + }, + "enabled": { + "$bool": "&{esv.gac.enable.connector}", + }, + "objectTypes": { + "__ACCOUNT__": { + "$schema": "http://json-schema.org/draft-03/schema", + "id": "__ACCOUNT__", + "nativeType": "__ACCOUNT__", + "properties": { + "__GROUPS__": { + "flags": [ + "NOT_RETURNED_BY_DEFAULT", + ], + "items": { + "nativeType": "string", + "type": "string", }, - "admins": { - "items": { - "notifySelf": true, - "properties": { - "_ref": { - "type": "string", - }, - "_refProperties": { - "properties": { - "_id": { - "propName": "_id", - "required": false, - "type": "string", - }, - }, - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "User", - "notify": false, - "path": "managed/bravo_user", - "query": { - "fields": [ - "userName", - "givenName", - "sn", - ], - "queryFilter": "true", - "sortKeys": [], - }, - }, - ], - "reversePropertyName": "adminOfOrg", - "reverseRelationship": true, - "type": "relationship", - "validate": true, - }, - "notifyRelationships": [ - "children", - ], - "returnByDefault": false, - "searchable": false, - "title": "Administrators", - "type": "array", - "userEditable": false, - "viewable": true, + "nativeName": "__GROUPS__", + "nativeType": "string", + "type": "array", + }, + "__NAME__": { + "nativeName": "__NAME__", + "nativeType": "string", + "type": "string", + }, + "__PASSWORD__": { + "flags": [ + "NOT_READABLE", + "NOT_RETURNED_BY_DEFAULT", + ], + "nativeName": "__PASSWORD__", + "nativeType": "JAVA_TYPE_GUARDEDSTRING", + "required": true, + "type": "string", + }, + "__PHOTO__": { + "flags": [ + "NOT_RETURNED_BY_DEFAULT", + ], + "nativeName": "__PHOTO__", + "nativeType": "JAVA_TYPE_BYTE_ARRAY", + "type": "string", + }, + "__SECONDARY_EMAILS__": { + "items": { + "nativeType": "object", + "type": "object", + }, + "nativeName": "__SECONDARY_EMAILS__", + "nativeType": "object", + "type": "array", + }, + "__UID__": { + "nativeName": "__UID__", + "nativeType": "string", + "required": false, + "type": "string", + }, + "addresses": { + "items": { + "nativeType": "object", + "type": "object", }, - "children": { - "description": "Child Organizations", - "items": { - "notifySelf": true, - "properties": { - "_ref": { - "type": "string", - }, - "_refProperties": { - "properties": { - "_id": { - "propName": "_id", - "required": false, - "type": "string", - }, - }, - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "Organization", - "notify": true, - "path": "managed/bravo_organization", - "query": { - "fields": [ - "name", - "description", - ], - "queryFilter": "true", - "sortKeys": [], - }, - }, - ], - "reversePropertyName": "parent", - "reverseRelationship": true, - "type": "relationship", - "validate": true, - }, - "policies": [], - "returnByDefault": false, - "searchable": false, - "title": "Child Organizations", - "type": "array", - "userEditable": false, - "viewable": false, + "nativeName": "addresses", + "nativeType": "object", + "type": "array", + }, + "agreedToTerms": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "agreedToTerms", + "nativeType": "JAVA_TYPE_PRIMITIVE_BOOLEAN", + "type": "boolean", + }, + "aliases": { + "flags": [ + "NOT_CREATABLE", + ], + "items": { + "nativeType": "string", + "type": "string", }, - "description": { - "searchable": true, - "title": "Description", + "nativeName": "aliases", + "nativeType": "string", + "type": "array", + }, + "archived": { + "nativeName": "archived", + "nativeType": "boolean", + "type": "boolean", + }, + "changePasswordAtNextLogin": { + "nativeName": "changePasswordAtNextLogin", + "nativeType": "boolean", + "type": "boolean", + }, + "creationTime": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "items": { + "nativeType": "string", "type": "string", - "userEditable": true, - "viewable": true, }, - "members": { - "items": { - "notifySelf": false, - "properties": { - "_ref": { - "type": "string", - }, - "_refProperties": { - "properties": { - "_id": { - "propName": "_id", - "required": false, - "type": "string", - }, - }, - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "User", - "notify": true, - "path": "managed/bravo_user", - "query": { - "fields": [ - "userName", - "givenName", - "sn", - ], - "queryFilter": "true", - "sortKeys": [], - }, - }, - ], - "reversePropertyName": "memberOfOrg", - "reverseRelationship": true, - "type": "relationship", - "validate": true, - }, - "returnByDefault": false, - "searchable": false, - "title": "Members", - "type": "array", - "userEditable": false, - "viewable": true, + "nativeName": "creationTime", + "nativeType": "string", + "type": "array", + }, + "customSchemas": { + "nativeName": "customSchemas", + "nativeType": "object", + "type": "object", + }, + "customerId": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "customerId", + "nativeType": "string", + "type": "string", + }, + "deletionTime": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "deletionTime", + "nativeType": "string", + "type": "string", + }, + "externalIds": { + "items": { + "nativeType": "object", + "type": "object", }, - "name": { - "searchable": true, - "title": "Name", + "nativeName": "externalIds", + "nativeType": "object", + "type": "array", + }, + "familyName": { + "nativeName": "familyName", + "nativeType": "string", + "type": "string", + }, + "fullName": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "fullName", + "nativeType": "string", + "type": "string", + }, + "givenName": { + "nativeName": "givenName", + "nativeType": "string", + "required": true, + "type": "string", + }, + "hashFunction": { + "flags": [ + "NOT_RETURNED_BY_DEFAULT", + ], + "nativeName": "hashFunction", + "nativeType": "string", + "type": "string", + }, + "ims": { + "items": { + "nativeType": "object", + "type": "object", + }, + "nativeName": "ims", + "nativeType": "object", + "type": "array", + }, + "includeInGlobalAddressList": { + "nativeName": "includeInGlobalAddressList", + "nativeType": "boolean", + "type": "boolean", + }, + "ipWhitelisted": { + "nativeName": "ipWhitelisted", + "nativeType": "boolean", + "type": "boolean", + }, + "isAdmin": { + "nativeName": "isAdmin", + "nativeType": "JAVA_TYPE_PRIMITIVE_BOOLEAN", + "type": "boolean", + }, + "isDelegatedAdmin": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "isDelegatedAdmin", + "nativeType": "JAVA_TYPE_PRIMITIVE_BOOLEAN", + "type": "boolean", + }, + "isEnforcedIn2Sv": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "isEnforcedIn2Sv", + "nativeType": "boolean", + "type": "boolean", + }, + "isEnrolledIn2Sv": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "isEnrolledIn2Sv", + "nativeType": "boolean", + "type": "boolean", + }, + "isMailboxSetup": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "isMailboxSetup", + "nativeType": "boolean", + "type": "boolean", + }, + "languages": { + "items": { + "nativeType": "object", + "type": "object", + }, + "nativeName": "languages", + "nativeType": "object", + "type": "array", + }, + "lastLoginTime": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "items": { + "nativeType": "string", "type": "string", - "userEditable": true, - "viewable": true, }, - "ownerIDs": { - "isVirtual": true, - "items": { - "title": "owner ids", - "type": "string", - }, - "queryConfig": { - "flattenProperties": true, - "referencedObjectFields": [ - "_id", - ], - "referencedRelationshipFields": [ - "owners", - ], - }, - "returnByDefault": true, - "searchable": false, - "title": "Owner user ids", - "type": "array", - "userEditable": false, - "viewable": false, + "nativeName": "lastLoginTime", + "nativeType": "string", + "type": "array", + }, + "nonEditableAliases": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "items": { + "nativeType": "string", + "type": "string", }, - "owners": { - "items": { - "notifySelf": true, - "properties": { - "_ref": { - "type": "string", - }, - "_refProperties": { - "properties": { - "_id": { - "propName": "_id", - "required": false, - "type": "string", - }, - }, - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "User", - "notify": false, - "path": "managed/bravo_user", - "query": { - "fields": [ - "userName", - "givenName", - "sn", - ], - "queryFilter": "true", - "sortKeys": [], - }, - }, - ], - "reversePropertyName": "ownerOfOrg", - "reverseRelationship": true, - "type": "relationship", - "validate": true, - }, - "notifyRelationships": [ - "children", - ], - "returnByDefault": false, - "searchable": false, - "title": "Owner", - "type": "array", - "userEditable": false, - "viewable": true, + "nativeName": "nonEditableAliases", + "nativeType": "string", + "type": "array", + }, + "orgUnitPath": { + "nativeName": "orgUnitPath", + "nativeType": "string", + "type": "string", + }, + "organizations": { + "items": { + "nativeType": "object", + "type": "object", }, - "parent": { - "description": "Parent Organization", - "notifyRelationships": [ - "children", - "members", - ], - "notifySelf": true, - "properties": { - "_ref": { - "type": "string", - }, - "_refProperties": { - "properties": { - "_id": { - "propName": "_id", - "required": false, - "type": "string", - }, - }, - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "Organization", - "notify": false, - "path": "managed/bravo_organization", - "query": { - "fields": [ - "name", - "description", - ], - "queryFilter": "true", - "sortKeys": [], - }, - }, - ], - "returnByDefault": false, - "reversePropertyName": "children", - "reverseRelationship": true, - "searchable": false, - "title": "Parent Organization", - "type": "relationship", - "userEditable": false, - "validate": true, - "viewable": true, + "nativeName": "organizations", + "nativeType": "object", + "type": "array", + }, + "phones": { + "items": { + "nativeType": "object", + "type": "object", }, - "parentAdminIDs": { - "isVirtual": true, - "items": { - "title": "user ids of parent admins", - "type": "string", - }, - "queryConfig": { - "flattenProperties": true, - "referencedObjectFields": [ - "adminIDs", - "parentAdminIDs", - ], - "referencedRelationshipFields": [ - "parent", - ], - }, - "returnByDefault": true, - "searchable": false, - "title": "user ids of parent admins", - "type": "array", - "userEditable": false, - "viewable": false, + "nativeName": "phones", + "nativeType": "object", + "type": "array", + }, + "primaryEmail": { + "nativeName": "primaryEmail", + "nativeType": "string", + "type": "string", + }, + "recoveryEmail": { + "nativeName": "recoveryEmail", + "nativeType": "string", + "type": "string", + }, + "recoveryPhone": { + "nativeName": "recoveryPhone", + "nativeType": "string", + "type": "string", + }, + "relations": { + "items": { + "nativeType": "object", + "type": "object", + }, + "nativeName": "relations", + "nativeType": "object", + "type": "array", + }, + "suspended": { + "nativeName": "suspended", + "nativeType": "boolean", + "type": "boolean", + }, + "suspensionReason": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "suspensionReason", + "nativeType": "string", + "type": "string", + }, + "thumbnailPhotoUrl": { + "flags": [ + "NOT_CREATABLE", + "NOT_UPDATEABLE", + ], + "nativeName": "thumbnailPhotoUrl", + "nativeType": "string", + "type": "string", + }, + }, + "type": "object", + }, + }, + "operationTimeout": { + "AUTHENTICATE": -1, + "CREATE": -1, + "DELETE": -1, + "GET": -1, + "RESOLVEUSERNAME": -1, + "SCHEMA": -1, + "SCRIPT_ON_CONNECTOR": -1, + "SCRIPT_ON_RESOURCE": -1, + "SEARCH": -1, + "SYNC": -1, + "TEST": -1, + "UPDATE": -1, + "VALIDATE": -1, + }, + "poolConfigOption": { + "maxIdle": 10, + "maxObjects": 10, + "maxWait": 150000, + "minEvictableIdleTimeMillis": 120000, + "minIdle": 1, + }, + "resultsHandlerConfig": { + "enableAttributesToGetSearchResultsHandler": true, + "enableCaseInsensitiveFilter": false, + "enableFilteredResultsHandler": false, + "enableNormalizingResultsHandler": false, + }, + }, + "repo.ds": { + "_id": "repo.ds", + "commands": { + "delete-mapping-links": { + "_queryFilter": "/linkType eq "\${mapping}"", + "operation": "DELETE", + }, + "delete-target-ids-for-recon": { + "_queryFilter": "/reconId eq "\${reconId}"", + "operation": "DELETE", + }, + }, + "embedded": false, + "ldapConnectionFactories": { + "bind": { + "availabilityCheckIntervalSeconds": 30, + "availabilityCheckTimeoutMilliSeconds": 10000, + "connectionPoolSize": 50, + "connectionSecurity": "none", + "heartBeatIntervalSeconds": 60, + "heartBeatTimeoutMilliSeconds": 10000, + "primaryLdapServers": [ + { + "hostname": "userstore-0.userstore", + "port": 1389, + }, + ], + "secondaryLdapServers": [ + { + "hostname": "userstore-2.userstore", + "port": 1389, + }, + ], + }, + "root": { + "authentication": { + "simple": { + "bindDn": "uid=admin", + "bindPassword": "&{userstore.password}", + }, + }, + "inheritFrom": "bind", + }, + }, + "maxConnectionAttempts": 5, + "queries": { + "explicit": { + "credential-internaluser-query": { + "_queryFilter": "/_id eq "\${username}"", + }, + "credential-query": { + "_queryFilter": "/userName eq "\${username}"", + }, + "for-userName": { + "_queryFilter": "/userName eq "\${uid}"", + }, + "links-for-firstId": { + "_queryFilter": "/linkType eq "\${linkType}" AND /firstId = "\${firstId}"", + }, + "links-for-linkType": { + "_queryFilter": "/linkType eq "\${linkType}"", + }, + "query-all": { + "_queryFilter": "true", + }, + "query-all-ids": { + "_fields": "_id,_rev", + "_queryFilter": "true", + }, + }, + "generic": { + "credential-internaluser-query": { + "_queryFilter": "/_id eq "\${username}"", + }, + "credential-query": { + "_queryFilter": "/userName eq "\${username}"", + }, + "find-relationship-edges": { + "_queryFilter": "((/firstResourceCollection eq "\${firstResourceCollection}" and /firstResourceId eq "\${firstResourceId}" and /firstPropertyName eq "\${firstPropertyName}") and (/secondResourceCollection eq "\${secondResourceCollection}" and /secondResourceId eq "\${secondResourceId}" and /secondPropertyName eq "\${secondPropertyName}")) or ((/firstResourceCollection eq "\${secondResourceCollection}" and /firstResourceId eq "\${secondResourceId}" and /firstPropertyName eq "\${secondPropertyName}") and (/secondResourceCollection eq "\${firstResourceCollection}" and /secondResourceId eq "\${firstResourceId}" and /secondPropertyName eq "\${firstPropertyName}"))", + }, + "find-relationships-for-resource": { + "_queryFilter": "(/firstResourceCollection eq "\${resourceCollection}" and /firstResourceId eq "\${resourceId}" and /firstPropertyName eq "\${propertyName}") or (/secondResourceCollection eq "\${resourceCollection}" and /secondResourceId eq "\${resourceId}" and /secondPropertyName eq "\${propertyName}")", + }, + "for-userName": { + "_queryFilter": "/userName eq "\${uid}"", + }, + "get-by-field-value": { + "_queryFilter": "/\${field} eq "\${value}"", + }, + "get-notifications-for-user": { + "_queryFilter": "/receiverId eq "\${userId}"", + "_sortKeys": "-createDate", + }, + "get-recons": { + "_fields": "reconId,mapping,activitydate", + "_queryFilter": "/entryType eq "summary"", + "_sortKeys": "-activitydate", + }, + "links-for-firstId": { + "_queryFilter": "/linkType eq "\${linkType}" AND /firstId = "\${firstId}"", + }, + "links-for-linkType": { + "_queryFilter": "/linkType eq "\${linkType}"", + }, + "query-all": { + "_queryFilter": "true", + }, + "query-all-ids": { + "_fields": "_id,_rev", + "_queryFilter": "true", + }, + "query-cluster-events": { + "_queryFilter": "/instanceId eq "\${instanceId}"", + }, + "query-cluster-failed-instances": { + "_queryFilter": "/timestamp le \${timestamp} and (/state eq "1" or /state eq "2")", + }, + "query-cluster-instances": { + "_queryFilter": "true", + }, + "query-cluster-running-instances": { + "_queryFilter": "/state eq 1", + }, + }, + }, + "resourceMapping": { + "defaultMapping": { + "dnTemplate": "ou=generic,dc=openidm,dc=example,dc=com", + }, + "explicitMapping": { + "clusteredrecontargetids": { + "dnTemplate": "ou=clusteredrecontargetids,dc=openidm,dc=example,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-recon-clusteredTargetIds", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly", }, - "parentIDs": { - "isVirtual": true, - "items": { - "title": "parent org ids", - "type": "string", - }, - "queryConfig": { - "flattenProperties": true, - "referencedObjectFields": [ - "_id", - "parentIDs", - ], - "referencedRelationshipFields": [ - "parent", - ], - }, - "returnByDefault": true, - "searchable": false, - "title": "parent org ids", - "type": "array", - "userEditable": false, - "viewable": false, + "reconId": { + "ldapAttribute": "fr-idm-recon-id", + "type": "simple", }, - "parentOwnerIDs": { - "isVirtual": true, - "items": { - "title": "user ids of parent owners", - "type": "string", - }, - "queryConfig": { - "flattenProperties": true, - "referencedObjectFields": [ - "ownerIDs", - "parentOwnerIDs", - ], - "referencedRelationshipFields": [ - "parent", - ], - }, - "returnByDefault": true, - "searchable": false, - "title": "user ids of parent owners", - "type": "array", - "userEditable": false, - "viewable": false, + "targetIds": { + "ldapAttribute": "fr-idm-recon-targetIds", + "type": "json", }, }, - "required": [ - "name", - ], - "title": "Bravo realm - Organization", - "type": "object", }, - }, - { - "name": "alpha_group", - "schema": { - "$schema": "http://forgerock.org/json-schema#", - "icon": "fa-group", - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Group", - "mat-icon": "group", - "order": [ - "_id", - "name", - "description", - "condition", - "members", + "dsconfig/attributeValue": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-attribute-value-password-validator", ], "properties": { "_id": { - "description": "Group ID", - "isPersonal": false, - "policies": [ - { - "params": { - "propertyName": "name", - }, - "policyId": "id-must-equal-property", - }, - ], - "searchable": false, - "type": "string", - "usageDescription": "", - "userEditable": false, - "viewable": false, + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", }, - "condition": { - "description": "A filter for conditionally assigned members", - "isConditional": true, - "policies": [ - { - "policyId": "valid-query-filter", - }, - ], - "searchable": false, - "title": "Condition", - "type": "string", - "viewable": false, + "checkSubstrings": { + "ldapAttribute": "ds-cfg-check-substrings", + "type": "simple", }, - "description": { - "description": "Group Description", - "searchable": true, - "title": "Description", - "type": "string", - "userEditable": false, - "viewable": true, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", }, - "members": { - "description": "Group Members", - "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Group:members:items", - "properties": { - "_ref": { - "description": "References a relationship from a managed object", - "type": "string", - }, - "_refProperties": { - "description": "Supports metadata within the relationship", - "properties": { - "_grantType": { - "description": "Grant Type", - "label": "Grant Type", - "type": "string", - }, - "_id": { - "description": "_refProperties object ID", - "type": "string", - }, - }, - "title": "Group Members Items _refProperties", - "type": "object", - }, - }, - "resourceCollection": [ - { - "conditionalAssociation": true, - "label": "User", - "notify": true, - "path": "managed/alpha_user", - "query": { - "fields": [ - "userName", - "givenName", - "sn", - ], - "queryFilter": "true", - }, - }, - ], - "reversePropertyName": "groups", - "reverseRelationship": true, - "title": "Group Members Items", - "type": "relationship", - "validate": true, - }, - "policies": [], - "returnByDefault": false, - "searchable": false, - "title": "Members", - "type": "array", - "userEditable": false, - "viewable": true, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", }, - "name": { - "description": "Group Name", - "policies": [ - { - "policyId": "required", - }, - { - "params": { - "forbiddenChars": [ - "/*", - ], - }, - "policyId": "cannot-contain-characters", - }, - ], - "searchable": true, - "title": "Name", - "type": "string", - "viewable": true, + "matchAttribute": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-match-attribute", + "type": "simple", + }, + "minSubstringLength": { + "ldapAttribute": "ds-cfg-min-substring-length", + "type": "simple", + }, + "testReversedPassword": { + "isRequired": true, + "ldapAttribute": "ds-cfg-test-reversed-password", + "type": "simple", }, }, - "required": [ - "name", - ], - "title": "Alpha realm - Group", - "viewable": true, }, - }, - { - "name": "bravo_group", - "schema": { - "$schema": "http://forgerock.org/json-schema#", - "icon": "fa-group", - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Group", - "mat-icon": "group", - "order": [ - "_id", - "name", - "description", - "condition", - "members", + "dsconfig/characterSet": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-character-set-password-validator", ], "properties": { "_id": { - "description": "Group ID", - "isPersonal": false, - "policies": [ - { - "params": { - "propertyName": "name", - }, - "policyId": "id-must-equal-property", - }, - ], - "searchable": false, - "type": "string", - "usageDescription": "", - "userEditable": false, - "viewable": false, - }, - "condition": { - "description": "A filter for conditionally assigned members", - "isConditional": true, - "policies": [ - { - "policyId": "valid-query-filter", - }, - ], - "searchable": false, - "title": "Condition", - "type": "string", - "viewable": false, + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", }, - "description": { - "description": "Group Description", - "searchable": true, - "title": "Description", - "type": "string", - "userEditable": false, - "viewable": true, + "allowUnclassifiedCharacters": { + "isRequired": true, + "ldapAttribute": "ds-cfg-allow-unclassified-characters", + "type": "simple", }, - "members": { - "description": "Group Members", - "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Group:members:items", - "properties": { - "_ref": { - "description": "References a relationship from a managed object", - "type": "string", - }, - "_refProperties": { - "description": "Supports metadata within the relationship", - "properties": { - "_grantType": { - "description": "Grant Type", - "label": "Grant Type", - "type": "string", - }, - "_id": { - "description": "_refProperties object ID", - "type": "string", - }, - }, - "title": "Group Members Items _refProperties", - "type": "object", - }, - }, - "resourceCollection": [ - { - "conditionalAssociation": true, - "label": "User", - "notify": true, - "path": "managed/bravo_user", - "query": { - "fields": [ - "userName", - "givenName", - "sn", - ], - "queryFilter": "true", - }, - }, - ], - "reversePropertyName": "groups", - "reverseRelationship": true, - "title": "Group Members Items", - "type": "relationship", - "validate": true, - }, - "policies": [], - "returnByDefault": false, - "searchable": false, - "title": "Members", - "type": "array", - "userEditable": false, - "viewable": true, + "characterSet": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-character-set", + "type": "simple", }, - "name": { - "description": "Group Name", - "policies": [ - { - "policyId": "required", - }, - { - "params": { - "forbiddenChars": [ - "/*", - ], - }, - "policyId": "cannot-contain-characters", - }, - ], - "searchable": true, - "title": "Name", - "type": "string", - "viewable": true, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "minCharacterSets": { + "ldapAttribute": "ds-cfg-min-character-sets", + "type": "simple", }, }, - "required": [ - "name", + }, + "dsconfig/dictionary": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-dictionary-password-validator", ], - "title": "Bravo realm - Group", - "viewable": true, + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "caseSensitiveValidation": { + "isRequired": true, + "ldapAttribute": "ds-cfg-case-sensitive-validation", + "type": "simple", + }, + "checkSubstrings": { + "ldapAttribute": "ds-cfg-check-substrings", + "type": "simple", + }, + "dictionaryFile": { + "isRequired": true, + "ldapAttribute": "ds-cfg-dictionary-file", + "type": "simple", + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "minSubstringLength": { + "ldapAttribute": "ds-cfg-min-substring-length", + "type": "simple", + }, + "testReversedPassword": { + "isRequired": true, + "ldapAttribute": "ds-cfg-test-reversed-password", + "type": "simple", + }, + }, }, - }, - { - "name": "alpha_application", - "schema": { - "$schema": "http://forgerock.org/json-schema#", - "description": "Application Object", - "icon": "fa-folder", - "order": [ - "name", - "description", - "url", - "icon", - "mappingNames", - "owners", - "roles", - "members", + "dsconfig/lengthBased": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-length-based-password-validator", ], "properties": { "_id": { - "description": "Application ID", - "isPersonal": false, - "searchable": false, - "type": "string", - "userEditable": false, - "viewable": false, + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", }, - "authoritative": { - "description": "Is this an authoritative application", - "searchable": false, - "title": "Authoritative", - "type": "boolean", - "viewable": false, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", }, - "connectorId": { - "description": "Id of the connector associated with the application", - "searchable": false, - "title": "Connector ID", - "type": "string", - "userEditable": false, - "viewable": false, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", }, - "description": { - "description": "Application Description", - "searchable": true, - "title": "Description", - "type": "string", - "viewable": true, + "maxPasswordLength": { + "ldapAttribute": "ds-cfg-max-password-length", + "type": "simple", }, - "icon": { - "searchable": true, - "title": "Icon", - "type": "string", - "userEditable": true, - "viewable": true, + "minPasswordLength": { + "ldapAttribute": "ds-cfg-min-password-length", + "type": "simple", }, - "mappingNames": { - "description": "Names of the sync mappings used by an application with provisioning configured.", - "items": { - "title": "Mapping Name Items", - "type": "string", - }, - "searchable": true, - "title": "Sync Mapping Names", - "type": "array", - "viewable": true, + }, + }, + "dsconfig/passwordPolicies": { + "dnTemplate": "cn=Password Policies,cn=config", + "objectClasses": [ + "ds-cfg-password-policy", + "ds-cfg-authentication-policy", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", }, - "members": { - "description": "Application Members", - "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Application:members:items", - "properties": { - "_ref": { - "description": "References a relationship from a managed object", - "type": "string", - }, - "_refProperties": { - "description": "Supports metadata within the relationship", - "properties": { - "_grantType": { - "description": "Grant Type", - "label": "Grant Type", - "type": "string", - }, - "_id": { - "description": "_refProperties object ID", - "type": "string", - }, - }, - "title": "Group Members Items _refProperties", - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "User", - "notify": true, - "path": "managed/alpha_user", - "query": { - "fields": [ - "userName", - "givenName", - "sn", - ], - "queryFilter": "true", - }, - }, - ], - "reversePropertyName": "applications", - "reverseRelationship": true, - "title": "Group Members Items", - "type": "relationship", - "validate": true, - }, - "policies": [], - "returnByDefault": false, - "searchable": false, - "title": "Members", - "type": "array", - "userEditable": false, - "viewable": true, + "allowPreEncodedPasswords": { + "ldapAttribute": "ds-cfg-allow-pre-encoded-passwords", + "type": "simple", }, - "name": { - "description": "Application name", - "notifyRelationships": [ - "roles", - "members", - ], - "policies": [ - { - "policyId": "unique", - }, - ], - "returnByDefault": true, - "searchable": true, - "title": "Name", - "type": "string", - "userEditable": true, - "viewable": true, + "defaultPasswordStorageScheme": { + "isMultiValued": true, + "isRequired": true, + "ldapAttribute": "ds-cfg-default-password-storage-scheme", + "type": "simple", }, - "owners": { - "description": "Application Owners", - "items": { - "properties": { - "_ref": { - "type": "string", - }, - "_refProperties": { - "properties": { - "_id": { - "description": "_refProperties object ID", - "type": "string", - }, - }, - "title": "Application _refProperties", - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "User", - "path": "managed/alpha_user", - "query": { - "fields": [ - "userName", - "givenName", - "sn", - ], - "queryFilter": "true", - }, - }, - ], - "reversePropertyName": "ownerOfApp", - "reverseRelationship": true, - "type": "relationship", - "validate": true, - }, - "returnByDefault": false, - "searchable": false, - "title": "Owners", - "type": "array", - "userEditable": false, - "viewable": true, + "deprecatedPasswordStorageScheme": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-deprecated-password-storage-scheme", + "type": "simple", }, - "roles": { - "description": "Roles granting users the application", - "items": { - "notifySelf": true, - "properties": { - "_ref": { - "type": "string", - }, - "_refProperties": { - "properties": { - "_id": { - "propName": "_id", - "required": false, - "type": "string", - }, - }, - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "Role", - "notify": true, - "path": "managed/alpha_role", - "query": { - "fields": [ - "name", - ], - "queryFilter": "true", - "sortKeys": [], - }, - }, - ], - "reversePropertyName": "applications", - "reverseRelationship": true, - "type": "relationship", - "validate": true, - }, - "returnByDefault": false, - "searchable": false, - "title": "Roles", - "type": "array", - "userEditable": false, - "viewable": true, + "maxPasswordAge": { + "ldapAttribute": "ds-cfg-max-password-age", + "type": "simple", }, - "ssoEntities": { - "description": "SSO Entity Id", - "properties": { - "idpLocation": { - "type": "string", - }, - "idpPrivateId": { - "type": "string", - }, - "spLocation": { - "type": "string", - }, - "spPrivate": { - "type": "string", - }, - }, - "searchable": false, - "title": "SSO Entity Id", - "type": "object", - "userEditable": false, - "viewable": false, + "passwordAttribute": { + "isRequired": true, + "ldapAttribute": "ds-cfg-password-attribute", + "type": "simple", }, - "templateName": { - "description": "Name of the template the application was created from", - "searchable": false, - "title": "Template Name", - "type": "string", - "userEditable": false, - "viewable": false, + "passwordHistoryCount": { + "ldapAttribute": "ds-cfg-password-history-count", + "type": "simple", }, - "templateVersion": { - "description": "The template version", - "searchable": false, - "title": "Template Version", - "type": "string", - "userEditable": false, - "viewable": false, + "validator": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-password-validator", + "type": "simple", }, - "uiConfig": { - "description": "UI Config", - "isPersonal": false, - "properties": {}, - "searchable": false, - "title": "UI Config", - "type": "object", - "usageDescription": "", - "viewable": false, + }, + }, + "dsconfig/repeatedCharacters": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-repeated-characters-password-validator", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", }, - "url": { - "searchable": true, - "title": "Url", - "type": "string", - "userEditable": true, - "viewable": true, + "caseSensitiveValidation": { + "isRequired": true, + "ldapAttribute": "ds-cfg-case-sensitive-validation", + "type": "simple", + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "maxConsecutiveLength": { + "isRequired": true, + "ldapAttribute": "ds-cfg-max-consecutive-length", + "type": "simple", }, }, - "required": [ - "name", + }, + "dsconfig/similarityBased": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-similarity-based-password-validator", ], - "title": "Alpha realm - Application", - "type": "object", + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "minPasswordDifference": { + "isRequired": true, + "ldapAttribute": "ds-cfg-min-password-difference", + "type": "simple", + }, + }, }, - }, - { - "name": "bravo_application", - "schema": { - "$schema": "http://forgerock.org/json-schema#", - "description": "Application Object", - "icon": "fa-folder", - "order": [ - "name", - "description", - "url", - "icon", - "mappingNames", - "owners", - "roles", - "members", + "dsconfig/uniqueCharacters": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-unique-characters-password-validator", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "caseSensitiveValidation": { + "isRequired": true, + "ldapAttribute": "ds-cfg-case-sensitive-validation", + "type": "simple", + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "minUniqueCharacters": { + "isRequired": true, + "ldapAttribute": "ds-cfg-min-unique-characters", + "type": "simple", + }, + }, + }, + "dsconfig/userDefinedVirtualAttribute": { + "dnTemplate": "cn=Virtual Attributes,cn=config", + "objectClasses": [ + "ds-cfg-user-defined-virtual-attribute", + "ds-cfg-virtual-attribute", ], "properties": { "_id": { - "description": "Application ID", - "isPersonal": false, - "searchable": false, - "type": "string", - "userEditable": false, - "viewable": false, - }, - "authoritative": { - "description": "Is this an authoritative application", - "searchable": false, - "title": "Authoritative", - "type": "boolean", - "viewable": false, + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", }, - "connectorId": { - "description": "Id of the connector associated with the application", - "searchable": false, - "title": "Connector ID", - "type": "string", - "userEditable": false, - "viewable": false, + "attributeType": { + "isRequired": true, + "ldapAttribute": "ds-cfg-attribute-type", + "type": "simple", }, - "description": { - "description": "Application Description", - "searchable": true, - "title": "Description", - "type": "string", - "viewable": true, + "baseDn": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-base-dn", + "type": "simple", }, - "icon": { - "searchable": true, - "title": "Icon", - "type": "string", - "userEditable": true, - "viewable": true, + "conflictBehavior": { + "ldapAttribute": "ds-cfg-conflict-behavior", + "type": "simple", }, - "mappingNames": { - "description": "Names of the sync mappings used by an application with provisioning configured.", - "items": { - "title": "Mapping Name Items", - "type": "string", - }, - "searchable": true, - "title": "Sync Mapping Names", - "type": "array", - "viewable": true, + "enabled": { + "isRequired": true, + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", }, - "members": { - "description": "Application Members", - "items": { - "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Application:members:items", - "properties": { - "_ref": { - "description": "References a relationship from a managed object", - "type": "string", - }, - "_refProperties": { - "description": "Supports metadata within the relationship", - "properties": { - "_grantType": { - "description": "Grant Type", - "label": "Grant Type", - "type": "string", - }, - "_id": { - "description": "_refProperties object ID", - "type": "string", - }, - }, - "title": "Group Members Items _refProperties", - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "User", - "notify": true, - "path": "managed/bravo_user", - "query": { - "fields": [ - "userName", - "givenName", - "sn", - ], - "queryFilter": "true", - }, - }, - ], - "reversePropertyName": "applications", - "reverseRelationship": true, - "title": "Group Members Items", - "type": "relationship", - "validate": true, - }, - "policies": [], - "returnByDefault": false, - "searchable": false, - "title": "Members", - "type": "array", - "userEditable": false, - "viewable": true, + "filter": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-filter", + "type": "simple", }, - "name": { - "description": "Application name", - "notifyRelationships": [ - "roles", - "members", - ], - "policies": [ - { - "policyId": "unique", - }, - ], - "returnByDefault": true, - "searchable": true, - "title": "Name", - "type": "string", - "userEditable": true, - "viewable": true, + "groupDn": { + "ldapAttribute": "ds-cfg-group-dn", + "type": "simple", }, - "owners": { - "description": "Application Owners", - "items": { - "properties": { - "_ref": { - "type": "string", - }, - "_refProperties": { - "properties": { - "_id": { - "description": "_refProperties object ID", - "type": "string", - }, - }, - "title": "Application _refProperties", - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "User", - "path": "managed/bravo_user", - "query": { - "fields": [ - "userName", - "givenName", - "sn", - ], - "queryFilter": "true", - }, - }, - ], - "reversePropertyName": "ownerOfApp", - "reverseRelationship": true, - "type": "relationship", - "validate": true, - }, - "returnByDefault": false, - "searchable": false, - "title": "Owners", - "type": "array", - "userEditable": false, - "viewable": true, + "javaClass": { + "isRequired": true, + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", }, - "roles": { - "description": "Roles granting users the application", - "items": { - "notifySelf": true, - "properties": { - "_ref": { - "type": "string", - }, - "_refProperties": { - "properties": { - "_id": { - "propName": "_id", - "required": false, - "type": "string", - }, - }, - "type": "object", - }, - }, - "resourceCollection": [ - { - "label": "Role", - "notify": true, - "path": "managed/bravo_role", - "query": { - "fields": [ - "name", - ], - "queryFilter": "true", - "sortKeys": [], - }, - }, - ], - "reversePropertyName": "applications", - "reverseRelationship": true, - "type": "relationship", - "validate": true, - }, - "returnByDefault": false, - "searchable": false, - "title": "Roles", - "type": "array", - "userEditable": false, - "viewable": true, + "scope": { + "ldapAttribute": "ds-cfg-scope", + "type": "simple", }, - "ssoEntities": { - "description": "SSO Entity Id", - "properties": { - "idpLocation": { - "type": "string", - }, - "idpPrivateId": { - "type": "string", - }, - "spLocation": { - "type": "string", - }, - "spPrivate": { - "type": "string", - }, - }, - "searchable": false, - "title": "SSO Entity Id", - "type": "object", - "userEditable": false, - "viewable": false, + "value": { + "isMultiValued": true, + "isRequired": true, + "ldapAttribute": "ds-cfg-value", + "type": "simple", }, - "templateName": { - "description": "Name of the template the application was created from", - "searchable": false, - "title": "Template Name", - "type": "string", - "userEditable": false, - "viewable": false, + }, + }, + "identities/admin": { + "dnTemplate": "o=root,ou=identities", + "isReadOnly": true, + "namingStrategy": { + "dnAttribute": "ou", + "type": "clientDnNaming", + }, + "objectClasses": [ + "organizationalunit", + ], + "properties": { + "_id": { + "ldapAttribute": "ou", + "primaryKey": true, + "type": "simple", }, - "templateVersion": { - "description": "The template version", - "searchable": false, - "title": "Template Version", - "type": "string", - "userEditable": false, - "viewable": false, + "count": { + "isRequired": true, + "ldapAttribute": "numSubordinates", + "type": "simple", + "writability": "readOnly", }, - "uiConfig": { - "description": "UI Config", - "isPersonal": false, - "properties": {}, - "searchable": false, - "title": "UI Config", - "type": "object", - "usageDescription": "", - "viewable": false, + }, + }, + "identities/alpha": { + "dnTemplate": "o=alpha,o=root,ou=identities", + "isReadOnly": true, + "namingStrategy": { + "dnAttribute": "ou", + "type": "clientDnNaming", + }, + "objectClasses": [ + "organizationalunit", + ], + "properties": { + "_id": { + "ldapAttribute": "ou", + "primaryKey": true, + "type": "simple", }, - "url": { - "searchable": true, - "title": "Url", - "type": "string", - "userEditable": true, - "viewable": true, + "count": { + "isRequired": true, + "ldapAttribute": "numSubordinates", + "type": "simple", + "writability": "readOnly", }, }, - "required": [ - "name", - ], - "title": "Bravo realm - Application", - "type": "object", - }, - }, - ], - }, - "mapping/managedAlpha_assignment_managedBravo_assignment": { - "_id": "mapping/managedAlpha_assignment_managedBravo_assignment", - "consentRequired": false, - "displayName": "managedAlpha_assignment_managedBravo_assignment", - "icon": null, - "name": "managedAlpha_assignment_managedBravo_assignment", - "policies": [ - { - "action": "ASYNC", - "situation": "ABSENT", - }, - { - "action": "ASYNC", - "situation": "ALL_GONE", - }, - { - "action": "ASYNC", - "situation": "AMBIGUOUS", - }, - { - "action": "ASYNC", - "situation": "CONFIRMED", - }, - { - "action": "ASYNC", - "situation": "FOUND", - }, - { - "action": "ASYNC", - "situation": "FOUND_ALREADY_LINKED", - }, - { - "action": "ASYNC", - "situation": "LINK_ONLY", - }, - { - "action": "ASYNC", - "situation": "MISSING", - }, - { - "action": "ASYNC", - "situation": "SOURCE_IGNORED", - }, - { - "action": "ASYNC", - "situation": "SOURCE_MISSING", - }, - { - "action": "ASYNC", - "situation": "TARGET_IGNORED", - }, - { - "action": "ASYNC", - "situation": "UNASSIGNED", - }, - { - "action": "ASYNC", - "situation": "UNQUALIFIED", - }, - ], - "properties": [], - "source": "managed/alpha_assignment", - "target": "managed/bravo_assignment", - }, - "mapping/managedAlpha_user_systemAzureUser": { - "_id": "mapping/managedAlpha_user_systemAzureUser", - "consentRequired": false, - "defaultSourceFields": [ - "*", - "assignments", - ], - "defaultTargetFields": [ - "*", - "memberOf", - "__roles__", - "__servicePlanIds__", - ], - "displayName": "managedAlpha_user_systemAzureUser", - "icon": null, - "name": "managedAlpha_user_systemAzureUser", - "optimizeAssignmentSync": true, - "policies": [ - { - "action": "ASYNC", - "situation": "AMBIGUOUS", - }, - { - "action": "ASYNC", - "situation": "SOURCE_MISSING", - }, - { - "action": "ASYNC", - "situation": "MISSING", - }, - { - "action": "ASYNC", - "situation": "FOUND_ALREADY_LINKED", - }, - { - "action": "DELETE", - "situation": "UNQUALIFIED", - }, - { - "action": "ASYNC", - "situation": "UNASSIGNED", - }, - { - "action": "ASYNC", - "situation": "LINK_ONLY", - }, - { - "action": "ASYNC", - "situation": "TARGET_IGNORED", - }, - { - "action": "ASYNC", - "situation": "SOURCE_IGNORED", - }, - { - "action": "ASYNC", - "situation": "ALL_GONE", - }, - { - "action": "UPDATE", - "situation": "CONFIRMED", - }, - { - "action": "ASYNC", - "situation": "FOUND", - }, - { - "action": "CREATE", - "situation": "ABSENT", - }, - { - "action": "ASYNC", - "situation": "SOURCE_TARGET_CONFLICT", - }, - { - "action": "INCORPORATE_CHANGES", - "situation": "TARGET_CHANGED", - }, - ], - "properties": [ - { - "source": "mail", - "target": "mail", - }, - { - "source": "givenName", - "target": "givenName", - }, - { - "source": "sn", - "target": "surname", - }, - { - "source": "", - "target": "displayName", - "transform": { - "source": "source.givenName+" "+source.sn", - "type": "text/javascript", }, - }, - { - "source": "", - "target": "mailNickname", - "transform": { - "source": "source.givenName[0].toLowerCase()+source.sn.toLowerCase()", - "type": "text/javascript", + "identities/bravo": { + "dnTemplate": "o=bravo,o=root,ou=identities", + "isReadOnly": true, + "namingStrategy": { + "dnAttribute": "ou", + "type": "clientDnNaming", + }, + "objectClasses": [ + "organizationalunit", + ], + "properties": { + "_id": { + "ldapAttribute": "ou", + "primaryKey": true, + "type": "simple", + }, + "count": { + "isRequired": true, + "ldapAttribute": "numSubordinates", + "type": "simple", + "writability": "readOnly", + }, + }, }, - }, - { - "source": "", - "target": "accountEnabled", - "transform": { - "source": "true", - "type": "text/javascript", + "internal/role": { + "dnTemplate": "ou=roles,ou=internal,dc=openidm,dc=example,dc=com", + "objectClasses": [ + "fr-idm-internal-role", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "authzMembers": { + "isMultiValued": true, + "propertyName": "authzRoles", + "resourcePath": "managed/alpha_user", + "type": "reverseReference", + }, + "condition": { + "ldapAttribute": "fr-idm-condition", + "type": "simple", + }, + "description": { + "ldapAttribute": "description", + "type": "simple", + }, + "name": { + "ldapAttribute": "fr-idm-name", + "type": "simple", + }, + "privileges": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-privilege", + "type": "json", + }, + "temporalConstraints": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-temporal-constraints", + "type": "json", + }, + }, }, - }, - { - "condition": { - "globals": {}, - "source": "(typeof oldTarget === 'undefined' || oldTarget === null)", - "type": "text/javascript", + "internal/user": { + "dnTemplate": "ou=users,ou=internal,dc=openidm,dc=example,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-internal-user", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly", + }, + "password": { + "ldapAttribute": "fr-idm-password", + "type": "json", + }, + }, }, - "source": "", - "target": "__PASSWORD__", - "transform": { - "source": ""!@#$%"[Math.floor(Math.random()*5)] + Math.random().toString(36).slice(2, 13).toUpperCase()+Math.random().toString(36).slice(2,13)", - "type": "text/javascript", + "link": { + "dnTemplate": "ou=links,dc=openidm,dc=example,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-link", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly", + }, + "firstId": { + "ldapAttribute": "fr-idm-link-firstId", + "type": "simple", + }, + "linkQualifier": { + "ldapAttribute": "fr-idm-link-qualifier", + "type": "simple", + }, + "linkType": { + "ldapAttribute": "fr-idm-link-type", + "type": "simple", + }, + "secondId": { + "ldapAttribute": "fr-idm-link-secondId", + "type": "simple", + }, + }, }, - }, - ], - "queuedSync": { - "enabled": true, - "maxRetries": 0, - "pollingInterval": 10000, - }, - "runTargetPhase": false, - "source": "managed/alpha_user", - "sourceCondition": "/source/effectiveApplications[_id eq "0f357b7e-6c54-4351-a094-43916877d7e5"] or /source/effectiveAssignments[(mapping eq "managedAlpha_user_systemAzureUser" and type eq "__ENTITLEMENT__")]", - "sourceQuery": { - "_queryFilter": "effectiveApplications[_id eq "0f357b7e-6c54-4351-a094-43916877d7e5"] or lastSync/managedAlpha_user_systemAzureUser pr or /source/effectiveAssignments[(mapping eq "managedAlpha_user_systemAzureUser" and type eq "__ENTITLEMENT__")]", - }, - "target": "system/Azure/User", - }, - "mapping/managedBravo_group_managedBravo_group": { - "_id": "mapping/managedBravo_group_managedBravo_group", - "consentRequired": false, - "displayName": "managedBravo_group_managedBravo_group", - "icon": null, - "name": "managedBravo_group_managedBravo_group", - "policies": [ - { - "action": "ASYNC", - "situation": "ABSENT", - }, - { - "action": "ASYNC", - "situation": "ALL_GONE", - }, - { - "action": "ASYNC", - "situation": "AMBIGUOUS", - }, - { - "action": "ASYNC", - "situation": "CONFIRMED", - }, - { - "action": "ASYNC", - "situation": "FOUND", - }, - { - "action": "ASYNC", - "situation": "FOUND_ALREADY_LINKED", - }, - { - "action": "ASYNC", - "situation": "LINK_ONLY", - }, - { - "action": "ASYNC", - "situation": "MISSING", - }, - { - "action": "ASYNC", - "situation": "SOURCE_IGNORED", - }, - { - "action": "ASYNC", - "situation": "SOURCE_MISSING", - }, - { - "action": "ASYNC", - "situation": "TARGET_IGNORED", - }, - { - "action": "ASYNC", - "situation": "UNASSIGNED", - }, - { - "action": "ASYNC", - "situation": "UNQUALIFIED", - }, - ], - "properties": [], - "source": "managed/bravo_group", - "target": "managed/bravo_group", - }, - "mapping/managedBravo_user_managedBravo_user0": { - "_id": "mapping/managedBravo_user_managedBravo_user0", - "consentRequired": false, - "displayName": "managedBravo_user_managedBravo_user0", - "icon": null, - "name": "managedBravo_user_managedBravo_user0", - "policies": [ - { - "action": "ASYNC", - "situation": "ABSENT", - }, - { - "action": "ASYNC", - "situation": "ALL_GONE", - }, - { - "action": "ASYNC", - "situation": "AMBIGUOUS", - }, - { - "action": "ASYNC", - "situation": "CONFIRMED", - }, - { - "action": "ASYNC", - "situation": "FOUND", - }, - { - "action": "ASYNC", - "situation": "FOUND_ALREADY_LINKED", - }, - { - "action": "ASYNC", - "situation": "LINK_ONLY", - }, - { - "action": "ASYNC", - "situation": "MISSING", - }, - { - "action": "ASYNC", - "situation": "SOURCE_IGNORED", - }, - { - "action": "ASYNC", - "situation": "SOURCE_MISSING", - }, - { - "action": "ASYNC", - "situation": "TARGET_IGNORED", - }, - { - "action": "ASYNC", - "situation": "UNASSIGNED", - }, - { - "action": "ASYNC", - "situation": "UNQUALIFIED", - }, - ], - "properties": [], - "source": "managed/bravo_user", - "target": "managed/bravo_user", - }, - "mapping/mapping12": { - "_id": "mapping/mapping12", - "consentRequired": false, - "displayName": "mapping12", - "linkQualifiers": [], - "name": "mapping12", - "policies": [], - "properties": [], - "source": "managed/bravo_user", - "syncAfter": [], - "target": "managed/bravo_user", - }, - "mapping/systemAzureDirectoryrole_managedAlpha_assignment": { - "_id": "mapping/systemAzureDirectoryrole_managedAlpha_assignment", - "consentRequired": false, - "displayName": "systemAzureDirectoryrole_managedAlpha_assignment", - "icon": null, - "name": "systemAzureDirectoryrole_managedAlpha_assignment", - "policies": [ - { - "action": "EXCEPTION", - "situation": "AMBIGUOUS", - }, - { - "action": "DELETE", - "situation": "SOURCE_MISSING", - }, - { - "action": "CREATE", - "situation": "MISSING", - }, - { - "action": "EXCEPTION", - "situation": "FOUND_ALREADY_LINKED", - }, - { - "action": "DELETE", - "situation": "UNQUALIFIED", - }, - { - "action": "EXCEPTION", - "situation": "UNASSIGNED", - }, - { - "action": "EXCEPTION", - "situation": "LINK_ONLY", - }, - { - "action": "IGNORE", - "situation": "TARGET_IGNORED", - }, - { - "action": "IGNORE", - "situation": "SOURCE_IGNORED", - }, - { - "action": "IGNORE", - "situation": "ALL_GONE", - }, - { - "action": "UPDATE", - "situation": "CONFIRMED", - }, - { - "action": "LINK", - "situation": "FOUND", - }, - { - "action": "CREATE", - "situation": "ABSENT", - }, - ], - "properties": [ - { - "default": "__RESOURCE__", - "target": "type", - }, - { - "source": "", - "target": "description", - "transform": { - "globals": {}, - "source": "(typeof source.description !== "undefined" && source.description !== null) ? source.description : source._id", - "type": "text/javascript", + "locks": { + "dnTemplate": "ou=locks,dc=openidm,dc=example,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-lock", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly", + }, + "nodeId": { + "ldapAttribute": "fr-idm-lock-nodeid", + "type": "simple", + }, + }, }, - }, - { - "default": "managedAlpha_user_systemAzureUser", - "target": "mapping", - }, - { - "source": "", - "target": "name", - "transform": { - "globals": {}, - "source": "(typeof source.displayName !== "undefined" && source.displayName !== null) ? source.displayName : source._id", - "type": "text/javascript", + "managed/teammember": { + "dnTemplate": "ou=people,o=root,ou=identities", + "namingStrategy": { + "dnAttribute": "fr-idm-uuid", + "type": "clientDnNaming", + }, + "nativeId": false, + "objectClasses": [ + "person", + "organizationalPerson", + "inetOrgPerson", + "fraas-admin", + "iplanet-am-user-service", + "deviceProfilesContainer", + "devicePrintProfilesContainer", + "kbaInfoContainer", + "fr-idm-managed-user-explicit", + "forgerock-am-dashboard-service", + "inetuser", + "iplanet-am-auth-configuration-service", + "iplanet-am-managed-person", + "iPlanetPreferences", + "oathDeviceProfilesContainer", + "pushDeviceProfilesContainer", + "sunAMAuthAccountLockout", + "sunFMSAML2NameIdentifier", + "webauthnDeviceProfilesContainer", + "fr-idm-hybrid-obj", + ], + "properties": { + "_id": { + "ldapAttribute": "fr-idm-uuid", + "primaryKey": true, + "type": "simple", + }, + "_meta": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-meta", + "primaryKey": "uid", + "resourcePath": "managed/teammembermeta", + "type": "reference", + }, + "accountStatus": { + "ldapAttribute": "inetUserStatus", + "type": "simple", + }, + "cn": { + "ldapAttribute": "cn", + "type": "simple", + }, + "givenName": { + "ldapAttribute": "givenName", + "type": "simple", + }, + "inviteDate": { + "ldapAttribute": "fr-idm-inviteDate", + "type": "simple", + }, + "jurisdiction": { + "ldapAttribute": "fr-idm-jurisdiction", + "type": "simple", + }, + "mail": { + "ldapAttribute": "mail", + "type": "simple", + }, + "onboardDate": { + "ldapAttribute": "fr-idm-onboardDate", + "type": "simple", + }, + "password": { + "ldapAttribute": "userPassword", + "type": "simple", + }, + "sn": { + "ldapAttribute": "sn", + "type": "simple", + }, + "userName": { + "ldapAttribute": "uid", + "type": "simple", + }, + }, }, - }, - { - "source": "_id", - "target": "attributes", - "transform": { - "globals": {}, - "source": "[ - { - 'name': '__roles__', - 'value': [source] - } -]", - "type": "text/javascript", + "managed/teammembergroup": { + "dnTemplate": "ou=groups,o=root,ou=identities", + "objectClasses": [ + "groupofuniquenames", + ], + "properties": { + "_id": { + "ldapAttribute": "cn", + "primaryKey": true, + "type": "simple", + }, + "members": { + "isMultiValued": true, + "ldapAttribute": "uniqueMember", + "type": "simple", + }, + }, + }, + "recon/assoc": { + "dnTemplate": "ou=assoc,ou=recon,dc=openidm,dc=example,dc=com", + "namingStrategy": { + "dnAttribute": "fr-idm-reconassoc-reconid", + "type": "clientDnNaming", + }, + "objectClasses": [ + "fr-idm-reconassoc", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "fr-idm-reconassoc-reconid", + "type": "simple", + }, + "finishTime": { + "ldapAttribute": "fr-idm-reconassoc-finishtime", + "type": "simple", + }, + "isAnalysis": { + "ldapAttribute": "fr-idm-reconassoc-isanalysis", + "type": "simple", + }, + "mapping": { + "ldapAttribute": "fr-idm-reconassoc-mapping", + "type": "simple", + }, + "sourceResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-sourceresourcecollection", + "type": "simple", + }, + "targetResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-targetresourcecollection", + "type": "simple", + }, + }, + "subResources": { + "entry": { + "namingStrategy": { + "dnAttribute": "uid", + "type": "clientDnNaming", + }, + "resource": "recon-assoc-entry", + "type": "collection", + }, + }, }, - }, - { - "source": "_id", - "target": "_id", - "transform": { - "globals": { - "sourceObjectSet": "system_Azure_directoryRole_", + "recon/assoc/entry": { + "objectClasses": [ + "uidObject", + "fr-idm-reconassocentry", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + }, + "action": { + "ldapAttribute": "fr-idm-reconassocentry-action", + "type": "simple", + }, + "ambiguousTargetObjectIds": { + "ldapAttribute": "fr-idm-reconassocentry-ambiguoustargetobjectids", + "type": "simple", + }, + "exception": { + "ldapAttribute": "fr-idm-reconassocentry-exception", + "type": "simple", + }, + "isAnalysis": { + "ldapAttribute": "fr-idm-reconassoc-isanalysis", + "type": "simple", + }, + "linkQualifier": { + "ldapAttribute": "fr-idm-reconassocentry-linkqualifier", + "type": "simple", + }, + "mapping": { + "ldapAttribute": "fr-idm-reconassoc-mapping", + "type": "simple", + }, + "message": { + "ldapAttribute": "fr-idm-reconassocentry-message", + "type": "simple", + }, + "messageDetail": { + "ldapAttribute": "fr-idm-reconassocentry-messagedetail", + "type": "simple", + }, + "phase": { + "ldapAttribute": "fr-idm-reconassocentry-phase", + "type": "simple", + }, + "reconId": { + "ldapAttribute": "fr-idm-reconassocentry-reconid", + "type": "simple", + }, + "situation": { + "ldapAttribute": "fr-idm-reconassocentry-situation", + "type": "simple", + }, + "sourceObjectId": { + "ldapAttribute": "fr-idm-reconassocentry-sourceObjectId", + "type": "simple", + }, + "sourceResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-sourceresourcecollection", + "type": "simple", + }, + "status": { + "ldapAttribute": "fr-idm-reconassocentry-status", + "type": "simple", + }, + "targetObjectId": { + "ldapAttribute": "fr-idm-reconassocentry-targetObjectId", + "type": "simple", + }, + "targetResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-targetresourcecollection", + "type": "simple", + }, }, - "source": "sourceObjectSet.concat(source)", - "type": "text/javascript", + "resourceName": "recon-assoc-entry", + "subResourceRouting": [ + { + "prefix": "entry", + "template": "recon/assoc/{reconId}/entry", + }, + ], }, - }, - ], - "source": "system/Azure/directoryRole", - "target": "managed/alpha_assignment", - "targetQuery": { - "_queryFilter": "mapping eq "managedAlpha_user_systemAzureUser" and attributes[name eq "__roles__"]", - }, - }, - "mapping/systemAzureServiceplan_managedAlpha_assignment": { - "_id": "mapping/systemAzureServiceplan_managedAlpha_assignment", - "consentRequired": false, - "displayName": "systemAzureServiceplan_managedAlpha_assignment", - "icon": null, - "name": "systemAzureServiceplan_managedAlpha_assignment", - "policies": [ - { - "action": "EXCEPTION", - "situation": "AMBIGUOUS", - }, - { - "action": "DELETE", - "situation": "SOURCE_MISSING", - }, - { - "action": "CREATE", - "situation": "MISSING", - }, - { - "action": "EXCEPTION", - "situation": "FOUND_ALREADY_LINKED", - }, - { - "action": "DELETE", - "situation": "UNQUALIFIED", - }, - { - "action": "EXCEPTION", - "situation": "UNASSIGNED", - }, - { - "action": "EXCEPTION", - "situation": "LINK_ONLY", - }, - { - "action": "IGNORE", - "situation": "TARGET_IGNORED", - }, - { - "action": "IGNORE", - "situation": "SOURCE_IGNORED", - }, - { - "action": "IGNORE", - "situation": "ALL_GONE", - }, - { - "action": "UPDATE", - "situation": "CONFIRMED", - }, - { - "action": "LINK", - "situation": "FOUND", - }, - { - "action": "CREATE", - "situation": "ABSENT", - }, - ], - "properties": [ - { - "default": "__RESOURCE__", - "target": "type", - }, - { - "source": "", - "target": "description", - "transform": { - "globals": {}, - "source": "(typeof source.servicePlanName !== "undefined" && source.servicePlanName !== null) ? source.servicePlanName : source._id", - "type": "text/javascript", + "sync/queue": { + "dnTemplate": "ou=queue,ou=sync,dc=openidm,dc=example,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-syncqueue", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly", + }, + "context": { + "ldapAttribute": "fr-idm-syncqueue-context", + "type": "json", + }, + "createDate": { + "ldapAttribute": "fr-idm-syncqueue-createdate", + "type": "simple", + }, + "mapping": { + "ldapAttribute": "fr-idm-syncqueue-mapping", + "type": "simple", + }, + "newObject": { + "ldapAttribute": "fr-idm-syncqueue-newobject", + "type": "json", + }, + "nodeId": { + "ldapAttribute": "fr-idm-syncqueue-nodeid", + "type": "simple", + }, + "objectRev": { + "ldapAttribute": "fr-idm-syncqueue-objectRev", + "type": "simple", + }, + "oldObject": { + "ldapAttribute": "fr-idm-syncqueue-oldobject", + "type": "json", + }, + "remainingRetries": { + "ldapAttribute": "fr-idm-syncqueue-remainingretries", + "type": "simple", + }, + "resourceCollection": { + "ldapAttribute": "fr-idm-syncqueue-resourcecollection", + "type": "simple", + }, + "resourceId": { + "ldapAttribute": "fr-idm-syncqueue-resourceid", + "type": "simple", + }, + "state": { + "ldapAttribute": "fr-idm-syncqueue-state", + "type": "simple", + }, + "syncAction": { + "ldapAttribute": "fr-idm-syncqueue-syncaction", + "type": "simple", + }, + }, }, }, - { - "default": "managedAlpha_user_systemAzureUser", - "target": "mapping", - }, - { - "source": "", - "target": "name", - "transform": { - "globals": {}, - "source": "(typeof source.servicePlanName !== "undefined" && source.servicePlanName !== null) ? source.servicePlanName : source._id", - "type": "text/javascript", + "genericMapping": { + "cluster/*": { + "dnTemplate": "ou=cluster,dc=openidm,dc=example,dc=com", + "jsonAttribute": "fr-idm-cluster-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchClusterObject", + "objectClasses": [ + "uidObject", + "fr-idm-cluster-obj", + ], }, - }, - { - "source": "_id", - "target": "attributes", - "transform": { - "globals": {}, - "source": "[ - { - 'name': '__servicePlanIds__', - 'value': [source] - } -]", - "type": "text/javascript", + "config": { + "dnTemplate": "ou=config,dc=openidm,dc=example,dc=com", }, - }, - { - "source": "_id", - "target": "_id", - "transform": { - "globals": { - "sourceObjectSet": "system_Azure_servicePlan_", - }, - "source": "sourceObjectSet.concat(source)", - "type": "text/javascript", + "file": { + "dnTemplate": "ou=file,dc=openidm,dc=example,dc=com", }, - }, - ], - "source": "system/Azure/servicePlan", - "target": "managed/alpha_assignment", - "targetQuery": { - "_queryFilter": "mapping eq "managedAlpha_user_systemAzureUser" and attributes[name eq "__servicePlanIds__"]", - }, - }, - "mapping/systemAzureUser_managedAlpha_user": { - "_id": "mapping/systemAzureUser_managedAlpha_user", - "consentRequired": false, - "correlationQuery": [ - { - "linkQualifier": "default", - "source": "var qry = {'_queryFilter': 'mail eq "' + source.mail + '"'}; qry", - "type": "text/javascript", - }, - ], - "defaultSourceFields": [ - "*", - "memberOf", - "__roles__", - "__servicePlanIds__", - ], - "defaultTargetFields": [ - "*", - "assignments", - ], - "displayName": "systemAzureUser_managedAlpha_user", - "icon": null, - "links": "managedAlpha_user_systemAzureUser", - "name": "systemAzureUser_managedAlpha_user", - "policies": [ - { - "action": "ASYNC", - "situation": "AMBIGUOUS", - }, - { - "action": "ASYNC", - "situation": "SOURCE_MISSING", - }, - { - "action": "ASYNC", - "situation": "MISSING", - }, - { - "action": "ASYNC", - "situation": "FOUND_ALREADY_LINKED", - }, - { - "action": "ASYNC", - "situation": "UNQUALIFIED", - }, - { - "action": "ASYNC", - "situation": "UNASSIGNED", - }, - { - "action": "ASYNC", - "situation": "LINK_ONLY", - }, - { - "action": "ASYNC", - "situation": "TARGET_IGNORED", - }, - { - "action": "ASYNC", - "situation": "SOURCE_IGNORED", - }, - { - "action": "ASYNC", - "situation": "ALL_GONE", - }, - { - "action": "UPDATE", - "situation": "CONFIRMED", - }, - { - "action": "ONBOARD", - "situation": "FOUND", - }, - { - "action": "ASYNC", - "situation": "ABSENT", - }, - { - "action": "ASYNC", - "situation": "SOURCE_TARGET_CONFLICT", - }, - ], - "properties": [ - { - "referencedObjectType": "__GROUP__", - "source": "memberOf", - "target": "assignments", - }, - { - "referencedObjectType": "directoryRole", - "source": "__roles__", - "target": "assignments", - }, - { - "referencedObjectType": "servicePlan", - "source": "__servicePlanIds__", - "target": "assignments", - }, - ], - "reconSourceQueryPageSize": 999, - "reconSourceQueryPaging": true, - "runTargetPhase": false, - "source": "system/Azure/User", - "sourceQueryFullEntry": true, - "target": "managed/alpha_user", - }, - "mapping/systemAzure__group___managedAlpha_assignment": { - "_id": "mapping/systemAzure__group___managedAlpha_assignment", - "consentRequired": false, - "displayName": "systemAzure__group___managedAlpha_assignment", - "icon": null, - "name": "systemAzure__group___managedAlpha_assignment", - "policies": [ - { - "action": "EXCEPTION", - "situation": "AMBIGUOUS", - }, - { - "action": "DELETE", - "situation": "SOURCE_MISSING", - }, - { - "action": "CREATE", - "situation": "MISSING", - }, - { - "action": "EXCEPTION", - "situation": "FOUND_ALREADY_LINKED", - }, - { - "action": "DELETE", - "situation": "UNQUALIFIED", - }, - { - "action": "EXCEPTION", - "situation": "UNASSIGNED", - }, - { - "action": "EXCEPTION", - "situation": "LINK_ONLY", - }, - { - "action": "IGNORE", - "situation": "TARGET_IGNORED", - }, - { - "action": "IGNORE", - "situation": "SOURCE_IGNORED", - }, - { - "action": "IGNORE", - "situation": "ALL_GONE", - }, - { - "action": "UPDATE", - "situation": "CONFIRMED", - }, - { - "action": "LINK", - "situation": "FOUND", - }, - { - "action": "CREATE", - "situation": "ABSENT", - }, - ], - "properties": [ - { - "default": "__RESOURCE__", - "target": "type", - }, - { - "source": "", - "target": "description", - "transform": { - "globals": {}, - "source": "(typeof source.description !== "undefined" && source.description !== null) ? source.description : source._id", - "type": "text/javascript", + "internal/notification": { + "dnTemplate": "ou=notification,ou=internal,dc=openidm,dc=example,dc=com", + "jsonAttribute": "fr-idm-notification-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-notification", + ], + "properties": { + "target": { + "propertyName": "_notifications", + "resourcePath": "managed/alpha_user", + "type": "reverseReference", + }, + }, }, - }, - { - "default": "managedAlpha_user_systemAzureUser", - "target": "mapping", - }, - { - "source": "", - "target": "name", - "transform": { - "globals": {}, - "source": "(typeof source.displayName !== "undefined" && source.displayName !== null) ? source.displayName : source._id", - "type": "text/javascript", + "internal/usermeta": { + "dnTemplate": "ou=usermeta,ou=internal,dc=openidm,dc=example,dc=com", + "jsonAttribute": "fr-idm-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-generic-obj", + ], + "properties": { + "target": { + "propertyName": "_meta", + "resourcePath": "managed/alpha_user", + "type": "reverseReference", + }, + }, }, - }, - { - "source": "_id", - "target": "attributes", - "transform": { - "globals": {}, - "source": "[ - { - 'name': 'memberOf', - 'value': [source] - } -]", - "type": "text/javascript", + "jsonstorage": { + "dnTemplate": "ou=jsonstorage,dc=openidm,dc=example,dc=com", + }, + "managed/*": { + "dnTemplate": "ou=managed,dc=openidm,dc=example,dc=com", + }, + "managed/alpha_group": { + "dnTemplate": "ou=groups,o=alpha,o=root,ou=identities", + "idGenerator": { + "propertyName": "name", + "type": "property", + }, + "jsonAttribute": "fr-idm-managed-group-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "namingStrategy": { + "dnAttribute": "cn", + "type": "clientDnNaming", + }, + "nativeId": false, + "objectClasses": [ + "top", + "groupOfURLs", + "fr-idm-managed-group", + ], + "properties": { + "_id": { + "ldapAttribute": "cn", + "primaryKey": true, + "type": "simple", + "writability": "createOnly", + }, + "condition": { + "ldapAttribute": "fr-idm-managed-group-condition", + "type": "simple", + }, + "description": { + "ldapAttribute": "description", + "type": "simple", + }, + "members": { + "isMultiValued": true, + "propertyName": "groups", + "resourcePath": "managed/alpha_user", + "type": "reverseReference", + }, + }, + }, + "managed/alpha_organization": { + "dnTemplate": "ou=organization,o=alpha,o=root,ou=identities", + "jsonAttribute": "fr-idm-managed-organization-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-organization", + "fr-ext-attrs", + ], + "properties": { + "_id": { + "ldapAttribute": "uid", + "type": "simple", + }, + "admins": { + "isMultiValued": true, + "propertyName": "adminOfOrg", + "resourcePath": "managed/alpha_user", + "type": "reverseReference", + }, + "children": { + "isMultiValued": true, + "propertyName": "parent", + "resourcePath": "managed/alpha_organization", + "type": "reverseReference", + }, + "members": { + "isMultiValued": true, + "propertyName": "memberOfOrg", + "resourcePath": "managed/alpha_user", + "type": "reverseReference", + }, + "name": { + "ldapAttribute": "fr-idm-managed-organization-name", + "type": "simple", + }, + "owners": { + "isMultiValued": true, + "propertyName": "ownerOfOrg", + "resourcePath": "managed/alpha_user", + "type": "reverseReference", + }, + "parent": { + "ldapAttribute": "fr-idm-managed-organization-parent", + "primaryKey": "uid", + "resourcePath": "managed/alpha_organization", + "type": "reference", + }, + }, + }, + "managed/alpha_role": { + "dnTemplate": "ou=role,o=alpha,o=root,ou=identities", + "jsonAttribute": "fr-idm-managed-role-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchManagedRole", + "objectClasses": [ + "uidObject", + "fr-idm-managed-role", + ], + "properties": { + "members": { + "isMultiValued": true, + "propertyName": "roles", + "resourcePath": "managed/alpha_user", + "type": "reverseReference", + }, + }, + }, + "managed/alpha_user": { + "dnTemplate": "ou=user,o=alpha,o=root,ou=identities", + "jsonAttribute": "fr-idm-custom-attrs", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "namingStrategy": { + "dnAttribute": "fr-idm-uuid", + "type": "clientDnNaming", + }, + "nativeId": false, + "objectClasses": [ + "person", + "organizationalPerson", + "inetOrgPerson", + "iplanet-am-user-service", + "devicePrintProfilesContainer", + "deviceProfilesContainer", + "kbaInfoContainer", + "fr-idm-managed-user-explicit", + "forgerock-am-dashboard-service", + "inetuser", + "iplanet-am-auth-configuration-service", + "iplanet-am-managed-person", + "iPlanetPreferences", + "oathDeviceProfilesContainer", + "pushDeviceProfilesContainer", + "sunAMAuthAccountLockout", + "sunFMSAML2NameIdentifier", + "webauthnDeviceProfilesContainer", + "fr-idm-hybrid-obj", + "fr-ext-attrs", + ], + "properties": { + "_id": { + "ldapAttribute": "fr-idm-uuid", + "primaryKey": true, + "type": "simple", + }, + "_meta": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-meta", + "primaryKey": "uid", + "resourcePath": "managed/alpha_usermeta", + "type": "reference", + }, + "_notifications": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-notifications", + "primaryKey": "uid", + "resourcePath": "internal/notification", + "type": "reference", + }, + "accountStatus": { + "ldapAttribute": "inetUserStatus", + "type": "simple", + }, + "adminOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-admin", + "primaryKey": "uid", + "resourcePath": "managed/alpha_organization", + "type": "reference", + }, + "aliasList": { + "isMultiValued": true, + "ldapAttribute": "iplanet-am-user-alias-list", + "type": "simple", + }, + "assignedDashboard": { + "isMultiValued": true, + "ldapAttribute": "assignedDashboard", + "type": "simple", + }, + "authzRoles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-authzroles-internal-role", + "primaryKey": "cn", + "resourcePath": "internal/role", + "type": "reference", + }, + "city": { + "ldapAttribute": "l", + "type": "simple", + }, + "cn": { + "ldapAttribute": "cn", + "type": "simple", + }, + "consentedMappings": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-consentedMapping", + "type": "json", + }, + "country": { + "ldapAttribute": "co", + "type": "simple", + }, + "description": { + "ldapAttribute": "description", + "type": "simple", + }, + "displayName": { + "ldapAttribute": "displayName", + "type": "simple", + }, + "effectiveAssignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-effectiveAssignment", + "type": "json", + }, + "effectiveGroups": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-effectiveGroup", + "type": "json", + }, + "effectiveRoles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-effectiveRole", + "type": "json", + }, + "frIndexedDate1": { + "ldapAttribute": "fr-attr-idate1", + "type": "simple", + }, + "frIndexedDate2": { + "ldapAttribute": "fr-attr-idate2", + "type": "simple", + }, + "frIndexedDate3": { + "ldapAttribute": "fr-attr-idate3", + "type": "simple", + }, + "frIndexedDate4": { + "ldapAttribute": "fr-attr-idate4", + "type": "simple", + }, + "frIndexedDate5": { + "ldapAttribute": "fr-attr-idate5", + "type": "simple", + }, + "frIndexedInteger1": { + "ldapAttribute": "fr-attr-iint1", + "type": "simple", + }, + "frIndexedInteger2": { + "ldapAttribute": "fr-attr-iint2", + "type": "simple", + }, + "frIndexedInteger3": { + "ldapAttribute": "fr-attr-iint3", + "type": "simple", + }, + "frIndexedInteger4": { + "ldapAttribute": "fr-attr-iint4", + "type": "simple", + }, + "frIndexedInteger5": { + "ldapAttribute": "fr-attr-iint5", + "type": "simple", + }, + "frIndexedMultivalued1": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti1", + "type": "simple", + }, + "frIndexedMultivalued2": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti2", + "type": "simple", + }, + "frIndexedMultivalued3": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti3", + "type": "simple", + }, + "frIndexedMultivalued4": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti4", + "type": "simple", + }, + "frIndexedMultivalued5": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti5", + "type": "simple", + }, + "frIndexedString1": { + "ldapAttribute": "fr-attr-istr1", + "type": "simple", + }, + "frIndexedString2": { + "ldapAttribute": "fr-attr-istr2", + "type": "simple", + }, + "frIndexedString3": { + "ldapAttribute": "fr-attr-istr3", + "type": "simple", + }, + "frIndexedString4": { + "ldapAttribute": "fr-attr-istr4", + "type": "simple", + }, + "frIndexedString5": { + "ldapAttribute": "fr-attr-istr5", + "type": "simple", + }, + "frUnindexedDate1": { + "ldapAttribute": "fr-attr-date1", + "type": "simple", + }, + "frUnindexedDate2": { + "ldapAttribute": "fr-attr-date2", + "type": "simple", + }, + "frUnindexedDate3": { + "ldapAttribute": "fr-attr-date3", + "type": "simple", + }, + "frUnindexedDate4": { + "ldapAttribute": "fr-attr-date4", + "type": "simple", + }, + "frUnindexedDate5": { + "ldapAttribute": "fr-attr-date5", + "type": "simple", + }, + "frUnindexedInteger1": { + "ldapAttribute": "fr-attr-int1", + "type": "simple", + }, + "frUnindexedInteger2": { + "ldapAttribute": "fr-attr-int2", + "type": "simple", + }, + "frUnindexedInteger3": { + "ldapAttribute": "fr-attr-int3", + "type": "simple", + }, + "frUnindexedInteger4": { + "ldapAttribute": "fr-attr-int4", + "type": "simple", + }, + "frUnindexedInteger5": { + "ldapAttribute": "fr-attr-int5", + "type": "simple", + }, + "frUnindexedMultivalued1": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi1", + "type": "simple", + }, + "frUnindexedMultivalued2": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi2", + "type": "simple", + }, + "frUnindexedMultivalued3": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi3", + "type": "simple", + }, + "frUnindexedMultivalued4": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi4", + "type": "simple", + }, + "frUnindexedMultivalued5": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi5", + "type": "simple", + }, + "frUnindexedString1": { + "ldapAttribute": "fr-attr-str1", + "type": "simple", + }, + "frUnindexedString2": { + "ldapAttribute": "fr-attr-str2", + "type": "simple", + }, + "frUnindexedString3": { + "ldapAttribute": "fr-attr-str3", + "type": "simple", + }, + "frUnindexedString4": { + "ldapAttribute": "fr-attr-str4", + "type": "simple", + }, + "frUnindexedString5": { + "ldapAttribute": "fr-attr-str5", + "type": "simple", + }, + "givenName": { + "ldapAttribute": "givenName", + "type": "simple", + }, + "groups": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-groups", + "primaryKey": "cn", + "resourcePath": "managed/alpha_group", + "type": "reference", + }, + "kbaInfo": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-kbaInfo", + "type": "json", + }, + "lastSync": { + "ldapAttribute": "fr-idm-lastSync", + "type": "json", + }, + "mail": { + "ldapAttribute": "mail", + "type": "simple", + }, + "manager": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-manager", + "primaryKey": "uid", + "resourcePath": "managed/alpha_user", + "type": "reference", + }, + "memberOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-member", + "primaryKey": "uid", + "resourcePath": "managed/alpha_organization", + "type": "reference", + }, + "memberOfOrgIDs": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-memberoforgid", + "type": "simple", + }, + "ownerOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-owner", + "primaryKey": "uid", + "resourcePath": "managed/alpha_organization", + "type": "reference", + }, + "password": { + "ldapAttribute": "userPassword", + "type": "simple", + }, + "postalAddress": { + "ldapAttribute": "street", + "type": "simple", + }, + "postalCode": { + "ldapAttribute": "postalCode", + "type": "simple", + }, + "preferences": { + "ldapAttribute": "fr-idm-preferences", + "type": "json", + }, + "profileImage": { + "ldapAttribute": "labeledURI", + "type": "simple", + }, + "reports": { + "isMultiValued": true, + "propertyName": "manager", + "resourcePath": "managed/alpha_user", + "type": "reverseReference", + }, + "roles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-roles", + "primaryKey": "uid", + "resourcePath": "managed/alpha_role", + "type": "reference", + }, + "sn": { + "ldapAttribute": "sn", + "type": "simple", + }, + "stateProvince": { + "ldapAttribute": "st", + "type": "simple", + }, + "telephoneNumber": { + "ldapAttribute": "telephoneNumber", + "type": "simple", + }, + "userName": { + "ldapAttribute": "uid", + "type": "simple", + }, + }, }, - }, - { - "source": "_id", - "target": "_id", - "transform": { - "globals": { - "sourceObjectSet": "system_Azure___GROUP___", + "managed/alpha_usermeta": { + "dnTemplate": "ou=usermeta,o=alpha,o=root,ou=identities", + "jsonAttribute": "fr-idm-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-generic-obj", + ], + "properties": { + "target": { + "propertyName": "_meta", + "resourcePath": "managed/alpha_user", + "type": "reverseReference", + }, }, - "source": "sourceObjectSet.concat(source)", - "type": "text/javascript", }, - }, - ], - "source": "system/Azure/__GROUP__", - "target": "managed/alpha_assignment", - "targetQuery": { - "_queryFilter": "mapping eq "managedAlpha_user_systemAzureUser" and attributes[name eq "memberOf"]", - }, - }, - "policy": { - "_id": "policy", - "additionalFiles": [], - "resources": [], - }, - "privilegeAssignments": { - "_id": "privilegeAssignments", - "privilegeAssignments": [ - { - "name": "ownerPrivileges", - "privileges": [ - "owner-view-update-delete-orgs", - "owner-create-orgs", - "owner-view-update-delete-admins-and-members", - "owner-create-admins", - "admin-view-update-delete-members", - "admin-create-members", - ], - "relationshipField": "ownerOfOrg", - }, - { - "name": "adminPrivileges", - "privileges": [ - "admin-view-update-delete-orgs", - "admin-create-orgs", - "admin-view-update-delete-members", - "admin-create-members", - ], - "relationshipField": "adminOfOrg", - }, - ], - }, - "privileges": { - "_id": "privileges", - "privileges": [], - }, - "provisioner.openic/GoogleApps": { - "_id": "provisioner.openic/GoogleApps", - "configurationProperties": { - "availableLicenses": [ - "101005/1010050001", - "101001/1010010001", - "101031/1010310010", - "101034/1010340002", - "101038/1010380002", - "101034/1010340001", - "101038/1010380003", - "101034/1010340004", - "101034/1010340003", - "101034/1010340006", - "Google-Apps/Google-Apps-For-Business", - "101034/1010340005", - "Google-Vault/Google-Vault", - "Google-Apps/1010020031", - "Google-Apps/1010020030", - "Google-Apps/1010060003", - "Google-Apps/1010060005", - "Google-Apps/Google-Apps-Unlimited", - "Google-Apps/1010020029", - "Google-Apps/Google-Apps-Lite", - "101031/1010310003", - "101033/1010330002", - "101033/1010330004", - "Google-Apps/Google-Apps-For-Education", - "101031/1010310002", - "101033/1010330003", - "Google-Apps/1010020026", - "101031/1010310007", - "Google-Apps/1010020025", - "101031/1010310008", - "Google-Apps/1010020028", - "Google-Apps/Google-Apps-For-Postini", - "101031/1010310005", - "Google-Apps/1010020027", - "101031/1010310006", - "101031/1010310009", - "Google-Vault/Google-Vault-Former-Employee", - "101038/1010370001", - "Google-Apps/1010020020", - "Google-Apps/1010060001", - ], - "clientId": "&{esv.gac.client.id}", - "clientSecret": "&{esv.gac.secret}", - "domain": "&{esv.gac.domain}", - "groupsMaxResults": "200", - "listProductAndSkuMaxResults": "100", - "listProductMaxResults": "100", - "membersMaxResults": "200", - "proxyHost": null, - "proxyPort": 8080, - "refreshToken": "&{esv.gac.refresh}", - "roleAssignmentMaxResults": 100, - "roleMaxResults": 100, - "usersMaxResults": "100", - "validateCertificate": true, - }, - "connectorRef": { - "bundleName": "org.forgerock.openicf.connectors.googleapps-connector", - "bundleVersion": "[1.5.0.0,1.6.0.0)", - "connectorHostRef": "", - "connectorName": "org.forgerock.openicf.connectors.googleapps.GoogleAppsConnector", - "displayName": "GoogleApps Connector", - "systemType": "provisioner.openicf", - }, - "enabled": { - "$bool": "&{esv.gac.enable.connector}", - }, - "objectTypes": { - "__ACCOUNT__": { - "$schema": "http://json-schema.org/draft-03/schema", - "id": "__ACCOUNT__", - "nativeType": "__ACCOUNT__", - "properties": { - "__GROUPS__": { - "flags": [ - "NOT_RETURNED_BY_DEFAULT", - ], - "items": { - "nativeType": "string", - "type": "string", + "managed/bravo_group": { + "dnTemplate": "ou=groups,o=bravo,o=root,ou=identities", + "idGenerator": { + "propertyName": "name", + "type": "property", + }, + "jsonAttribute": "fr-idm-managed-group-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "namingStrategy": { + "dnAttribute": "cn", + "type": "clientDnNaming", + }, + "nativeId": false, + "objectClasses": [ + "top", + "groupOfURLs", + "fr-idm-managed-group", + ], + "properties": { + "_id": { + "ldapAttribute": "cn", + "primaryKey": true, + "type": "simple", + "writability": "createOnly", + }, + "condition": { + "ldapAttribute": "fr-idm-managed-group-condition", + "type": "simple", + }, + "description": { + "ldapAttribute": "description", + "type": "simple", + }, + "members": { + "isMultiValued": true, + "propertyName": "groups", + "resourcePath": "managed/bravo_user", + "type": "reverseReference", }, - "nativeName": "__GROUPS__", - "nativeType": "string", - "type": "array", }, - "__NAME__": { - "nativeName": "__NAME__", - "nativeType": "string", - "type": "string", + }, + "managed/bravo_organization": { + "dnTemplate": "ou=organization,o=bravo,o=root,ou=identities", + "jsonAttribute": "fr-idm-managed-organization-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-organization", + "fr-ext-attrs", + ], + "properties": { + "_id": { + "ldapAttribute": "uid", + "type": "simple", + }, + "admins": { + "isMultiValued": true, + "propertyName": "adminOfOrg", + "resourcePath": "managed/bravo_user", + "type": "reverseReference", + }, + "children": { + "isMultiValued": true, + "propertyName": "parent", + "resourcePath": "managed/bravo_organization", + "type": "reverseReference", + }, + "members": { + "isMultiValued": true, + "propertyName": "memberOfOrg", + "resourcePath": "managed/bravo_user", + "type": "reverseReference", + }, + "name": { + "ldapAttribute": "fr-idm-managed-organization-name", + "type": "simple", + }, + "owners": { + "isMultiValued": true, + "propertyName": "ownerOfOrg", + "resourcePath": "managed/bravo_user", + "type": "reverseReference", + }, + "parent": { + "ldapAttribute": "fr-idm-managed-organization-parent", + "primaryKey": "uid", + "resourcePath": "managed/bravo_organization", + "type": "reference", + }, }, - "__PASSWORD__": { - "flags": [ - "NOT_READABLE", - "NOT_RETURNED_BY_DEFAULT", - ], - "nativeName": "__PASSWORD__", - "nativeType": "JAVA_TYPE_GUARDEDSTRING", - "required": true, - "type": "string", + }, + "managed/bravo_role": { + "dnTemplate": "ou=role,o=bravo,o=root,ou=identities", + "jsonAttribute": "fr-idm-managed-role-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchManagedRole", + "objectClasses": [ + "uidObject", + "fr-idm-managed-role", + ], + "properties": { + "members": { + "isMultiValued": true, + "propertyName": "roles", + "resourcePath": "managed/bravo_user", + "type": "reverseReference", + }, }, - "__PHOTO__": { - "flags": [ - "NOT_RETURNED_BY_DEFAULT", - ], - "nativeName": "__PHOTO__", - "nativeType": "JAVA_TYPE_BYTE_ARRAY", - "type": "string", + }, + "managed/bravo_user": { + "dnTemplate": "ou=user,o=bravo,o=root,ou=identities", + "jsonAttribute": "fr-idm-custom-attrs", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "namingStrategy": { + "dnAttribute": "fr-idm-uuid", + "type": "clientDnNaming", }, - "__SECONDARY_EMAILS__": { - "items": { - "nativeType": "object", - "type": "object", + "nativeId": false, + "objectClasses": [ + "person", + "organizationalPerson", + "inetOrgPerson", + "iplanet-am-user-service", + "devicePrintProfilesContainer", + "deviceProfilesContainer", + "kbaInfoContainer", + "fr-idm-managed-user-explicit", + "forgerock-am-dashboard-service", + "inetuser", + "iplanet-am-auth-configuration-service", + "iplanet-am-managed-person", + "iPlanetPreferences", + "oathDeviceProfilesContainer", + "pushDeviceProfilesContainer", + "sunAMAuthAccountLockout", + "sunFMSAML2NameIdentifier", + "webauthnDeviceProfilesContainer", + "fr-idm-hybrid-obj", + "fr-ext-attrs", + ], + "properties": { + "_id": { + "ldapAttribute": "fr-idm-uuid", + "primaryKey": true, + "type": "simple", + }, + "_meta": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-meta", + "primaryKey": "uid", + "resourcePath": "managed/bravo_usermeta", + "type": "reference", + }, + "_notifications": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-notifications", + "primaryKey": "uid", + "resourcePath": "internal/notification", + "type": "reference", + }, + "accountStatus": { + "ldapAttribute": "inetUserStatus", + "type": "simple", + }, + "adminOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-admin", + "primaryKey": "uid", + "resourcePath": "managed/bravo_organization", + "type": "reference", + }, + "aliasList": { + "isMultiValued": true, + "ldapAttribute": "iplanet-am-user-alias-list", + "type": "simple", + }, + "assignedDashboard": { + "isMultiValued": true, + "ldapAttribute": "assignedDashboard", + "type": "simple", + }, + "authzRoles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-authzroles-internal-role", + "primaryKey": "cn", + "resourcePath": "internal/role", + "type": "reference", + }, + "city": { + "ldapAttribute": "l", + "type": "simple", + }, + "cn": { + "ldapAttribute": "cn", + "type": "simple", + }, + "consentedMappings": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-consentedMapping", + "type": "json", + }, + "country": { + "ldapAttribute": "co", + "type": "simple", + }, + "description": { + "ldapAttribute": "description", + "type": "simple", + }, + "displayName": { + "ldapAttribute": "displayName", + "type": "simple", + }, + "effectiveAssignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-effectiveAssignment", + "type": "json", + }, + "effectiveGroups": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-effectiveGroup", + "type": "json", + }, + "effectiveRoles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-effectiveRole", + "type": "json", + }, + "frIndexedDate1": { + "ldapAttribute": "fr-attr-idate1", + "type": "simple", + }, + "frIndexedDate2": { + "ldapAttribute": "fr-attr-idate2", + "type": "simple", + }, + "frIndexedDate3": { + "ldapAttribute": "fr-attr-idate3", + "type": "simple", + }, + "frIndexedDate4": { + "ldapAttribute": "fr-attr-idate4", + "type": "simple", + }, + "frIndexedDate5": { + "ldapAttribute": "fr-attr-idate5", + "type": "simple", + }, + "frIndexedInteger1": { + "ldapAttribute": "fr-attr-iint1", + "type": "simple", + }, + "frIndexedInteger2": { + "ldapAttribute": "fr-attr-iint2", + "type": "simple", + }, + "frIndexedInteger3": { + "ldapAttribute": "fr-attr-iint3", + "type": "simple", + }, + "frIndexedInteger4": { + "ldapAttribute": "fr-attr-iint4", + "type": "simple", + }, + "frIndexedInteger5": { + "ldapAttribute": "fr-attr-iint5", + "type": "simple", + }, + "frIndexedMultivalued1": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti1", + "type": "simple", + }, + "frIndexedMultivalued2": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti2", + "type": "simple", + }, + "frIndexedMultivalued3": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti3", + "type": "simple", + }, + "frIndexedMultivalued4": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti4", + "type": "simple", + }, + "frIndexedMultivalued5": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti5", + "type": "simple", + }, + "frIndexedString1": { + "ldapAttribute": "fr-attr-istr1", + "type": "simple", + }, + "frIndexedString2": { + "ldapAttribute": "fr-attr-istr2", + "type": "simple", }, - "nativeName": "__SECONDARY_EMAILS__", - "nativeType": "object", - "type": "array", - }, - "__UID__": { - "nativeName": "__UID__", - "nativeType": "string", - "required": false, - "type": "string", - }, - "addresses": { - "items": { - "nativeType": "object", - "type": "object", + "frIndexedString3": { + "ldapAttribute": "fr-attr-istr3", + "type": "simple", }, - "nativeName": "addresses", - "nativeType": "object", - "type": "array", - }, - "agreedToTerms": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "agreedToTerms", - "nativeType": "JAVA_TYPE_PRIMITIVE_BOOLEAN", - "type": "boolean", - }, - "aliases": { - "flags": [ - "NOT_CREATABLE", - ], - "items": { - "nativeType": "string", - "type": "string", + "frIndexedString4": { + "ldapAttribute": "fr-attr-istr4", + "type": "simple", }, - "nativeName": "aliases", - "nativeType": "string", - "type": "array", - }, - "archived": { - "nativeName": "archived", - "nativeType": "boolean", - "type": "boolean", - }, - "changePasswordAtNextLogin": { - "nativeName": "changePasswordAtNextLogin", - "nativeType": "boolean", - "type": "boolean", - }, - "creationTime": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "items": { - "nativeType": "string", - "type": "string", + "frIndexedString5": { + "ldapAttribute": "fr-attr-istr5", + "type": "simple", }, - "nativeName": "creationTime", - "nativeType": "string", - "type": "array", - }, - "customSchemas": { - "nativeName": "customSchemas", - "nativeType": "object", - "type": "object", - }, - "customerId": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "customerId", - "nativeType": "string", - "type": "string", - }, - "deletionTime": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "deletionTime", - "nativeType": "string", - "type": "string", - }, - "externalIds": { - "items": { - "nativeType": "object", - "type": "object", + "frUnindexedDate1": { + "ldapAttribute": "fr-attr-date1", + "type": "simple", }, - "nativeName": "externalIds", - "nativeType": "object", - "type": "array", - }, - "familyName": { - "nativeName": "familyName", - "nativeType": "string", - "type": "string", - }, - "fullName": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "fullName", - "nativeType": "string", - "type": "string", - }, - "givenName": { - "nativeName": "givenName", - "nativeType": "string", - "required": true, - "type": "string", - }, - "hashFunction": { - "flags": [ - "NOT_RETURNED_BY_DEFAULT", - ], - "nativeName": "hashFunction", - "nativeType": "string", - "type": "string", - }, - "ims": { - "items": { - "nativeType": "object", - "type": "object", + "frUnindexedDate2": { + "ldapAttribute": "fr-attr-date2", + "type": "simple", }, - "nativeName": "ims", - "nativeType": "object", - "type": "array", - }, - "includeInGlobalAddressList": { - "nativeName": "includeInGlobalAddressList", - "nativeType": "boolean", - "type": "boolean", - }, - "ipWhitelisted": { - "nativeName": "ipWhitelisted", - "nativeType": "boolean", - "type": "boolean", - }, - "isAdmin": { - "nativeName": "isAdmin", - "nativeType": "JAVA_TYPE_PRIMITIVE_BOOLEAN", - "type": "boolean", - }, - "isDelegatedAdmin": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "isDelegatedAdmin", - "nativeType": "JAVA_TYPE_PRIMITIVE_BOOLEAN", - "type": "boolean", - }, - "isEnforcedIn2Sv": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "isEnforcedIn2Sv", - "nativeType": "boolean", - "type": "boolean", - }, - "isEnrolledIn2Sv": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "isEnrolledIn2Sv", - "nativeType": "boolean", - "type": "boolean", - }, - "isMailboxSetup": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "isMailboxSetup", - "nativeType": "boolean", - "type": "boolean", - }, - "languages": { - "items": { - "nativeType": "object", - "type": "object", + "frUnindexedDate3": { + "ldapAttribute": "fr-attr-date3", + "type": "simple", }, - "nativeName": "languages", - "nativeType": "object", - "type": "array", - }, - "lastLoginTime": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "items": { - "nativeType": "string", - "type": "string", + "frUnindexedDate4": { + "ldapAttribute": "fr-attr-date4", + "type": "simple", }, - "nativeName": "lastLoginTime", - "nativeType": "string", - "type": "array", - }, - "nonEditableAliases": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "items": { - "nativeType": "string", - "type": "string", + "frUnindexedDate5": { + "ldapAttribute": "fr-attr-date5", + "type": "simple", }, - "nativeName": "nonEditableAliases", - "nativeType": "string", - "type": "array", - }, - "orgUnitPath": { - "nativeName": "orgUnitPath", - "nativeType": "string", - "type": "string", - }, - "organizations": { - "items": { - "nativeType": "object", - "type": "object", + "frUnindexedInteger1": { + "ldapAttribute": "fr-attr-int1", + "type": "simple", }, - "nativeName": "organizations", - "nativeType": "object", - "type": "array", - }, - "phones": { - "items": { - "nativeType": "object", - "type": "object", + "frUnindexedInteger2": { + "ldapAttribute": "fr-attr-int2", + "type": "simple", }, - "nativeName": "phones", - "nativeType": "object", - "type": "array", - }, - "primaryEmail": { - "nativeName": "primaryEmail", - "nativeType": "string", - "type": "string", - }, - "recoveryEmail": { - "nativeName": "recoveryEmail", - "nativeType": "string", - "type": "string", - }, - "recoveryPhone": { - "nativeName": "recoveryPhone", - "nativeType": "string", - "type": "string", - }, - "relations": { - "items": { - "nativeType": "object", - "type": "object", + "frUnindexedInteger3": { + "ldapAttribute": "fr-attr-int3", + "type": "simple", }, - "nativeName": "relations", - "nativeType": "object", - "type": "array", - }, - "suspended": { - "nativeName": "suspended", - "nativeType": "boolean", - "type": "boolean", - }, - "suspensionReason": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "suspensionReason", - "nativeType": "string", - "type": "string", - }, - "thumbnailPhotoUrl": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "thumbnailPhotoUrl", - "nativeType": "string", - "type": "string", - }, - }, - "type": "object", - }, - }, - "operationTimeout": { - "AUTHENTICATE": -1, - "CREATE": -1, - "DELETE": -1, - "GET": -1, - "RESOLVEUSERNAME": -1, - "SCHEMA": -1, - "SCRIPT_ON_CONNECTOR": -1, - "SCRIPT_ON_RESOURCE": -1, - "SEARCH": -1, - "SYNC": -1, - "TEST": -1, - "UPDATE": -1, - "VALIDATE": -1, - }, - "poolConfigOption": { - "maxIdle": 10, - "maxObjects": 10, - "maxWait": 150000, - "minEvictableIdleTimeMillis": 120000, - "minIdle": 1, - }, - "resultsHandlerConfig": { - "enableAttributesToGetSearchResultsHandler": true, - "enableCaseInsensitiveFilter": false, - "enableFilteredResultsHandler": false, - "enableNormalizingResultsHandler": false, - }, - }, - "provisioner.openicf.connectorinfoprovider": { - "_id": "provisioner.openicf.connectorinfoprovider", - "connectorsLocation": "connectors", - "remoteConnectorClients": [ - { - "enabled": true, - "name": "rcs1", - "useSSL": true, - }, - ], - "remoteConnectorClientsGroups": [], - "remoteConnectorServers": [], - "remoteConnectorServersGroups": [], - }, - "provisioner.openicf/Azure": { - "_id": "provisioner.openicf/Azure", - "configurationProperties": { - "clientId": "4b07adcc-329c-434c-aa83-49a14bef3c49", - "clientSecret": { - "$crypto": { - "type": "x-simple-encryption", - "value": { - "cipher": "AES/CBC/PKCS5Padding", - "data": "W63amdvzlmynT40WOTl1wPWDc8FUlGWQZK158lmlFTrnhy9PbWZV5YE4v3VeMUDC", - "iv": "KG/YFc8v26QHJzRI3uFhzw==", - "keySize": 16, - "mac": "mA4BzCNS7tuLhosQ+es1Tg==", - "purpose": "idm.config.encryption", - "salt": "vvPwKk0KqOqMjElQgICqEA==", - "stableId": "openidm-sym-default", - }, - }, - }, - "httpProxyHost": null, - "httpProxyPassword": null, - "httpProxyPort": null, - "httpProxyUsername": null, - "licenseCacheExpiryTime": 60, - "performHardDelete": true, - "readRateLimit": null, - "tenant": "711ffa9c-5972-4713-ace3-688c9732614a", - "writeRateLimit": null, - }, - "connectorRef": { - "bundleName": "org.forgerock.openicf.connectors.msgraphapi-connector", - "bundleVersion": "1.5.20.21", - "connectorName": "org.forgerock.openicf.connectors.msgraphapi.MSGraphAPIConnector", - "displayName": "MSGraphAPI Connector", - "systemType": "provisioner.openicf", - }, - "enabled": true, - "objectTypes": { - "User": { - "$schema": "http://json-schema.org/draft-03/schema", - "id": "__ACCOUNT__", - "nativeType": "__ACCOUNT__", - "properties": { - "__PASSWORD__": { - "autocomplete": "new-password", - "flags": [ - "NOT_UPDATEABLE", - "NOT_READABLE", - "NOT_RETURNED_BY_DEFAULT", - ], - "nativeName": "__PASSWORD__", - "nativeType": "JAVA_TYPE_GUARDEDSTRING", - "required": true, - "type": "string", - }, - "__roles__": { - "flags": [ - "NOT_RETURNED_BY_DEFAULT", - ], - "items": { - "nativeType": "string", - "type": "string", + "frUnindexedInteger4": { + "ldapAttribute": "fr-attr-int4", + "type": "simple", }, - "nativeName": "__roles__", - "nativeType": "string", - "type": "array", - }, - "__servicePlanIds__": { - "items": { - "nativeType": "string", - "type": "string", + "frUnindexedInteger5": { + "ldapAttribute": "fr-attr-int5", + "type": "simple", }, - "nativeName": "__servicePlanIds__", - "nativeType": "string", - "type": "array", - }, - "accountEnabled": { - "nativeName": "accountEnabled", - "nativeType": "boolean", - "required": true, - "type": "boolean", - }, - "city": { - "nativeName": "city", - "nativeType": "string", - "type": "string", - }, - "companyName": { - "nativeName": "companyName", - "nativeType": "string", - "type": "string", - }, - "country": { - "nativeName": "country", - "nativeType": "string", - "type": "string", - }, - "department": { - "nativeName": "department", - "nativeType": "string", - "type": "string", - }, - "displayName": { - "nativeName": "displayName", - "nativeType": "string", - "required": true, - "type": "string", - }, - "givenName": { - "nativeName": "givenName", - "nativeType": "string", - "type": "string", - }, - "jobTitle": { - "nativeName": "jobTitle", - "nativeType": "string", - "type": "string", - }, - "mail": { - "nativeName": "mail", - "nativeType": "string", - "required": true, - "type": "string", - }, - "mailNickname": { - "nativeName": "mailNickname", - "nativeType": "string", - "required": true, - "type": "string", - }, - "manager": { - "nativeName": "manager", - "nativeType": "object", - "type": "object", - }, - "memberOf": { - "flags": [ - "NOT_RETURNED_BY_DEFAULT", - ], - "items": { - "nativeType": "string", - "type": "string", + "frUnindexedMultivalued1": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi1", + "type": "simple", + }, + "frUnindexedMultivalued2": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi2", + "type": "simple", }, - "nativeName": "memberOf", - "nativeType": "string", - "type": "array", - }, - "mobilePhone": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "mobilePhone", - "nativeType": "string", - "type": "string", - }, - "onPremisesImmutableId": { - "flags": [ - "NOT_UPDATEABLE", - "NOT_CREATABLE", - ], - "nativeName": "onPremisesImmutableId", - "nativeType": "string", - "type": "string", - }, - "onPremisesSecurityIdentifier": { - "flags": [ - "NOT_UPDATEABLE", - "NOT_CREATABLE", - ], - "nativeName": "onPremisesSecurityIdentifier", - "nativeType": "string", - "type": "string", - }, - "otherMails": { - "items": { - "nativeType": "string", - "type": "string", + "frUnindexedMultivalued3": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi3", + "type": "simple", }, - "nativeName": "otherMails", - "nativeType": "string", - "type": "array", - }, - "postalCode": { - "nativeName": "postalCode", - "nativeType": "string", - "type": "string", - }, - "preferredLanguage": { - "nativeName": "preferredLanguage", - "nativeType": "string", - "type": "string", - }, - "proxyAddresses": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "items": { - "nativeType": "string", - "type": "string", + "frUnindexedMultivalued4": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi4", + "type": "simple", }, - "nativeName": "proxyAddresses", - "nativeType": "string", - "type": "array", - }, - "state": { - "nativeName": "state", - "nativeType": "string", - "type": "string", - }, - "streetAddress": { - "nativeName": "streetAddress", - "nativeType": "string", - "type": "string", - }, - "surname": { - "nativeName": "surname", - "nativeType": "string", - "type": "string", - }, - "usageLocation": { - "nativeName": "usageLocation", - "nativeType": "string", - "type": "string", - }, - "userPrincipalName": { - "nativeName": "userPrincipalName", - "nativeType": "string", - "required": true, - "type": "string", - }, - "userType": { - "nativeName": "userType", - "nativeType": "string", - "type": "string", - }, - }, - "type": "object", - }, - "__GROUP__": { - "$schema": "http://json-schema.org/draft-03/schema", - "id": "__GROUP__", - "nativeType": "__GROUP__", - "properties": { - "__NAME__": { - "nativeName": "__NAME__", - "nativeType": "string", - "required": true, - "type": "string", - }, - "description": { - "nativeName": "description", - "nativeType": "string", - "type": "string", - }, - "displayName": { - "nativeName": "displayName", - "nativeType": "string", - "required": true, - "type": "string", - }, - "groupTypes": { - "items": { - "nativeType": "string", - "type": "string", + "frUnindexedMultivalued5": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi5", + "type": "simple", }, - "nativeName": "groupTypes", - "nativeType": "string", - "type": "string", - }, - "id": { - "flags": [ - "NOT_UPDATEABLE", - "NOT_CREATABLE", - ], - "nativeName": "id", - "type": "string", - }, - "mail": { - "nativeName": "mail", - "nativeType": "string", - "type": "string", - }, - "mailEnabled": { - "nativeName": "mailEnabled", - "nativeType": "boolean", - "required": true, - "type": "boolean", - }, - "onPremisesSecurityIdentifier": { - "flags": [ - "NOT_UPDATEABLE", - "NOT_CREATABLE", - ], - "nativeName": "onPremisesSecurityIdentifier", - "nativeType": "string", - "type": "string", - }, - "proxyAddresses": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "items": { - "nativeType": "string", - "type": "string", + "frUnindexedString1": { + "ldapAttribute": "fr-attr-str1", + "type": "simple", }, - "nativeName": "proxyAddresses", - "nativeType": "string", - "type": "array", - }, - "securityEnabled": { - "nativeName": "securityEnabled", - "nativeType": "boolean", - "required": true, - "type": "boolean", - }, - "type": { - "nativeName": "type", - "required": true, - "type": "string", - }, - }, - "type": "object", - }, - "directoryRole": { - "$schema": "http://json-schema.org/draft-03/schema", - "id": "directoryRole", - "nativeType": "directoryRole", - "properties": { - "description": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "description", - "nativeType": "string", - "type": "string", - }, - "displayName": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "displayName", - "nativeType": "string", - "type": "string", - }, - }, - "type": "object", - }, - "servicePlan": { - "$schema": "http://json-schema.org/draft-03/schema", - "id": "servicePlan", - "nativeType": "servicePlan", - "properties": { - "__NAME__": { - "nativeName": "__NAME__", - "nativeType": "string", - "type": "string", - }, - "appliesTo": { - "flags": [ - "NOT_UPDATEABLE", - "NOT_CREATABLE", - ], - "nativeName": "appliesTo", - "nativeType": "string", - "type": "string", - }, - "provisioningStatus": { - "flags": [ - "NOT_UPDATEABLE", - "NOT_CREATABLE", - ], - "nativeName": "provisioningStatus", - "nativeType": "string", - "type": "string", - }, - "servicePlanId": { - "flags": [ - "NOT_UPDATEABLE", - "NOT_CREATABLE", - ], - "nativeName": "servicePlanId", - "nativeType": "string", - "type": "string", - }, - "servicePlanName": { - "flags": [ - "NOT_UPDATEABLE", - "NOT_CREATABLE", - ], - "nativeName": "servicePlanName", - "nativeType": "string", - "type": "string", - }, - "subscriberSkuId": { - "flags": [ - "NOT_UPDATEABLE", - "NOT_CREATABLE", - ], - "nativeName": "subscriberSkuId", - "type": "string", - }, - }, - "type": "object", - }, - "servicePrincipal": { - "$schema": "http://json-schema.org/draft-03/schema", - "id": "servicePrincipal", - "nativeType": "servicePrincipal", - "properties": { - "__NAME__": { - "nativeName": "__NAME__", - "nativeType": "string", - "type": "string", - }, - "__addAppRoleAssignedTo__": { - "flags": [ - "NOT_READABLE", - "NOT_RETURNED_BY_DEFAULT", - ], - "items": { - "nativeType": "object", - "type": "object", + "frUnindexedString2": { + "ldapAttribute": "fr-attr-str2", + "type": "simple", }, - "nativeName": "__addAppRoleAssignedTo__", - "nativeType": "object", - "type": "array", - }, - "__addAppRoleAssignments__": { - "flags": [ - "NOT_READABLE", - "NOT_RETURNED_BY_DEFAULT", - ], - "items": { - "nativeType": "object", - "type": "object", + "frUnindexedString3": { + "ldapAttribute": "fr-attr-str3", + "type": "simple", }, - "nativeName": "__addAppRoleAssignments__", - "nativeType": "object", - "type": "array", - }, - "__removeAppRoleAssignedTo__": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - "NOT_RETURNED_BY_DEFAULT", - ], - "items": { - "nativeType": "string", - "type": "string", + "frUnindexedString4": { + "ldapAttribute": "fr-attr-str4", + "type": "simple", }, - "nativeName": "__removeAppRoleAssignedTo__", - "nativeType": "string", - "type": "array", - }, - "__removeAppRoleAssignments__": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - "NOT_RETURNED_BY_DEFAULT", - ], - "items": { - "nativeType": "string", - "type": "string", + "frUnindexedString5": { + "ldapAttribute": "fr-attr-str5", + "type": "simple", }, - "nativeName": "__removeAppRoleAssignments__", - "nativeType": "string", - "type": "array", - }, - "accountEnabled": { - "nativeName": "accountEnabled", - "nativeType": "boolean", - "type": "boolean", - }, - "addIns": { - "items": { - "nativeType": "object", - "type": "object", + "givenName": { + "ldapAttribute": "givenName", + "type": "simple", }, - "nativeName": "addIns", - "nativeType": "object", - "type": "array", - }, - "alternativeNames": { - "items": { - "nativeType": "string", - "type": "string", + "groups": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-groups", + "primaryKey": "cn", + "resourcePath": "managed/bravo_group", + "type": "reference", }, - "nativeName": "alternativeNames", - "nativeType": "string", - "type": "array", - }, - "appDescription": { - "nativeName": "appDescription", - "nativeType": "string", - "type": "string", - }, - "appDisplayName": { - "nativeName": "appDisplayName", - "nativeType": "string", - "type": "string", - }, - "appId": { - "nativeName": "appId", - "nativeType": "string", - "type": "string", - }, - "appOwnerOrganizationId": { - "nativeName": "appOwnerOrganizationId", - "nativeType": "string", - "type": "string", - }, - "appRoleAssignmentRequired": { - "nativeName": "appRoleAssignmentRequired", - "nativeType": "boolean", - "type": "boolean", - }, - "appRoles": { - "items": { - "nativeType": "object", - "type": "object", + "kbaInfo": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-kbaInfo", + "type": "json", }, - "nativeName": "appRoles", - "nativeType": "object", - "type": "array", - }, - "applicationTemplateId": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "applicationTemplateId", - "nativeType": "string", - "type": "string", - }, - "deletedDateTime": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "deletedDateTime", - "nativeType": "string", - "type": "string", - }, - "description": { - "nativeName": "description", - "nativeType": "string", - "type": "string", - }, - "disabledByMicrosoftStatus": { - "nativeName": "disabledByMicrosoftStatus", - "nativeType": "string", - "type": "string", - }, - "displayName": { - "nativeName": "displayName", - "nativeType": "string", - "type": "string", - }, - "homepage": { - "nativeName": "homepage", - "nativeType": "string", - "type": "string", - }, - "info": { - "nativeName": "info", - "nativeType": "object", - "type": "object", - }, - "keyCredentials": { - "items": { - "nativeType": "object", - "type": "object", + "lastSync": { + "ldapAttribute": "fr-idm-lastSync", + "type": "json", + }, + "mail": { + "ldapAttribute": "mail", + "type": "simple", + }, + "manager": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-manager", + "primaryKey": "uid", + "resourcePath": "managed/bravo_user", + "type": "reference", + }, + "memberOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-member", + "primaryKey": "uid", + "resourcePath": "managed/bravo_organization", + "type": "reference", + }, + "memberOfOrgIDs": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-memberoforgid", + "type": "simple", + }, + "ownerOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-owner", + "primaryKey": "uid", + "resourcePath": "managed/bravo_organization", + "type": "reference", + }, + "password": { + "ldapAttribute": "userPassword", + "type": "simple", + }, + "postalAddress": { + "ldapAttribute": "street", + "type": "simple", + }, + "postalCode": { + "ldapAttribute": "postalCode", + "type": "simple", + }, + "preferences": { + "ldapAttribute": "fr-idm-preferences", + "type": "json", }, - "nativeName": "keyCredentials", - "nativeType": "object", - "type": "array", - }, - "loginUrl": { - "nativeName": "loginUrl", - "nativeType": "string", - "type": "string", - }, - "logoutUrl": { - "nativeName": "logoutUrl", - "nativeType": "string", - "type": "string", - }, - "notes": { - "nativeName": "notes", - "nativeType": "string", - "type": "string", - }, - "notificationEmailAddresses": { - "items": { - "nativeType": "string", - "type": "string", + "profileImage": { + "ldapAttribute": "labeledURI", + "type": "simple", }, - "nativeName": "notificationEmailAddresses", - "nativeType": "string", - "type": "array", - }, - "oauth2PermissionScopes": { - "items": { - "nativeType": "object", - "type": "object", + "reports": { + "isMultiValued": true, + "propertyName": "manager", + "resourcePath": "managed/bravo_user", + "type": "reverseReference", }, - "nativeName": "oauth2PermissionScopes", - "nativeType": "object", - "type": "array", - }, - "passwordCredentials": { - "items": { - "nativeType": "object", - "type": "object", + "roles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-roles", + "primaryKey": "uid", + "resourcePath": "managed/bravo_role", + "type": "reference", }, - "nativeName": "passwordCredentials", - "nativeType": "object", - "type": "array", - }, - "preferredSingleSignOnMode": { - "nativeName": "preferredSingleSignOnMode", - "nativeType": "string", - "type": "string", - }, - "replyUrls": { - "items": { - "nativeType": "string", - "type": "string", + "sn": { + "ldapAttribute": "sn", + "type": "simple", }, - "nativeName": "replyUrls", - "nativeType": "string", - "type": "array", - }, - "resourceSpecificApplicationPermissions": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "items": { - "nativeType": "object", - "type": "object", + "stateProvince": { + "ldapAttribute": "st", + "type": "simple", }, - "nativeName": "resourceSpecificApplicationPermissions", - "nativeType": "object", - "type": "array", - }, - "samlSingleSignOnSettings": { - "nativeName": "samlSingleSignOnSettings", - "nativeType": "object", - "type": "object", - }, - "servicePrincipalNames": { - "items": { - "nativeType": "string", - "type": "string", + "telephoneNumber": { + "ldapAttribute": "telephoneNumber", + "type": "simple", }, - "nativeName": "servicePrincipalNames", - "nativeType": "string", - "type": "array", - }, - "servicePrincipalType": { - "nativeName": "servicePrincipalType", - "nativeType": "string", - "type": "string", - }, - "signInAudience": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "signInAudience", - "nativeType": "string", - "type": "string", - }, - "tags": { - "items": { - "nativeType": "string", - "type": "string", + "userName": { + "ldapAttribute": "uid", + "type": "simple", }, - "nativeName": "tags", - "nativeType": "string", - "type": "array", }, - "tokenEncryptionKeyId": { - "nativeName": "tokenEncryptionKeyId", - "nativeType": "string", - "type": "string", + }, + "managed/bravo_usermeta": { + "dnTemplate": "ou=usermeta,o=bravo,o=root,ou=identities", + "jsonAttribute": "fr-idm-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-generic-obj", + ], + "properties": { + "target": { + "propertyName": "_meta", + "resourcePath": "managed/bravo_user", + "type": "reverseReference", + }, }, - "verifiedPublisher": { - "nativeName": "verifiedPublisher", - "nativeType": "object", - "type": "object", + }, + "managed/teammembermeta": { + "dnTemplate": "ou=teammembermeta,o=root,ou=identities", + "jsonAttribute": "fr-idm-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-generic-obj", + ], + "properties": { + "target": { + "propertyName": "_meta", + "resourcePath": "managed/teammember", + "type": "reverseReference", + }, }, }, - "type": "object", + "reconprogressstate": { + "dnTemplate": "ou=reconprogressstate,dc=openidm,dc=example,dc=com", + }, + "relationships": { + "dnTemplate": "ou=relationships,dc=openidm,dc=example,dc=com", + "jsonAttribute": "fr-idm-relationship-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchRelationship", + "objectClasses": [ + "uidObject", + "fr-idm-relationship", + ], + }, + "scheduler": { + "dnTemplate": "ou=scheduler,dc=openidm,dc=example,dc=com", + }, + "scheduler/*": { + "dnTemplate": "ou=scheduler,dc=openidm,dc=example,dc=com", + }, + "ui/*": { + "dnTemplate": "ou=ui,dc=openidm,dc=example,dc=com", + }, + "updates": { + "dnTemplate": "ou=updates,dc=openidm,dc=example,dc=com", + }, }, }, - "operationTimeout": { - "AUTHENTICATE": -1, - "CREATE": -1, - "DELETE": -1, - "GET": -1, - "RESOLVEUSERNAME": -1, - "SCHEMA": -1, - "SCRIPT_ON_CONNECTOR": -1, - "SCRIPT_ON_RESOURCE": -1, - "SEARCH": -1, - "SYNC": -1, - "TEST": -1, - "UPDATE": -1, - "VALIDATE": -1, - }, - "poolConfigOption": { - "maxIdle": 10, - "maxObjects": 10, - "maxWait": 150000, - "minEvictableIdleTimeMillis": 120000, - "minIdle": 1, + "rest2LdapOptions": { + "mvccAttribute": "etag", + "readOnUpdatePolicy": "controls", + "returnNullForMissingProperties": true, + "useMvcc": true, + "usePermissiveModify": true, + "useSubtreeDelete": true, }, - "resultsHandlerConfig": { - "enableAttributesToGetSearchResultsHandler": true, - "enableCaseInsensitiveFilter": false, - "enableFilteredResultsHandler": false, - "enableNormalizingResultsHandler": false, + "security": { + "keyManager": "jvm", + "trustManager": "jvm", }, }, - "provisioner.openicf/GoogleApps": { - "_id": "provisioner.openicf/GoogleApps", - "configurationProperties": { - "availableLicenses": [ - "101005/1010050001", - "101001/1010010001", - "101031/1010310010", - "101034/1010340002", - "101038/1010380002", - "101034/1010340001", - "101038/1010380003", - "101034/1010340004", - "101034/1010340003", - "101034/1010340006", - "Google-Apps/Google-Apps-For-Business", - "101034/1010340005", - "Google-Vault/Google-Vault", - "Google-Apps/1010020031", - "Google-Apps/1010020030", - "Google-Apps/1010060003", - "Google-Apps/1010060005", - "Google-Apps/Google-Apps-Unlimited", - "Google-Apps/1010020029", - "Google-Apps/Google-Apps-Lite", - "101031/1010310003", - "101033/1010330002", - "101033/1010330004", - "Google-Apps/Google-Apps-For-Education", - "101031/1010310002", - "101033/1010330003", - "Google-Apps/1010020026", - "101031/1010310007", - "Google-Apps/1010020025", - "101031/1010310008", - "Google-Apps/1010020028", - "Google-Apps/Google-Apps-For-Postini", - "101031/1010310005", - "Google-Apps/1010020027", - "101031/1010310006", - "101031/1010310009", - "Google-Vault/Google-Vault-Former-Employee", - "101038/1010370001", - "Google-Apps/1010020020", - "Google-Apps/1010060001", - ], - "clientId": "&{esv.gac.client.id}", - "clientSecret": "&{esv.gac.secret}", - "domain": "&{esv.gac.domain}", - "groupsMaxResults": "200", - "listProductAndSkuMaxResults": "100", - "listProductMaxResults": "100", - "membersMaxResults": "200", - "proxyHost": null, - "proxyPort": 8080, - "refreshToken": "&{esv.gac.refresh}", - "roleAssignmentMaxResults": 100, - "roleMaxResults": 100, - "usersMaxResults": "100", - "validateCertificate": true, + "router": { + "_id": "router", + "filters": [], + }, + "script": { + "ECMAScript": { + "#javascript.debug": "&{openidm.script.javascript.debug}", + "javascript.recompile.minimumInterval": 60000, }, - "connectorRef": { - "bundleName": "org.forgerock.openicf.connectors.googleapps-connector", - "bundleVersion": "[1.5.0.0,1.6.0.0)", - "connectorHostRef": "", - "connectorName": "org.forgerock.openicf.connectors.googleapps.GoogleAppsConnector", - "displayName": "GoogleApps Connector", - "systemType": "provisioner.openicf", + "Groovy": { + "#groovy.disabled.global.ast.transformations": "", + "#groovy.errors.tolerance": 10, + "#groovy.output.debug": false, + "#groovy.output.verbose": false, + "#groovy.script.base": "#any class extends groovy.lang.Script", + "#groovy.script.extension": ".groovy", + "#groovy.source.encoding": "utf-8 #default US-ASCII", + "#groovy.target.bytecode": "1.5", + "#groovy.target.indy": true, + "#groovy.warnings": "likely errors #othere values [none,likely,possible,paranoia]", + "groovy.classpath": "&{idm.install.dir}/lib", + "groovy.recompile": true, + "groovy.recompile.minimumInterval": 60000, + "groovy.source.encoding": "UTF-8", + "groovy.target.directory": "&{idm.install.dir}/classes", }, - "enabled": { - "$bool": "&{esv.gac.enable.connector}", + "_id": "script", + "properties": {}, + "sources": { + "default": { + "directory": "&{idm.install.dir}/bin/defaults/script", + }, + "install": { + "directory": "&{idm.install.dir}", + }, + "project": { + "directory": "&{idm.instance.dir}", + }, + "project-script": { + "directory": "&{idm.instance.dir}/script", + }, }, - "objectTypes": { - "__ACCOUNT__": { - "$schema": "http://json-schema.org/draft-03/schema", - "id": "__ACCOUNT__", - "nativeType": "__ACCOUNT__", - "properties": { - "__GROUPS__": { - "flags": [ - "NOT_RETURNED_BY_DEFAULT", - ], - "items": { - "nativeType": "string", - "type": "string", + }, + "secrets": { + "_id": "secrets", + "populateDefaults": true, + "stores": [ + { + "class": "org.forgerock.openidm.secrets.config.FileBasedStore", + "config": { + "file": "&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}", + "mappings": [ + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}", + "openidm-localhost", + ], + "secretId": "idm.default", + "types": [ + "ENCRYPT", + "DECRYPT", + ], }, - "nativeName": "__GROUPS__", - "nativeType": "string", - "type": "array", + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}", + ], + "secretId": "idm.config.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], + }, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}", + ], + "secretId": "idm.password.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], + }, + { + "aliases": [ + "&{openidm.https.keystore.cert.alias|openidm-localhost}", + ], + "secretId": "idm.jwt.session.module.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], + }, + { + "aliases": [ + "&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}", + ], + "secretId": "idm.jwt.session.module.signing", + "types": [ + "SIGN", + "VERIFY", + ], + }, + { + "aliases": [ + "selfservice", + ], + "secretId": "idm.selfservice.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], + }, + { + "aliases": [ + "&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}", + ], + "secretId": "idm.selfservice.signing", + "types": [ + "SIGN", + "VERIFY", + ], + }, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}", + ], + "secretId": "idm.assignment.attribute.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], + }, + ], + "providerName": "&{openidm.keystore.provider|SunJCE}", + "storePassword": "&{openidm.keystore.password|changeit}", + "storetype": "&{openidm.keystore.type|JCEKS}", + }, + "name": "mainKeyStore", + }, + { + "class": "org.forgerock.openidm.secrets.config.FileBasedStore", + "config": { + "file": "&{openidm.truststore.location|&{idm.install.dir}/security/truststore}", + "mappings": [], + "providerName": "&{openidm.truststore.provider|SUN}", + "storePassword": "&{openidm.truststore.password|changeit}", + "storetype": "&{openidm.truststore.type|JKS}", + }, + "name": "mainTrustStore", + }, + ], + }, + "selfservice.kba": { + "_id": "selfservice.kba", + "kbaPropertyName": "kbaInfo", + "minimumAnswersToDefine": 1, + "minimumAnswersToVerify": 1, + "questions": { + "1": { + "en": "What's your favorite color?", + }, + }, + }, + "selfservice.terms": { + "_id": "selfservice.terms", + "active": "0.0", + "uiConfig": { + "buttonText": "Accept", + "displayName": "We've updated our terms", + "purpose": "You must accept the updated terms in order to proceed.", + }, + "versions": [ + { + "createDate": "2019-10-28T04:20:11.320Z", + "termsTranslations": { + "en": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.", + }, + "version": "0.0", + }, + ], + }, + "servletfilter/cors": { + "_id": "servletfilter/cors", + "initParams": { + "allowCredentials": false, + "allowedHeaders": "authorization,accept,content-type,origin,x-requested-with,cache-control,accept-api-version,if-match,if-none-match", + "allowedMethods": "GET,POST,PUT,DELETE,PATCH", + "allowedOrigins": "*", + "chainPreflight": false, + "exposedHeaders": "WWW-Authenticate", + }, + "urlPatterns": [ + "/*", + ], + }, + "servletfilter/payload": { + "_id": "servletfilter/payload", + "initParams": { + "maxRequestSizeInMegabytes": 5, + }, + "urlPatterns": [ + "&{openidm.servlet.alias}/*", + ], + }, + "servletfilter/upload": { + "_id": "servletfilter/upload", + "initParams": { + "maxRequestSizeInMegabytes": 50, + }, + "urlPatterns": [ + "&{openidm.servlet.upload.alias}/*", + ], + }, + "sync": { + "_id": "sync", + "mappings": [ + { + "_id": "sync/managedBravo_user_managedBravo_user", + "consentRequired": false, + "displayName": "managedBravo_user_managedBravo_user", + "icon": null, + "name": "managedBravo_user_managedBravo_user", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", }, - "__NAME__": { - "nativeName": "__NAME__", - "nativeType": "string", - "type": "string", + { + "action": "ASYNC", + "situation": "ALL_GONE", }, - "__PASSWORD__": { - "flags": [ - "NOT_READABLE", - "NOT_RETURNED_BY_DEFAULT", - ], - "nativeName": "__PASSWORD__", - "nativeType": "JAVA_TYPE_GUARDEDSTRING", - "required": true, - "type": "string", + { + "action": "ASYNC", + "situation": "AMBIGUOUS", }, - "__PHOTO__": { - "flags": [ - "NOT_RETURNED_BY_DEFAULT", - ], - "nativeName": "__PHOTO__", - "nativeType": "JAVA_TYPE_BYTE_ARRAY", - "type": "string", + { + "action": "ASYNC", + "situation": "CONFIRMED", }, - "__SECONDARY_EMAILS__": { - "items": { - "nativeType": "object", - "type": "object", - }, - "nativeName": "__SECONDARY_EMAILS__", - "nativeType": "object", - "type": "array", + { + "action": "ASYNC", + "situation": "FOUND", }, - "__UID__": { - "nativeName": "__UID__", - "nativeType": "string", - "required": false, - "type": "string", + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", }, - "addresses": { - "items": { - "nativeType": "object", - "type": "object", - }, - "nativeName": "addresses", - "nativeType": "object", - "type": "array", + { + "action": "ASYNC", + "situation": "LINK_ONLY", }, - "agreedToTerms": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "agreedToTerms", - "nativeType": "JAVA_TYPE_PRIMITIVE_BOOLEAN", - "type": "boolean", + { + "action": "ASYNC", + "situation": "MISSING", }, - "aliases": { - "flags": [ - "NOT_CREATABLE", - ], - "items": { - "nativeType": "string", - "type": "string", - }, - "nativeName": "aliases", - "nativeType": "string", - "type": "array", + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", }, - "archived": { - "nativeName": "archived", - "nativeType": "boolean", - "type": "boolean", + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", }, - "changePasswordAtNextLogin": { - "nativeName": "changePasswordAtNextLogin", - "nativeType": "boolean", - "type": "boolean", + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", }, - "creationTime": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "items": { - "nativeType": "string", - "type": "string", - }, - "nativeName": "creationTime", - "nativeType": "string", - "type": "array", + { + "action": "ASYNC", + "situation": "UNASSIGNED", }, - "customSchemas": { - "nativeName": "customSchemas", - "nativeType": "object", - "type": "object", + { + "action": "ASYNC", + "situation": "UNQUALIFIED", }, - "customerId": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "customerId", - "nativeType": "string", - "type": "string", + ], + "properties": [], + "source": "managed/bravo_user", + "syncAfter": [], + "target": "managed/bravo_user", + }, + { + "_id": "sync/managedAlpha_application_managedBravo_application", + "consentRequired": true, + "displayName": "Test Application Mapping", + "icon": null, + "name": "managedAlpha_application_managedBravo_application", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", }, - "deletionTime": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "deletionTime", - "nativeType": "string", - "type": "string", + { + "action": "ASYNC", + "situation": "ALL_GONE", }, - "externalIds": { - "items": { - "nativeType": "object", - "type": "object", - }, - "nativeName": "externalIds", - "nativeType": "object", - "type": "array", + { + "action": "ASYNC", + "situation": "AMBIGUOUS", }, - "familyName": { - "nativeName": "familyName", - "nativeType": "string", - "type": "string", + { + "action": "ASYNC", + "situation": "CONFIRMED", }, - "fullName": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "fullName", - "nativeType": "string", - "type": "string", + { + "action": "ASYNC", + "situation": "FOUND", }, - "givenName": { - "nativeName": "givenName", - "nativeType": "string", - "required": true, - "type": "string", + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", }, - "hashFunction": { - "flags": [ - "NOT_RETURNED_BY_DEFAULT", - ], - "nativeName": "hashFunction", - "nativeType": "string", - "type": "string", + { + "action": "ASYNC", + "situation": "LINK_ONLY", }, - "ims": { - "items": { - "nativeType": "object", - "type": "object", - }, - "nativeName": "ims", - "nativeType": "object", - "type": "array", + { + "action": "ASYNC", + "situation": "MISSING", }, - "includeInGlobalAddressList": { - "nativeName": "includeInGlobalAddressList", - "nativeType": "boolean", - "type": "boolean", + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", }, - "ipWhitelisted": { - "nativeName": "ipWhitelisted", - "nativeType": "boolean", - "type": "boolean", + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", }, - "isAdmin": { - "nativeName": "isAdmin", - "nativeType": "JAVA_TYPE_PRIMITIVE_BOOLEAN", - "type": "boolean", + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", }, - "isDelegatedAdmin": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "isDelegatedAdmin", - "nativeType": "JAVA_TYPE_PRIMITIVE_BOOLEAN", - "type": "boolean", + { + "action": "ASYNC", + "situation": "UNASSIGNED", }, - "isEnforcedIn2Sv": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "isEnforcedIn2Sv", - "nativeType": "boolean", - "type": "boolean", + { + "action": "ASYNC", + "situation": "UNQUALIFIED", }, - "isEnrolledIn2Sv": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "isEnrolledIn2Sv", - "nativeType": "boolean", - "type": "boolean", + ], + "properties": [ + { + "source": "authoritative", + "target": "_id", }, - "isMailboxSetup": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "isMailboxSetup", - "nativeType": "boolean", - "type": "boolean", + ], + "source": "managed/alpha_application", + "sourceQuery": { + "_queryFilter": "(eq "" or eq "")", + }, + "syncAfter": [ + "managedBravo_user_managedBravo_user", + ], + "target": "managed/bravo_application", + "targetQuery": { + "_queryFilter": "!(eq "")", + }, + }, + { + "_id": "sync/managedAlpha_user_managedBravo_user", + "consentRequired": true, + "displayName": "Test Mapping for Frodo", + "icon": null, + "name": "managedAlpha_user_managedBravo_user", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", }, - "languages": { - "items": { - "nativeType": "object", - "type": "object", - }, - "nativeName": "languages", - "nativeType": "object", - "type": "array", + { + "action": "ASYNC", + "situation": "ALL_GONE", }, - "lastLoginTime": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "items": { - "nativeType": "string", - "type": "string", - }, - "nativeName": "lastLoginTime", - "nativeType": "string", - "type": "array", + { + "action": "ASYNC", + "situation": "AMBIGUOUS", }, - "nonEditableAliases": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [ + { + "condition": { + "globals": {}, + "source": "console.log("Hello World!");", + "type": "text/javascript", + }, + "default": [ + "Default value string", ], - "items": { - "nativeType": "string", - "type": "string", + "source": "accountStatus", + "target": "applications", + "transform": { + "globals": {}, + "source": "console.log("hello");", + "type": "text/javascript", }, - "nativeName": "nonEditableAliases", - "nativeType": "string", - "type": "array", }, - "orgUnitPath": { - "nativeName": "orgUnitPath", - "nativeType": "string", - "type": "string", + ], + "source": "managed/alpha_user", + "syncAfter": [ + "managedBravo_user_managedBravo_user", + "managedAlpha_application_managedBravo_application", + ], + "target": "managed/bravo_user", + }, + { + "_id": "sync/managedBravo_user_managedAlpha_user", + "consentRequired": false, + "displayName": "Frodo test mapping", + "icon": null, + "name": "managedBravo_user_managedAlpha_user", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", }, - "organizations": { - "items": { - "nativeType": "object", - "type": "object", - }, - "nativeName": "organizations", - "nativeType": "object", - "type": "array", + { + "action": "ASYNC", + "situation": "ALL_GONE", }, - "phones": { - "items": { - "nativeType": "object", - "type": "object", - }, - "nativeName": "phones", - "nativeType": "object", - "type": "array", + { + "action": "ASYNC", + "situation": "AMBIGUOUS", }, - "primaryEmail": { - "nativeName": "primaryEmail", - "nativeType": "string", - "type": "string", + { + "action": "ASYNC", + "situation": "CONFIRMED", }, - "recoveryEmail": { - "nativeName": "recoveryEmail", - "nativeType": "string", - "type": "string", + { + "action": "ASYNC", + "situation": "FOUND", }, - "recoveryPhone": { - "nativeName": "recoveryPhone", - "nativeType": "string", - "type": "string", + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", }, - "relations": { - "items": { - "nativeType": "object", - "type": "object", - }, - "nativeName": "relations", - "nativeType": "object", - "type": "array", + { + "action": "ASYNC", + "situation": "LINK_ONLY", }, - "suspended": { - "nativeName": "suspended", - "nativeType": "boolean", - "type": "boolean", + { + "action": "ASYNC", + "situation": "MISSING", }, - "suspensionReason": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "suspensionReason", - "nativeType": "string", - "type": "string", + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", }, - "thumbnailPhotoUrl": { - "flags": [ - "NOT_CREATABLE", - "NOT_UPDATEABLE", - ], - "nativeName": "thumbnailPhotoUrl", - "nativeType": "string", - "type": "string", + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", }, - }, - "type": "object", - }, - }, - "operationTimeout": { - "AUTHENTICATE": -1, - "CREATE": -1, - "DELETE": -1, - "GET": -1, - "RESOLVEUSERNAME": -1, - "SCHEMA": -1, - "SCRIPT_ON_CONNECTOR": -1, - "SCRIPT_ON_RESOURCE": -1, - "SEARCH": -1, - "SYNC": -1, - "TEST": -1, - "UPDATE": -1, - "VALIDATE": -1, - }, - "poolConfigOption": { - "maxIdle": 10, - "maxObjects": 10, - "maxWait": 150000, - "minEvictableIdleTimeMillis": 120000, - "minIdle": 1, - }, - "resultsHandlerConfig": { - "enableAttributesToGetSearchResultsHandler": true, - "enableCaseInsensitiveFilter": false, - "enableFilteredResultsHandler": false, - "enableNormalizingResultsHandler": false, - }, - }, - "repo.ds": { - "_id": "repo.ds", - "commands": { - "delete-mapping-links": { - "_queryFilter": "/linkType eq "\${mapping}"", - "operation": "DELETE", - }, - "delete-target-ids-for-recon": { - "_queryFilter": "/reconId eq "\${reconId}"", - "operation": "DELETE", - }, - }, - "embedded": false, - "ldapConnectionFactories": { - "bind": { - "availabilityCheckIntervalSeconds": 30, - "availabilityCheckTimeoutMilliSeconds": 10000, - "connectionPoolSize": 50, - "connectionSecurity": "none", - "heartBeatIntervalSeconds": 60, - "heartBeatTimeoutMilliSeconds": 10000, - "primaryLdapServers": [ { - "hostname": "userstore-0.userstore", - "port": 1389, + "action": "ASYNC", + "situation": "UNASSIGNED", }, - ], - "secondaryLdapServers": [ { - "hostname": "userstore-2.userstore", - "port": 1389, + "action": "ASYNC", + "situation": "UNQUALIFIED", }, ], + "properties": [], + "source": "managed/bravo_user", + "syncAfter": [ + "managedBravo_user_managedBravo_user", + "managedAlpha_application_managedBravo_application", + "managedAlpha_user_managedBravo_user", + ], + "target": "managed/alpha_user", }, - "root": { - "authentication": { - "simple": { - "bindDn": "uid=admin", - "bindPassword": "&{userstore.password}", + { + "_id": "sync/AlphaUser2GoogleApps", + "consentRequired": false, + "correlationQuery": [ + { + "expressionTree": { + "all": [ + "__NAME__", + ], + }, + "file": "ui/correlateTreeToQueryFilter.js", + "linkQualifier": "default", + "mapping": "AlphaUser2GoogleApps", + "type": "text/javascript", }, + ], + "displayName": "AlphaUser2GoogleApps", + "enableSync": { + "$bool": "&{esv.gac.enable.mapping}", }, - "inheritFrom": "bind", - }, - }, - "maxConnectionAttempts": 5, - "queries": { - "explicit": { - "credential-internaluser-query": { - "_queryFilter": "/_id eq "\${username}"", - }, - "credential-query": { - "_queryFilter": "/userName eq "\${username}"", - }, - "for-userName": { - "_queryFilter": "/userName eq "\${uid}"", - }, - "links-for-firstId": { - "_queryFilter": "/linkType eq "\${linkType}" AND /firstId = "\${firstId}"", - }, - "links-for-linkType": { - "_queryFilter": "/linkType eq "\${linkType}"", - }, - "query-all": { - "_queryFilter": "true", - }, - "query-all-ids": { - "_fields": "_id,_rev", - "_queryFilter": "true", - }, - }, - "generic": { - "credential-internaluser-query": { - "_queryFilter": "/_id eq "\${username}"", - }, - "credential-query": { - "_queryFilter": "/userName eq "\${username}"", - }, - "find-relationship-edges": { - "_queryFilter": "((/firstResourceCollection eq "\${firstResourceCollection}" and /firstResourceId eq "\${firstResourceId}" and /firstPropertyName eq "\${firstPropertyName}") and (/secondResourceCollection eq "\${secondResourceCollection}" and /secondResourceId eq "\${secondResourceId}" and /secondPropertyName eq "\${secondPropertyName}")) or ((/firstResourceCollection eq "\${secondResourceCollection}" and /firstResourceId eq "\${secondResourceId}" and /firstPropertyName eq "\${secondPropertyName}") and (/secondResourceCollection eq "\${firstResourceCollection}" and /secondResourceId eq "\${firstResourceId}" and /secondPropertyName eq "\${firstPropertyName}"))", - }, - "find-relationships-for-resource": { - "_queryFilter": "(/firstResourceCollection eq "\${resourceCollection}" and /firstResourceId eq "\${resourceId}" and /firstPropertyName eq "\${propertyName}") or (/secondResourceCollection eq "\${resourceCollection}" and /secondResourceId eq "\${resourceId}" and /secondPropertyName eq "\${propertyName}")", - }, - "for-userName": { - "_queryFilter": "/userName eq "\${uid}"", - }, - "get-by-field-value": { - "_queryFilter": "/\${field} eq "\${value}"", - }, - "get-notifications-for-user": { - "_queryFilter": "/receiverId eq "\${userId}"", - "_sortKeys": "-createDate", - }, - "get-recons": { - "_fields": "reconId,mapping,activitydate", - "_queryFilter": "/entryType eq "summary"", - "_sortKeys": "-activitydate", - }, - "links-for-firstId": { - "_queryFilter": "/linkType eq "\${linkType}" AND /firstId = "\${firstId}"", - }, - "links-for-linkType": { - "_queryFilter": "/linkType eq "\${linkType}"", - }, - "query-all": { - "_queryFilter": "true", - }, - "query-all-ids": { - "_fields": "_id,_rev", - "_queryFilter": "true", - }, - "query-cluster-events": { - "_queryFilter": "/instanceId eq "\${instanceId}"", - }, - "query-cluster-failed-instances": { - "_queryFilter": "/timestamp le \${timestamp} and (/state eq "1" or /state eq "2")", - }, - "query-cluster-instances": { - "_queryFilter": "true", + "icon": null, + "name": "AlphaUser2GoogleApps", + "onCreate": { + "globals": {}, + "source": "target.orgUnitPath = "/NewAccounts";", + "type": "text/javascript", }, - "query-cluster-running-instances": { - "_queryFilter": "/state eq 1", + "onUpdate": { + "globals": {}, + "source": "//testing1234 +target.givenName = oldTarget.givenName; +target.familyName = oldTarget.familyName; +target.__NAME__ = oldTarget.__NAME__;", + "type": "text/javascript", }, - }, - }, - "resourceMapping": { - "defaultMapping": { - "dnTemplate": "ou=generic,dc=openidm,dc=example,dc=com", - }, - "explicitMapping": { - "clusteredrecontargetids": { - "dnTemplate": "ou=clusteredrecontargetids,dc=openidm,dc=example,dc=com", - "objectClasses": [ - "uidObject", - "fr-idm-recon-clusteredTargetIds", - ], - "properties": { - "_id": { - "isRequired": true, - "ldapAttribute": "uid", - "type": "simple", - "writability": "createOnly", - }, - "reconId": { - "ldapAttribute": "fr-idm-recon-id", - "type": "simple", - }, - "targetIds": { - "ldapAttribute": "fr-idm-recon-targetIds", - "type": "json", - }, + "policies": [ + { + "action": "EXCEPTION", + "situation": "AMBIGUOUS", }, - }, - "dsconfig/attributeValue": { - "dnTemplate": "cn=Password Validators,cn=config", - "objectClasses": [ - "ds-cfg-password-validator", - "ds-cfg-attribute-value-password-validator", - ], - "properties": { - "_id": { - "isRequired": true, - "ldapAttribute": "cn", - "type": "simple", - "writability": "createOnly", - }, - "checkSubstrings": { - "ldapAttribute": "ds-cfg-check-substrings", - "type": "simple", - }, - "enabled": { - "ldapAttribute": "ds-cfg-enabled", - "type": "simple", - }, - "javaClass": { - "ldapAttribute": "ds-cfg-java-class", - "type": "simple", - }, - "matchAttribute": { - "isMultiValued": true, - "ldapAttribute": "ds-cfg-match-attribute", - "type": "simple", - }, - "minSubstringLength": { - "ldapAttribute": "ds-cfg-min-substring-length", - "type": "simple", - }, - "testReversedPassword": { - "isRequired": true, - "ldapAttribute": "ds-cfg-test-reversed-password", - "type": "simple", - }, + { + "action": "UNLINK", + "situation": "SOURCE_MISSING", }, - }, - "dsconfig/characterSet": { - "dnTemplate": "cn=Password Validators,cn=config", - "objectClasses": [ - "ds-cfg-password-validator", - "ds-cfg-character-set-password-validator", - ], - "properties": { - "_id": { - "isRequired": true, - "ldapAttribute": "cn", - "type": "simple", - "writability": "createOnly", - }, - "allowUnclassifiedCharacters": { - "isRequired": true, - "ldapAttribute": "ds-cfg-allow-unclassified-characters", - "type": "simple", - }, - "characterSet": { - "isMultiValued": true, - "ldapAttribute": "ds-cfg-character-set", - "type": "simple", - }, - "enabled": { - "ldapAttribute": "ds-cfg-enabled", - "type": "simple", - }, - "javaClass": { - "ldapAttribute": "ds-cfg-java-class", - "type": "simple", - }, - "minCharacterSets": { - "ldapAttribute": "ds-cfg-min-character-sets", - "type": "simple", + { + "action": { + "globals": {}, + "source": "// Timing Constants +var ATTEMPT = 6; // Number of attempts to find the Google user. +var SLEEP_TIME = 500; // Milliseconds between retries. +var SYSTEM_ENDPOINT = "system/GoogleApps/__ACCOUNT__"; +var MAPPING_NAME = "AlphaUser2GoogleApps"; +var GOOGLE_DOMAIN = identityServer.getProperty("esv.gac.domain"); +var googleEmail = source.userName + "@" + GOOGLE_DOMAIN; +var frUserGUID = source._id; +var resultingAction = "ASYNC"; + +// Get the Google GUID +var linkQueryParams = {'_queryFilter': 'firstId eq "' + frUserGUID + '" and linkType eq "' + MAPPING_NAME + '"'}; +var linkResults = openidm.query("repo/link/", linkQueryParams, null); +var googleGUID; + +if (linkResults.resultCount === 1) { + googleGUID = linkResults.result[0].secondId; +} + +var queryResults; // Resulting query from looking for the Google user. +var params = {'_queryFilter': '__UID__ eq "' + googleGUID + '"'}; + +for (var i = 1; i <= ATTEMPT; i++) { + queryResults = openidm.query(SYSTEM_ENDPOINT, params); + if (queryResults.result && queryResults.result.length > 0) { + logger.info("idmlog: ---AlphaUser2GoogleApps - Missing->UPDATE - Result found in " + i + " attempts. Query result: " + JSON.stringify(queryResults)); + resultingAction = "UPDATE"; + break; + } + java.lang.Thread.sleep(SLEEP_TIME); // Wait before trying again. +} + +if (!queryResults.result || queryResults.resultCount === 0) { + logger.warn("idmlog: ---AlphaUser2GoogleApps - Missing->UNLINK - " + googleEmail + " not found after " + ATTEMPT + " attempts."); + resultingAction = "UNLINK"; +} +resultingAction; +", + "type": "text/javascript", }, + "situation": "MISSING", }, - }, - "dsconfig/dictionary": { - "dnTemplate": "cn=Password Validators,cn=config", - "objectClasses": [ - "ds-cfg-password-validator", - "ds-cfg-dictionary-password-validator", - ], - "properties": { - "_id": { - "isRequired": true, - "ldapAttribute": "cn", - "type": "simple", - "writability": "createOnly", - }, - "caseSensitiveValidation": { - "isRequired": true, - "ldapAttribute": "ds-cfg-case-sensitive-validation", - "type": "simple", - }, - "checkSubstrings": { - "ldapAttribute": "ds-cfg-check-substrings", - "type": "simple", - }, - "dictionaryFile": { - "isRequired": true, - "ldapAttribute": "ds-cfg-dictionary-file", - "type": "simple", - }, - "enabled": { - "ldapAttribute": "ds-cfg-enabled", - "type": "simple", - }, - "javaClass": { - "ldapAttribute": "ds-cfg-java-class", - "type": "simple", - }, - "minSubstringLength": { - "ldapAttribute": "ds-cfg-min-substring-length", - "type": "simple", - }, - "testReversedPassword": { - "isRequired": true, - "ldapAttribute": "ds-cfg-test-reversed-password", - "type": "simple", - }, + { + "action": "EXCEPTION", + "situation": "FOUND_ALREADY_LINKED", }, - }, - "dsconfig/lengthBased": { - "dnTemplate": "cn=Password Validators,cn=config", - "objectClasses": [ - "ds-cfg-password-validator", - "ds-cfg-length-based-password-validator", - ], - "properties": { - "_id": { - "isRequired": true, - "ldapAttribute": "cn", - "type": "simple", - "writability": "createOnly", - }, - "enabled": { - "ldapAttribute": "ds-cfg-enabled", - "type": "simple", - }, - "javaClass": { - "ldapAttribute": "ds-cfg-java-class", - "type": "simple", - }, - "maxPasswordLength": { - "ldapAttribute": "ds-cfg-max-password-length", - "type": "simple", - }, - "minPasswordLength": { - "ldapAttribute": "ds-cfg-min-password-length", - "type": "simple", - }, + { + "action": "IGNORE", + "situation": "UNQUALIFIED", }, - }, - "dsconfig/passwordPolicies": { - "dnTemplate": "cn=Password Policies,cn=config", - "objectClasses": [ - "ds-cfg-password-policy", - "ds-cfg-authentication-policy", - ], - "properties": { - "_id": { - "isRequired": true, - "ldapAttribute": "cn", - "type": "simple", - "writability": "createOnly", - }, - "allowPreEncodedPasswords": { - "ldapAttribute": "ds-cfg-allow-pre-encoded-passwords", - "type": "simple", - }, - "defaultPasswordStorageScheme": { - "isMultiValued": true, - "isRequired": true, - "ldapAttribute": "ds-cfg-default-password-storage-scheme", - "type": "simple", - }, - "deprecatedPasswordStorageScheme": { - "isMultiValued": true, - "ldapAttribute": "ds-cfg-deprecated-password-storage-scheme", - "type": "simple", - }, - "maxPasswordAge": { - "ldapAttribute": "ds-cfg-max-password-age", - "type": "simple", - }, - "passwordAttribute": { - "isRequired": true, - "ldapAttribute": "ds-cfg-password-attribute", - "type": "simple", - }, - "passwordHistoryCount": { - "ldapAttribute": "ds-cfg-password-history-count", - "type": "simple", - }, - "validator": { - "isMultiValued": true, - "ldapAttribute": "ds-cfg-password-validator", - "type": "simple", - }, + { + "action": "IGNORE", + "situation": "UNASSIGNED", + }, + { + "action": "UNLINK", + "situation": "LINK_ONLY", + }, + { + "action": "IGNORE", + "situation": "TARGET_IGNORED", + }, + { + "action": "IGNORE", + "situation": "SOURCE_IGNORED", + }, + { + "action": "IGNORE", + "situation": "ALL_GONE", + }, + { + "action": "UPDATE", + "situation": "CONFIRMED", + }, + { + "action": "LINK", + "situation": "FOUND", + }, + { + "action": "CREATE", + "situation": "ABSENT", }, - }, - "dsconfig/repeatedCharacters": { - "dnTemplate": "cn=Password Validators,cn=config", - "objectClasses": [ - "ds-cfg-password-validator", - "ds-cfg-repeated-characters-password-validator", - ], - "properties": { - "_id": { - "isRequired": true, - "ldapAttribute": "cn", - "type": "simple", - "writability": "createOnly", - }, - "caseSensitiveValidation": { - "isRequired": true, - "ldapAttribute": "ds-cfg-case-sensitive-validation", - "type": "simple", - }, - "enabled": { - "ldapAttribute": "ds-cfg-enabled", - "type": "simple", - }, - "javaClass": { - "ldapAttribute": "ds-cfg-java-class", - "type": "simple", + ], + "properties": [ + { + "condition": { + "globals": {}, + "source": "object.custom_password_encrypted != null", + "type": "text/javascript", }, - "maxConsecutiveLength": { - "isRequired": true, - "ldapAttribute": "ds-cfg-max-consecutive-length", - "type": "simple", + "source": "custom_password_encrypted", + "target": "__PASSWORD__", + "transform": { + "globals": {}, + "source": "openidm.decrypt(source);", + "type": "text/javascript", }, }, - }, - "dsconfig/similarityBased": { - "dnTemplate": "cn=Password Validators,cn=config", - "objectClasses": [ - "ds-cfg-password-validator", - "ds-cfg-similarity-based-password-validator", - ], - "properties": { - "_id": { - "isRequired": true, - "ldapAttribute": "cn", - "type": "simple", - "writability": "createOnly", - }, - "enabled": { - "ldapAttribute": "ds-cfg-enabled", - "type": "simple", - }, - "javaClass": { - "ldapAttribute": "ds-cfg-java-class", - "type": "simple", - }, - "minPasswordDifference": { - "isRequired": true, - "ldapAttribute": "ds-cfg-min-password-difference", - "type": "simple", + { + "source": "cn", + "target": "__NAME__", + "transform": { + "globals": {}, + "source": "source + "@" + identityServer.getProperty("esv.gac.domain");", + "type": "text/javascript", }, }, - }, - "dsconfig/uniqueCharacters": { - "dnTemplate": "cn=Password Validators,cn=config", - "objectClasses": [ - "ds-cfg-password-validator", - "ds-cfg-unique-characters-password-validator", - ], - "properties": { - "_id": { - "isRequired": true, - "ldapAttribute": "cn", - "type": "simple", - "writability": "createOnly", - }, - "caseSensitiveValidation": { - "isRequired": true, - "ldapAttribute": "ds-cfg-case-sensitive-validation", - "type": "simple", - }, - "enabled": { - "ldapAttribute": "ds-cfg-enabled", - "type": "simple", - }, - "javaClass": { - "ldapAttribute": "ds-cfg-java-class", - "type": "simple", - }, - "minUniqueCharacters": { - "isRequired": true, - "ldapAttribute": "ds-cfg-min-unique-characters", - "type": "simple", - }, + { + "source": "givenName", + "target": "givenName", }, - }, - "dsconfig/userDefinedVirtualAttribute": { - "dnTemplate": "cn=Virtual Attributes,cn=config", - "objectClasses": [ - "ds-cfg-user-defined-virtual-attribute", - "ds-cfg-virtual-attribute", - ], - "properties": { - "_id": { - "isRequired": true, - "ldapAttribute": "cn", - "type": "simple", - "writability": "createOnly", - }, - "attributeType": { - "isRequired": true, - "ldapAttribute": "ds-cfg-attribute-type", - "type": "simple", - }, - "baseDn": { - "isMultiValued": true, - "ldapAttribute": "ds-cfg-base-dn", - "type": "simple", - }, - "conflictBehavior": { - "ldapAttribute": "ds-cfg-conflict-behavior", - "type": "simple", - }, - "enabled": { - "isRequired": true, - "ldapAttribute": "ds-cfg-enabled", - "type": "simple", - }, - "filter": { - "isMultiValued": true, - "ldapAttribute": "ds-cfg-filter", - "type": "simple", - }, - "groupDn": { - "ldapAttribute": "ds-cfg-group-dn", - "type": "simple", - }, - "javaClass": { - "isRequired": true, - "ldapAttribute": "ds-cfg-java-class", - "type": "simple", - }, - "scope": { - "ldapAttribute": "ds-cfg-scope", - "type": "simple", - }, - "value": { - "isMultiValued": true, - "isRequired": true, - "ldapAttribute": "ds-cfg-value", - "type": "simple", + { + "source": "", + "target": "familyName", + "transform": { + "globals": {}, + "source": "if (source.frIndexedInteger1 > 2 && source.frIndexedInteger1 < 6) { + source.sn + " (Student)" +} else { + source.sn +}", + "type": "text/javascript", }, }, + ], + "queuedSync": { + "enabled": true, + "maxQueueSize": 20000, + "maxRetries": 5, + "pageSize": 100, + "pollingInterval": 1000, + "postRetryAction": "logged-ignore", + "retryDelay": 1000, }, - "identities/admin": { - "dnTemplate": "o=root,ou=identities", - "isReadOnly": true, - "namingStrategy": { - "dnAttribute": "ou", - "type": "clientDnNaming", + "source": "managed/alpha_user", + "syncAfter": [ + "managedBravo_user_managedBravo_user", + "managedAlpha_application_managedBravo_application", + "managedAlpha_user_managedBravo_user", + "managedBravo_user_managedAlpha_user", + ], + "target": "system/GoogleApps/__ACCOUNT__", + "validSource": { + "globals": {}, + "source": "var isGoogleEligible = true; +//var logMsg = "idmlog: ---AplhaUser2GAC (username: " + source.userName + " - userType: " + source.frIndexedInteger1 + " cn: " + source.cn + ") -"; +var logMsg = "idmlog: ---AplhaUser2GAC (username: " + source.userName + " - userType: " + source.frIndexedInteger1 + ") -"; + +//Get Applicable userTypes (no Parent accounts) +if (source.frIndexedInteger1 !== 0 && source.frIndexedInteger1 !== 1 && source.frIndexedInteger1 !== 3 && source.frIndexedInteger1 !== 4 && source.frIndexedInteger1 !== 5) { + isGoogleEligible = false; + logMsg = logMsg + " Account type not eligible."; +} + +//Make sure the account has a valid encrypted password. +if (source.custom_password_encrypted == undefined || source.custom_password_encrypted == null) { + isGoogleEligible = false; + logMsg = logMsg + " No encrypted password yet."; +} + +//Check that CN exists and has no space. +if (source.cn && source.cn.includes(' ')) { + isGoogleEligible = false; + logMsg = logMsg + " CN with a space is not allowed."; +} + +if (!isGoogleEligible) { + logMsg = logMsg + " Not sent to Google." + logger.info(logMsg); +} + +if (isGoogleEligible) { + logMsg = logMsg + " Sent to Google." + logger.info(logMsg); +} + +isGoogleEligible; +", + "type": "text/javascript", + }, + }, + ], + }, + "ui.context/admin": { + "_id": "ui.context/admin", + "defaultDir": "&{idm.install.dir}/ui/admin/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/admin/extension", + "responseHeaders": { + "X-Frame-Options": "SAMEORIGIN", + }, + "urlContextRoot": "/admin", + }, + "ui.context/api": { + "_id": "ui.context/api", + "authEnabled": true, + "cacheEnabled": false, + "defaultDir": "&{idm.install.dir}/ui/api/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/api/extension", + "urlContextRoot": "/api", + }, + "ui.context/enduser": { + "_id": "ui.context/enduser", + "defaultDir": "&{idm.install.dir}/ui/enduser", + "enabled": true, + "responseHeaders": { + "X-Frame-Options": "DENY", + }, + "urlContextRoot": "/", + }, + "ui.context/oauth": { + "_id": "ui.context/oauth", + "cacheEnabled": true, + "defaultDir": "&{idm.install.dir}/ui/oauth/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/oauth/extension", + "urlContextRoot": "/oauthReturn", + }, + "ui/configuration": { + "_id": "ui/configuration", + "configuration": { + "defaultNotificationType": "info", + "forgotUsername": false, + "lang": "en", + "notificationTypes": { + "error": { + "iconPath": "images/notifications/error.png", + "name": "common.notification.types.error", + }, + "info": { + "iconPath": "images/notifications/info.png", + "name": "common.notification.types.info", + }, + "warning": { + "iconPath": "images/notifications/warning.png", + "name": "common.notification.types.warning", + }, + }, + "passwordReset": true, + "passwordResetLink": "", + "platformSettings": { + "adminOauthClient": "idmAdminClient", + "adminOauthClientScopes": "fr:idm:*", + "amUrl": "/am", + "loginUrl": "", + }, + "roles": { + "internal/role/openidm-admin": "ui-admin", + "internal/role/openidm-authorized": "ui-user", + }, + "selfRegistration": true, + }, + }, + "ui/dashboard": { + "_id": "ui/dashboard", + "adminDashboards": [ + { + "isDefault": true, + "name": "Quick Start", + "widgets": [ + { + "cards": [ + { + "href": "#resource/managed/alpha_user/list/", + "icon": "fa-user", + "name": "Manage Users", + }, + { + "href": "#resource/managed/alpha_role/list/", + "icon": "fa-check-square-o", + "name": "Manage Roles", + }, + { + "href": "#connectors/add/", + "icon": "fa-database", + "name": "Add Connector", + }, + { + "href": "#mapping/add/", + "icon": "fa-map-marker", + "name": "Create Mapping", + }, + { + "href": "#managed/add/", + "icon": "fa-tablet", + "name": "Add Device", + }, + { + "href": "#settings/", + "icon": "fa-user", + "name": "Configure System Preferences", + }, + ], + "size": "large", + "type": "quickStart", }, - "objectClasses": [ - "organizationalunit", - ], - "properties": { - "_id": { - "ldapAttribute": "ou", - "primaryKey": true, - "type": "simple", - }, - "count": { - "isRequired": true, - "ldapAttribute": "numSubordinates", - "type": "simple", - "writability": "readOnly", + ], + }, + { + "isDefault": false, + "name": "System Monitoring", + "widgets": [ + { + "legendRange": { + "month": [ + 500, + 2500, + 5000, + ], + "week": [ + 10, + 30, + 90, + 270, + 810, + ], + "year": [ + 10000, + 40000, + 100000, + 250000, + ], }, + "maxRange": "#24423c", + "minRange": "#b0d4cd", + "size": "large", + "type": "audit", }, - }, - "identities/alpha": { - "dnTemplate": "o=alpha,o=root,ou=identities", - "isReadOnly": true, - "namingStrategy": { - "dnAttribute": "ou", - "type": "clientDnNaming", + { + "size": "large", + "type": "clusterStatus", }, - "objectClasses": [ - "organizationalunit", - ], - "properties": { - "_id": { - "ldapAttribute": "ou", - "primaryKey": true, - "type": "simple", - }, - "count": { - "isRequired": true, - "ldapAttribute": "numSubordinates", - "type": "simple", - "writability": "readOnly", - }, + { + "size": "large", + "type": "systemHealthFull", }, - }, - "identities/bravo": { - "dnTemplate": "o=bravo,o=root,ou=identities", - "isReadOnly": true, - "namingStrategy": { - "dnAttribute": "ou", - "type": "clientDnNaming", + { + "barchart": "false", + "size": "large", + "type": "lastRecon", }, - "objectClasses": [ - "organizationalunit", - ], - "properties": { - "_id": { - "ldapAttribute": "ou", - "primaryKey": true, - "type": "simple", - }, - "count": { - "isRequired": true, - "ldapAttribute": "numSubordinates", - "type": "simple", - "writability": "readOnly", - }, + ], + }, + { + "isDefault": false, + "name": "Resource Report", + "widgets": [ + { + "selected": "activeUsers", + "size": "x-small", + "type": "counter", }, - }, - "internal/role": { - "dnTemplate": "ou=roles,ou=internal,dc=openidm,dc=example,dc=com", - "objectClasses": [ - "fr-idm-internal-role", - ], - "properties": { - "_id": { - "isRequired": true, - "ldapAttribute": "cn", - "type": "simple", - "writability": "createOnly", - }, - "authzMembers": { - "isMultiValued": true, - "propertyName": "authzRoles", - "resourcePath": "managed/alpha_user", - "type": "reverseReference", - }, - "condition": { - "ldapAttribute": "fr-idm-condition", - "type": "simple", - }, - "description": { - "ldapAttribute": "description", - "type": "simple", - }, - "name": { - "ldapAttribute": "fr-idm-name", - "type": "simple", - }, - "privileges": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-privilege", - "type": "json", - }, - "temporalConstraints": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-temporal-constraints", - "type": "json", - }, + { + "selected": "rolesEnabled", + "size": "x-small", + "type": "counter", + }, + { + "selected": "activeConnectors", + "size": "x-small", + "type": "counter", }, - }, - "internal/user": { - "dnTemplate": "ou=users,ou=internal,dc=openidm,dc=example,dc=com", - "objectClasses": [ - "uidObject", - "fr-idm-internal-user", - ], - "properties": { - "_id": { - "isRequired": true, - "ldapAttribute": "uid", - "type": "simple", - "writability": "createOnly", - }, - "password": { - "ldapAttribute": "fr-idm-password", - "type": "json", - }, + { + "size": "large", + "type": "resourceList", }, - }, - "link": { - "dnTemplate": "ou=links,dc=openidm,dc=example,dc=com", - "objectClasses": [ - "uidObject", - "fr-idm-link", - ], - "properties": { - "_id": { - "isRequired": true, - "ldapAttribute": "uid", - "type": "simple", - "writability": "createOnly", - }, - "firstId": { - "ldapAttribute": "fr-idm-link-firstId", - "type": "simple", - }, - "linkQualifier": { - "ldapAttribute": "fr-idm-link-qualifier", - "type": "simple", - }, - "linkType": { - "ldapAttribute": "fr-idm-link-type", - "type": "simple", - }, - "secondId": { - "ldapAttribute": "fr-idm-link-secondId", - "type": "simple", - }, + ], + }, + { + "isDefault": false, + "name": "Business Report", + "widgets": [ + { + "graphType": "fa-pie-chart", + "providers": [ + "Username/Password", + ], + "size": "x-small", + "type": "signIns", + "widgetTitle": "Sign-Ins", }, - }, - "locks": { - "dnTemplate": "ou=locks,dc=openidm,dc=example,dc=com", - "objectClasses": [ - "uidObject", - "fr-idm-lock", - ], - "properties": { - "_id": { - "isRequired": true, - "ldapAttribute": "uid", - "type": "simple", - "writability": "createOnly", - }, - "nodeId": { - "ldapAttribute": "fr-idm-lock-nodeid", - "type": "simple", - }, + { + "graphType": "fa-bar-chart", + "size": "x-small", + "type": "passwordResets", + "widgetTitle": "Password Resets", }, - }, - "managed/teammember": { - "dnTemplate": "ou=people,o=root,ou=identities", - "namingStrategy": { - "dnAttribute": "fr-idm-uuid", - "type": "clientDnNaming", + { + "graphType": "fa-line-chart", + "providers": [ + "Username/Password", + ], + "size": "x-small", + "type": "newRegistrations", + "widgetTitle": "New Registrations", }, - "nativeId": false, - "objectClasses": [ - "person", - "organizationalPerson", - "inetOrgPerson", - "fraas-admin", - "iplanet-am-user-service", - "deviceProfilesContainer", - "devicePrintProfilesContainer", - "kbaInfoContainer", - "fr-idm-managed-user-explicit", - "forgerock-am-dashboard-service", - "inetuser", - "iplanet-am-auth-configuration-service", - "iplanet-am-managed-person", - "iPlanetPreferences", - "oathDeviceProfilesContainer", - "pushDeviceProfilesContainer", - "sunAMAuthAccountLockout", - "sunFMSAML2NameIdentifier", - "webauthnDeviceProfilesContainer", - "fr-idm-hybrid-obj", - ], - "properties": { - "_id": { - "ldapAttribute": "fr-idm-uuid", - "primaryKey": true, - "type": "simple", - }, - "_meta": { - "isMultiValued": false, - "ldapAttribute": "fr-idm-managed-user-meta", - "primaryKey": "uid", - "resourcePath": "managed/teammembermeta", - "type": "reference", - }, - "accountStatus": { - "ldapAttribute": "inetUserStatus", - "type": "simple", - }, - "cn": { - "ldapAttribute": "cn", - "type": "simple", - }, - "givenName": { - "ldapAttribute": "givenName", - "type": "simple", - }, - "inviteDate": { - "ldapAttribute": "fr-idm-inviteDate", - "type": "simple", - }, - "jurisdiction": { - "ldapAttribute": "fr-idm-jurisdiction", - "type": "simple", - }, - "mail": { - "ldapAttribute": "mail", - "type": "simple", - }, - "onboardDate": { - "ldapAttribute": "fr-idm-onboardDate", - "type": "simple", - }, - "password": { - "ldapAttribute": "userPassword", - "type": "simple", - }, - "sn": { - "ldapAttribute": "sn", - "type": "simple", - }, - "userName": { - "ldapAttribute": "uid", - "type": "simple", + { + "size": "x-small", + "timezone": { + "hours": "07", + "minutes": "00", + "negative": true, }, + "type": "socialLogin", }, - }, - "managed/teammembergroup": { - "dnTemplate": "ou=groups,o=root,ou=identities", - "objectClasses": [ - "groupofuniquenames", - ], - "properties": { - "_id": { - "ldapAttribute": "cn", - "primaryKey": true, - "type": "simple", - }, - "members": { - "isMultiValued": true, - "ldapAttribute": "uniqueMember", - "type": "simple", - }, + { + "selected": "socialEnabled", + "size": "x-small", + "type": "counter", }, - }, - "recon/assoc": { - "dnTemplate": "ou=assoc,ou=recon,dc=openidm,dc=example,dc=com", - "namingStrategy": { - "dnAttribute": "fr-idm-reconassoc-reconid", - "type": "clientDnNaming", + { + "selected": "manualRegistrations", + "size": "x-small", + "type": "counter", }, - "objectClasses": [ - "fr-idm-reconassoc", - ], - "properties": { - "_id": { - "isRequired": true, - "ldapAttribute": "fr-idm-reconassoc-reconid", - "type": "simple", + ], + }, + ], + "dashboard": { + "widgets": [ + { + "size": "large", + "type": "Welcome", + }, + ], + }, + }, + "ui/profile": { + "_id": "ui/profile", + "tabs": [ + { + "name": "personalInfoTab", + "view": "org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab", + }, + { + "name": "signInAndSecurity", + "view": "org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab", + }, + { + "name": "preference", + "view": "org/forgerock/openidm/ui/user/profile/PreferencesTab", + }, + { + "name": "trustedDevice", + "view": "org/forgerock/openidm/ui/user/profile/TrustedDevicesTab", + }, + { + "name": "oauthApplication", + "view": "org/forgerock/openidm/ui/user/profile/OauthApplicationsTab", + }, + { + "name": "privacyAndConsent", + "view": "org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab", + }, + { + "name": "sharing", + "view": "org/forgerock/openidm/ui/user/profile/uma/SharingTab", + }, + { + "name": "auditHistory", + "view": "org/forgerock/openidm/ui/user/profile/uma/ActivityTab", + }, + { + "name": "accountControls", + "view": "org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab", + }, + ], + }, + "ui/themeconfig": { + "_id": "ui/themeconfig", + "icon": "favicon.ico", + "path": "", + "settings": { + "footer": { + "mailto": "info@forgerock.com", + }, + "loginLogo": { + "alt": "ForgeRock", + "height": "104px", + "src": "images/login-logo-dark.png", + "title": "ForgeRock", + "width": "210px", + }, + "logo": { + "alt": "ForgeRock", + "src": "images/logo-horizontal-white.png", + "title": "ForgeRock", + }, + }, + "stylesheets": [ + "css/bootstrap-3.4.1-custom.css", + "css/structure.css", + "css/theme.css", + ], + }, + "ui/themerealm": { + "_id": "ui/themerealm", + "realm": { + "/alpha": [ + { + "_id": "4ded6d91-ceea-400a-ae3f-42209f1b0e06", + "accountFooter": " +", + "accountFooterEnabled": true, + "accountPageSections": { + "accountControls": { + "enabled": false, }, - "finishTime": { - "ldapAttribute": "fr-idm-reconassoc-finishtime", - "type": "simple", + "accountSecurity": { + "enabled": true, + "subsections": { + "password": { + "enabled": true, + }, + "securityQuestions": { + "enabled": false, + }, + "twoStepVerification": { + "enabled": true, + }, + "username": { + "enabled": true, + }, + }, }, - "isAnalysis": { - "ldapAttribute": "fr-idm-reconassoc-isanalysis", - "type": "simple", + "consent": { + "enabled": false, }, - "mapping": { - "ldapAttribute": "fr-idm-reconassoc-mapping", - "type": "simple", + "oauthApplications": { + "enabled": false, }, - "sourceResourceCollection": { - "ldapAttribute": "fr-idm-reconassoc-sourceresourcecollection", - "type": "simple", + "personalInformation": { + "enabled": true, }, - "targetResourceCollection": { - "ldapAttribute": "fr-idm-reconassoc-targetresourcecollection", - "type": "simple", + "preferences": { + "enabled": false, }, - }, - "subResources": { - "entry": { - "namingStrategy": { - "dnAttribute": "uid", - "type": "clientDnNaming", - }, - "resource": "recon-assoc-entry", - "type": "collection", + "social": { + "enabled": false, + }, + "trustedDevices": { + "enabled": true, }, }, + "backgroundColor": "#FFFFFF", + "backgroundImage": "", + "bodyText": "#5E6D82", + "buttonRounded": "50", + "dangerColor": "#f7685b", + "favicon": "", + "isDefault": false, + "journeyFooter": " +", + "journeyFooterEnabled": true, + "journeyHeader": "
Header Content
", + "journeyHeaderEnabled": false, + "journeyJustifiedContent": "
+

Uptime & Performance Benchmarking Made Easy

+
+ +", + "journeyJustifiedContentEnabled": true, + "journeyLayout": "justified-right", + "journeyTheaterMode": true, + "linkActiveColor": "#007661", + "linkColor": "#009C80", + "linkedTrees": [], + "logo": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", + "logoAltText": "Zardoz Logo", + "logoEnabled": true, + "logoHeight": "47", + "logoProfile": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", + "logoProfileAltText": "Zardaz Logo", + "logoProfileCollapsed": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", + "logoProfileCollapsedAltText": "Zardaz Logo", + "logoProfileCollapsedHeight": "28", + "logoProfileHeight": "40", + "name": "Zardoz", + "pageTitle": "#23282e", + "primaryColor": "#009C80", + "primaryOffColor": "#007661", + "profileBackgroundColor": "#FFFFFF", + "profileMenuHighlightColor": "#FFFFFF", + "profileMenuHoverColor": "#FFFFFF", + "profileMenuHoverTextColor": "#455469", + "profileMenuTextHighlightColor": "#009C80", + "secondaryColor": "#69788b", + "textColor": "#ffffff", }, - "recon/assoc/entry": { - "objectClasses": [ - "uidObject", - "fr-idm-reconassocentry", - ], - "properties": { - "_id": { - "isRequired": true, - "ldapAttribute": "uid", - "type": "simple", - }, - "action": { - "ldapAttribute": "fr-idm-reconassocentry-action", - "type": "simple", - }, - "ambiguousTargetObjectIds": { - "ldapAttribute": "fr-idm-reconassocentry-ambiguoustargetobjectids", - "type": "simple", + ], + "alpha": [ + { + "_id": "cd6c93e2-52e2-4340-9770-66a588343841", + "accountFooter": "", + "accountFooterEnabled": false, + "accountPageSections": { + "accountControls": { + "enabled": false, }, - "exception": { - "ldapAttribute": "fr-idm-reconassocentry-exception", - "type": "simple", + "accountSecurity": { + "enabled": true, + "subsections": { + "password": { + "enabled": true, + }, + "securityQuestions": { + "enabled": false, + }, + "twoStepVerification": { + "enabled": true, + }, + "username": { + "enabled": true, + }, + }, }, - "isAnalysis": { - "ldapAttribute": "fr-idm-reconassoc-isanalysis", - "type": "simple", + "consent": { + "enabled": false, }, - "linkQualifier": { - "ldapAttribute": "fr-idm-reconassocentry-linkqualifier", - "type": "simple", + "oauthApplications": { + "enabled": false, }, - "mapping": { - "ldapAttribute": "fr-idm-reconassoc-mapping", - "type": "simple", + "personalInformation": { + "enabled": true, }, - "message": { - "ldapAttribute": "fr-idm-reconassocentry-message", - "type": "simple", + "preferences": { + "enabled": false, }, - "messageDetail": { - "ldapAttribute": "fr-idm-reconassocentry-messagedetail", - "type": "simple", + "social": { + "enabled": false, }, - "phase": { - "ldapAttribute": "fr-idm-reconassocentry-phase", - "type": "simple", + "trustedDevices": { + "enabled": true, }, - "reconId": { - "ldapAttribute": "fr-idm-reconassocentry-reconid", - "type": "simple", + }, + "backgroundColor": "#FFFFFF", + "backgroundImage": "", + "bodyText": "#000000", + "buttonRounded": "0", + "dangerColor": "#f7685b", + "favicon": "", + "isDefault": false, + "journeyFooter": "", + "journeyFooterEnabled": false, + "journeyHeader": "
Header Content
", + "journeyHeaderEnabled": false, + "journeyJustifiedContent": "", + "journeyJustifiedContentEnabled": false, + "journeyLayout": "card", + "journeyTheaterMode": false, + "linkActiveColor": "#000000", + "linkColor": "#000000", + "linkedTrees": [], + "logo": "https://cdn.forgerock.com/platform/themes/contrast/logo-contrast.svg", + "logoAltText": "Contrast", + "logoEnabled": true, + "logoHeight": "72", + "logoProfile": "data:image/svg+xml,%0A%3Csvg width='46' height='46' viewBox='0 0 46 46' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24.3477 13.5664H43.9438C43.5192 12.6317 43.0319 11.734 42.4905 10.8711H24.3477V13.5664Z' fill='black'/%3E%3Cpath d='M24.3477 8.17578H40.5261C39.6996 7.2052 38.7974 6.30182 37.8224 5.48047H24.3477V8.17578Z' fill='black'/%3E%3Cpath d='M24.3477 40.5195H37.8224C38.7975 39.6982 39.6996 38.7948 40.5261 37.8242H24.3477V40.5195Z' fill='black'/%3E%3Cpath d='M24.3477 2.78516H33.8482C31.0136 1.27039 27.7313 0.198195 24.3477 0V2.78516Z' fill='black'/%3E%3Cpath d='M24.3477 18.957H45.6208C45.4566 18.0405 45.2557 17.1372 44.9856 16.2617H24.3477V18.957Z' fill='black'/%3E%3Cpath d='M24.3477 21.6523V24.3477H45.9317C45.958 23.8992 46 23.4549 46 23C46 22.5451 45.958 22.1008 45.9317 21.6523H24.3477Z' fill='black'/%3E%3Cpath d='M0 23C0 35.1781 9.64778 45.2964 21.6523 46V0C9.64778 0.703566 0 10.8219 0 23Z' fill='black'/%3E%3Cpath d='M24.3477 46C27.7313 45.8018 31.0136 44.7296 33.8482 43.2148H24.3477V46Z' fill='black'/%3E%3Cpath d='M45.6208 27.043H24.3477V29.7383H44.9857C45.2557 28.8628 45.4566 27.9595 45.6208 27.043V27.043Z' fill='black'/%3E%3Cpath d='M24.3477 35.1289H42.4905C43.0319 34.266 43.5192 33.3683 43.9438 32.4336H24.3477V35.1289Z' fill='black'/%3E%3C/svg%3E%0A", + "logoProfileAltText": "Contrast", + "logoProfileCollapsed": "data:image/svg+xml,%0A%3Csvg width='46' height='46' viewBox='0 0 46 46' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24.3477 13.5664H43.9438C43.5192 12.6317 43.0319 11.734 42.4905 10.8711H24.3477V13.5664Z' fill='black'/%3E%3Cpath d='M24.3477 8.17578H40.5261C39.6996 7.2052 38.7974 6.30182 37.8224 5.48047H24.3477V8.17578Z' fill='black'/%3E%3Cpath d='M24.3477 40.5195H37.8224C38.7975 39.6982 39.6996 38.7948 40.5261 37.8242H24.3477V40.5195Z' fill='black'/%3E%3Cpath d='M24.3477 2.78516H33.8482C31.0136 1.27039 27.7313 0.198195 24.3477 0V2.78516Z' fill='black'/%3E%3Cpath d='M24.3477 18.957H45.6208C45.4566 18.0405 45.2557 17.1372 44.9856 16.2617H24.3477V18.957Z' fill='black'/%3E%3Cpath d='M24.3477 21.6523V24.3477H45.9317C45.958 23.8992 46 23.4549 46 23C46 22.5451 45.958 22.1008 45.9317 21.6523H24.3477Z' fill='black'/%3E%3Cpath d='M0 23C0 35.1781 9.64778 45.2964 21.6523 46V0C9.64778 0.703566 0 10.8219 0 23Z' fill='black'/%3E%3Cpath d='M24.3477 46C27.7313 45.8018 31.0136 44.7296 33.8482 43.2148H24.3477V46Z' fill='black'/%3E%3Cpath d='M45.6208 27.043H24.3477V29.7383H44.9857C45.2557 28.8628 45.4566 27.9595 45.6208 27.043V27.043Z' fill='black'/%3E%3Cpath d='M24.3477 35.1289H42.4905C43.0319 34.266 43.5192 33.3683 43.9438 32.4336H24.3477V35.1289Z' fill='black'/%3E%3C/svg%3E%0A", + "logoProfileCollapsedAltText": "", + "logoProfileCollapsedHeight": "22", + "logoProfileHeight": "22", + "name": "Contrast", + "pageTitle": "#23282e", + "primaryColor": "#000000", + "primaryOffColor": "#000000", + "profileBackgroundColor": "#FFFFFF", + "profileMenuHighlightColor": "#FFFFFF", + "profileMenuHoverColor": "#FFFFFF", + "profileMenuHoverTextColor": "#000000", + "profileMenuTextHighlightColor": "#455469", + "secondaryColor": "#69788b", + "textColor": "#ffffff", + }, + { + "_id": "e47838b5-48c9-4dea-8a84-43f4b4ea8e04", + "accountCardBackgroundColor": "#ffffff", + "accountCardHeaderColor": "#23282e", + "accountCardInnerBorderColor": "#e7eef4", + "accountCardInputBackgroundColor": "#ffffff", + "accountCardInputBorderColor": "#c0c9d5", + "accountCardInputLabelColor": "#5e6d82", + "accountCardInputSelectColor": "#e4f4fd", + "accountCardInputSelectHoverColor": "#f6f8fa", + "accountCardInputTextColor": "#23282e", + "accountCardOuterBorderColor": "#e7eef4", + "accountCardShadow": 3, + "accountCardTabActiveBorderColor": "#109cf1", + "accountCardTabActiveColor": "#e4f4fd", + "accountCardTextColor": "#5e6d82", + "accountFooter": " +", + "accountFooterEnabled": true, + "accountFooterScriptTag": "", + "accountFooterScriptTagEnabled": false, + "accountNavigationBackgroundColor": "#ffffff", + "accountNavigationTextColor": "#455469", + "accountNavigationToggleBorderColor": "#e7eef4", + "accountPageSections": { + "accountControls": { + "enabled": false, }, - "situation": { - "ldapAttribute": "fr-idm-reconassocentry-situation", - "type": "simple", + "accountSecurity": { + "enabled": true, + "subsections": { + "password": { + "enabled": true, + }, + "securityQuestions": { + "enabled": false, + }, + "twoStepVerification": { + "enabled": true, + }, + "username": { + "enabled": true, + }, + }, }, - "sourceObjectId": { - "ldapAttribute": "fr-idm-reconassocentry-sourceObjectId", - "type": "simple", + "consent": { + "enabled": false, }, - "sourceResourceCollection": { - "ldapAttribute": "fr-idm-reconassoc-sourceresourcecollection", - "type": "simple", + "oauthApplications": { + "enabled": false, }, - "status": { - "ldapAttribute": "fr-idm-reconassocentry-status", - "type": "simple", + "personalInformation": { + "enabled": true, }, - "targetObjectId": { - "ldapAttribute": "fr-idm-reconassocentry-targetObjectId", - "type": "simple", + "preferences": { + "enabled": false, }, - "targetResourceCollection": { - "ldapAttribute": "fr-idm-reconassoc-targetresourcecollection", - "type": "simple", + "social": { + "enabled": false, }, - }, - "resourceName": "recon-assoc-entry", - "subResourceRouting": [ - { - "prefix": "entry", - "template": "recon/assoc/{reconId}/entry", + "trustedDevices": { + "enabled": true, }, - ], + }, + "accountTableRowHoverColor": "#f6f8fa", + "backgroundColor": "#FFFFFF", + "backgroundImage": "", + "bodyText": "#5E6D82", + "boldLinks": false, + "buttonRounded": "50", + "dangerColor": "#f7685b", + "favicon": "", + "fontFamily": "Open Sans", + "isDefault": false, + "journeyA11yAddFallbackErrorHeading": true, + "journeyCardBackgroundColor": "#ffffff", + "journeyCardBorderRadius": 4, + "journeyCardHeaderBackgroundColor": "#ffffff", + "journeyCardShadow": 3, + "journeyCardTextColor": "#5e6d82", + "journeyCardTitleColor": "#23282e", + "journeyFloatingLabels": true, + "journeyFocusElement": "header", + "journeyFocusFirstFocusableItemEnabled": false, + "journeyFooter": " +", + "journeyFooterEnabled": true, + "journeyFooterScriptTag": "", + "journeyFooterScriptTagEnabled": false, + "journeyHeader": "
Header Content
", + "journeyHeaderEnabled": false, + "journeyHeaderSkipLinkEnabled": false, + "journeyInputBackgroundColor": "#ffffff", + "journeyInputBorderColor": "#c0c9d5", + "journeyInputLabelColor": "#5e6d82", + "journeyInputSelectColor": "#e4f4fd", + "journeyInputSelectHoverColor": "#f6f8fa", + "journeyInputTextColor": "#23282e", + "journeyJustifiedContent": "
+

Uptime & Performance Benchmarking Made Easy

+
+ +", + "journeyJustifiedContentEnabled": true, + "journeyJustifiedContentMobileViewEnabled": false, + "journeyLayout": "justified-right", + "journeyRememberMeEnabled": false, + "journeyRememberMeLabel": "", + "journeySignInButtonPosition": "flex-column", + "journeyTheaterMode": true, + "linkActiveColor": "#007661", + "linkColor": "#009C80", + "linkedTrees": [], + "logo": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", + "logoAltText": "Zardoz Logo", + "logoEnabled": true, + "logoHeight": "47", + "logoProfile": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", + "logoProfileAltText": "Zardaz Logo", + "logoProfileCollapsed": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", + "logoProfileCollapsedAltText": "Zardaz Logo", + "logoProfileCollapsedHeight": "28", + "logoProfileHeight": "40", + "name": "Copy of Zardoz", + "pageTitle": "#23282e", + "primaryColor": "#009C80", + "primaryOffColor": "#007661", + "profileBackgroundColor": "#FFFFFF", + "profileMenuHighlightColor": "#FFFFFF", + "profileMenuHoverColor": "#FFFFFF", + "profileMenuHoverTextColor": "#455469", + "profileMenuTextHighlightColor": "#009C80", + "secondaryColor": "#69788b", + "successColor": "#2ed47a", + "switchBackgroundColor": "#c0c9d5", + "textColor": "#ffffff", + "topBarBackgroundColor": "#ffffff", + "topBarBorderColor": "#e7eef4", + "topBarHeaderColor": "#23282e", + "topBarTextColor": "#69788b", }, - "sync/queue": { - "dnTemplate": "ou=queue,ou=sync,dc=openidm,dc=example,dc=com", - "objectClasses": [ - "uidObject", - "fr-idm-syncqueue", - ], - "properties": { - "_id": { - "isRequired": true, - "ldapAttribute": "uid", - "type": "simple", - "writability": "createOnly", + { + "_id": "00203891-dde0-4114-b27a-219ae0b43a61", + "accountFooter": " +", + "accountFooterEnabled": true, + "accountPageSections": { + "accountControls": { + "enabled": false, }, - "context": { - "ldapAttribute": "fr-idm-syncqueue-context", - "type": "json", + "accountSecurity": { + "enabled": true, + "subsections": { + "password": { + "enabled": true, + }, + "securityQuestions": { + "enabled": false, + }, + "twoStepVerification": { + "enabled": true, + }, + "username": { + "enabled": true, + }, + }, }, - "createDate": { - "ldapAttribute": "fr-idm-syncqueue-createdate", - "type": "simple", + "consent": { + "enabled": false, }, - "mapping": { - "ldapAttribute": "fr-idm-syncqueue-mapping", - "type": "simple", + "oauthApplications": { + "enabled": false, }, - "newObject": { - "ldapAttribute": "fr-idm-syncqueue-newobject", - "type": "json", + "personalInformation": { + "enabled": true, }, - "nodeId": { - "ldapAttribute": "fr-idm-syncqueue-nodeid", - "type": "simple", + "preferences": { + "enabled": false, }, - "objectRev": { - "ldapAttribute": "fr-idm-syncqueue-objectRev", - "type": "simple", + "social": { + "enabled": false, }, - "oldObject": { - "ldapAttribute": "fr-idm-syncqueue-oldobject", - "type": "json", + "trustedDevices": { + "enabled": true, + }, + }, + "backgroundColor": "#FFFFFF", + "backgroundImage": "", + "bodyText": "#5E6D82", + "buttonRounded": "50", + "dangerColor": "#f7685b", + "favicon": "", + "isDefault": false, + "journeyFooter": " + +", + "journeyFooterEnabled": true, + "journeyHeader": "
+ +
+", + "journeyHeaderEnabled": true, + "journeyJustifiedContent": "", + "journeyJustifiedContentEnabled": false, + "journeyLayout": "card", + "journeyTheaterMode": false, + "linkActiveColor": "#C60819", + "linkColor": "#EB0A1E", + "linkedTrees": [], + "logo": "", + "logoAltText": "", + "logoEnabled": true, + "logoHeight": "40", + "logoProfile": "https://cdn.forgerock.com/platform/themes/highlander/logo-highlander-full.svg", + "logoProfileAltText": "Highlander", + "logoProfileCollapsed": "https://cdn.forgerock.com/platform/themes/highlander/logo-highlander-icon.svg", + "logoProfileCollapsedAltText": "Highlander", + "logoProfileCollapsedHeight": "28", + "logoProfileHeight": "28", + "name": "Highlander", + "pageTitle": "#23282e", + "primaryColor": "#EB0A1E", + "primaryOffColor": "#C60819", + "profileBackgroundColor": "#FFFFFF", + "profileMenuHighlightColor": "#FFFFFF", + "profileMenuHoverColor": "#FFFFFF", + "profileMenuHoverTextColor": "#455469", + "profileMenuTextHighlightColor": "#EB0A1E", + "secondaryColor": "#69788b", + "textColor": "#ffffff", + }, + { + "_id": "63e19668-909f-479e-83d7-be7a01cd8187", + "accountCardBackgroundColor": "#ffffff", + "accountCardHeaderColor": "#23282e", + "accountCardInnerBorderColor": "#e7eef4", + "accountCardInputBackgroundColor": "#ffffff", + "accountCardInputBorderColor": "#c0c9d5", + "accountCardInputLabelColor": "#5e6d82", + "accountCardInputSelectColor": "#e4f4fd", + "accountCardInputTextColor": "#23282e", + "accountCardOuterBorderColor": "#e7eef4", + "accountCardShadow": 3, + "accountCardTabActiveBorderColor": "#109cf1", + "accountCardTabActiveColor": "#e4f4fd", + "accountCardTextColor": "#5e6d82", + "accountFooter": "", + "accountFooterEnabled": false, + "accountNavigationBackgroundColor": "#ffffff", + "accountNavigationTextColor": "#455469", + "accountNavigationToggleBorderColor": "#e7eef4", + "accountPageSections": { + "accountControls": { + "enabled": false, }, - "remainingRetries": { - "ldapAttribute": "fr-idm-syncqueue-remainingretries", - "type": "simple", + "accountSecurity": { + "enabled": true, + "subsections": { + "password": { + "enabled": true, + }, + "securityQuestions": { + "enabled": false, + }, + "twoStepVerification": { + "enabled": true, + }, + "username": { + "enabled": true, + }, + }, }, - "resourceCollection": { - "ldapAttribute": "fr-idm-syncqueue-resourcecollection", - "type": "simple", + "consent": { + "enabled": false, }, - "resourceId": { - "ldapAttribute": "fr-idm-syncqueue-resourceid", - "type": "simple", + "oauthApplications": { + "enabled": false, }, - "state": { - "ldapAttribute": "fr-idm-syncqueue-state", - "type": "simple", + "personalInformation": { + "enabled": true, }, - "syncAction": { - "ldapAttribute": "fr-idm-syncqueue-syncaction", - "type": "simple", + "preferences": { + "enabled": true, }, - }, - }, - }, - "genericMapping": { - "cluster/*": { - "dnTemplate": "ou=cluster,dc=openidm,dc=example,dc=com", - "jsonAttribute": "fr-idm-cluster-json", - "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchClusterObject", - "objectClasses": [ - "uidObject", - "fr-idm-cluster-obj", - ], - }, - "config": { - "dnTemplate": "ou=config,dc=openidm,dc=example,dc=com", - }, - "file": { - "dnTemplate": "ou=file,dc=openidm,dc=example,dc=com", - }, - "internal/notification": { - "dnTemplate": "ou=notification,ou=internal,dc=openidm,dc=example,dc=com", - "jsonAttribute": "fr-idm-notification-json", - "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", - "objectClasses": [ - "uidObject", - "fr-idm-notification", - ], - "properties": { - "target": { - "propertyName": "_notifications", - "resourcePath": "managed/alpha_user", - "type": "reverseReference", + "social": { + "enabled": false, }, - }, - }, - "internal/usermeta": { - "dnTemplate": "ou=usermeta,ou=internal,dc=openidm,dc=example,dc=com", - "jsonAttribute": "fr-idm-json", - "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", - "objectClasses": [ - "uidObject", - "fr-idm-generic-obj", - ], - "properties": { - "target": { - "propertyName": "_meta", - "resourcePath": "managed/alpha_user", - "type": "reverseReference", + "trustedDevices": { + "enabled": true, }, }, - }, - "jsonstorage": { - "dnTemplate": "ou=jsonstorage,dc=openidm,dc=example,dc=com", - }, - "managed/*": { - "dnTemplate": "ou=managed,dc=openidm,dc=example,dc=com", - }, - "managed/alpha_group": { - "dnTemplate": "ou=groups,o=alpha,o=root,ou=identities", - "idGenerator": { - "propertyName": "name", - "type": "property", - }, - "jsonAttribute": "fr-idm-managed-group-json", - "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", - "namingStrategy": { - "dnAttribute": "cn", - "type": "clientDnNaming", - }, - "nativeId": false, - "objectClasses": [ - "top", - "groupOfURLs", - "fr-idm-managed-group", + "accountTableRowHoverColor": "#f6f8fa", + "backgroundColor": "#FFFFFF", + "backgroundImage": "", + "bodyText": "#000000", + "boldLinks": false, + "buttonRounded": "0", + "dangerColor": "#f7685b", + "favicon": "", + "fontFamily": "Open Sans", + "isDefault": false, + "journeyCardBackgroundColor": "#ffffff", + "journeyCardShadow": 3, + "journeyCardTextColor": "#5e6d82", + "journeyCardTitleColor": "#23282e", + "journeyFooter": "", + "journeyFooterEnabled": false, + "journeyHeader": "
Header Content
", + "journeyHeaderEnabled": false, + "journeyInputBackgroundColor": "#ffffff", + "journeyInputBorderColor": "#c0c9d5", + "journeyInputLabelColor": "#5e6d82", + "journeyInputSelectColor": "#e4f4fd", + "journeyInputTextColor": "#23282e", + "journeyJustifiedContent": "", + "journeyJustifiedContentEnabled": false, + "journeyLayout": "card", + "journeyTheaterMode": false, + "linkActiveColor": "#000000", + "linkColor": "#000000", + "linkedTrees": [ + "FrodoTest", + "AA-FrodoTest", ], - "properties": { - "_id": { - "ldapAttribute": "cn", - "primaryKey": true, - "type": "simple", - "writability": "createOnly", - }, - "condition": { - "ldapAttribute": "fr-idm-managed-group-condition", - "type": "simple", - }, - "description": { - "ldapAttribute": "description", - "type": "simple", - }, - "members": { - "isMultiValued": true, - "propertyName": "groups", - "resourcePath": "managed/alpha_user", - "type": "reverseReference", - }, - }, + "logo": "https://cdn.forgerock.com/platform/themes/contrast/logo-contrast.svg", + "logoAltText": "Contrast", + "logoEnabled": false, + "logoHeight": "72", + "logoProfile": "data:image/svg+xml,%0A%3Csvg width='46' height='46' viewBox='0 0 46 46' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24.3477 13.5664H43.9438C43.5192 12.6317 43.0319 11.734 42.4905 10.8711H24.3477V13.5664Z' fill='black'/%3E%3Cpath d='M24.3477 8.17578H40.5261C39.6996 7.2052 38.7974 6.30182 37.8224 5.48047H24.3477V8.17578Z' fill='black'/%3E%3Cpath d='M24.3477 40.5195H37.8224C38.7975 39.6982 39.6996 38.7948 40.5261 37.8242H24.3477V40.5195Z' fill='black'/%3E%3Cpath d='M24.3477 2.78516H33.8482C31.0136 1.27039 27.7313 0.198195 24.3477 0V2.78516Z' fill='black'/%3E%3Cpath d='M24.3477 18.957H45.6208C45.4566 18.0405 45.2557 17.1372 44.9856 16.2617H24.3477V18.957Z' fill='black'/%3E%3Cpath d='M24.3477 21.6523V24.3477H45.9317C45.958 23.8992 46 23.4549 46 23C46 22.5451 45.958 22.1008 45.9317 21.6523H24.3477Z' fill='black'/%3E%3Cpath d='M0 23C0 35.1781 9.64778 45.2964 21.6523 46V0C9.64778 0.703566 0 10.8219 0 23Z' fill='black'/%3E%3Cpath d='M24.3477 46C27.7313 45.8018 31.0136 44.7296 33.8482 43.2148H24.3477V46Z' fill='black'/%3E%3Cpath d='M45.6208 27.043H24.3477V29.7383H44.9857C45.2557 28.8628 45.4566 27.9595 45.6208 27.043V27.043Z' fill='black'/%3E%3Cpath d='M24.3477 35.1289H42.4905C43.0319 34.266 43.5192 33.3683 43.9438 32.4336H24.3477V35.1289Z' fill='black'/%3E%3C/svg%3E%0A", + "logoProfileAltText": "Contrast", + "logoProfileCollapsed": "data:image/svg+xml,%0A%3Csvg width='46' height='46' viewBox='0 0 46 46' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24.3477 13.5664H43.9438C43.5192 12.6317 43.0319 11.734 42.4905 10.8711H24.3477V13.5664Z' fill='black'/%3E%3Cpath d='M24.3477 8.17578H40.5261C39.6996 7.2052 38.7974 6.30182 37.8224 5.48047H24.3477V8.17578Z' fill='black'/%3E%3Cpath d='M24.3477 40.5195H37.8224C38.7975 39.6982 39.6996 38.7948 40.5261 37.8242H24.3477V40.5195Z' fill='black'/%3E%3Cpath d='M24.3477 2.78516H33.8482C31.0136 1.27039 27.7313 0.198195 24.3477 0V2.78516Z' fill='black'/%3E%3Cpath d='M24.3477 18.957H45.6208C45.4566 18.0405 45.2557 17.1372 44.9856 16.2617H24.3477V18.957Z' fill='black'/%3E%3Cpath d='M24.3477 21.6523V24.3477H45.9317C45.958 23.8992 46 23.4549 46 23C46 22.5451 45.958 22.1008 45.9317 21.6523H24.3477Z' fill='black'/%3E%3Cpath d='M0 23C0 35.1781 9.64778 45.2964 21.6523 46V0C9.64778 0.703566 0 10.8219 0 23Z' fill='black'/%3E%3Cpath d='M24.3477 46C27.7313 45.8018 31.0136 44.7296 33.8482 43.2148H24.3477V46Z' fill='black'/%3E%3Cpath d='M45.6208 27.043H24.3477V29.7383H44.9857C45.2557 28.8628 45.4566 27.9595 45.6208 27.043V27.043Z' fill='black'/%3E%3Cpath d='M24.3477 35.1289H42.4905C43.0319 34.266 43.5192 33.3683 43.9438 32.4336H24.3477V35.1289Z' fill='black'/%3E%3C/svg%3E%0A", + "logoProfileCollapsedAltText": "", + "logoProfileCollapsedHeight": "22", + "logoProfileHeight": "22", + "name": "NoAccess", + "pageTitle": "#23282e", + "primaryColor": "#000000", + "primaryOffColor": "#000000", + "profileBackgroundColor": "#FFFFFF", + "profileMenuHighlightColor": "#FFFFFF", + "profileMenuHoverColor": "#FFFFFF", + "profileMenuHoverTextColor": "#000000", + "profileMenuTextHighlightColor": "#455469", + "secondaryColor": "#69788b", + "switchBackgroundColor": "#c0c9d5", + "textColor": "#ffffff", + "topBarBackgroundColor": "#ffffff", + "topBarBorderColor": "#e7eef4", + "topBarHeaderColor": "#23282e", + "topBarTextColor": "#69788b", }, - "managed/alpha_organization": { - "dnTemplate": "ou=organization,o=alpha,o=root,ou=identities", - "jsonAttribute": "fr-idm-managed-organization-json", - "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", - "objectClasses": [ - "uidObject", - "fr-idm-managed-organization", - "fr-ext-attrs", - ], - "properties": { - "_id": { - "ldapAttribute": "uid", - "type": "simple", + { + "_id": "b82755e8-fe9a-4d27-b66b-45e37ae12345", + "accountFooter": " +", + "accountFooterEnabled": true, + "accountPageSections": { + "accountControls": { + "enabled": false, }, - "admins": { - "isMultiValued": true, - "propertyName": "adminOfOrg", - "resourcePath": "managed/alpha_user", - "type": "reverseReference", + "accountSecurity": { + "enabled": true, + "subsections": { + "password": { + "enabled": true, + }, + "securityQuestions": { + "enabled": false, + }, + "twoStepVerification": { + "enabled": true, + }, + "username": { + "enabled": true, + }, + }, }, - "children": { - "isMultiValued": true, - "propertyName": "parent", - "resourcePath": "managed/alpha_organization", - "type": "reverseReference", + "consent": { + "enabled": false, }, - "members": { - "isMultiValued": true, - "propertyName": "memberOfOrg", - "resourcePath": "managed/alpha_user", - "type": "reverseReference", + "oauthApplications": { + "enabled": false, }, - "name": { - "ldapAttribute": "fr-idm-managed-organization-name", - "type": "simple", + "personalInformation": { + "enabled": true, }, - "owners": { - "isMultiValued": true, - "propertyName": "ownerOfOrg", - "resourcePath": "managed/alpha_user", - "type": "reverseReference", + "preferences": { + "enabled": false, }, - "parent": { - "ldapAttribute": "fr-idm-managed-organization-parent", - "primaryKey": "uid", - "resourcePath": "managed/alpha_organization", - "type": "reference", + "social": { + "enabled": false, }, - }, - }, - "managed/alpha_role": { - "dnTemplate": "ou=role,o=alpha,o=root,ou=identities", - "jsonAttribute": "fr-idm-managed-role-json", - "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchManagedRole", - "objectClasses": [ - "uidObject", - "fr-idm-managed-role", - ], - "properties": { - "members": { - "isMultiValued": true, - "propertyName": "roles", - "resourcePath": "managed/alpha_user", - "type": "reverseReference", + "trustedDevices": { + "enabled": true, }, }, + "backgroundColor": "#FFFFFF", + "backgroundImage": "", + "bodyText": "#5E6D82", + "buttonRounded": "50", + "dangerColor": "#f7685b", + "favicon": "", + "isDefault": false, + "journeyFooter": " +", + "journeyFooterEnabled": true, + "journeyHeader": "
+ +
+", + "journeyHeaderEnabled": true, + "journeyJustifiedContent": "", + "journeyJustifiedContentEnabled": true, + "journeyLayout": "justified-right", + "journeyTheaterMode": false, + "linkActiveColor": "#49871E", + "linkColor": "#5AA625", + "linkedTrees": [], + "logo": "", + "logoAltText": "", + "logoEnabled": true, + "logoHeight": "40", + "logoProfile": "data:image/svg+xml,%0A%3Csvg width='156' height='34' viewBox='0 0 156 34' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0)'%3E%3Cpath d='M32.5539 32.5538C32.5539 32.5538 17.0796 35.6024 7.23861 25.7614C-2.60242 15.9204 0.446148 0.446137 0.446148 0.446137C0.446148 0.446137 15.9204 -2.60243 25.7614 7.23866C35.6024 17.0797 32.5539 32.5538 32.5539 32.5538Z' fill='%23C3EA21'/%3E%3Cpath d='M32.5537 32.554C32.5537 32.554 17.0795 35.6026 7.23845 25.7615C-2.60257 15.9205 0.445995 0.446289 0.445995 0.446289L32.5537 32.554Z' fill='%238ADB53'/%3E%3C/g%3E%3Cpath d='M51.053 25.38L53.186 25.11V8.964L51.161 8.586V6.939H55.076C55.418 6.939 55.796 6.93 56.21 6.912C56.624 6.894 56.939 6.876 57.155 6.858C58.091 6.786 58.865 6.75 59.477 6.75C61.331 6.75 62.816 6.939 63.932 7.317C65.048 7.695 65.858 8.271 66.362 9.045C66.866 9.819 67.118 10.836 67.118 12.096C67.118 13.338 66.785 14.49 66.119 15.552C65.453 16.614 64.49 17.343 63.23 17.739C63.95 18.045 64.589 18.603 65.147 19.413C65.705 20.223 66.299 21.276 66.929 22.572C67.379 23.454 67.721 24.093 67.955 24.489C68.207 24.867 68.45 25.083 68.684 25.137L69.575 25.407V27H64.985C64.697 27 64.391 26.712 64.067 26.136C63.761 25.542 63.356 24.615 62.852 23.355C62.258 21.879 61.745 20.727 61.313 19.899C60.881 19.071 60.422 18.558 59.936 18.36H57.155V25.11L59.639 25.38V27H51.053V25.38ZM59.639 16.713C60.665 16.713 61.466 16.344 62.042 15.606C62.618 14.868 62.906 13.761 62.906 12.285C62.906 10.971 62.618 9.999 62.042 9.369C61.484 8.739 60.512 8.424 59.126 8.424C58.622 8.424 58.19 8.451 57.83 8.505C57.488 8.541 57.263 8.559 57.155 8.559V16.659C57.371 16.695 57.893 16.713 58.721 16.713H59.639ZM70.674 19.521C70.674 17.829 71.007 16.389 71.673 15.201C72.357 14.013 73.266 13.122 74.4 12.528C75.534 11.916 76.767 11.61 78.099 11.61C80.367 11.61 82.113 12.312 83.337 13.716C84.579 15.102 85.2 16.992 85.2 19.386C85.2 21.096 84.858 22.554 84.174 23.76C83.508 24.948 82.608 25.839 81.474 26.433C80.358 27.009 79.125 27.297 77.775 27.297C75.525 27.297 73.779 26.604 72.537 25.218C71.295 23.814 70.674 21.915 70.674 19.521ZM77.991 25.542C80.025 25.542 81.042 23.58 81.042 19.656C81.042 17.604 80.799 16.047 80.313 14.985C79.827 13.905 79.035 13.365 77.937 13.365C75.849 13.365 74.805 15.327 74.805 19.251C74.805 21.303 75.057 22.869 75.561 23.949C76.083 25.011 76.893 25.542 77.991 25.542ZM86.4395 5.454L91.3805 4.86H91.4345L92.1905 5.373V13.338C92.6765 12.852 93.2705 12.447 93.9725 12.123C94.6925 11.781 95.4665 11.61 96.2945 11.61C98.0225 11.61 99.4265 12.222 100.506 13.446C101.604 14.652 102.153 16.506 102.153 19.008C102.153 20.556 101.829 21.96 101.181 23.22C100.533 24.48 99.5975 25.479 98.3735 26.217C97.1675 26.937 95.7635 27.297 94.1615 27.297C92.7395 27.297 91.5065 27.18 90.4625 26.946C89.4185 26.694 88.7525 26.469 88.4645 26.271V7.182L86.4395 6.858V5.454ZM94.8635 13.986C94.3235 13.986 93.8105 14.112 93.3245 14.364C92.8565 14.598 92.4785 14.868 92.1905 15.174V25.029C92.2985 25.227 92.5505 25.389 92.9465 25.515C93.3425 25.641 93.7925 25.704 94.2965 25.704C95.4485 25.704 96.3665 25.173 97.0505 24.111C97.7525 23.031 98.1035 21.438 98.1035 19.332C98.1035 17.514 97.8065 16.173 97.2125 15.309C96.6185 14.427 95.8355 13.986 94.8635 13.986Z' fill='black'/%3E%3Cpath d='M104.183 25.38L106.316 25.11V8.964L104.291 8.586V6.939H108.206C108.548 6.939 108.926 6.93 109.34 6.912C109.754 6.894 110.069 6.876 110.285 6.858C111.221 6.786 111.995 6.75 112.607 6.75C114.461 6.75 115.946 6.939 117.062 7.317C118.178 7.695 118.988 8.271 119.492 9.045C119.996 9.819 120.248 10.836 120.248 12.096C120.248 13.338 119.915 14.49 119.249 15.552C118.583 16.614 117.62 17.343 116.36 17.739C117.08 18.045 117.719 18.603 118.277 19.413C118.835 20.223 119.429 21.276 120.059 22.572C120.509 23.454 120.851 24.093 121.085 24.489C121.337 24.867 121.58 25.083 121.814 25.137L122.705 25.407V27H118.115C117.827 27 117.521 26.712 117.197 26.136C116.891 25.542 116.486 24.615 115.982 23.355C115.388 21.879 114.875 20.727 114.443 19.899C114.011 19.071 113.552 18.558 113.066 18.36H110.285V25.11L112.769 25.38V27H104.183V25.38ZM112.769 16.713C113.795 16.713 114.596 16.344 115.172 15.606C115.748 14.868 116.036 13.761 116.036 12.285C116.036 10.971 115.748 9.999 115.172 9.369C114.614 8.739 113.642 8.424 112.256 8.424C111.752 8.424 111.32 8.451 110.96 8.505C110.618 8.541 110.393 8.559 110.285 8.559V16.659C110.501 16.695 111.023 16.713 111.851 16.713H112.769ZM123.804 19.521C123.804 17.829 124.137 16.389 124.803 15.201C125.487 14.013 126.396 13.122 127.53 12.528C128.664 11.916 129.897 11.61 131.229 11.61C133.497 11.61 135.243 12.312 136.467 13.716C137.709 15.102 138.33 16.992 138.33 19.386C138.33 21.096 137.988 22.554 137.304 23.76C136.638 24.948 135.738 25.839 134.604 26.433C133.488 27.009 132.255 27.297 130.905 27.297C128.655 27.297 126.909 26.604 125.667 25.218C124.425 23.814 123.804 21.915 123.804 19.521ZM131.121 25.542C133.155 25.542 134.172 23.58 134.172 19.656C134.172 17.604 133.929 16.047 133.443 14.985C132.957 13.905 132.165 13.365 131.067 13.365C128.979 13.365 127.935 15.327 127.935 19.251C127.935 21.303 128.187 22.869 128.691 23.949C129.213 25.011 130.023 25.542 131.121 25.542ZM143.187 33.723C142.863 33.723 142.512 33.696 142.134 33.642C141.774 33.588 141.513 33.525 141.351 33.453V30.564C141.477 30.636 141.729 30.708 142.107 30.78C142.485 30.852 142.827 30.888 143.133 30.888C144.033 30.888 144.771 30.591 145.347 29.997C145.941 29.403 146.49 28.404 146.994 27H145.536L140.46 13.905L139.245 13.554V11.988H146.67V13.554L144.699 13.878L147.102 21.357L148.074 24.543L148.911 21.357L151.125 13.878L149.424 13.554V11.988H155.283V13.554L153.96 13.878C152.97 16.902 151.989 19.818 151.017 22.626C150.045 25.434 149.478 27.009 149.316 27.351C148.74 28.863 148.191 30.069 147.669 30.969C147.147 31.869 146.526 32.553 145.806 33.021C145.086 33.489 144.213 33.723 143.187 33.723Z' fill='%236CBE34'/%3E%3Cdefs%3E%3CclipPath id='clip0'%3E%3Crect width='33' height='33' fill='white' transform='matrix(-1 0 0 1 33 0)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A", + "logoProfileAltText": "RobRoy", + "logoProfileCollapsed": "data:image/svg+xml,%0A%3Csvg width='33' height='33' viewBox='0 0 33 33' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0)'%3E%3Cpath d='M32.5539 32.5538C32.5539 32.5538 17.0796 35.6024 7.23861 25.7614C-2.60242 15.9204 0.446148 0.446137 0.446148 0.446137C0.446148 0.446137 15.9204 -2.60243 25.7614 7.23866C35.6024 17.0797 32.5539 32.5538 32.5539 32.5538Z' fill='%23C3EA21'/%3E%3Cpath d='M32.5537 32.554C32.5537 32.554 17.0795 35.6026 7.23845 25.7615C-2.60257 15.9205 0.445996 0.446289 0.445996 0.446289L32.5537 32.554Z' fill='%238ADB53'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0'%3E%3Crect width='33' height='33' fill='white' transform='matrix(-1 0 0 1 33 0)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A", + "logoProfileCollapsedAltText": "RobRoy", + "logoProfileCollapsedHeight": "28", + "logoProfileHeight": "28", + "name": "Robroy", + "pageTitle": "#23282e", + "primaryColor": "#5AA625", + "primaryOffColor": "#49871E", + "profileBackgroundColor": "#FFFFFF", + "profileMenuHighlightColor": "#FFFFFF", + "profileMenuHoverColor": "#FFFFFF", + "profileMenuHoverTextColor": "#455469", + "profileMenuTextHighlightColor": "#5AA625", + "secondaryColor": "#69788b", + "textColor": "#ffffff", }, - "managed/alpha_user": { - "dnTemplate": "ou=user,o=alpha,o=root,ou=identities", - "jsonAttribute": "fr-idm-custom-attrs", - "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", - "namingStrategy": { - "dnAttribute": "fr-idm-uuid", - "type": "clientDnNaming", - }, - "nativeId": false, - "objectClasses": [ - "person", - "organizationalPerson", - "inetOrgPerson", - "iplanet-am-user-service", - "devicePrintProfilesContainer", - "deviceProfilesContainer", - "kbaInfoContainer", - "fr-idm-managed-user-explicit", - "forgerock-am-dashboard-service", - "inetuser", - "iplanet-am-auth-configuration-service", - "iplanet-am-managed-person", - "iPlanetPreferences", - "oathDeviceProfilesContainer", - "pushDeviceProfilesContainer", - "sunAMAuthAccountLockout", - "sunFMSAML2NameIdentifier", - "webauthnDeviceProfilesContainer", - "fr-idm-hybrid-obj", - "fr-ext-attrs", - ], - "properties": { - "_id": { - "ldapAttribute": "fr-idm-uuid", - "primaryKey": true, - "type": "simple", - }, - "_meta": { - "isMultiValued": false, - "ldapAttribute": "fr-idm-managed-user-meta", - "primaryKey": "uid", - "resourcePath": "managed/alpha_usermeta", - "type": "reference", - }, - "_notifications": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-managed-user-notifications", - "primaryKey": "uid", - "resourcePath": "internal/notification", - "type": "reference", - }, - "accountStatus": { - "ldapAttribute": "inetUserStatus", - "type": "simple", - }, - "adminOfOrg": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-managed-organization-admin", - "primaryKey": "uid", - "resourcePath": "managed/alpha_organization", - "type": "reference", - }, - "aliasList": { - "isMultiValued": true, - "ldapAttribute": "iplanet-am-user-alias-list", - "type": "simple", - }, - "assignedDashboard": { - "isMultiValued": true, - "ldapAttribute": "assignedDashboard", - "type": "simple", - }, - "authzRoles": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-managed-user-authzroles-internal-role", - "primaryKey": "cn", - "resourcePath": "internal/role", - "type": "reference", - }, - "city": { - "ldapAttribute": "l", - "type": "simple", - }, - "cn": { - "ldapAttribute": "cn", - "type": "simple", - }, - "consentedMappings": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-consentedMapping", - "type": "json", - }, - "country": { - "ldapAttribute": "co", - "type": "simple", - }, - "description": { - "ldapAttribute": "description", - "type": "simple", - }, - "displayName": { - "ldapAttribute": "displayName", - "type": "simple", - }, - "effectiveAssignments": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-effectiveAssignment", - "type": "json", - }, - "effectiveGroups": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-effectiveGroup", - "type": "json", - }, - "effectiveRoles": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-effectiveRole", - "type": "json", + { + "_id": "86ce2f64-586d-44fe-8593-b12a85aac68d", + "accountFooter": "", + "accountFooterEnabled": false, + "accountPageSections": { + "accountControls": { + "enabled": false, }, - "frIndexedDate1": { - "ldapAttribute": "fr-attr-idate1", - "type": "simple", + "accountSecurity": { + "enabled": true, + "subsections": { + "password": { + "enabled": true, + }, + "securityQuestions": { + "enabled": false, + }, + "twoStepVerification": { + "enabled": true, + }, + "username": { + "enabled": true, + }, + }, }, - "frIndexedDate2": { - "ldapAttribute": "fr-attr-idate2", - "type": "simple", + "consent": { + "enabled": false, }, - "frIndexedDate3": { - "ldapAttribute": "fr-attr-idate3", - "type": "simple", + "oauthApplications": { + "enabled": false, }, - "frIndexedDate4": { - "ldapAttribute": "fr-attr-idate4", - "type": "simple", + "personalInformation": { + "enabled": true, }, - "frIndexedDate5": { - "ldapAttribute": "fr-attr-idate5", - "type": "simple", + "preferences": { + "enabled": false, }, - "frIndexedInteger1": { - "ldapAttribute": "fr-attr-iint1", - "type": "simple", + "social": { + "enabled": false, }, - "frIndexedInteger2": { - "ldapAttribute": "fr-attr-iint2", - "type": "simple", + "trustedDevices": { + "enabled": true, }, - "frIndexedInteger3": { - "ldapAttribute": "fr-attr-iint3", - "type": "simple", + }, + "backgroundColor": "#324054", + "backgroundImage": "", + "bodyText": "#23282e", + "buttonRounded": 5, + "dangerColor": "#f7685b", + "favicon": "", + "isDefault": true, + "journeyFooter": "", + "journeyFooterEnabled": false, + "journeyHeader": "
Header Content
", + "journeyHeaderEnabled": false, + "journeyJustifiedContent": "", + "journeyJustifiedContentEnabled": false, + "journeyLayout": "card", + "journeyTheaterMode": false, + "linkActiveColor": "#0c85cf", + "linkColor": "#109cf1", + "linkedTrees": [], + "logo": "", + "logoAltText": "", + "logoHeight": "40", + "logoProfile": "", + "logoProfileAltText": "", + "logoProfileCollapsed": "", + "logoProfileCollapsedAltText": "", + "logoProfileCollapsedHeight": "40", + "logoProfileHeight": "40", + "name": "Starter Theme", + "pageTitle": "#23282e", + "primaryColor": "#324054", + "primaryOffColor": "#242E3C", + "profileBackgroundColor": "#f6f8fa", + "profileMenuHighlightColor": "#f3f5f8", + "profileMenuHoverColor": "#324054", + "profileMenuHoverTextColor": "#ffffff", + "profileMenuTextHighlightColor": "#455469", + "secondaryColor": "#69788b", + "textColor": "#ffffff", + }, + { + "_id": "4ded6d91-ceea-400a-ae3f-42209f1b0e06", + "accountFooter": " +", + "accountFooterEnabled": true, + "accountPageSections": { + "accountControls": { + "enabled": false, }, - "frIndexedInteger4": { - "ldapAttribute": "fr-attr-iint4", - "type": "simple", + "accountSecurity": { + "enabled": true, + "subsections": { + "password": { + "enabled": true, + }, + "securityQuestions": { + "enabled": false, + }, + "twoStepVerification": { + "enabled": true, + }, + "username": { + "enabled": true, + }, + }, }, - "frIndexedInteger5": { - "ldapAttribute": "fr-attr-iint5", - "type": "simple", + "consent": { + "enabled": false, }, - "frIndexedMultivalued1": { - "isMultiValued": true, - "ldapAttribute": "fr-attr-imulti1", - "type": "simple", + "oauthApplications": { + "enabled": false, }, - "frIndexedMultivalued2": { - "isMultiValued": true, - "ldapAttribute": "fr-attr-imulti2", - "type": "simple", + "personalInformation": { + "enabled": true, }, - "frIndexedMultivalued3": { - "isMultiValued": true, - "ldapAttribute": "fr-attr-imulti3", - "type": "simple", + "preferences": { + "enabled": false, }, - "frIndexedMultivalued4": { - "isMultiValued": true, - "ldapAttribute": "fr-attr-imulti4", - "type": "simple", + "social": { + "enabled": false, }, - "frIndexedMultivalued5": { - "isMultiValued": true, - "ldapAttribute": "fr-attr-imulti5", - "type": "simple", + "trustedDevices": { + "enabled": true, }, - "frIndexedString1": { - "ldapAttribute": "fr-attr-istr1", - "type": "simple", + }, + "backgroundColor": "#FFFFFF", + "backgroundImage": "", + "bodyText": "#5E6D82", + "buttonRounded": "50", + "dangerColor": "#f7685b", + "favicon": "", + "isDefault": false, + "journeyFooter": " +", + "journeyFooterEnabled": true, + "journeyHeader": "
Header Content
", + "journeyHeaderEnabled": false, + "journeyJustifiedContent": "
+

Uptime & Performance Benchmarking Made Easy

+
+ +", + "journeyJustifiedContentEnabled": true, + "journeyLayout": "justified-right", + "journeyTheaterMode": true, + "linkActiveColor": "#007661", + "linkColor": "#009C80", + "linkedTrees": [], + "logo": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", + "logoAltText": "Zardoz Logo", + "logoEnabled": true, + "logoHeight": "47", + "logoProfile": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", + "logoProfileAltText": "Zardaz Logo", + "logoProfileCollapsed": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", + "logoProfileCollapsedAltText": "Zardaz Logo", + "logoProfileCollapsedHeight": "28", + "logoProfileHeight": "40", + "name": "Zardoz", + "pageTitle": "#23282e", + "primaryColor": "#009C80", + "primaryOffColor": "#007661", + "profileBackgroundColor": "#FFFFFF", + "profileMenuHighlightColor": "#FFFFFF", + "profileMenuHoverColor": "#FFFFFF", + "profileMenuHoverTextColor": "#455469", + "profileMenuTextHighlightColor": "#009C80", + "secondaryColor": "#69788b", + "textColor": "#ffffff", + }, + ], + "bravo": [ + { + "_id": "00203891-dde0-4114-b27a-219ae0b43a61", + "accountFooter": " +", + "accountFooterEnabled": true, + "accountPageSections": { + "accountControls": { + "enabled": false, }, - "frIndexedString2": { - "ldapAttribute": "fr-attr-istr2", - "type": "simple", + "accountSecurity": { + "enabled": true, + "subsections": { + "password": { + "enabled": true, + }, + "securityQuestions": { + "enabled": false, + }, + "twoStepVerification": { + "enabled": true, + }, + "username": { + "enabled": true, + }, + }, }, - "frIndexedString3": { - "ldapAttribute": "fr-attr-istr3", - "type": "simple", + "consent": { + "enabled": false, }, - "frIndexedString4": { - "ldapAttribute": "fr-attr-istr4", - "type": "simple", + "oauthApplications": { + "enabled": false, }, - "frIndexedString5": { - "ldapAttribute": "fr-attr-istr5", - "type": "simple", + "personalInformation": { + "enabled": true, }, - "frUnindexedDate1": { - "ldapAttribute": "fr-attr-date1", - "type": "simple", + "preferences": { + "enabled": false, }, - "frUnindexedDate2": { - "ldapAttribute": "fr-attr-date2", - "type": "simple", + "social": { + "enabled": false, }, - "frUnindexedDate3": { - "ldapAttribute": "fr-attr-date3", - "type": "simple", + "trustedDevices": { + "enabled": true, }, - "frUnindexedDate4": { - "ldapAttribute": "fr-attr-date4", - "type": "simple", + }, + "backgroundColor": "#FFFFFF", + "backgroundImage": "", + "bodyText": "#5E6D82", + "buttonRounded": "50", + "dangerColor": "#f7685b", + "favicon": "", + "isDefault": false, + "journeyFooter": " + +", + "journeyFooterEnabled": true, + "journeyHeader": "
+ +
+", + "journeyHeaderEnabled": true, + "journeyJustifiedContent": "", + "journeyJustifiedContentEnabled": false, + "journeyLayout": "card", + "journeyTheaterMode": false, + "linkActiveColor": "#C60819", + "linkColor": "#EB0A1E", + "linkedTrees": [], + "logo": "", + "logoAltText": "", + "logoEnabled": true, + "logoHeight": "40", + "logoProfile": "https://cdn.forgerock.com/platform/themes/highlander/logo-highlander-full.svg", + "logoProfileAltText": "Highlander", + "logoProfileCollapsed": "https://cdn.forgerock.com/platform/themes/highlander/logo-highlander-icon.svg", + "logoProfileCollapsedAltText": "Highlander", + "logoProfileCollapsedHeight": "28", + "logoProfileHeight": "28", + "name": "Highlander", + "pageTitle": "#23282e", + "primaryColor": "#EB0A1E", + "primaryOffColor": "#C60819", + "profileBackgroundColor": "#FFFFFF", + "profileMenuHighlightColor": "#FFFFFF", + "profileMenuHoverColor": "#FFFFFF", + "profileMenuHoverTextColor": "#455469", + "profileMenuTextHighlightColor": "#EB0A1E", + "secondaryColor": "#69788b", + "textColor": "#ffffff", + }, + { + "_id": "4ded6d91-ceea-400a-ae3f-42209f1b0e06", + "accountFooter": " +", + "accountFooterEnabled": true, + "accountPageSections": { + "accountControls": { + "enabled": false, }, - "frUnindexedDate5": { - "ldapAttribute": "fr-attr-date5", - "type": "simple", + "accountSecurity": { + "enabled": true, + "subsections": { + "password": { + "enabled": true, + }, + "securityQuestions": { + "enabled": false, + }, + "twoStepVerification": { + "enabled": true, + }, + "username": { + "enabled": true, + }, + }, }, - "frUnindexedInteger1": { - "ldapAttribute": "fr-attr-int1", - "type": "simple", + "consent": { + "enabled": false, }, - "frUnindexedInteger2": { - "ldapAttribute": "fr-attr-int2", - "type": "simple", + "oauthApplications": { + "enabled": false, }, - "frUnindexedInteger3": { - "ldapAttribute": "fr-attr-int3", - "type": "simple", + "personalInformation": { + "enabled": true, }, - "frUnindexedInteger4": { - "ldapAttribute": "fr-attr-int4", - "type": "simple", + "preferences": { + "enabled": false, }, - "frUnindexedInteger5": { - "ldapAttribute": "fr-attr-int5", - "type": "simple", + "social": { + "enabled": false, }, - "frUnindexedMultivalued1": { - "isMultiValued": true, - "ldapAttribute": "fr-attr-multi1", - "type": "simple", + "trustedDevices": { + "enabled": true, }, - "frUnindexedMultivalued2": { - "isMultiValued": true, - "ldapAttribute": "fr-attr-multi2", - "type": "simple", + }, + "backgroundColor": "#FFFFFF", + "backgroundImage": "", + "bodyText": "#5E6D82", + "buttonRounded": "50", + "dangerColor": "#f7685b", + "favicon": "", + "isDefault": false, + "journeyFooter": " +", + "journeyFooterEnabled": true, + "journeyHeader": "
Header Content
", + "journeyHeaderEnabled": false, + "journeyJustifiedContent": "
+

Uptime & Performance Benchmarking Made Easy

+
+ +", + "journeyJustifiedContentEnabled": true, + "journeyLayout": "justified-right", + "journeyTheaterMode": true, + "linkActiveColor": "#007661", + "linkColor": "#009C80", + "linkedTrees": [], + "logo": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", + "logoAltText": "Zardoz Logo", + "logoEnabled": true, + "logoHeight": "47", + "logoProfile": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", + "logoProfileAltText": "Zardaz Logo", + "logoProfileCollapsed": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", + "logoProfileCollapsedAltText": "Zardaz Logo", + "logoProfileCollapsedHeight": "28", + "logoProfileHeight": "40", + "name": "Zardoz", + "pageTitle": "#23282e", + "primaryColor": "#009C80", + "primaryOffColor": "#007661", + "profileBackgroundColor": "#FFFFFF", + "profileMenuHighlightColor": "#FFFFFF", + "profileMenuHoverColor": "#FFFFFF", + "profileMenuHoverTextColor": "#455469", + "profileMenuTextHighlightColor": "#009C80", + "secondaryColor": "#69788b", + "textColor": "#ffffff", + }, + { + "_id": "86ce2f64-586d-44fe-8593-b12a85aac68d", + "accountFooter": "", + "accountFooterEnabled": false, + "accountPageSections": { + "accountControls": { + "enabled": false, }, - "frUnindexedMultivalued3": { - "isMultiValued": true, - "ldapAttribute": "fr-attr-multi3", - "type": "simple", + "accountSecurity": { + "enabled": true, + "subsections": { + "password": { + "enabled": true, + }, + "securityQuestions": { + "enabled": false, + }, + "twoStepVerification": { + "enabled": true, + }, + "username": { + "enabled": true, + }, + }, }, - "frUnindexedMultivalued4": { - "isMultiValued": true, - "ldapAttribute": "fr-attr-multi4", - "type": "simple", + "consent": { + "enabled": false, }, - "frUnindexedMultivalued5": { - "isMultiValued": true, - "ldapAttribute": "fr-attr-multi5", - "type": "simple", + "oauthApplications": { + "enabled": false, }, - "frUnindexedString1": { - "ldapAttribute": "fr-attr-str1", - "type": "simple", + "personalInformation": { + "enabled": true, }, - "frUnindexedString2": { - "ldapAttribute": "fr-attr-str2", - "type": "simple", + "preferences": { + "enabled": false, }, - "frUnindexedString3": { - "ldapAttribute": "fr-attr-str3", - "type": "simple", + "social": { + "enabled": false, }, - "frUnindexedString4": { - "ldapAttribute": "fr-attr-str4", - "type": "simple", + "trustedDevices": { + "enabled": true, }, - "frUnindexedString5": { - "ldapAttribute": "fr-attr-str5", - "type": "simple", + }, + "backgroundColor": "#324054", + "backgroundImage": "", + "bodyText": "#23282e", + "buttonRounded": 5, + "dangerColor": "#f7685b", + "favicon": "", + "isDefault": true, + "journeyFooter": "", + "journeyFooterEnabled": false, + "journeyHeader": "
Header Content
", + "journeyHeaderEnabled": false, + "journeyJustifiedContent": "", + "journeyJustifiedContentEnabled": false, + "journeyLayout": "card", + "journeyTheaterMode": false, + "linkActiveColor": "#0c85cf", + "linkColor": "#109cf1", + "linkedTrees": [], + "logo": "", + "logoAltText": "", + "logoHeight": "40", + "logoProfile": "", + "logoProfileAltText": "", + "logoProfileCollapsed": "", + "logoProfileCollapsedAltText": "", + "logoProfileCollapsedHeight": "40", + "logoProfileHeight": "40", + "name": "Starter Theme", + "pageTitle": "#23282e", + "primaryColor": "#324054", + "primaryOffColor": "#242E3C", + "profileBackgroundColor": "#f6f8fa", + "profileMenuHighlightColor": "#f3f5f8", + "profileMenuHoverColor": "#324054", + "profileMenuHoverTextColor": "#ffffff", + "profileMenuTextHighlightColor": "#455469", + "secondaryColor": "#69788b", + "textColor": "#ffffff", + }, + { + "_id": "b82755e8-fe9a-4d27-b66b-45e37ae12345", + "accountFooter": " +", + "accountFooterEnabled": true, + "accountPageSections": { + "accountControls": { + "enabled": false, }, - "givenName": { - "ldapAttribute": "givenName", - "type": "simple", + "accountSecurity": { + "enabled": true, + "subsections": { + "password": { + "enabled": true, + }, + "securityQuestions": { + "enabled": false, + }, + "twoStepVerification": { + "enabled": true, + }, + "username": { + "enabled": true, + }, + }, }, - "groups": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-managed-user-groups", - "primaryKey": "cn", - "resourcePath": "managed/alpha_group", - "type": "reference", + "consent": { + "enabled": false, }, - "kbaInfo": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-kbaInfo", - "type": "json", + "oauthApplications": { + "enabled": false, }, - "lastSync": { - "ldapAttribute": "fr-idm-lastSync", - "type": "json", + "personalInformation": { + "enabled": true, }, - "mail": { - "ldapAttribute": "mail", - "type": "simple", + "preferences": { + "enabled": false, }, - "manager": { - "isMultiValued": false, - "ldapAttribute": "fr-idm-managed-user-manager", - "primaryKey": "uid", - "resourcePath": "managed/alpha_user", - "type": "reference", + "social": { + "enabled": false, }, - "memberOfOrg": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-managed-organization-member", - "primaryKey": "uid", - "resourcePath": "managed/alpha_organization", - "type": "reference", + "trustedDevices": { + "enabled": true, }, - "memberOfOrgIDs": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-managed-user-memberoforgid", - "type": "simple", + }, + "backgroundColor": "#FFFFFF", + "backgroundImage": "", + "bodyText": "#5E6D82", + "buttonRounded": "50", + "dangerColor": "#f7685b", + "favicon": "", + "isDefault": false, + "journeyFooter": " +", + "journeyFooterEnabled": true, + "journeyHeader": "
+ +
+", + "journeyHeaderEnabled": true, + "journeyJustifiedContent": "", + "journeyJustifiedContentEnabled": true, + "journeyLayout": "justified-right", + "journeyTheaterMode": false, + "linkActiveColor": "#49871E", + "linkColor": "#5AA625", + "linkedTrees": [], + "logo": "", + "logoAltText": "", + "logoEnabled": true, + "logoHeight": "40", + "logoProfile": "data:image/svg+xml,%0A%3Csvg width='156' height='34' viewBox='0 0 156 34' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0)'%3E%3Cpath d='M32.5539 32.5538C32.5539 32.5538 17.0796 35.6024 7.23861 25.7614C-2.60242 15.9204 0.446148 0.446137 0.446148 0.446137C0.446148 0.446137 15.9204 -2.60243 25.7614 7.23866C35.6024 17.0797 32.5539 32.5538 32.5539 32.5538Z' fill='%23C3EA21'/%3E%3Cpath d='M32.5537 32.554C32.5537 32.554 17.0795 35.6026 7.23845 25.7615C-2.60257 15.9205 0.445995 0.446289 0.445995 0.446289L32.5537 32.554Z' fill='%238ADB53'/%3E%3C/g%3E%3Cpath d='M51.053 25.38L53.186 25.11V8.964L51.161 8.586V6.939H55.076C55.418 6.939 55.796 6.93 56.21 6.912C56.624 6.894 56.939 6.876 57.155 6.858C58.091 6.786 58.865 6.75 59.477 6.75C61.331 6.75 62.816 6.939 63.932 7.317C65.048 7.695 65.858 8.271 66.362 9.045C66.866 9.819 67.118 10.836 67.118 12.096C67.118 13.338 66.785 14.49 66.119 15.552C65.453 16.614 64.49 17.343 63.23 17.739C63.95 18.045 64.589 18.603 65.147 19.413C65.705 20.223 66.299 21.276 66.929 22.572C67.379 23.454 67.721 24.093 67.955 24.489C68.207 24.867 68.45 25.083 68.684 25.137L69.575 25.407V27H64.985C64.697 27 64.391 26.712 64.067 26.136C63.761 25.542 63.356 24.615 62.852 23.355C62.258 21.879 61.745 20.727 61.313 19.899C60.881 19.071 60.422 18.558 59.936 18.36H57.155V25.11L59.639 25.38V27H51.053V25.38ZM59.639 16.713C60.665 16.713 61.466 16.344 62.042 15.606C62.618 14.868 62.906 13.761 62.906 12.285C62.906 10.971 62.618 9.999 62.042 9.369C61.484 8.739 60.512 8.424 59.126 8.424C58.622 8.424 58.19 8.451 57.83 8.505C57.488 8.541 57.263 8.559 57.155 8.559V16.659C57.371 16.695 57.893 16.713 58.721 16.713H59.639ZM70.674 19.521C70.674 17.829 71.007 16.389 71.673 15.201C72.357 14.013 73.266 13.122 74.4 12.528C75.534 11.916 76.767 11.61 78.099 11.61C80.367 11.61 82.113 12.312 83.337 13.716C84.579 15.102 85.2 16.992 85.2 19.386C85.2 21.096 84.858 22.554 84.174 23.76C83.508 24.948 82.608 25.839 81.474 26.433C80.358 27.009 79.125 27.297 77.775 27.297C75.525 27.297 73.779 26.604 72.537 25.218C71.295 23.814 70.674 21.915 70.674 19.521ZM77.991 25.542C80.025 25.542 81.042 23.58 81.042 19.656C81.042 17.604 80.799 16.047 80.313 14.985C79.827 13.905 79.035 13.365 77.937 13.365C75.849 13.365 74.805 15.327 74.805 19.251C74.805 21.303 75.057 22.869 75.561 23.949C76.083 25.011 76.893 25.542 77.991 25.542ZM86.4395 5.454L91.3805 4.86H91.4345L92.1905 5.373V13.338C92.6765 12.852 93.2705 12.447 93.9725 12.123C94.6925 11.781 95.4665 11.61 96.2945 11.61C98.0225 11.61 99.4265 12.222 100.506 13.446C101.604 14.652 102.153 16.506 102.153 19.008C102.153 20.556 101.829 21.96 101.181 23.22C100.533 24.48 99.5975 25.479 98.3735 26.217C97.1675 26.937 95.7635 27.297 94.1615 27.297C92.7395 27.297 91.5065 27.18 90.4625 26.946C89.4185 26.694 88.7525 26.469 88.4645 26.271V7.182L86.4395 6.858V5.454ZM94.8635 13.986C94.3235 13.986 93.8105 14.112 93.3245 14.364C92.8565 14.598 92.4785 14.868 92.1905 15.174V25.029C92.2985 25.227 92.5505 25.389 92.9465 25.515C93.3425 25.641 93.7925 25.704 94.2965 25.704C95.4485 25.704 96.3665 25.173 97.0505 24.111C97.7525 23.031 98.1035 21.438 98.1035 19.332C98.1035 17.514 97.8065 16.173 97.2125 15.309C96.6185 14.427 95.8355 13.986 94.8635 13.986Z' fill='black'/%3E%3Cpath d='M104.183 25.38L106.316 25.11V8.964L104.291 8.586V6.939H108.206C108.548 6.939 108.926 6.93 109.34 6.912C109.754 6.894 110.069 6.876 110.285 6.858C111.221 6.786 111.995 6.75 112.607 6.75C114.461 6.75 115.946 6.939 117.062 7.317C118.178 7.695 118.988 8.271 119.492 9.045C119.996 9.819 120.248 10.836 120.248 12.096C120.248 13.338 119.915 14.49 119.249 15.552C118.583 16.614 117.62 17.343 116.36 17.739C117.08 18.045 117.719 18.603 118.277 19.413C118.835 20.223 119.429 21.276 120.059 22.572C120.509 23.454 120.851 24.093 121.085 24.489C121.337 24.867 121.58 25.083 121.814 25.137L122.705 25.407V27H118.115C117.827 27 117.521 26.712 117.197 26.136C116.891 25.542 116.486 24.615 115.982 23.355C115.388 21.879 114.875 20.727 114.443 19.899C114.011 19.071 113.552 18.558 113.066 18.36H110.285V25.11L112.769 25.38V27H104.183V25.38ZM112.769 16.713C113.795 16.713 114.596 16.344 115.172 15.606C115.748 14.868 116.036 13.761 116.036 12.285C116.036 10.971 115.748 9.999 115.172 9.369C114.614 8.739 113.642 8.424 112.256 8.424C111.752 8.424 111.32 8.451 110.96 8.505C110.618 8.541 110.393 8.559 110.285 8.559V16.659C110.501 16.695 111.023 16.713 111.851 16.713H112.769ZM123.804 19.521C123.804 17.829 124.137 16.389 124.803 15.201C125.487 14.013 126.396 13.122 127.53 12.528C128.664 11.916 129.897 11.61 131.229 11.61C133.497 11.61 135.243 12.312 136.467 13.716C137.709 15.102 138.33 16.992 138.33 19.386C138.33 21.096 137.988 22.554 137.304 23.76C136.638 24.948 135.738 25.839 134.604 26.433C133.488 27.009 132.255 27.297 130.905 27.297C128.655 27.297 126.909 26.604 125.667 25.218C124.425 23.814 123.804 21.915 123.804 19.521ZM131.121 25.542C133.155 25.542 134.172 23.58 134.172 19.656C134.172 17.604 133.929 16.047 133.443 14.985C132.957 13.905 132.165 13.365 131.067 13.365C128.979 13.365 127.935 15.327 127.935 19.251C127.935 21.303 128.187 22.869 128.691 23.949C129.213 25.011 130.023 25.542 131.121 25.542ZM143.187 33.723C142.863 33.723 142.512 33.696 142.134 33.642C141.774 33.588 141.513 33.525 141.351 33.453V30.564C141.477 30.636 141.729 30.708 142.107 30.78C142.485 30.852 142.827 30.888 143.133 30.888C144.033 30.888 144.771 30.591 145.347 29.997C145.941 29.403 146.49 28.404 146.994 27H145.536L140.46 13.905L139.245 13.554V11.988H146.67V13.554L144.699 13.878L147.102 21.357L148.074 24.543L148.911 21.357L151.125 13.878L149.424 13.554V11.988H155.283V13.554L153.96 13.878C152.97 16.902 151.989 19.818 151.017 22.626C150.045 25.434 149.478 27.009 149.316 27.351C148.74 28.863 148.191 30.069 147.669 30.969C147.147 31.869 146.526 32.553 145.806 33.021C145.086 33.489 144.213 33.723 143.187 33.723Z' fill='%236CBE34'/%3E%3Cdefs%3E%3CclipPath id='clip0'%3E%3Crect width='33' height='33' fill='white' transform='matrix(-1 0 0 1 33 0)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A", + "logoProfileAltText": "RobRoy", + "logoProfileCollapsed": "data:image/svg+xml,%0A%3Csvg width='33' height='33' viewBox='0 0 33 33' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0)'%3E%3Cpath d='M32.5539 32.5538C32.5539 32.5538 17.0796 35.6024 7.23861 25.7614C-2.60242 15.9204 0.446148 0.446137 0.446148 0.446137C0.446148 0.446137 15.9204 -2.60243 25.7614 7.23866C35.6024 17.0797 32.5539 32.5538 32.5539 32.5538Z' fill='%23C3EA21'/%3E%3Cpath d='M32.5537 32.554C32.5537 32.554 17.0795 35.6026 7.23845 25.7615C-2.60257 15.9205 0.445996 0.446289 0.445996 0.446289L32.5537 32.554Z' fill='%238ADB53'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0'%3E%3Crect width='33' height='33' fill='white' transform='matrix(-1 0 0 1 33 0)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A", + "logoProfileCollapsedAltText": "RobRoy", + "logoProfileCollapsedHeight": "28", + "logoProfileHeight": "28", + "name": "Robroy", + "pageTitle": "#23282e", + "primaryColor": "#5AA625", + "primaryOffColor": "#49871E", + "profileBackgroundColor": "#FFFFFF", + "profileMenuHighlightColor": "#FFFFFF", + "profileMenuHoverColor": "#FFFFFF", + "profileMenuHoverTextColor": "#455469", + "profileMenuTextHighlightColor": "#5AA625", + "secondaryColor": "#69788b", + "textColor": "#ffffff", + }, + { + "_id": "cd6c93e2-52e2-4340-9770-66a588343841", + "accountFooter": "", + "accountFooterEnabled": false, + "accountPageSections": { + "accountControls": { + "enabled": false, }, - "ownerOfOrg": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-managed-organization-owner", - "primaryKey": "uid", - "resourcePath": "managed/alpha_organization", - "type": "reference", + "accountSecurity": { + "enabled": true, + "subsections": { + "password": { + "enabled": true, + }, + "securityQuestions": { + "enabled": false, + }, + "twoStepVerification": { + "enabled": true, + }, + "username": { + "enabled": true, + }, + }, }, - "password": { - "ldapAttribute": "userPassword", - "type": "simple", + "consent": { + "enabled": false, }, - "postalAddress": { - "ldapAttribute": "street", - "type": "simple", + "oauthApplications": { + "enabled": false, }, - "postalCode": { - "ldapAttribute": "postalCode", - "type": "simple", + "personalInformation": { + "enabled": true, }, "preferences": { - "ldapAttribute": "fr-idm-preferences", - "type": "json", - }, - "profileImage": { - "ldapAttribute": "labeledURI", - "type": "simple", - }, - "reports": { - "isMultiValued": true, - "propertyName": "manager", - "resourcePath": "managed/alpha_user", - "type": "reverseReference", - }, - "roles": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-managed-user-roles", - "primaryKey": "uid", - "resourcePath": "managed/alpha_role", - "type": "reference", - }, - "sn": { - "ldapAttribute": "sn", - "type": "simple", + "enabled": false, }, - "stateProvince": { - "ldapAttribute": "st", - "type": "simple", + "social": { + "enabled": false, }, - "telephoneNumber": { - "ldapAttribute": "telephoneNumber", - "type": "simple", + "trustedDevices": { + "enabled": true, }, - "userName": { - "ldapAttribute": "uid", - "type": "simple", + }, + "backgroundColor": "#FFFFFF", + "backgroundImage": "", + "bodyText": "#000000", + "buttonRounded": "0", + "dangerColor": "#f7685b", + "favicon": "", + "isDefault": false, + "journeyFooter": "", + "journeyFooterEnabled": false, + "journeyHeader": "
Header Content
", + "journeyHeaderEnabled": false, + "journeyJustifiedContent": "", + "journeyJustifiedContentEnabled": false, + "journeyLayout": "card", + "journeyTheaterMode": false, + "linkActiveColor": "#000000", + "linkColor": "#000000", + "linkedTrees": [], + "logo": "https://cdn.forgerock.com/platform/themes/contrast/logo-contrast.svg", + "logoAltText": "Contrast", + "logoEnabled": true, + "logoHeight": "72", + "logoProfile": "data:image/svg+xml,%0A%3Csvg width='46' height='46' viewBox='0 0 46 46' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24.3477 13.5664H43.9438C43.5192 12.6317 43.0319 11.734 42.4905 10.8711H24.3477V13.5664Z' fill='black'/%3E%3Cpath d='M24.3477 8.17578H40.5261C39.6996 7.2052 38.7974 6.30182 37.8224 5.48047H24.3477V8.17578Z' fill='black'/%3E%3Cpath d='M24.3477 40.5195H37.8224C38.7975 39.6982 39.6996 38.7948 40.5261 37.8242H24.3477V40.5195Z' fill='black'/%3E%3Cpath d='M24.3477 2.78516H33.8482C31.0136 1.27039 27.7313 0.198195 24.3477 0V2.78516Z' fill='black'/%3E%3Cpath d='M24.3477 18.957H45.6208C45.4566 18.0405 45.2557 17.1372 44.9856 16.2617H24.3477V18.957Z' fill='black'/%3E%3Cpath d='M24.3477 21.6523V24.3477H45.9317C45.958 23.8992 46 23.4549 46 23C46 22.5451 45.958 22.1008 45.9317 21.6523H24.3477Z' fill='black'/%3E%3Cpath d='M0 23C0 35.1781 9.64778 45.2964 21.6523 46V0C9.64778 0.703566 0 10.8219 0 23Z' fill='black'/%3E%3Cpath d='M24.3477 46C27.7313 45.8018 31.0136 44.7296 33.8482 43.2148H24.3477V46Z' fill='black'/%3E%3Cpath d='M45.6208 27.043H24.3477V29.7383H44.9857C45.2557 28.8628 45.4566 27.9595 45.6208 27.043V27.043Z' fill='black'/%3E%3Cpath d='M24.3477 35.1289H42.4905C43.0319 34.266 43.5192 33.3683 43.9438 32.4336H24.3477V35.1289Z' fill='black'/%3E%3C/svg%3E%0A", + "logoProfileAltText": "Contrast", + "logoProfileCollapsed": "data:image/svg+xml,%0A%3Csvg width='46' height='46' viewBox='0 0 46 46' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24.3477 13.5664H43.9438C43.5192 12.6317 43.0319 11.734 42.4905 10.8711H24.3477V13.5664Z' fill='black'/%3E%3Cpath d='M24.3477 8.17578H40.5261C39.6996 7.2052 38.7974 6.30182 37.8224 5.48047H24.3477V8.17578Z' fill='black'/%3E%3Cpath d='M24.3477 40.5195H37.8224C38.7975 39.6982 39.6996 38.7948 40.5261 37.8242H24.3477V40.5195Z' fill='black'/%3E%3Cpath d='M24.3477 2.78516H33.8482C31.0136 1.27039 27.7313 0.198195 24.3477 0V2.78516Z' fill='black'/%3E%3Cpath d='M24.3477 18.957H45.6208C45.4566 18.0405 45.2557 17.1372 44.9856 16.2617H24.3477V18.957Z' fill='black'/%3E%3Cpath d='M24.3477 21.6523V24.3477H45.9317C45.958 23.8992 46 23.4549 46 23C46 22.5451 45.958 22.1008 45.9317 21.6523H24.3477Z' fill='black'/%3E%3Cpath d='M0 23C0 35.1781 9.64778 45.2964 21.6523 46V0C9.64778 0.703566 0 10.8219 0 23Z' fill='black'/%3E%3Cpath d='M24.3477 46C27.7313 45.8018 31.0136 44.7296 33.8482 43.2148H24.3477V46Z' fill='black'/%3E%3Cpath d='M45.6208 27.043H24.3477V29.7383H44.9857C45.2557 28.8628 45.4566 27.9595 45.6208 27.043V27.043Z' fill='black'/%3E%3Cpath d='M24.3477 35.1289H42.4905C43.0319 34.266 43.5192 33.3683 43.9438 32.4336H24.3477V35.1289Z' fill='black'/%3E%3C/svg%3E%0A", + "logoProfileCollapsedAltText": "", + "logoProfileCollapsedHeight": "22", + "logoProfileHeight": "22", + "name": "Contrast", + "pageTitle": "#23282e", + "primaryColor": "#000000", + "primaryOffColor": "#000000", + "profileBackgroundColor": "#FFFFFF", + "profileMenuHighlightColor": "#FFFFFF", + "profileMenuHoverColor": "#FFFFFF", + "profileMenuHoverTextColor": "#000000", + "profileMenuTextHighlightColor": "#455469", + "secondaryColor": "#69788b", + "textColor": "#ffffff", + }, + ], + }, + }, + "uilocale/fr": { + "_id": "uilocale/fr", + "admin": { + "overrides": { + "AppLogoURI": "URI du logo de l’application", + "EmailAddress": "Adresse e-mail", + "Name": "Nom", + "Owners": "Les propriétaires", + }, + "sideMenu": { + "securityQuestions": "Questions de sécurité", + }, + }, + "enduser": { + "overrides": { + "FirstName": "Prénom", + "LastName": "Nom de famille", + }, + "pages": { + "dashboard": { + "widgets": { + "welcome": { + "greeting": "Bonjour", }, }, }, - "managed/alpha_usermeta": { - "dnTemplate": "ou=usermeta,o=alpha,o=root,ou=identities", - "jsonAttribute": "fr-idm-json", - "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", - "objectClasses": [ - "uidObject", - "fr-idm-generic-obj", + }, + }, + "login": { + "login": { + "next": "Suivant", + }, + "overrides": { + "Password": "Mot de passe", + "UserName": "Nom d'utilisateur", + }, + }, + "shared": { + "sideMenu": { + "dashboard": "Tableau de bord", + }, + }, + }, + "undefined": { + "_id": "undefined", + "mapping": { + "mapping/managedBravo_user_managedBravo_user0": { + "_id": "mapping/managedBravo_user_managedBravo_user0", + "consentRequired": false, + "displayName": "managedBravo_user_managedBravo_user0", + "icon": null, + "name": "managedBravo_user_managedBravo_user0", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/bravo_user", + "target": "managed/bravo_user", + }, + }, + }, + }, + "meta": Any, +} +`; + +exports[`frodo idm export "frodo idm export -aD idmTestDir7 -m idm": should export all idm config entities for on prem idm 1`] = `0`; + +exports[`frodo idm export "frodo idm export -aD idmTestDir7 -m idm": should export all idm config entities for on prem idm 2`] = `""`; + +exports[`frodo idm export "frodo idm export -aD idmTestDir7 -m idm": should export all idm config entities for on prem idm: idmTestDir7/all.idm.json 1`] = ` +{ + "idm": { + "access": { + "_id": "access", + "configs": [ + { + "actions": "", + "methods": "read", + "pattern": "health", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "info/*", + "roles": "*", + }, + { + "actions": "login,logout", + "methods": "read,action", + "pattern": "authentication", + "roles": "*", + }, + { + "actions": "validate", + "methods": "action", + "pattern": "util/validateQueryFilter", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/themeconfig", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/theme-*", + "roles": "*", + }, + { + "actions": "*", + "customAuthz": "checkIfAnyFeatureEnabled(['registration', 'passwordReset'])", + "methods": "read", + "pattern": "config/selfservice/kbaConfig", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/dashboard", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "query", + "pattern": "info/features", + "roles": "*", + }, + { + "actions": "listPrivileges", + "methods": "action", + "pattern": "privilege", + "roles": "*", + }, + { + "actions": "*", + "methods": "read", + "pattern": "privilege/*", + "roles": "*", + }, + { + "actions": "submitRequirements", + "methods": "read,action", + "pattern": "selfservice/termsAndConditions", + "roles": "*", + }, + { + "actions": "submitRequirements", + "methods": "read,action", + "pattern": "selfservice/kbaUpdate", + "roles": "*", + }, + { + "actions": "", + "customAuthz": "isMyProfile()", + "methods": "read,query", + "pattern": "profile/*", + "roles": "*", + }, + { + "actions": "*", + "customAuthz": "checkIfAnyFeatureEnabled('kba')", + "methods": "read", + "pattern": "selfservice/kba", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "read", + "pattern": "schema/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "action,query", + "pattern": "consent", + "roles": "internal/role/openidm-authorized", + }, + { + "customAuthz": "checkIfApiRequest()", + "methods": "read", + "pattern": "*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "*", + "excludePatterns": "repo,repo/*", + "methods": "*", + "pattern": "*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "", + "methods": "create,read,update,delete,patch,query", + "pattern": "system/*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "*", + "methods": "script", + "pattern": "system/*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "test,testConfig,createconfiguration,liveSync,authenticate", + "methods": "action", + "pattern": "system/*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "*", + "customAuthz": "disallowCommandAction()", + "methods": "*", + "pattern": "repo", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "*", + "customAuthz": "disallowCommandAction()", + "methods": "*", + "pattern": "repo/*", + "roles": "internal/role/openidm-admin", + }, + { + "actions": "command", + "customAuthz": "request.additionalParameters.commandId === 'delete-mapping-links'", + "methods": "action", + "pattern": "repo/link", + "roles": "internal/role/openidm-admin", + }, + { + "methods": "create,read,query,patch", + "pattern": "managed/*", + "roles": "internal/role/platform-provisioning", + }, + { + "methods": "read,query", + "pattern": "internal/role/*", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "*", + "methods": "create,read,action,update", + "pattern": "profile/*", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "*", + "methods": "read,action", + "pattern": "policy/*", + "roles": "internal/role/platform-provisioning", + }, + { + "methods": "read", + "pattern": "schema/*", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "*", + "methods": "action,query", + "pattern": "consent", + "roles": "internal/role/platform-provisioning", + }, + { + "methods": "read", + "pattern": "selfservice/kba", + "roles": "internal/role/platform-provisioning", + }, + { + "methods": "read", + "pattern": "selfservice/terms", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "sendTemplate", + "methods": "action", + "pattern": "external/email", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "authenticate", + "methods": "action", + "pattern": "system/*", + "roles": "internal/role/platform-provisioning", + }, + { + "actions": "*", + "methods": "read,action", + "pattern": "policy/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "reauthenticate", + "methods": "action", + "pattern": "authentication", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "bind,unbind", + "customAuthz": "ownDataOnly()", + "methods": "read,action,delete", + "pattern": "*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "patch", + "customAuthz": "ownDataOnly() && onlyEditableManagedObjectProperties('user', []) && reauthIfProtectedAttributeChange()", + "methods": "update,patch,action", + "pattern": "*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "read", + "pattern": "endpoint/getprocessesforuser", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "methods": "query", + "pattern": "endpoint/gettasksview", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "complete", + "customAuthz": "isMyTask()", + "methods": "action", + "pattern": "workflow/taskinstance/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "customAuthz": "canUpdateTask()", + "methods": "read,update", + "pattern": "workflow/taskinstance/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "customAuthz": "isAllowedToStartProcess()", + "methods": "create", + "pattern": "workflow/processinstance", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "read", + "methods": "*", + "pattern": "workflow/processdefinition/*", + "roles": "internal/role/openidm-authorized", + }, + { + "customAuthz": "restrictPatchToFields(['password'])", + "methods": "patch", + "pattern": "managed/user/*", + "roles": "internal/role/openidm-cert", + }, + { + "actions": "*", + "customAuthz": "ownRelationshipProperty('_meta', false)", + "methods": "read", + "pattern": "internal/usermeta/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "customAuthz": "ownRelationshipProperty('_notifications', true)", + "methods": "read,delete", + "pattern": "internal/notification/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "*", + "customAuthz": "ownRelationshipCollection(['idps','_meta','_notifications'])", + "methods": "read,query", + "pattern": "managed/user/*", + "roles": "internal/role/openidm-authorized", + }, + { + "actions": "deleteNotificationsForTarget", + "customAuthz": "request.additionalParameters.target === (context.security.authorization.component + '/' + context.security.authorization.id)", + "methods": "action", + "pattern": "notification", + "roles": "internal/role/openidm-authorized", + }, + ], + }, + "apiVersion": { + "_id": "apiVersion", + "warning": { + "enabled": { + "$bool": "&{openidm.apiVersion.warning.enabled|false}", + }, + "includeScripts": { + "$bool": "&{openidm.apiVersion.warning.includeScripts|false}", + }, + "logFilterResourcePaths": [ + "audit", + "authentication", + "cluster", + "config", + "consent", + "csv", + "external/rest", + "identityProviders", + "info", + "internal", + "internal/role", + "internal/user", + "internal/usermeta", + "managed", + "managed/assignment", + "managed/organization", + "managed/role", + "managed/user", + "notification", + "policy", + "privilege", + "profile", + "recon", + "recon/assoc", + "repo", + "selfservice/kba", + "selfservice/terms", + "scheduler/job", + "scheduler/trigger", + "schema", + "sync", + "sync/mappings", + "system", + "taskscanner", + ], + }, + }, + "audit": { + "_id": "audit", + "auditServiceConfig": { + "availableAuditEventHandlers": [ + "org.forgerock.audit.handlers.csv.CsvAuditEventHandler", + "org.forgerock.audit.handlers.jms.JmsAuditEventHandler", + "org.forgerock.audit.handlers.json.JsonAuditEventHandler", + "org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler", + "org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler", + "org.forgerock.openidm.audit.impl.RouterAuditEventHandler", + "org.forgerock.audit.handlers.syslog.SyslogAuditEventHandler", + ], + "caseInsensitiveFields": [ + "/access/http/request/headers", + "/access/http/response/headers", + ], + "filterPolicies": { + "field": { + "excludeIf": [], + "includeIf": [], + }, + }, + "handlerForQueries": "json", + }, + "eventHandlers": [ + { + "class": "org.forgerock.audit.handlers.json.JsonAuditEventHandler", + "config": { + "buffering": { + "maxSize": 100000, + "writeInterval": "100 millis", + }, + "enabled": { + "$bool": "&{openidm.audit.handler.json.enabled|true}", + }, + "logDirectory": "&{idm.data.dir}/audit", + "name": "json", + "topics": [ + "access", + "activity", + "sync", + "authentication", + "config", + ], + }, + }, + { + "class": "org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler", + "config": { + "enabled": { + "$bool": "&{openidm.audit.handler.stdout.enabled|false}", + }, + "name": "stdout", + "topics": [ + "access", + "activity", + "sync", + "authentication", + "config", ], - "properties": { - "target": { - "propertyName": "_meta", - "resourcePath": "managed/alpha_user", - "type": "reverseReference", - }, + }, + }, + { + "class": "org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler", + "config": { + "enabled": { + "$bool": "&{openidm.audit.handler.repo.enabled|false}", }, + "name": "repo", + "topics": [ + "access", + "activity", + "sync", + "authentication", + "config", + ], }, - "managed/bravo_group": { - "dnTemplate": "ou=groups,o=bravo,o=root,ou=identities", - "idGenerator": { - "propertyName": "name", - "type": "property", + }, + ], + "eventTopics": { + "access": { + "defaultEvents": true, + "filter": { + "script": { + "globals": {}, + "source": "//seantest +", + "type": "groovy", }, - "jsonAttribute": "fr-idm-managed-group-json", - "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", - "namingStrategy": { - "dnAttribute": "cn", - "type": "clientDnNaming", + }, + "name": "access", + }, + "activity": { + "defaultEvents": true, + "filter": { + "actions": [ + "create", + "update", + "delete", + "patch", + "action", + ], + }, + "name": "activity", + "passwordFields": [ + "password", + ], + "watchedFields": [], + }, + "authentication": { + "defaultEvents": true, + "filter": { + "script": { + "globals": {}, + "source": "//seantest +", + "type": "text/javascript", }, - "nativeId": false, - "objectClasses": [ - "top", - "groupOfURLs", - "fr-idm-managed-group", + }, + "name": "authentication", + }, + "config": { + "defaultEvents": true, + "filter": { + "actions": [ + "create", + "update", + "delete", + "patch", + "action", ], + }, + "name": "config", + }, + "recon": { + "defaultEvents": true, + "name": "recon", + }, + "sync": { + "defaultEvents": true, + "name": "sync", + }, + }, + "exceptionFormatter": { + "globals": {}, + "source": "//seantest + +console.log("hello world");console.log("hello world");console.log("hello world"); +", + "type": "text/javascript", + }, + }, + "authentication": { + "_id": "authentication", + "serverAuthContext": { + "authModules": [ + { + "enabled": true, + "name": "STATIC_USER", "properties": { - "_id": { - "ldapAttribute": "cn", - "primaryKey": true, - "type": "simple", - "writability": "createOnly", - }, - "condition": { - "ldapAttribute": "fr-idm-managed-group-condition", - "type": "simple", - }, - "description": { - "ldapAttribute": "description", - "type": "simple", + "augmentSecurityContext": { + "globals": {}, + "source": "//seantest +", + "type": "text/javascript", }, - "members": { - "isMultiValued": true, - "propertyName": "groups", - "resourcePath": "managed/bravo_user", - "type": "reverseReference", + "defaultUserRoles": [ + "internal/role/openidm-reg", + ], + "password": { + "$crypto": { + "type": "x-simple-encryption", + "value": { + "cipher": "AES/CBC/PKCS5Padding", + "data": "fzE1J3P9LZOmuCuecCDnaQ==", + "iv": "nhI8UHymNRChGIyOC+5Sag==", + "keySize": 32, + "mac": "XfF7VE/o5Shv6AqW1Xe3TQ==", + "purpose": "idm.config.encryption", + "salt": "v0NHakffrjBJNL3zjhEOtg==", + "stableId": "openidm-sym-default", + }, + }, }, + "queryOnResource": "internal/user", + "username": "anonymous", }, }, - "managed/bravo_organization": { - "dnTemplate": "ou=organization,o=bravo,o=root,ou=identities", - "jsonAttribute": "fr-idm-managed-organization-json", - "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", - "objectClasses": [ - "uidObject", - "fr-idm-managed-organization", - "fr-ext-attrs", - ], + { + "enabled": true, + "name": "STATIC_USER", "properties": { - "_id": { - "ldapAttribute": "uid", - "type": "simple", - }, - "admins": { - "isMultiValued": true, - "propertyName": "adminOfOrg", - "resourcePath": "managed/bravo_user", - "type": "reverseReference", - }, - "children": { - "isMultiValued": true, - "propertyName": "parent", - "resourcePath": "managed/bravo_organization", - "type": "reverseReference", - }, - "members": { - "isMultiValued": true, - "propertyName": "memberOfOrg", - "resourcePath": "managed/bravo_user", - "type": "reverseReference", - }, - "name": { - "ldapAttribute": "fr-idm-managed-organization-name", - "type": "simple", - }, - "owners": { - "isMultiValued": true, - "propertyName": "ownerOfOrg", - "resourcePath": "managed/bravo_user", - "type": "reverseReference", - }, - "parent": { - "ldapAttribute": "fr-idm-managed-organization-parent", - "primaryKey": "uid", - "resourcePath": "managed/bravo_organization", - "type": "reference", - }, + "defaultUserRoles": [ + "internal/role/openidm-authorized", + "internal/role/openidm-admin", + ], + "password": "&{openidm.admin.password}", + "queryOnResource": "internal/user", + "username": "openidm-admin", }, }, - "managed/bravo_role": { - "dnTemplate": "ou=role,o=bravo,o=root,ou=identities", - "jsonAttribute": "fr-idm-managed-role-json", - "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchManagedRole", - "objectClasses": [ - "uidObject", - "fr-idm-managed-role", - ], + { + "enabled": true, + "name": "MANAGED_USER", "properties": { - "members": { - "isMultiValued": true, - "propertyName": "roles", - "resourcePath": "managed/bravo_user", - "type": "reverseReference", + "augmentSecurityContext": { + "source": "var augmentYield = require('auth/customAuthz').setProtectedAttributes(security);require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, 'privileges', 'privilegeAssignments', augmentYield); +", + "type": "text/javascript", + }, + "defaultUserRoles": [ + "internal/role/openidm-authorized", + ], + "propertyMapping": { + "additionalUserFields": [ + "adminOfOrg", + "ownerOfOrg", + ], + "authenticationId": "username", + "userCredential": "password", + "userRoles": "authzRoles", }, + "queryId": "credential-query", + "queryOnResource": "managed/user", }, }, - "managed/bravo_user": { - "dnTemplate": "ou=user,o=bravo,o=root,ou=identities", - "jsonAttribute": "fr-idm-custom-attrs", - "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", - "namingStrategy": { - "dnAttribute": "fr-idm-uuid", - "type": "clientDnNaming", + ], + "sessionModule": { + "name": "JWT_SESSION", + "properties": { + "enableDynamicRoles": false, + "isHttpOnly": true, + "maxTokenLifeMinutes": 120, + "sessionOnly": true, + "tokenIdleTimeMinutes": 30, + }, + }, + }, + }, + "cluster": { + "_id": "cluster", + "enabled": true, + "instanceCheckInInterval": 5000, + "instanceCheckInOffset": 0, + "instanceId": "&{openidm.node.id}", + "instanceRecoveryTimeout": 30000, + "instanceTimeout": 30000, + }, + "emailTemplate/forgottenUsername": { + "_id": "emailTemplate/forgottenUsername", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

", + "fr": "{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

", + }, + "mimeType": "text/html", + "subject": { + "en": "Account Information - username", + "fr": "Informations sur le compte - nom d'utilisateur", + }, + }, + "emailTemplate/registration": { + "_id": "emailTemplate/registration", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

This is your registration email.

Email verification link

", + "fr": "

Ceci est votre mail d'inscription.

Lien de vérification email

", + }, + "mimeType": "text/html", + "subject": { + "en": "Register new account", + "fr": "Créer un nouveau compte", + }, + }, + "emailTemplate/resetPassword": { + "_id": "emailTemplate/resetPassword", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Click to reset your password

Password reset link

", + "fr": "

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

", + }, + "mimeType": "text/html", + "subject": { + "en": "Reset your password", + "fr": "Réinitialisez votre mot de passe", + }, + }, + "emailTemplate/updatePassword": { + "_id": "emailTemplate/updatePassword", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Verify email to update password

Update password link

", + }, + "mimeType": "text/html", + "subject": { + "en": "Update your password", + }, + }, + "emailTemplate/welcome": { + "_id": "emailTemplate/welcome", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Welcome to OpenIDM. Your username is '{{object.userName}}'.

", + "fr": "

Bienvenue sur OpenIDM. Votre nom d'utilisateur est '{{object.userName}}'.

", + }, + "mimeType": "text/html", + "subject": { + "en": "Your account has been created", + "fr": "Votre compte vient d’être créé !", + }, + }, + "endpoint/getavailableuserstoassign": { + "_id": "endpoint/getavailableuserstoassign", + "file": "workflow/getavailableuserstoassign.js", + "type": "text/javascript", + }, + "endpoint/getprocessesforuser": { + "_id": "endpoint/getprocessesforuser", + "file": "workflow/getprocessesforuser.js", + "type": "text/javascript", + }, + "endpoint/gettasksview": { + "_id": "endpoint/gettasksview", + "file": "workflow/gettasksview.js", + "type": "text/javascript", + }, + "endpoint/mappingDetails": { + "_id": "endpoint/mappingDetails", + "context": "endpoint/mappingDetails", + "file": "mappingDetails.js", + "type": "text/javascript", + }, + "endpoint/oauthproxy": { + "_id": "endpoint/oauthproxy", + "context": "endpoint/oauthproxy", + "file": "oauthProxy.js", + "type": "text/javascript", + }, + "endpoint/removeRepoPathFromRelationships": { + "_id": "endpoint/removeRepoPathFromRelationships", + "file": "update/removeRepoPathFromRelationships.js", + "type": "text/javascript", + }, + "endpoint/repairMetadata": { + "_id": "endpoint/repairMetadata", + "file": "meta/metadataScanner.js", + "type": "text/javascript", + }, + "endpoint/updateInternalUserAndInternalRoleEntries": { + "_id": "endpoint/updateInternalUserAndInternalRoleEntries", + "file": "update/updateInternalUserAndInternalRoleEntries.js", + "type": "text/javascript", + }, + "endpoint/validateQueryFilter": { + "_id": "endpoint/validateQueryFilter", + "context": "util/validateQueryFilter", + "source": "try { org.forgerock.openidm.query.StringQueryFilters.parse(request.content._queryFilter).accept(new org.forgerock.util.query.MapFilterVisitor(), null); } catch (e) { throw { 'code' : 400, 'message' : e.message } }; +", + "type": "text/javascript", + }, + "external.rest": { + "_id": "external.rest", + "hostnameVerifier": "&{openidm.external.rest.hostnameVerifier}", + }, + "internal": { + "_id": "internal", + "objects": [ + { + "name": "role", + "properties": { + "authzMembers": { + "items": { + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + }, }, - "nativeId": false, - "objectClasses": [ - "person", - "organizationalPerson", - "inetOrgPerson", - "iplanet-am-user-service", - "devicePrintProfilesContainer", - "deviceProfilesContainer", - "kbaInfoContainer", - "fr-idm-managed-user-explicit", - "forgerock-am-dashboard-service", - "inetuser", - "iplanet-am-auth-configuration-service", - "iplanet-am-managed-person", - "iPlanetPreferences", - "oathDeviceProfilesContainer", - "pushDeviceProfilesContainer", - "sunAMAuthAccountLockout", - "sunFMSAML2NameIdentifier", - "webauthnDeviceProfilesContainer", - "fr-idm-hybrid-obj", - "fr-ext-attrs", + }, + }, + { + "name": "notification", + "properties": { + "target": { + "reversePropertyName": "_notifications", + }, + }, + }, + ], + }, + "managed": { + "_id": "managed", + "objects": [ + { + "lastSync": { + "effectiveAssignmentsProperty": "effectiveAssignments", + "lastSyncProperty": "lastSync", + }, + "name": "user", + "notifications": { + "property": "_notifications", + }, + "postDelete": { + "source": "//seantest exract mapping UPDATED + +//seantest test test adsfasdf updated +", + "type": "text/javascript", + }, + "schema": { + "$schema": "http://json-schema.org/draft-03/schema", + "icon": "fa-user", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User", + "mat-icon": "people", + "order": [ + "_id", + "userName", + "password", + "givenName", + "sn", + "mail", + "description", + "accountStatus", + "telephoneNumber", + "postalAddress", + "city", + "postalCode", + "country", + "stateProvince", + "roles", + "assignments", + "manager", + "authzRoles", + "reports", + "effectiveRoles", + "effectiveAssignments", + "lastSync", + "kbaInfo", + "preferences", + "consentedMappings", + "ownerOfOrg", + "adminOfOrg", + "memberOfOrg", + "memberOfOrgIDs", + "activeDate", + "inactiveDate", ], "properties": { "_id": { - "ldapAttribute": "fr-idm-uuid", - "primaryKey": true, - "type": "simple", - }, - "_meta": { - "isMultiValued": false, - "ldapAttribute": "fr-idm-managed-user-meta", - "primaryKey": "uid", - "resourcePath": "managed/bravo_usermeta", - "type": "reference", - }, - "_notifications": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-managed-user-notifications", - "primaryKey": "uid", - "resourcePath": "internal/notification", - "type": "reference", + "description": "User ID", + "isPersonal": false, + "policies": [ + { + "params": { + "forbiddenChars": [ + "/", + ], + }, + "policyId": "cannot-contain-characters", + }, + ], + "searchable": false, + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": false, }, "accountStatus": { - "ldapAttribute": "inetUserStatus", - "type": "simple", + "default": "active", + "description": "Status", + "isPersonal": false, + "policies": [ + { + "params": { + "regexp": "^(active|inactive)$", + }, + "policyId": "regexpMatches", + }, + ], + "searchable": true, + "title": "Status", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true, }, - "adminOfOrg": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-managed-organization-admin", - "primaryKey": "uid", - "resourcePath": "managed/bravo_organization", - "type": "reference", + "activeDate": { + "description": "Active Date", + "format": "datetime", + "isPersonal": false, + "policies": [ + { + "policyId": "valid-datetime", + }, + ], + "searchable": false, + "title": "Active Date", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true, }, - "aliasList": { - "isMultiValued": true, - "ldapAttribute": "iplanet-am-user-alias-list", - "type": "simple", + "adminOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/organization", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "admins", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Administer", + "type": "array", + "userEditable": false, + "viewable": true, }, - "assignedDashboard": { - "isMultiValued": true, - "ldapAttribute": "assignedDashboard", - "type": "simple", + "assignments": { + "description": "Assignments", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Assignment", + "path": "managed/assignment", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Assignments Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Assignments", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, }, "authzRoles": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-managed-user-authzroles-internal-role", - "primaryKey": "cn", - "resourcePath": "internal/role", - "type": "reference", + "description": "Authorization Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Authorization Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Internal Role", + "path": "internal/role", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "authzMembers", + "reverseRelationship": true, + "title": "Authorization Roles Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Authorization Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, }, "city": { - "ldapAttribute": "l", - "type": "simple", - }, - "cn": { - "ldapAttribute": "cn", - "type": "simple", + "description": "City", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "title": "City", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, }, "consentedMappings": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-consentedMapping", - "type": "json", + "description": "Consented Mappings", + "isPersonal": false, + "isVirtual": false, + "items": { + "order": [ + "mapping", + "consentDate", + ], + "properties": { + "consentDate": { + "description": "Consent Date", + "format": "datetime", + "policies": [ + { + "policyId": "valid-datetime", + }, + ], + "searchable": true, + "title": "Consent Date", + "type": "string", + "userEditable": true, + "viewable": true, + }, + "mapping": { + "description": "Mapping", + "searchable": true, + "title": "Mapping", + "type": "string", + "userEditable": true, + "viewable": true, + }, + }, + "required": [ + "mapping", + "consentDate", + ], + "title": "Consented Mapping", + "type": "object", + }, + "returnByDefault": false, + "searchable": false, + "title": "Consented Mappings", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false, }, "country": { - "ldapAttribute": "co", - "type": "simple", + "description": "Country", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "title": "Country", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, }, "description": { - "ldapAttribute": "description", - "type": "simple", - }, - "displayName": { - "ldapAttribute": "displayName", - "type": "simple", + "description": "Description", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "searchable": true, + "title": "Description", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, }, "effectiveAssignments": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-effectiveAssignment", - "type": "json", - }, - "effectiveGroups": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-effectiveGroup", - "type": "json", + "description": "Effective Assignments", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Assignments Items", + "type": "object", + }, + "queryConfig": { + "referencedObjectFields": [ + "*", + ], + "referencedRelationshipFields": [ + [ + "roles", + "assignments", + ], + [ + "assignments", + ], + ], + }, + "returnByDefault": true, + "title": "Effective Assignments", + "type": "array", + "usageDescription": "", + "viewable": false, }, "effectiveRoles": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-effectiveRole", - "type": "json", - }, - "frIndexedDate1": { - "ldapAttribute": "fr-attr-idate1", - "type": "simple", - }, - "frIndexedDate2": { - "ldapAttribute": "fr-attr-idate2", - "type": "simple", - }, - "frIndexedDate3": { - "ldapAttribute": "fr-attr-idate3", - "type": "simple", - }, - "frIndexedDate4": { - "ldapAttribute": "fr-attr-idate4", - "type": "simple", - }, - "frIndexedDate5": { - "ldapAttribute": "fr-attr-idate5", - "type": "simple", - }, - "frIndexedInteger1": { - "ldapAttribute": "fr-attr-iint1", - "type": "simple", - }, - "frIndexedInteger2": { - "ldapAttribute": "fr-attr-iint2", - "type": "simple", - }, - "frIndexedInteger3": { - "ldapAttribute": "fr-attr-iint3", - "type": "simple", - }, - "frIndexedInteger4": { - "ldapAttribute": "fr-attr-iint4", - "type": "simple", - }, - "frIndexedInteger5": { - "ldapAttribute": "fr-attr-iint5", - "type": "simple", - }, - "frIndexedMultivalued1": { - "isMultiValued": true, - "ldapAttribute": "fr-attr-imulti1", - "type": "simple", - }, - "frIndexedMultivalued2": { - "isMultiValued": true, - "ldapAttribute": "fr-attr-imulti2", - "type": "simple", - }, - "frIndexedMultivalued3": { - "isMultiValued": true, - "ldapAttribute": "fr-attr-imulti3", - "type": "simple", - }, - "frIndexedMultivalued4": { - "isMultiValued": true, - "ldapAttribute": "fr-attr-imulti4", - "type": "simple", - }, - "frIndexedMultivalued5": { - "isMultiValued": true, - "ldapAttribute": "fr-attr-imulti5", - "type": "simple", + "description": "Effective Roles", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Roles Items", + "type": "object", + }, + "queryConfig": { + "referencedRelationshipFields": [ + "roles", + ], + }, + "returnByDefault": true, + "title": "Effective Roles", + "type": "array", + "usageDescription": "", + "viewable": false, }, - "frIndexedString1": { - "ldapAttribute": "fr-attr-istr1", - "type": "simple", + "givenName": { + "description": "First Name", + "isPersonal": true, + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "searchable": true, + "title": "First Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, }, - "frIndexedString2": { - "ldapAttribute": "fr-attr-istr2", - "type": "simple", + "inactiveDate": { + "description": "Inactive Date", + "format": "datetime", + "isPersonal": false, + "policies": [ + { + "policyId": "valid-datetime", + }, + ], + "searchable": false, + "title": "Inactive Date", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true, }, - "frIndexedString3": { - "ldapAttribute": "fr-attr-istr3", - "type": "simple", + "kbaInfo": { + "description": "KBA Info", + "isPersonal": true, + "items": { + "order": [ + "answer", + "customQuestion", + "questionId", + ], + "properties": { + "answer": { + "description": "Answer", + "type": "string", + }, + "customQuestion": { + "description": "Custom question", + "type": "string", + }, + "questionId": { + "description": "Question ID", + "type": "string", + }, + }, + "required": [], + "title": "KBA Info Items", + "type": "object", + }, + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false, }, - "frIndexedString4": { - "ldapAttribute": "fr-attr-istr4", - "type": "simple", + "lastSync": { + "description": "Last Sync timestamp", + "isPersonal": false, + "order": [ + "effectiveAssignments", + "timestamp", + ], + "properties": { + "effectiveAssignments": { + "description": "Effective Assignments", + "items": { + "title": "Effective Assignments Items", + "type": "object", + }, + "title": "Effective Assignments", + "type": "array", + }, + "timestamp": { + "description": "Timestamp", + "policies": [ + { + "policyId": "valid-datetime", + }, + ], + "type": "string", + }, + }, + "required": [], + "scope": "private", + "searchable": false, + "title": "Last Sync timestamp", + "type": "object", + "usageDescription": "", + "viewable": false, }, - "frIndexedString5": { - "ldapAttribute": "fr-attr-istr5", - "type": "simple", + "mail": { + "description": "Email Address", + "isPersonal": true, + "policies": [ + { + "policyId": "valid-email-address-format", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "searchable": true, + "title": "Email Address", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, }, - "frUnindexedDate1": { - "ldapAttribute": "fr-attr-date1", - "type": "simple", + "manager": { + "description": "Manager", + "isPersonal": false, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Manager _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "reports", + "reverseRelationship": true, + "searchable": false, + "title": "Manager", + "type": "relationship", + "usageDescription": "", + "userEditable": false, + "validate": true, + "viewable": true, }, - "frUnindexedDate2": { - "ldapAttribute": "fr-attr-date2", - "type": "simple", + "memberOfOrg": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/organization", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations to which I Belong", + "type": "array", + "userEditable": false, + "viewable": true, }, - "frUnindexedDate3": { - "ldapAttribute": "fr-attr-date3", - "type": "simple", + "memberOfOrgIDs": { + "isVirtual": true, + "items": { + "title": "org identifiers", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs", + ], + "referencedRelationshipFields": [ + "memberOfOrg", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "MemberOfOrgIDs", + "type": "array", + "userEditable": false, + "viewable": false, }, - "frUnindexedDate4": { - "ldapAttribute": "fr-attr-date4", - "type": "simple", + "ownerOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/organization", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "owners", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Own", + "type": "array", + "userEditable": false, + "viewable": true, }, - "frUnindexedDate5": { - "ldapAttribute": "fr-attr-date5", - "type": "simple", + "password": { + "description": "Password", + "encryption": { + "purpose": "idm.password.encryption", + }, + "isPersonal": false, + "isProtected": true, + "policies": [ + { + "params": { + "minLength": 8, + }, + "policyId": "minimum-length", + }, + { + "params": { + "numCaps": 1, + }, + "policyId": "at-least-X-capitals", + }, + { + "params": { + "numNums": 1, + }, + "policyId": "at-least-X-numbers", + }, + { + "params": { + "disallowedFields": [ + "userName", + "givenName", + "sn", + ], + }, + "policyId": "cannot-contain-others", + }, + ], + "scope": "private", + "searchable": false, + "title": "Password", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": false, }, - "frUnindexedInteger1": { - "ldapAttribute": "fr-attr-int1", - "type": "simple", + "postalAddress": { + "description": "Address 1", + "isPersonal": true, + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "title": "Address 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, }, - "frUnindexedInteger2": { - "ldapAttribute": "fr-attr-int2", - "type": "simple", + "postalCode": { + "description": "Postal Code", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "title": "Postal Code", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, }, - "frUnindexedInteger3": { - "ldapAttribute": "fr-attr-int3", - "type": "simple", + "preferences": { + "description": "Preferences", + "isPersonal": false, + "order": [ + "updates", + "marketing", + ], + "properties": { + "marketing": { + "description": "Send me special offers and services", + "type": "boolean", + }, + "updates": { + "description": "Send me news and updates", + "type": "boolean", + }, + }, + "required": [], + "searchable": false, + "title": "Preferences", + "type": "object", + "usageDescription": "", + "userEditable": true, + "viewable": true, }, - "frUnindexedInteger4": { - "ldapAttribute": "fr-attr-int4", - "type": "simple", + "reports": { + "description": "Direct Reports", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Direct Reports Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "manager", + "reverseRelationship": true, + "title": "Direct Reports Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Direct Reports", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, }, - "frUnindexedInteger5": { - "ldapAttribute": "fr-attr-int5", - "type": "simple", + "roles": { + "description": "Provisioning Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Role", + "path": "managed/role", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Provisioning Roles Items", + "type": "relationship", + "validate": true, + }, + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Provisioning Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true, }, - "frUnindexedMultivalued1": { - "isMultiValued": true, - "ldapAttribute": "fr-attr-multi1", - "type": "simple", + "sn": { + "description": "Last Name", + "isPersonal": true, + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "searchable": true, + "title": "Last Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, }, - "frUnindexedMultivalued2": { - "isMultiValued": true, - "ldapAttribute": "fr-attr-multi2", - "type": "simple", + "stateProvince": { + "description": "State/Province", + "isPersonal": false, + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "title": "State/Province", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, }, - "frUnindexedMultivalued3": { - "isMultiValued": true, - "ldapAttribute": "fr-attr-multi3", - "type": "simple", + "telephoneNumber": { + "description": "Telephone Number", + "isPersonal": true, + "pattern": "^\\+?([0-9\\- \\(\\)])*$", + "policies": [ + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "title": "Telephone Number", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, }, - "frUnindexedMultivalued4": { - "isMultiValued": true, - "ldapAttribute": "fr-attr-multi4", - "type": "simple", + "userName": { + "description": "Username", + "isPersonal": true, + "policies": [ + { + "policyId": "valid-username", + }, + { + "params": { + "forbiddenChars": [ + "/", + ], + }, + "policyId": "cannot-contain-characters", + }, + { + "params": { + "minLength": 1, + }, + "policyId": "minimum-length", + }, + { + "params": { + "maxLength": 255, + }, + "policyId": "maximum-length", + }, + ], + "searchable": true, + "title": "Username", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true, }, - "frUnindexedMultivalued5": { - "isMultiValued": true, - "ldapAttribute": "fr-attr-multi5", - "type": "simple", + }, + "required": [ + "userName", + "givenName", + "sn", + "mail", + ], + "title": "User", + "type": "object", + "viewable": true, + }, + }, + { + "name": "role", + "onCreate": { + "globals": {}, + "source": "//asdfasdfadsfasdf + + +//tests +//test +", + "type": "text/javascript", + }, + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "icon": "fa-check-square", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role", + "mat-icon": "assignment_ind", + "order": [ + "_id", + "name", + "description", + "members", + "assignments", + "condition", + "temporalConstraints", + ], + "properties": { + "_id": { + "description": "Role ID", + "searchable": false, + "title": "Name", + "type": "string", + "viewable": false, }, - "frUnindexedString1": { - "ldapAttribute": "fr-attr-str1", - "type": "simple", + "assignments": { + "description": "Managed Assignments", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Managed Assignments Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Assignment", + "path": "managed/assignment", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Managed Assignments Items", + "type": "relationship", + "validate": true, + }, + "notifyRelationships": [ + "members", + ], + "returnByDefault": false, + "title": "Managed Assignments", + "type": "array", + "viewable": true, }, - "frUnindexedString2": { - "ldapAttribute": "fr-attr-str2", - "type": "simple", + "condition": { + "description": "A conditional filter for this role", + "isConditional": true, + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false, }, - "frUnindexedString3": { - "ldapAttribute": "fr-attr-str3", - "type": "simple", + "description": { + "description": "The role description, used for display purposes.", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true, }, - "frUnindexedString4": { - "ldapAttribute": "fr-attr-str4", - "type": "simple", + "members": { + "description": "Role Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Role Members Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Role Members Items", + "type": "relationship", + "validate": true, + }, + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Role Members", + "type": "array", + "viewable": true, }, - "frUnindexedString5": { - "ldapAttribute": "fr-attr-str5", - "type": "simple", + "name": { + "description": "The role name, used for display purposes.", + "policies": [ + { + "policyId": "unique", + }, + ], + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true, }, - "givenName": { - "ldapAttribute": "givenName", - "type": "simple", + "temporalConstraints": { + "description": "An array of temporal constraints for a role", + "isTemporalConstraint": true, + "items": { + "order": [ + "duration", + ], + "properties": { + "duration": { + "description": "Duration", + "type": "string", + }, + }, + "required": [ + "duration", + ], + "title": "Temporal Constraints Items", + "type": "object", + }, + "notifyRelationships": [ + "members", + ], + "returnByDefault": true, + "title": "Temporal Constraints", + "type": "array", + "viewable": false, }, - "groups": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-managed-user-groups", - "primaryKey": "cn", - "resourcePath": "managed/bravo_group", - "type": "reference", + }, + "required": [ + "name", + ], + "title": "Role", + "type": "object", + }, + }, + { + "attributeEncryption": {}, + "name": "assignment", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "A role assignment", + "icon": "fa-key", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment", + "mat-icon": "vpn_key", + "order": [ + "_id", + "name", + "description", + "mapping", + "attributes", + "linkQualifiers", + "roles", + "members", + "condition", + "weight", + ], + "properties": { + "_id": { + "description": "The assignment ID", + "searchable": false, + "title": "Name", + "type": "string", + "viewable": false, }, - "kbaInfo": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-kbaInfo", - "type": "json", + "attributes": { + "description": "The attributes operated on by this assignment.", + "items": { + "order": [ + "assignmentOperation", + "unassignmentOperation", + "name", + "value", + ], + "properties": { + "assignmentOperation": { + "description": "Assignment operation", + "type": "string", + }, + "name": { + "description": "Name", + "type": "string", + }, + "unassignmentOperation": { + "description": "Unassignment operation", + "type": "string", + }, + "value": { + "description": "Value", + "type": "string", + }, + }, + "required": [], + "title": "Assignment Attributes Items", + "type": "object", + }, + "notifyRelationships": [ + "roles", + "members", + ], + "title": "Assignment Attributes", + "type": "array", + "viewable": true, }, - "lastSync": { - "ldapAttribute": "fr-idm-lastSync", - "type": "json", + "condition": { + "description": "A conditional filter for this assignment", + "isConditional": true, + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false, }, - "mail": { - "ldapAttribute": "mail", - "type": "simple", + "description": { + "description": "The assignment description, used for display purposes.", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true, }, - "manager": { - "isMultiValued": false, - "ldapAttribute": "fr-idm-managed-user-manager", - "primaryKey": "uid", - "resourcePath": "managed/bravo_user", - "type": "reference", + "linkQualifiers": { + "description": "Conditional link qualifiers to restrict this assignment to.", + "items": { + "title": "Link Qualifiers Items", + "type": "string", + }, + "title": "Link Qualifiers", + "type": "array", + "viewable": true, }, - "memberOfOrg": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-managed-organization-member", - "primaryKey": "uid", - "resourcePath": "managed/bravo_organization", - "type": "reference", + "mapping": { + "description": "The name of the mapping this assignment applies to", + "policies": [ + { + "policyId": "mapping-exists", + }, + ], + "searchable": true, + "title": "Mapping", + "type": "string", + "viewable": true, }, - "memberOfOrgIDs": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-managed-user-memberoforgid", - "type": "simple", + "members": { + "description": "Assignment Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string", + }, + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Assignment Members Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "assignments", + "reverseRelationship": true, + "title": "Assignment Members Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Assignment Members", + "type": "array", + "viewable": true, }, - "ownerOfOrg": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-managed-organization-owner", - "primaryKey": "uid", - "resourcePath": "managed/bravo_organization", - "type": "reference", + "name": { + "description": "The assignment name, used for display purposes.", + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true, }, - "password": { - "ldapAttribute": "userPassword", - "type": "simple", + "roles": { + "description": "Managed Roles", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string", + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string", + }, + }, + "title": "Managed Roles Items _refProperties", + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Role", + "notify": true, + "path": "managed/role", + "query": { + "fields": [ + "name", + ], + "queryFilter": "true", + }, + }, + ], + "reversePropertyName": "assignments", + "reverseRelationship": true, + "title": "Managed Roles Items", + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "title": "Managed Roles", + "type": "array", + "userEditable": false, + "viewable": true, }, - "postalAddress": { - "ldapAttribute": "street", - "type": "simple", + "weight": { + "description": "The weight of the assignment.", + "notifyRelationships": [ + "roles", + "members", + ], + "searchable": false, + "title": "Weight", + "type": [ + "number", + "null", + ], + "viewable": true, }, - "postalCode": { - "ldapAttribute": "postalCode", - "type": "simple", + }, + "required": [ + "name", + "description", + "mapping", + ], + "title": "Assignment", + "type": "object", + }, + }, + { + "name": "organization", + "onCreate": { + "globals": {}, + "source": "//seantest +", + "type": "text/javascript", + }, + "onRead": { + "globals": {}, + "source": "//seantest +", + "type": "groovy", + }, + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "An organization or tenant, whose resources are managed by organizational admins.", + "icon": "fa-building", + "mat-icon": "domain", + "order": [ + "name", + "description", + "owners", + "admins", + "members", + "parent", + "children", + "adminIDs", + "ownerIDs", + "parentAdminIDs", + "parentOwnerIDs", + "parentIDs", + ], + "properties": { + "adminIDs": { + "isVirtual": true, + "items": { + "title": "admin ids", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + ], + "referencedRelationshipFields": [ + "admins", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "Admin user ids", + "type": "array", + "userEditable": false, + "viewable": false, }, - "preferences": { - "ldapAttribute": "fr-idm-preferences", - "type": "json", + "admins": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "notify": false, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "adminOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "notifyRelationships": [ + "children", + ], + "returnByDefault": false, + "searchable": false, + "title": "Administrators", + "type": "array", + "userEditable": false, + "viewable": true, }, - "profileImage": { - "ldapAttribute": "labeledURI", - "type": "simple", + "children": { + "description": "Child Organizations", + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/organization", + "query": { + "fields": [ + "name", + "description", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "parent", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Child Organizations", + "type": "array", + "userEditable": false, + "viewable": false, }, - "reports": { - "isMultiValued": true, - "propertyName": "manager", - "resourcePath": "managed/bravo_user", - "type": "reverseReference", + "description": { + "searchable": true, + "title": "Description", + "type": "string", + "userEditable": true, + "viewable": true, }, - "roles": { - "isMultiValued": true, - "ldapAttribute": "fr-idm-managed-user-roles", - "primaryKey": "uid", - "resourcePath": "managed/bravo_role", - "type": "reference", + "members": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "notify": true, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "memberOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "returnByDefault": false, + "searchable": false, + "title": "Members", + "type": "array", + "userEditable": false, + "viewable": true, }, - "sn": { - "ldapAttribute": "sn", - "type": "simple", + "name": { + "searchable": true, + "title": "Name", + "type": "string", + "userEditable": true, + "viewable": true, }, - "stateProvince": { - "ldapAttribute": "st", - "type": "simple", + "ownerIDs": { + "isVirtual": true, + "items": { + "title": "owner ids", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + ], + "referencedRelationshipFields": [ + "owners", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "Owner user ids", + "type": "array", + "userEditable": false, + "viewable": false, }, - "telephoneNumber": { - "ldapAttribute": "telephoneNumber", - "type": "simple", + "owners": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "User", + "notify": false, + "path": "managed/user", + "query": { + "fields": [ + "userName", + "givenName", + "sn", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "reversePropertyName": "ownerOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true, + }, + "notifyRelationships": [ + "children", + ], + "returnByDefault": false, + "searchable": false, + "title": "Owner", + "type": "array", + "userEditable": false, + "viewable": true, }, - "userName": { - "ldapAttribute": "uid", - "type": "simple", + "parent": { + "description": "Parent Organization", + "notifyRelationships": [ + "children", + "members", + ], + "notifySelf": true, + "properties": { + "_ref": { + "type": "string", + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string", + }, + }, + "type": "object", + }, + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/organization", + "query": { + "fields": [ + "name", + "description", + ], + "queryFilter": "true", + "sortKeys": [], + }, + }, + ], + "returnByDefault": false, + "reversePropertyName": "children", + "reverseRelationship": true, + "searchable": false, + "title": "Parent Organization", + "type": "relationship", + "userEditable": false, + "validate": true, + "viewable": true, }, - }, - }, - "managed/bravo_usermeta": { - "dnTemplate": "ou=usermeta,o=bravo,o=root,ou=identities", - "jsonAttribute": "fr-idm-json", - "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", - "objectClasses": [ - "uidObject", - "fr-idm-generic-obj", - ], - "properties": { - "target": { - "propertyName": "_meta", - "resourcePath": "managed/bravo_user", - "type": "reverseReference", + "parentAdminIDs": { + "isVirtual": true, + "items": { + "title": "user ids of parent admins", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "adminIDs", + "parentAdminIDs", + ], + "referencedRelationshipFields": [ + "parent", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent admins", + "type": "array", + "userEditable": false, + "viewable": false, }, - }, - }, - "managed/teammembermeta": { - "dnTemplate": "ou=teammembermeta,o=root,ou=identities", - "jsonAttribute": "fr-idm-json", - "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", - "objectClasses": [ - "uidObject", - "fr-idm-generic-obj", - ], - "properties": { - "target": { - "propertyName": "_meta", - "resourcePath": "managed/teammember", - "type": "reverseReference", + "parentIDs": { + "isVirtual": true, + "items": { + "title": "parent org ids", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs", + ], + "referencedRelationshipFields": [ + "parent", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "parent org ids", + "type": "array", + "userEditable": false, + "viewable": false, + }, + "parentOwnerIDs": { + "isVirtual": true, + "items": { + "title": "user ids of parent owners", + "type": "string", + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "ownerIDs", + "parentOwnerIDs", + ], + "referencedRelationshipFields": [ + "parent", + ], + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent owners", + "type": "array", + "userEditable": false, + "viewable": false, }, }, - }, - "reconprogressstate": { - "dnTemplate": "ou=reconprogressstate,dc=openidm,dc=example,dc=com", - }, - "relationships": { - "dnTemplate": "ou=relationships,dc=openidm,dc=example,dc=com", - "jsonAttribute": "fr-idm-relationship-json", - "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchRelationship", - "objectClasses": [ - "uidObject", - "fr-idm-relationship", + "required": [ + "name", ], + "title": "Organization", + "type": "object", }, - "scheduler": { - "dnTemplate": "ou=scheduler,dc=openidm,dc=example,dc=com", - }, - "scheduler/*": { - "dnTemplate": "ou=scheduler,dc=openidm,dc=example,dc=com", + }, + { + "name": "seantestmanagedobject", + "schema": { + "description": null, + "icon": "fa-database", + "mat-icon": null, + "title": null, }, - "ui/*": { - "dnTemplate": "ou=ui,dc=openidm,dc=example,dc=com", + }, + ], + }, + "mapping/mappingtest": { + "_id": "mapping/mappingtest", + "consentRequired": false, + "displayName": "mappingtest", + "icon": null, + "name": "mappingtest", + "policies": [ + { + "action": { + "globals": {}, + "source": "//asdfasdf +", + "type": "text/javascript", }, - "updates": { - "dnTemplate": "ou=updates,dc=openidm,dc=example,dc=com", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": { + "globals": {}, + "source": "//asdfasdfasdf +", + "type": "groovy", }, + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "ABSENT", + }, + ], + "properties": [], + "source": "managed/assignment", + "target": "managed/organization", + }, + "mapping/seantestmapping": { + "_id": "mapping/seantestmapping", + "consentRequired": false, + "displayName": "seantestmapping", + "icon": null, + "name": "seantestmapping", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/assignment", + "target": "managed/organization", + }, + "metrics": { + "_id": "metrics", + "enabled": false, + }, + "notification/passwordUpdate": { + "_id": "notification/passwordUpdate", + "condition": { + "file": "propertiesModifiedFilter.groovy", + "globals": { + "propertiesToCheck": [ + "password", + ], }, + "type": "groovy", }, - "rest2LdapOptions": { - "mvccAttribute": "etag", - "readOnUpdatePolicy": "controls", - "returnNullForMissingProperties": true, - "useMvcc": true, - "usePermissiveModify": true, - "useSubtreeDelete": true, + "enabled": { + "$bool": "&{openidm.notifications.passwordUpdate|false}", }, - "security": { - "keyManager": "jvm", - "trustManager": "jvm", + "methods": [ + "update", + "patch", + ], + "notification": { + "message": "Your password has been updated.", + "notificationType": "info", + }, + "path": "managed/user/*", + "target": { + "resource": "managed/user/{{response/_id}}", }, }, - "router": { - "_id": "router", - "filters": [], + "notification/profileUpdate": { + "_id": "notification/profileUpdate", + "condition": { + "file": "propertiesModifiedFilter.groovy", + "globals": { + "propertiesToCheck": [ + "userName", + "givenName", + "sn", + "mail", + "description", + "accountStatus", + "telephoneNumber", + "postalAddress", + "city", + "postalCode", + "country", + "stateProvince", + "preferences", + ], + }, + "type": "groovy", + }, + "enabled": { + "$bool": "&{openidm.notifications.profileUpdate|false}", + }, + "methods": [ + "update", + "patch", + ], + "notification": { + "message": "Your profile has been updated.", + "notificationType": "info", + }, + "path": "managed/user/*", + "target": { + "resource": "managed/user/{{response/_id}}", + }, }, - "script": { - "ECMAScript": { - "#javascript.debug": "&{openidm.script.javascript.debug}", - "javascript.recompile.minimumInterval": 60000, + "notificationFactory": { + "_id": "notificationFactory", + "enabled": { + "$bool": "&{openidm.notifications|false}", }, - "Groovy": { - "#groovy.disabled.global.ast.transformations": "", - "#groovy.errors.tolerance": 10, - "#groovy.output.debug": false, - "#groovy.output.verbose": false, - "#groovy.script.base": "#any class extends groovy.lang.Script", - "#groovy.script.extension": ".groovy", - "#groovy.source.encoding": "utf-8 #default US-ASCII", - "#groovy.target.bytecode": "1.5", - "#groovy.target.indy": true, - "#groovy.warnings": "likely errors #othere values [none,likely,possible,paranoia]", - "groovy.classpath": "&{idm.install.dir}/lib", - "groovy.recompile": true, - "groovy.recompile.minimumInterval": 60000, - "groovy.source.encoding": "UTF-8", - "groovy.target.directory": "&{idm.install.dir}/classes", + "threadPool": { + "maxPoolThreads": 2, + "maxQueueSize": 20000, + "steadyPoolThreads": 1, + "threadKeepAlive": 60, }, - "_id": "script", - "properties": {}, - "sources": { - "default": { - "directory": "&{idm.install.dir}/bin/defaults/script", + }, + "policy": { + "_id": "policy", + "additionalFiles": [], + "file": "policy.js", + "resources": [ + { + "calculatedProperties": { + "source": "require('selfServicePolicies').getRegistrationProperties() +", + "type": "text/javascript", + }, + "resource": "selfservice/registration", }, - "install": { - "directory": "&{idm.install.dir}", + { + "calculatedProperties": { + "source": "require('selfServicePolicies').getResetProperties() +", + "type": "text/javascript", + }, + "resource": "selfservice/reset", }, - "project": { - "directory": "&{idm.instance.dir}", + { + "properties": [ + { + "name": "_id", + "policies": [ + { + "params": { + "forbiddenChars": [ + "/", + ], + }, + "policyId": "cannot-contain-characters", + }, + ], + }, + { + "name": "password", + "policies": [ + { + "params": { + "minLength": 8, + }, + "policyId": "minimum-length", + }, + ], + }, + ], + "resource": "internal/user/*", }, - "project-script": { - "directory": "&{idm.instance.dir}/script", + { + "properties": [ + { + "name": "name", + "policies": [ + { + "policyId": "required", + }, + { + "policyId": "not-empty", + }, + { + "params": { + "forbiddenChars": [ + "/*", + ], + }, + "policyId": "cannot-contain-characters", + }, + ], + }, + { + "name": "temporalConstraints", + "policies": [ + { + "policyId": "valid-temporal-constraints", + }, + ], + }, + { + "name": "condition", + "policies": [ + { + "policyId": "valid-query-filter", + }, + ], + }, + { + "name": "privileges", + "policies": [ + { + "params": { + "types": [ + "array", + ], + }, + "policyId": "valid-type", + }, + { + "params": { + "properties": [ + { + "name": "name", + "policies": [ + { + "policyId": "required", + }, + { + "policyId": "not-empty", + }, + { + "params": { + "types": [ + "string", + ], + }, + "policyId": "valid-type", + }, + ], + }, + { + "name": "path", + "policies": [ + { + "policyId": "required", + }, + { + "policyId": "not-empty", + }, + { + "params": { + "forbiddenChars": [ + "/*", + ], + }, + "policyId": "cannot-contain-characters", + }, + { + "policyId": "valid-privilege-path", + }, + ], + }, + { + "name": "accessFlags", + "policies": [ + { + "policyId": "required", + }, + { + "policyId": "not-empty", + }, + { + "params": { + "types": [ + "array", + ], + }, + "policyId": "valid-type", + }, + { + "policyId": "valid-accessFlags-object", + }, + ], + }, + { + "name": "actions", + "policies": [ + { + "policyId": "required", + }, + { + "params": { + "types": [ + "array", + ], + }, + "policyId": "valid-type", + }, + ], + }, + { + "name": "permissions", + "policies": [ + { + "policyId": "required", + }, + { + "policyId": "not-empty", + }, + { + "params": { + "types": [ + "array", + ], + }, + "policyId": "valid-type", + }, + { + "policyId": "valid-permissions", + }, + ], + }, + { + "name": "filter", + "policies": [ + { + "params": { + "types": [ + "string", + "null", + ], + }, + "policyId": "valid-type", + }, + { + "policyId": "valid-query-filter", + }, + ], + }, + ], + }, + "policyId": "valid-array-items", + }, + ], + }, + ], + "resource": "internal/role/*", }, - }, + { + "properties": [ + { + "name": "temporalConstraints", + "policies": [ + { + "policyId": "valid-temporal-constraints", + }, + ], + }, + { + "name": "condition", + "policies": [ + { + "policyId": "valid-query-filter", + }, + ], + }, + ], + "resource": "managed/role/*", + }, + { + "properties": [ + { + "name": "objects", + "policies": [ + { + "policyId": "valid-event-scripts", + }, + ], + }, + ], + "resource": "config/managed", + }, + ], + "type": "text/javascript", }, - "secrets": { - "_id": "secrets", - "populateDefaults": true, - "stores": [ + "privilegeAssignments": { + "_id": "privilegeAssignments", + "privilegeAssignments": [ { - "class": "org.forgerock.openidm.secrets.config.FileBasedStore", - "config": { - "file": "&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}", - "mappings": [ - { - "aliases": [ - "&{openidm.config.crypto.alias|openidm-sym-default}", - "openidm-localhost", - ], - "secretId": "idm.default", - "types": [ - "ENCRYPT", - "DECRYPT", - ], - }, - { - "aliases": [ - "&{openidm.config.crypto.alias|openidm-sym-default}", - ], - "secretId": "idm.config.encryption", - "types": [ - "ENCRYPT", - "DECRYPT", - ], - }, - { - "aliases": [ - "&{openidm.config.crypto.alias|openidm-sym-default}", - ], - "secretId": "idm.password.encryption", - "types": [ - "ENCRYPT", - "DECRYPT", - ], - }, - { - "aliases": [ - "&{openidm.https.keystore.cert.alias|openidm-localhost}", - ], - "secretId": "idm.jwt.session.module.encryption", - "types": [ - "ENCRYPT", - "DECRYPT", - ], - }, - { - "aliases": [ - "&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}", - ], - "secretId": "idm.jwt.session.module.signing", - "types": [ - "SIGN", - "VERIFY", - ], - }, - { - "aliases": [ - "selfservice", - ], - "secretId": "idm.selfservice.encryption", - "types": [ - "ENCRYPT", - "DECRYPT", - ], - }, - { - "aliases": [ - "&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}", - ], - "secretId": "idm.selfservice.signing", - "types": [ - "SIGN", - "VERIFY", - ], - }, - { - "aliases": [ - "&{openidm.config.crypto.alias|openidm-sym-default}", - ], - "secretId": "idm.assignment.attribute.encryption", - "types": [ - "ENCRYPT", - "DECRYPT", - ], - }, - ], - "providerName": "&{openidm.keystore.provider|SunJCE}", - "storePassword": "&{openidm.keystore.password|changeit}", - "storetype": "&{openidm.keystore.type|JCEKS}", - }, - "name": "mainKeyStore", + "name": "ownerPrivileges", + "privileges": [ + "owner-view-update-delete-orgs", + "owner-create-orgs", + "owner-view-update-delete-admins-and-members", + "owner-create-admins", + "admin-view-update-delete-members", + "admin-create-members", + ], + "relationshipField": "ownerOfOrg", }, { - "class": "org.forgerock.openidm.secrets.config.FileBasedStore", - "config": { - "file": "&{openidm.truststore.location|&{idm.install.dir}/security/truststore}", - "mappings": [], - "providerName": "&{openidm.truststore.provider|SUN}", - "storePassword": "&{openidm.truststore.password|changeit}", - "storetype": "&{openidm.truststore.type|JKS}", - }, - "name": "mainTrustStore", + "name": "adminPrivileges", + "privileges": [ + "admin-view-update-delete-orgs", + "admin-create-orgs", + "admin-view-update-delete-members", + "admin-create-members", + ], + "relationshipField": "adminOfOrg", }, ], }, - "selfservice.kba": { - "_id": "selfservice.kba", - "kbaPropertyName": "kbaInfo", - "minimumAnswersToDefine": 1, - "minimumAnswersToVerify": 1, - "questions": { - "1": { - "en": "What's your favorite color?", + "privileges": { + "_id": "privileges", + "privileges": [ + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "owners", + "readOnly": true, + }, + { + "attribute": "admins", + "readOnly": false, + }, + { + "attribute": "members", + "readOnly": false, + }, + { + "attribute": "parent", + "readOnly": false, + }, + { + "attribute": "children", + "readOnly": false, + }, + { + "attribute": "parentIDs", + "readOnly": true, + }, + { + "attribute": "adminIDs", + "readOnly": true, + }, + { + "attribute": "parentAdminIDs", + "readOnly": true, + }, + { + "attribute": "ownerIDs", + "readOnly": true, + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/ownerIDs eq "{{_id}}" or /parentOwnerIDs eq "{{_id}}"", + "name": "owner-view-update-delete-orgs", + "path": "managed/organization", + "permissions": [ + "VIEW", + "UPDATE", + "DELETE", + ], }, - }, - }, - "selfservice.terms": { - "_id": "selfservice.terms", - "active": "0.0", - "uiConfig": { - "buttonText": "Accept", - "displayName": "We've updated our terms", - "purpose": "You must accept the updated terms in order to proceed.", - }, - "versions": [ { - "createDate": "2019-10-28T04:20:11.320Z", - "termsTranslations": { - "en": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.", - }, - "version": "0.0", + "accessFlags": [ + { + "attribute": "name", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "owners", + "readOnly": true, + }, + { + "attribute": "admins", + "readOnly": false, + }, + { + "attribute": "members", + "readOnly": false, + }, + { + "attribute": "parent", + "readOnly": false, + }, + { + "attribute": "children", + "readOnly": false, + }, + { + "attribute": "parentIDs", + "readOnly": true, + }, + { + "attribute": "adminIDs", + "readOnly": true, + }, + { + "attribute": "parentAdminIDs", + "readOnly": true, + }, + { + "attribute": "ownerIDs", + "readOnly": true, + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true, + }, + ], + "actions": [], + "filter": "/parent pr", + "name": "owner-create-orgs", + "path": "managed/organization", + "permissions": [ + "CREATE", + ], }, - ], - }, - "servletfilter/cors": { - "_id": "servletfilter/cors", - "initParams": { - "allowCredentials": false, - "allowedHeaders": "authorization,accept,content-type,origin,x-requested-with,cache-control,accept-api-version,if-match,if-none-match", - "allowedMethods": "GET,POST,PUT,DELETE,PATCH", - "allowedOrigins": "*", - "chainPreflight": false, - "exposedHeaders": "WWW-Authenticate", - }, - "urlPatterns": [ - "/*", - ], - }, - "servletfilter/payload": { - "_id": "servletfilter/payload", - "initParams": { - "maxRequestSizeInMegabytes": 5, - }, - "urlPatterns": [ - "&{openidm.servlet.alias}/*", - ], - }, - "servletfilter/upload": { - "_id": "servletfilter/upload", - "initParams": { - "maxRequestSizeInMegabytes": 50, - }, - "urlPatterns": [ - "&{openidm.servlet.upload.alias}/*", - ], - }, - "sync": { - "_id": "sync", - "mappings": [ { - "_id": "sync/managedBravo_user_managedBravo_user", - "consentRequired": false, - "displayName": "managedBravo_user_managedBravo_user", - "icon": null, - "name": "managedBravo_user_managedBravo_user", - "policies": [ + "accessFlags": [ { - "action": "ASYNC", - "situation": "ABSENT", + "attribute": "userName", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "ALL_GONE", + "attribute": "password", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "AMBIGUOUS", + "attribute": "givenName", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "CONFIRMED", + "attribute": "sn", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "FOUND", + "attribute": "mail", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "FOUND_ALREADY_LINKED", + "attribute": "description", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "LINK_ONLY", + "attribute": "accountStatus", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "MISSING", + "attribute": "telephoneNumber", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "SOURCE_IGNORED", + "attribute": "postalAddress", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "SOURCE_MISSING", + "attribute": "city", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "TARGET_IGNORED", + "attribute": "postalCode", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "UNASSIGNED", + "attribute": "country", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "UNQUALIFIED", + "attribute": "stateProvince", + "readOnly": false, + }, + { + "attribute": "roles", + "readOnly": false, + }, + { + "attribute": "manager", + "readOnly": false, + }, + { + "attribute": "authzRoles", + "readOnly": false, + }, + { + "attribute": "reports", + "readOnly": false, + }, + { + "attribute": "effectiveRoles", + "readOnly": false, + }, + { + "attribute": "effectiveAssignments", + "readOnly": false, + }, + { + "attribute": "lastSync", + "readOnly": false, + }, + { + "attribute": "kbaInfo", + "readOnly": false, + }, + { + "attribute": "preferences", + "readOnly": false, + }, + { + "attribute": "consentedMappings", + "readOnly": false, + }, + { + "attribute": "memberOfOrg", + "readOnly": false, + }, + { + "attribute": "adminOfOrg", + "readOnly": false, + }, + { + "attribute": "ownerOfOrg", + "readOnly": true, + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true, }, ], - "properties": [], - "source": "managed/bravo_user", - "syncAfter": [], - "target": "managed/bravo_user", + "actions": [], + "filter": "/memberOfOrgIDs eq "__org_id_placeholder__"", + "name": "owner-view-update-delete-admins-and-members", + "path": "managed/user", + "permissions": [ + "VIEW", + "DELETE", + "UPDATE", + ], }, { - "_id": "sync/managedAlpha_application_managedBravo_application", - "consentRequired": true, - "displayName": "Test Application Mapping", - "icon": null, - "name": "managedAlpha_application_managedBravo_application", - "policies": [ + "accessFlags": [ { - "action": "ASYNC", - "situation": "ABSENT", + "attribute": "userName", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "ALL_GONE", + "attribute": "password", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "AMBIGUOUS", + "attribute": "givenName", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "CONFIRMED", + "attribute": "sn", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "FOUND", + "attribute": "mail", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "FOUND_ALREADY_LINKED", + "attribute": "description", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "LINK_ONLY", + "attribute": "accountStatus", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "MISSING", + "attribute": "telephoneNumber", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "SOURCE_IGNORED", + "attribute": "postalAddress", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "SOURCE_MISSING", + "attribute": "city", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "TARGET_IGNORED", + "attribute": "postalCode", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "UNASSIGNED", + "attribute": "country", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "UNQUALIFIED", + "attribute": "stateProvince", + "readOnly": false, + }, + { + "attribute": "roles", + "readOnly": false, + }, + { + "attribute": "manager", + "readOnly": false, + }, + { + "attribute": "authzRoles", + "readOnly": false, + }, + { + "attribute": "reports", + "readOnly": false, + }, + { + "attribute": "effectiveRoles", + "readOnly": false, + }, + { + "attribute": "effectiveAssignments", + "readOnly": false, + }, + { + "attribute": "lastSync", + "readOnly": false, + }, + { + "attribute": "kbaInfo", + "readOnly": false, + }, + { + "attribute": "preferences", + "readOnly": false, + }, + { + "attribute": "consentedMappings", + "readOnly": false, + }, + { + "attribute": "memberOfOrg", + "readOnly": false, + }, + { + "attribute": "adminOfOrg", + "readOnly": false, + }, + { + "attribute": "ownerOfOrg", + "readOnly": true, + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true, }, ], - "properties": [ + "actions": [], + "filter": "/memberOfOrg/0 pr and /adminOfOrg/0 pr and !(/ownerOfOrg pr)", + "name": "owner-create-admins", + "path": "managed/user", + "permissions": [ + "CREATE", + ], + }, + { + "accessFlags": [ { - "source": "authoritative", - "target": "_id", + "attribute": "name", + "readOnly": false, + }, + { + "attribute": "description", + "readOnly": false, + }, + { + "attribute": "owners", + "readOnly": true, + }, + { + "attribute": "admins", + "readOnly": true, + }, + { + "attribute": "members", + "readOnly": false, + }, + { + "attribute": "parent", + "readOnly": false, + }, + { + "attribute": "children", + "readOnly": false, + }, + { + "attribute": "parentIDs", + "readOnly": true, + }, + { + "attribute": "adminIDs", + "readOnly": true, + }, + { + "attribute": "parentAdminIDs", + "readOnly": true, + }, + { + "attribute": "ownerIDs", + "readOnly": true, + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true, }, ], - "source": "managed/alpha_application", - "sourceQuery": { - "_queryFilter": "(eq "" or eq "")", - }, - "syncAfter": [ - "managedBravo_user_managedBravo_user", + "actions": [], + "filter": "/adminIDs eq "{{_id}}" or /parentAdminIDs eq "{{_id}}"", + "name": "admin-view-update-delete-orgs", + "path": "managed/organization", + "permissions": [ + "VIEW", + "UPDATE", + "DELETE", ], - "target": "managed/bravo_application", - "targetQuery": { - "_queryFilter": "!(eq "")", - }, }, { - "_id": "sync/managedAlpha_user_managedBravo_user", - "consentRequired": true, - "displayName": "Test Mapping for Frodo", - "icon": null, - "name": "managedAlpha_user_managedBravo_user", - "policies": [ + "accessFlags": [ { - "action": "ASYNC", - "situation": "ABSENT", + "attribute": "name", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "ALL_GONE", + "attribute": "description", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "AMBIGUOUS", + "attribute": "owners", + "readOnly": true, }, { - "action": "ASYNC", - "situation": "CONFIRMED", + "attribute": "admins", + "readOnly": true, }, { - "action": "ASYNC", - "situation": "FOUND", + "attribute": "members", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "FOUND_ALREADY_LINKED", + "attribute": "parent", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "LINK_ONLY", + "attribute": "children", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "MISSING", + "attribute": "parentIDs", + "readOnly": true, + }, + { + "attribute": "adminIDs", + "readOnly": true, + }, + { + "attribute": "parentAdminIDs", + "readOnly": true, + }, + { + "attribute": "ownerIDs", + "readOnly": true, + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true, }, + ], + "actions": [], + "filter": "/parent pr", + "name": "admin-create-orgs", + "path": "managed/organization", + "permissions": [ + "CREATE", + ], + }, + { + "accessFlags": [ { - "action": "ASYNC", - "situation": "SOURCE_IGNORED", + "attribute": "userName", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "SOURCE_MISSING", + "attribute": "password", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "TARGET_IGNORED", + "attribute": "givenName", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "UNASSIGNED", + "attribute": "sn", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "UNQUALIFIED", + "attribute": "mail", + "readOnly": false, }, - ], - "properties": [ { - "condition": { - "globals": {}, - "source": "console.log("Hello World!");", - "type": "text/javascript", - }, - "default": [ - "Default value string", - ], - "source": "accountStatus", - "target": "applications", - "transform": { - "globals": {}, - "source": "console.log("hello");", - "type": "text/javascript", - }, + "attribute": "description", + "readOnly": false, }, - ], - "source": "managed/alpha_user", - "syncAfter": [ - "managedBravo_user_managedBravo_user", - "managedAlpha_application_managedBravo_application", - ], - "target": "managed/bravo_user", - }, - { - "_id": "sync/managedBravo_user_managedAlpha_user", - "consentRequired": false, - "displayName": "Frodo test mapping", - "icon": null, - "name": "managedBravo_user_managedAlpha_user", - "policies": [ { - "action": "ASYNC", - "situation": "ABSENT", + "attribute": "accountStatus", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "ALL_GONE", + "attribute": "telephoneNumber", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "AMBIGUOUS", + "attribute": "postalAddress", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "CONFIRMED", + "attribute": "city", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "FOUND", + "attribute": "postalCode", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "FOUND_ALREADY_LINKED", + "attribute": "country", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "LINK_ONLY", + "attribute": "stateProvince", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "MISSING", + "attribute": "roles", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "SOURCE_IGNORED", + "attribute": "manager", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "SOURCE_MISSING", + "attribute": "authzRoles", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "TARGET_IGNORED", + "attribute": "reports", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "UNASSIGNED", + "attribute": "effectiveRoles", + "readOnly": false, }, { - "action": "ASYNC", - "situation": "UNQUALIFIED", + "attribute": "effectiveAssignments", + "readOnly": false, }, - ], - "properties": [], - "source": "managed/bravo_user", - "syncAfter": [ - "managedBravo_user_managedBravo_user", - "managedAlpha_application_managedBravo_application", - "managedAlpha_user_managedBravo_user", - ], - "target": "managed/alpha_user", - }, - { - "_id": "sync/AlphaUser2GoogleApps", - "consentRequired": false, - "correlationQuery": [ { - "expressionTree": { - "all": [ - "__NAME__", - ], - }, - "file": "ui/correlateTreeToQueryFilter.js", - "linkQualifier": "default", - "mapping": "AlphaUser2GoogleApps", - "type": "text/javascript", + "attribute": "lastSync", + "readOnly": false, }, - ], - "displayName": "AlphaUser2GoogleApps", - "enableSync": { - "$bool": "&{esv.gac.enable.mapping}", - }, - "icon": null, - "name": "AlphaUser2GoogleApps", - "onCreate": { - "globals": {}, - "source": "target.orgUnitPath = "/NewAccounts";", - "type": "text/javascript", - }, - "onUpdate": { - "globals": {}, - "source": "//testing1234 -target.givenName = oldTarget.givenName; -target.familyName = oldTarget.familyName; -target.__NAME__ = oldTarget.__NAME__;", - "type": "text/javascript", - }, - "policies": [ { - "action": "EXCEPTION", - "situation": "AMBIGUOUS", + "attribute": "kbaInfo", + "readOnly": false, }, { - "action": "UNLINK", - "situation": "SOURCE_MISSING", + "attribute": "preferences", + "readOnly": false, }, { - "action": { - "globals": {}, - "source": "// Timing Constants -var ATTEMPT = 6; // Number of attempts to find the Google user. -var SLEEP_TIME = 500; // Milliseconds between retries. -var SYSTEM_ENDPOINT = "system/GoogleApps/__ACCOUNT__"; -var MAPPING_NAME = "AlphaUser2GoogleApps"; -var GOOGLE_DOMAIN = identityServer.getProperty("esv.gac.domain"); -var googleEmail = source.userName + "@" + GOOGLE_DOMAIN; -var frUserGUID = source._id; -var resultingAction = "ASYNC"; - -// Get the Google GUID -var linkQueryParams = {'_queryFilter': 'firstId eq "' + frUserGUID + '" and linkType eq "' + MAPPING_NAME + '"'}; -var linkResults = openidm.query("repo/link/", linkQueryParams, null); -var googleGUID; - -if (linkResults.resultCount === 1) { - googleGUID = linkResults.result[0].secondId; -} - -var queryResults; // Resulting query from looking for the Google user. -var params = {'_queryFilter': '__UID__ eq "' + googleGUID + '"'}; - -for (var i = 1; i <= ATTEMPT; i++) { - queryResults = openidm.query(SYSTEM_ENDPOINT, params); - if (queryResults.result && queryResults.result.length > 0) { - logger.info("idmlog: ---AlphaUser2GoogleApps - Missing->UPDATE - Result found in " + i + " attempts. Query result: " + JSON.stringify(queryResults)); - resultingAction = "UPDATE"; - break; - } - java.lang.Thread.sleep(SLEEP_TIME); // Wait before trying again. -} - -if (!queryResults.result || queryResults.resultCount === 0) { - logger.warn("idmlog: ---AlphaUser2GoogleApps - Missing->UNLINK - " + googleEmail + " not found after " + ATTEMPT + " attempts."); - resultingAction = "UNLINK"; -} -resultingAction; -", - "type": "text/javascript", - }, - "situation": "MISSING", + "attribute": "consentedMappings", + "readOnly": false, }, { - "action": "EXCEPTION", - "situation": "FOUND_ALREADY_LINKED", + "attribute": "memberOfOrg", + "readOnly": false, }, { - "action": "IGNORE", - "situation": "UNQUALIFIED", + "attribute": "adminOfOrg", + "readOnly": true, }, { - "action": "IGNORE", - "situation": "UNASSIGNED", + "attribute": "ownerOfOrg", + "readOnly": true, }, { - "action": "UNLINK", - "situation": "LINK_ONLY", + "attribute": "memberOfOrgIDs", + "readOnly": true, }, + ], + "actions": [], + "filter": "/memberOfOrgIDs eq "__org_id_placeholder__"", + "name": "admin-view-update-delete-members", + "path": "managed/user", + "permissions": [ + "VIEW", + "DELETE", + "UPDATE", + ], + }, + { + "accessFlags": [ { - "action": "IGNORE", - "situation": "TARGET_IGNORED", + "attribute": "userName", + "readOnly": false, }, { - "action": "IGNORE", - "situation": "SOURCE_IGNORED", + "attribute": "password", + "readOnly": false, }, { - "action": "IGNORE", - "situation": "ALL_GONE", + "attribute": "givenName", + "readOnly": false, }, { - "action": "UPDATE", - "situation": "CONFIRMED", + "attribute": "sn", + "readOnly": false, }, { - "action": "LINK", - "situation": "FOUND", + "attribute": "mail", + "readOnly": false, }, { - "action": "CREATE", - "situation": "ABSENT", + "attribute": "description", + "readOnly": false, }, - ], - "properties": [ { - "condition": { - "globals": {}, - "source": "object.custom_password_encrypted != null", - "type": "text/javascript", - }, - "source": "custom_password_encrypted", - "target": "__PASSWORD__", - "transform": { - "globals": {}, - "source": "openidm.decrypt(source);", - "type": "text/javascript", - }, + "attribute": "accountStatus", + "readOnly": false, }, { - "source": "cn", - "target": "__NAME__", - "transform": { - "globals": {}, - "source": "source + "@" + identityServer.getProperty("esv.gac.domain");", - "type": "text/javascript", - }, + "attribute": "telephoneNumber", + "readOnly": false, }, { - "source": "givenName", - "target": "givenName", + "attribute": "postalAddress", + "readOnly": false, }, { - "source": "", - "target": "familyName", - "transform": { - "globals": {}, - "source": "if (source.frIndexedInteger1 > 2 && source.frIndexedInteger1 < 6) { - source.sn + " (Student)" -} else { - source.sn -}", - "type": "text/javascript", - }, + "attribute": "city", + "readOnly": false, }, - ], - "queuedSync": { - "enabled": true, - "maxQueueSize": 20000, - "maxRetries": 5, - "pageSize": 100, - "pollingInterval": 1000, - "postRetryAction": "logged-ignore", - "retryDelay": 1000, - }, - "source": "managed/alpha_user", - "syncAfter": [ - "managedBravo_user_managedBravo_user", - "managedAlpha_application_managedBravo_application", - "managedAlpha_user_managedBravo_user", - "managedBravo_user_managedAlpha_user", - ], - "target": "system/GoogleApps/__ACCOUNT__", - "validSource": { - "globals": {}, - "source": "var isGoogleEligible = true; -//var logMsg = "idmlog: ---AplhaUser2GAC (username: " + source.userName + " - userType: " + source.frIndexedInteger1 + " cn: " + source.cn + ") -"; -var logMsg = "idmlog: ---AplhaUser2GAC (username: " + source.userName + " - userType: " + source.frIndexedInteger1 + ") -"; - -//Get Applicable userTypes (no Parent accounts) -if (source.frIndexedInteger1 !== 0 && source.frIndexedInteger1 !== 1 && source.frIndexedInteger1 !== 3 && source.frIndexedInteger1 !== 4 && source.frIndexedInteger1 !== 5) { - isGoogleEligible = false; - logMsg = logMsg + " Account type not eligible."; -} - -//Make sure the account has a valid encrypted password. -if (source.custom_password_encrypted == undefined || source.custom_password_encrypted == null) { - isGoogleEligible = false; - logMsg = logMsg + " No encrypted password yet."; -} - -//Check that CN exists and has no space. -if (source.cn && source.cn.includes(' ')) { - isGoogleEligible = false; - logMsg = logMsg + " CN with a space is not allowed."; -} - -if (!isGoogleEligible) { - logMsg = logMsg + " Not sent to Google." - logger.info(logMsg); -} - -if (isGoogleEligible) { - logMsg = logMsg + " Sent to Google." - logger.info(logMsg); -} - -isGoogleEligible; -", - "type": "text/javascript", - }, - }, - ], - }, - "ui.context/admin": { - "_id": "ui.context/admin", - "defaultDir": "&{idm.install.dir}/ui/admin/default", - "enabled": true, - "extensionDir": "&{idm.install.dir}/ui/admin/extension", - "responseHeaders": { - "X-Frame-Options": "SAMEORIGIN", - }, - "urlContextRoot": "/admin", - }, - "ui.context/api": { - "_id": "ui.context/api", - "authEnabled": true, - "cacheEnabled": false, - "defaultDir": "&{idm.install.dir}/ui/api/default", - "enabled": true, - "extensionDir": "&{idm.install.dir}/ui/api/extension", - "urlContextRoot": "/api", - }, - "ui.context/enduser": { - "_id": "ui.context/enduser", - "defaultDir": "&{idm.install.dir}/ui/enduser", - "enabled": true, - "responseHeaders": { - "X-Frame-Options": "DENY", - }, - "urlContextRoot": "/", - }, - "ui.context/oauth": { - "_id": "ui.context/oauth", - "cacheEnabled": true, - "defaultDir": "&{idm.install.dir}/ui/oauth/default", - "enabled": true, - "extensionDir": "&{idm.install.dir}/ui/oauth/extension", - "urlContextRoot": "/oauthReturn", - }, - "ui/configuration": { - "_id": "ui/configuration", - "configuration": { - "defaultNotificationType": "info", - "forgotUsername": false, - "lang": "en", - "notificationTypes": { - "error": { - "iconPath": "images/notifications/error.png", - "name": "common.notification.types.error", - }, - "info": { - "iconPath": "images/notifications/info.png", - "name": "common.notification.types.info", - }, - "warning": { - "iconPath": "images/notifications/warning.png", - "name": "common.notification.types.warning", - }, - }, - "passwordReset": true, - "passwordResetLink": "", - "platformSettings": { - "adminOauthClient": "idmAdminClient", - "adminOauthClientScopes": "fr:idm:*", - "amUrl": "/am", - "loginUrl": "", - }, - "roles": { - "internal/role/openidm-admin": "ui-admin", - "internal/role/openidm-authorized": "ui-user", - }, - "selfRegistration": true, - }, - }, - "ui/dashboard": { - "_id": "ui/dashboard", - "adminDashboards": [ - { - "isDefault": true, - "name": "Quick Start", - "widgets": [ { - "cards": [ - { - "href": "#resource/managed/alpha_user/list/", - "icon": "fa-user", - "name": "Manage Users", - }, - { - "href": "#resource/managed/alpha_role/list/", - "icon": "fa-check-square-o", - "name": "Manage Roles", - }, - { - "href": "#connectors/add/", - "icon": "fa-database", - "name": "Add Connector", - }, - { - "href": "#mapping/add/", - "icon": "fa-map-marker", - "name": "Create Mapping", - }, - { - "href": "#managed/add/", - "icon": "fa-tablet", - "name": "Add Device", - }, - { - "href": "#settings/", - "icon": "fa-user", - "name": "Configure System Preferences", - }, - ], - "size": "large", - "type": "quickStart", + "attribute": "postalCode", + "readOnly": false, }, - ], - }, - { - "isDefault": false, - "name": "System Monitoring", - "widgets": [ { - "legendRange": { - "month": [ - 500, - 2500, - 5000, - ], - "week": [ - 10, - 30, - 90, - 270, - 810, - ], - "year": [ - 10000, - 40000, - 100000, - 250000, - ], - }, - "maxRange": "#24423c", - "minRange": "#b0d4cd", - "size": "large", - "type": "audit", + "attribute": "country", + "readOnly": false, }, { - "size": "large", - "type": "clusterStatus", + "attribute": "stateProvince", + "readOnly": false, }, { - "size": "large", - "type": "systemHealthFull", + "attribute": "roles", + "readOnly": false, }, { - "barchart": "false", - "size": "large", - "type": "lastRecon", + "attribute": "manager", + "readOnly": false, }, - ], - }, - { - "isDefault": false, - "name": "Resource Report", - "widgets": [ { - "selected": "activeUsers", - "size": "x-small", - "type": "counter", + "attribute": "authzRoles", + "readOnly": false, }, { - "selected": "rolesEnabled", - "size": "x-small", - "type": "counter", + "attribute": "reports", + "readOnly": false, }, { - "selected": "activeConnectors", - "size": "x-small", - "type": "counter", + "attribute": "effectiveRoles", + "readOnly": false, }, { - "size": "large", - "type": "resourceList", + "attribute": "effectiveAssignments", + "readOnly": false, }, - ], - }, - { - "isDefault": false, - "name": "Business Report", - "widgets": [ { - "graphType": "fa-pie-chart", - "providers": [ - "Username/Password", - ], - "size": "x-small", - "type": "signIns", - "widgetTitle": "Sign-Ins", + "attribute": "lastSync", + "readOnly": false, }, { - "graphType": "fa-bar-chart", - "size": "x-small", - "type": "passwordResets", - "widgetTitle": "Password Resets", + "attribute": "kbaInfo", + "readOnly": false, }, { - "graphType": "fa-line-chart", - "providers": [ - "Username/Password", - ], - "size": "x-small", - "type": "newRegistrations", - "widgetTitle": "New Registrations", + "attribute": "preferences", + "readOnly": false, }, { - "size": "x-small", - "timezone": { - "hours": "07", - "minutes": "00", - "negative": true, - }, - "type": "socialLogin", + "attribute": "consentedMappings", + "readOnly": false, }, { - "selected": "socialEnabled", - "size": "x-small", - "type": "counter", + "attribute": "memberOfOrg", + "readOnly": false, }, { - "selected": "manualRegistrations", - "size": "x-small", - "type": "counter", + "attribute": "adminOfOrg", + "readOnly": true, + }, + { + "attribute": "ownerOfOrg", + "readOnly": true, + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true, }, ], + "actions": [], + "filter": "/memberOfOrg/0 pr and !(/adminOfOrg pr) and !(/ownerOfOrg pr)", + "name": "admin-create-members", + "path": "managed/user", + "permissions": [ + "CREATE", + ], }, ], - "dashboard": { - "widgets": [ - { - "size": "large", - "type": "Welcome", - }, - ], - }, }, - "ui/profile": { - "_id": "ui/profile", - "tabs": [ - { - "name": "personalInfoTab", - "view": "org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab", - }, - { - "name": "signInAndSecurity", - "view": "org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab", - }, - { - "name": "preference", - "view": "org/forgerock/openidm/ui/user/profile/PreferencesTab", - }, - { - "name": "trustedDevice", - "view": "org/forgerock/openidm/ui/user/profile/TrustedDevicesTab", - }, - { - "name": "oauthApplication", - "view": "org/forgerock/openidm/ui/user/profile/OauthApplicationsTab", - }, - { - "name": "privacyAndConsent", - "view": "org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab", - }, - { - "name": "sharing", - "view": "org/forgerock/openidm/ui/user/profile/uma/SharingTab", - }, + "process/access": { + "_id": "process/access", + "workflowAccess": [ { - "name": "auditHistory", - "view": "org/forgerock/openidm/ui/user/profile/uma/ActivityTab", + "propertiesCheck": { + "matches": ".*", + "property": "_id", + "requiresRole": "internal/role/openidm-authorized", + }, }, { - "name": "accountControls", - "view": "org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab", - }, - ], - }, - "ui/themeconfig": { - "_id": "ui/themeconfig", - "icon": "favicon.ico", - "path": "", - "settings": { - "footer": { - "mailto": "info@forgerock.com", - }, - "loginLogo": { - "alt": "ForgeRock", - "height": "104px", - "src": "images/login-logo-dark.png", - "title": "ForgeRock", - "width": "210px", - }, - "logo": { - "alt": "ForgeRock", - "src": "images/logo-horizontal-white.png", - "title": "ForgeRock", + "propertiesCheck": { + "matches": ".*", + "property": "_id", + "requiresRole": "internal/role/openidm-admin", + }, }, - }, - "stylesheets": [ - "css/bootstrap-3.4.1-custom.css", - "css/structure.css", - "css/theme.css", ], }, - "ui/themerealm": { - "_id": "ui/themerealm", - "realm": { - "/alpha": [ - { - "_id": "4ded6d91-ceea-400a-ae3f-42209f1b0e06", - "accountFooter": " + "provisioner.openicf/csvFileConnector": { + "_id": "provisioner.openicf/csvFileConnector", + "configurationProperties": { + "csvFile": "/home/trivir/Work/csv-file-connector/csvtest.csv", + "escapeCharacter": "\\", + "fieldDelimiter": ",", + "headerPassword": "password", + "headerUid": "uid", + "newlineString": " ", - "accountFooterEnabled": true, - "accountPageSections": { - "accountControls": { - "enabled": false, - }, - "accountSecurity": { - "enabled": true, - "subsections": { - "password": { - "enabled": true, - }, - "securityQuestions": { - "enabled": false, - }, - "twoStepVerification": { - "enabled": true, - }, - "username": { - "enabled": true, - }, - }, - }, - "consent": { - "enabled": false, - }, - "oauthApplications": { - "enabled": false, - }, - "personalInformation": { - "enabled": true, - }, - "preferences": { - "enabled": false, - }, - "social": { - "enabled": false, - }, - "trustedDevices": { - "enabled": true, - }, + "quoteCharacter": """, + "spaceReplacementString": "_", + "syncFileRetentionCount": "3", + }, + "connectorRef": { + "bundleName": "org.forgerock.openicf.connectors.csvfile-connector", + "bundleVersion": "1.5.20.28", + "connectorHostRef": "", + "connectorName": "org.forgerock.openicf.csvfile.CSVFileConnector", + "displayName": "CSV File Connector", + "systemType": "provisioner.openicf", + }, + "enabled": true, + "objectTypes": { + "__ACCOUNT__": { + "$schema": "http://json-schema.org/draft-03/schema", + "id": "__ACCOUNT__", + "nativeType": "__ACCOUNT__", + "properties": { + "__NAME__": { + "nativeName": "__NAME__", + "nativeType": "string", + "type": "string", }, - "backgroundColor": "#FFFFFF", - "backgroundImage": "", - "bodyText": "#5E6D82", - "buttonRounded": "50", - "dangerColor": "#f7685b", - "favicon": "", - "isDefault": false, - "journeyFooter": " -", - "journeyFooterEnabled": true, - "journeyHeader": "
Header Content
", - "journeyHeaderEnabled": false, - "journeyJustifiedContent": "
-

Uptime & Performance Benchmarking Made Easy

-
- -", - "journeyJustifiedContentEnabled": true, - "journeyLayout": "justified-right", - "journeyTheaterMode": true, - "linkActiveColor": "#007661", - "linkColor": "#009C80", - "linkedTrees": [], - "logo": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", - "logoAltText": "Zardoz Logo", - "logoEnabled": true, - "logoHeight": "47", - "logoProfile": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", - "logoProfileAltText": "Zardaz Logo", - "logoProfileCollapsed": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", - "logoProfileCollapsedAltText": "Zardaz Logo", - "logoProfileCollapsedHeight": "28", - "logoProfileHeight": "40", - "name": "Zardoz", - "pageTitle": "#23282e", - "primaryColor": "#009C80", - "primaryOffColor": "#007661", - "profileBackgroundColor": "#FFFFFF", - "profileMenuHighlightColor": "#FFFFFF", - "profileMenuHoverColor": "#FFFFFF", - "profileMenuHoverTextColor": "#455469", - "profileMenuTextHighlightColor": "#009C80", - "secondaryColor": "#69788b", - "textColor": "#ffffff", - }, - ], - "alpha": [ - { - "_id": "cd6c93e2-52e2-4340-9770-66a588343841", - "accountFooter": "", - "accountFooterEnabled": false, - "accountPageSections": { - "accountControls": { - "enabled": false, - }, - "accountSecurity": { - "enabled": true, - "subsections": { - "password": { - "enabled": true, - }, - "securityQuestions": { - "enabled": false, - }, - "twoStepVerification": { - "enabled": true, - }, - "username": { - "enabled": true, - }, - }, - }, - "consent": { - "enabled": false, - }, - "oauthApplications": { - "enabled": false, - }, - "personalInformation": { - "enabled": true, - }, - "preferences": { - "enabled": false, - }, - "social": { - "enabled": false, - }, - "trustedDevices": { - "enabled": true, - }, + "email": { + "nativeName": "email", + "nativeType": "string", + "type": "string", + }, + "firstName": { + "nativeName": "firstName", + "nativeType": "string", + "type": "string", + }, + "lastName": { + "nativeName": "lastName", + "nativeType": "string", + "type": "string", + }, + "name": { + "nativeName": "name", + "nativeType": "string", + "type": "string", }, - "backgroundColor": "#FFFFFF", - "backgroundImage": "", - "bodyText": "#000000", - "buttonRounded": "0", - "dangerColor": "#f7685b", - "favicon": "", - "isDefault": false, - "journeyFooter": "", - "journeyFooterEnabled": false, - "journeyHeader": "
Header Content
", - "journeyHeaderEnabled": false, - "journeyJustifiedContent": "", - "journeyJustifiedContentEnabled": false, - "journeyLayout": "card", - "journeyTheaterMode": false, - "linkActiveColor": "#000000", - "linkColor": "#000000", - "linkedTrees": [], - "logo": "https://cdn.forgerock.com/platform/themes/contrast/logo-contrast.svg", - "logoAltText": "Contrast", - "logoEnabled": true, - "logoHeight": "72", - "logoProfile": "data:image/svg+xml,%0A%3Csvg width='46' height='46' viewBox='0 0 46 46' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24.3477 13.5664H43.9438C43.5192 12.6317 43.0319 11.734 42.4905 10.8711H24.3477V13.5664Z' fill='black'/%3E%3Cpath d='M24.3477 8.17578H40.5261C39.6996 7.2052 38.7974 6.30182 37.8224 5.48047H24.3477V8.17578Z' fill='black'/%3E%3Cpath d='M24.3477 40.5195H37.8224C38.7975 39.6982 39.6996 38.7948 40.5261 37.8242H24.3477V40.5195Z' fill='black'/%3E%3Cpath d='M24.3477 2.78516H33.8482C31.0136 1.27039 27.7313 0.198195 24.3477 0V2.78516Z' fill='black'/%3E%3Cpath d='M24.3477 18.957H45.6208C45.4566 18.0405 45.2557 17.1372 44.9856 16.2617H24.3477V18.957Z' fill='black'/%3E%3Cpath d='M24.3477 21.6523V24.3477H45.9317C45.958 23.8992 46 23.4549 46 23C46 22.5451 45.958 22.1008 45.9317 21.6523H24.3477Z' fill='black'/%3E%3Cpath d='M0 23C0 35.1781 9.64778 45.2964 21.6523 46V0C9.64778 0.703566 0 10.8219 0 23Z' fill='black'/%3E%3Cpath d='M24.3477 46C27.7313 45.8018 31.0136 44.7296 33.8482 43.2148H24.3477V46Z' fill='black'/%3E%3Cpath d='M45.6208 27.043H24.3477V29.7383H44.9857C45.2557 28.8628 45.4566 27.9595 45.6208 27.043V27.043Z' fill='black'/%3E%3Cpath d='M24.3477 35.1289H42.4905C43.0319 34.266 43.5192 33.3683 43.9438 32.4336H24.3477V35.1289Z' fill='black'/%3E%3C/svg%3E%0A", - "logoProfileAltText": "Contrast", - "logoProfileCollapsed": "data:image/svg+xml,%0A%3Csvg width='46' height='46' viewBox='0 0 46 46' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24.3477 13.5664H43.9438C43.5192 12.6317 43.0319 11.734 42.4905 10.8711H24.3477V13.5664Z' fill='black'/%3E%3Cpath d='M24.3477 8.17578H40.5261C39.6996 7.2052 38.7974 6.30182 37.8224 5.48047H24.3477V8.17578Z' fill='black'/%3E%3Cpath d='M24.3477 40.5195H37.8224C38.7975 39.6982 39.6996 38.7948 40.5261 37.8242H24.3477V40.5195Z' fill='black'/%3E%3Cpath d='M24.3477 2.78516H33.8482C31.0136 1.27039 27.7313 0.198195 24.3477 0V2.78516Z' fill='black'/%3E%3Cpath d='M24.3477 18.957H45.6208C45.4566 18.0405 45.2557 17.1372 44.9856 16.2617H24.3477V18.957Z' fill='black'/%3E%3Cpath d='M24.3477 21.6523V24.3477H45.9317C45.958 23.8992 46 23.4549 46 23C46 22.5451 45.958 22.1008 45.9317 21.6523H24.3477Z' fill='black'/%3E%3Cpath d='M0 23C0 35.1781 9.64778 45.2964 21.6523 46V0C9.64778 0.703566 0 10.8219 0 23Z' fill='black'/%3E%3Cpath d='M24.3477 46C27.7313 45.8018 31.0136 44.7296 33.8482 43.2148H24.3477V46Z' fill='black'/%3E%3Cpath d='M45.6208 27.043H24.3477V29.7383H44.9857C45.2557 28.8628 45.4566 27.9595 45.6208 27.043V27.043Z' fill='black'/%3E%3Cpath d='M24.3477 35.1289H42.4905C43.0319 34.266 43.5192 33.3683 43.9438 32.4336H24.3477V35.1289Z' fill='black'/%3E%3C/svg%3E%0A", - "logoProfileCollapsedAltText": "", - "logoProfileCollapsedHeight": "22", - "logoProfileHeight": "22", - "name": "Contrast", - "pageTitle": "#23282e", - "primaryColor": "#000000", - "primaryOffColor": "#000000", - "profileBackgroundColor": "#FFFFFF", - "profileMenuHighlightColor": "#FFFFFF", - "profileMenuHoverColor": "#FFFFFF", - "profileMenuHoverTextColor": "#000000", - "profileMenuTextHighlightColor": "#455469", - "secondaryColor": "#69788b", - "textColor": "#ffffff", }, - { - "_id": "e47838b5-48c9-4dea-8a84-43f4b4ea8e04", - "accountCardBackgroundColor": "#ffffff", - "accountCardHeaderColor": "#23282e", - "accountCardInnerBorderColor": "#e7eef4", - "accountCardInputBackgroundColor": "#ffffff", - "accountCardInputBorderColor": "#c0c9d5", - "accountCardInputLabelColor": "#5e6d82", - "accountCardInputSelectColor": "#e4f4fd", - "accountCardInputSelectHoverColor": "#f6f8fa", - "accountCardInputTextColor": "#23282e", - "accountCardOuterBorderColor": "#e7eef4", - "accountCardShadow": 3, - "accountCardTabActiveBorderColor": "#109cf1", - "accountCardTabActiveColor": "#e4f4fd", - "accountCardTextColor": "#5e6d82", - "accountFooter": " + "type": "object", + }, + }, + "operationTimeout": { + "AUTHENTICATE": -1, + "CREATE": -1, + "DELETE": -1, + "GET": -1, + "RESOLVEUSERNAME": -1, + "SCHEMA": -1, + "SCRIPT_ON_CONNECTOR": -1, + "SCRIPT_ON_RESOURCE": -1, + "SEARCH": -1, + "SYNC": -1, + "TEST": -1, + "UPDATE": -1, + "VALIDATE": -1, + }, + "resultsHandlerConfig": { + "enableAttributesToGetSearchResultsHandler": true, + "enableCaseInsensitiveFilter": false, + "enableFilteredResultsHandler": false, + "enableNormalizingResultsHandler": false, + }, + "syncFailureHandler": { + "maxRetries": 5, + "postRetryAction": "logged-ignore", + }, + }, + "provisioner.openicf/csvSampleConnector": { + "_id": "provisioner.openicf/csvSampleConnector", + "configurationProperties": { + "csvFile": "/home/trivir/Work/csv-file-connector/csvConnectorData.csv", + "escapeCharacter": "\\", + "fieldDelimiter": ",", + "headerPassword": "password", + "headerUid": "uid", + "newlineString": " ", - "accountFooterEnabled": true, - "accountFooterScriptTag": "", - "accountFooterScriptTagEnabled": false, - "accountNavigationBackgroundColor": "#ffffff", - "accountNavigationTextColor": "#455469", - "accountNavigationToggleBorderColor": "#e7eef4", - "accountPageSections": { - "accountControls": { - "enabled": false, - }, - "accountSecurity": { - "enabled": true, - "subsections": { - "password": { - "enabled": true, - }, - "securityQuestions": { - "enabled": false, - }, - "twoStepVerification": { - "enabled": true, - }, - "username": { - "enabled": true, + "quoteCharacter": """, + "spaceReplacementString": "_", + "syncFileRetentionCount": "3", + }, + "connectorRef": { + "bundleName": "org.forgerock.openicf.connectors.csvfile-connector", + "bundleVersion": "1.5.20.28", + "connectorHostRef": "", + "connectorName": "org.forgerock.openicf.csvfile.CSVFileConnector", + "displayName": "CSV File Connector", + "systemType": "provisioner.openicf", + }, + "enabled": true, + "objectTypes": { + "__ACCOUNT__": { + "$schema": "http://json-schema.org/draft-03/schema", + "id": "__ACCOUNT__", + "nativeType": "__ACCOUNT__", + "properties": { + "__NAME__": { + "nativeName": "__NAME__", + "nativeType": "string", + "type": "string", + }, + "description": { + "nativeName": "description", + "nativeType": "string", + "type": "string", + }, + "email": { + "nativeName": "email", + "nativeType": "string", + "type": "string", + }, + "firstname": { + "nativeName": "firstname", + "nativeType": "string", + "type": "string", + }, + "lastname": { + "nativeName": "lastname", + "nativeType": "string", + "type": "string", + }, + "mobileTelephoneNumber": { + "nativeName": "mobileTelephoneNumber", + "nativeType": "string", + "type": "string", + }, + "roles": { + "nativeName": "roles", + "nativeType": "string", + "type": "string", + }, + "username": { + "nativeName": "username", + "nativeType": "string", + "type": "string", + }, + }, + "type": "object", + }, + }, + "operationTimeout": { + "AUTHENTICATE": -1, + "CREATE": -1, + "DELETE": -1, + "GET": -1, + "RESOLVEUSERNAME": -1, + "SCHEMA": -1, + "SCRIPT_ON_CONNECTOR": -1, + "SCRIPT_ON_RESOURCE": -1, + "SEARCH": -1, + "SYNC": -1, + "TEST": -1, + "UPDATE": -1, + "VALIDATE": -1, + }, + "resultsHandlerConfig": { + "enableAttributesToGetSearchResultsHandler": true, + "enableCaseInsensitiveFilter": false, + "enableFilteredResultsHandler": false, + "enableNormalizingResultsHandler": false, + }, + }, + "repo.ds": { + "_id": "repo.ds", + "commands": { + "delete-mapping-links": { + "_queryFilter": "/linkType eq "\${mapping}"", + "operation": "DELETE", + }, + "delete-target-ids-for-recon": { + "_queryFilter": "/reconId eq "\${reconId}"", + "operation": "DELETE", + }, + }, + "embedded": false, + "ldapConnectionFactories": { + "bind": { + "connectionPoolSize": 50, + "connectionSecurity": "startTLS", + "heartBeatIntervalSeconds": 60, + "heartBeatTimeoutMilliSeconds": 10000, + "primaryLdapServers": [ + { + "hostname": "opendj-frodo-dev.classic.com", + "port": 2389, + }, + ], + "secondaryLdapServers": [], + }, + "root": { + "authentication": { + "simple": { + "bindDn": "uid=admin", + "bindPassword": { + "$crypto": { + "type": "x-simple-encryption", + "value": { + "cipher": "AES/CBC/PKCS5Padding", + "data": "lJ/B6T9e9CDKHCN8TxkD4g==", + "iv": "EdrerzwEUUkHG582cLDw5w==", + "keySize": 32, + "mac": "Aty9fXUtl4pexGlHOc+CBg==", + "purpose": "idm.config.encryption", + "salt": "BITSKlnPeT5klcuEZbngzw==", + "stableId": "openidm-sym-default", }, }, }, - "consent": { - "enabled": false, - }, - "oauthApplications": { - "enabled": false, - }, - "personalInformation": { - "enabled": true, - }, - "preferences": { - "enabled": false, + }, + }, + "inheritFrom": "bind", + }, + }, + "maxConnectionAttempts": 5, + "resourceMapping": { + "defaultMapping": { + "dnTemplate": "ou=generic,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "explicitMapping": { + "clusteredrecontargetids": { + "dnTemplate": "ou=clusteredrecontargetids,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-recon-clusteredTargetIds", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly", }, - "social": { - "enabled": false, + "reconId": { + "ldapAttribute": "fr-idm-recon-id", + "type": "simple", }, - "trustedDevices": { - "enabled": true, + "targetIds": { + "ldapAttribute": "fr-idm-recon-targetIds", + "type": "json", }, }, - "accountTableRowHoverColor": "#f6f8fa", - "backgroundColor": "#FFFFFF", - "backgroundImage": "", - "bodyText": "#5E6D82", - "boldLinks": false, - "buttonRounded": "50", - "dangerColor": "#f7685b", - "favicon": "", - "fontFamily": "Open Sans", - "isDefault": false, - "journeyA11yAddFallbackErrorHeading": true, - "journeyCardBackgroundColor": "#ffffff", - "journeyCardBorderRadius": 4, - "journeyCardHeaderBackgroundColor": "#ffffff", - "journeyCardShadow": 3, - "journeyCardTextColor": "#5e6d82", - "journeyCardTitleColor": "#23282e", - "journeyFloatingLabels": true, - "journeyFocusElement": "header", - "journeyFocusFirstFocusableItemEnabled": false, - "journeyFooter": " -", - "journeyFooterEnabled": true, - "journeyFooterScriptTag": "", - "journeyFooterScriptTagEnabled": false, - "journeyHeader": "
Header Content
", - "journeyHeaderEnabled": false, - "journeyHeaderSkipLinkEnabled": false, - "journeyInputBackgroundColor": "#ffffff", - "journeyInputBorderColor": "#c0c9d5", - "journeyInputLabelColor": "#5e6d82", - "journeyInputSelectColor": "#e4f4fd", - "journeyInputSelectHoverColor": "#f6f8fa", - "journeyInputTextColor": "#23282e", - "journeyJustifiedContent": "
-

Uptime & Performance Benchmarking Made Easy

-
- -", - "journeyJustifiedContentEnabled": true, - "journeyJustifiedContentMobileViewEnabled": false, - "journeyLayout": "justified-right", - "journeyRememberMeEnabled": false, - "journeyRememberMeLabel": "", - "journeySignInButtonPosition": "flex-column", - "journeyTheaterMode": true, - "linkActiveColor": "#007661", - "linkColor": "#009C80", - "linkedTrees": [], - "logo": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", - "logoAltText": "Zardoz Logo", - "logoEnabled": true, - "logoHeight": "47", - "logoProfile": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", - "logoProfileAltText": "Zardaz Logo", - "logoProfileCollapsed": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", - "logoProfileCollapsedAltText": "Zardaz Logo", - "logoProfileCollapsedHeight": "28", - "logoProfileHeight": "40", - "name": "Copy of Zardoz", - "pageTitle": "#23282e", - "primaryColor": "#009C80", - "primaryOffColor": "#007661", - "profileBackgroundColor": "#FFFFFF", - "profileMenuHighlightColor": "#FFFFFF", - "profileMenuHoverColor": "#FFFFFF", - "profileMenuHoverTextColor": "#455469", - "profileMenuTextHighlightColor": "#009C80", - "secondaryColor": "#69788b", - "successColor": "#2ed47a", - "switchBackgroundColor": "#c0c9d5", - "textColor": "#ffffff", - "topBarBackgroundColor": "#ffffff", - "topBarBorderColor": "#e7eef4", - "topBarHeaderColor": "#23282e", - "topBarTextColor": "#69788b", }, - { - "_id": "00203891-dde0-4114-b27a-219ae0b43a61", - "accountFooter": " -", - "accountFooterEnabled": true, - "accountPageSections": { - "accountControls": { - "enabled": false, - }, - "accountSecurity": { - "enabled": true, - "subsections": { - "password": { - "enabled": true, - }, - "securityQuestions": { - "enabled": false, - }, - "twoStepVerification": { - "enabled": true, - }, - "username": { - "enabled": true, - }, - }, + "dsconfig/attributeValue": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-attribute-value-password-validator", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", }, - "consent": { - "enabled": false, + "checkSubstrings": { + "ldapAttribute": "ds-cfg-check-substrings", + "type": "simple", }, - "oauthApplications": { - "enabled": false, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", }, - "personalInformation": { - "enabled": true, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", }, - "preferences": { - "enabled": false, + "matchAttribute": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-match-attribute", + "type": "simple", }, - "social": { - "enabled": false, + "minSubstringLength": { + "ldapAttribute": "ds-cfg-min-substring-length", + "type": "simple", }, - "trustedDevices": { - "enabled": true, + "testReversedPassword": { + "isRequired": true, + "ldapAttribute": "ds-cfg-test-reversed-password", + "type": "simple", }, }, - "backgroundColor": "#FFFFFF", - "backgroundImage": "", - "bodyText": "#5E6D82", - "buttonRounded": "50", - "dangerColor": "#f7685b", - "favicon": "", - "isDefault": false, - "journeyFooter": " - -", - "journeyFooterEnabled": true, - "journeyHeader": "
- -
-", - "journeyHeaderEnabled": true, - "journeyJustifiedContent": "", - "journeyJustifiedContentEnabled": false, - "journeyLayout": "card", - "journeyTheaterMode": false, - "linkActiveColor": "#C60819", - "linkColor": "#EB0A1E", - "linkedTrees": [], - "logo": "", - "logoAltText": "", - "logoEnabled": true, - "logoHeight": "40", - "logoProfile": "https://cdn.forgerock.com/platform/themes/highlander/logo-highlander-full.svg", - "logoProfileAltText": "Highlander", - "logoProfileCollapsed": "https://cdn.forgerock.com/platform/themes/highlander/logo-highlander-icon.svg", - "logoProfileCollapsedAltText": "Highlander", - "logoProfileCollapsedHeight": "28", - "logoProfileHeight": "28", - "name": "Highlander", - "pageTitle": "#23282e", - "primaryColor": "#EB0A1E", - "primaryOffColor": "#C60819", - "profileBackgroundColor": "#FFFFFF", - "profileMenuHighlightColor": "#FFFFFF", - "profileMenuHoverColor": "#FFFFFF", - "profileMenuHoverTextColor": "#455469", - "profileMenuTextHighlightColor": "#EB0A1E", - "secondaryColor": "#69788b", - "textColor": "#ffffff", }, - { - "_id": "63e19668-909f-479e-83d7-be7a01cd8187", - "accountCardBackgroundColor": "#ffffff", - "accountCardHeaderColor": "#23282e", - "accountCardInnerBorderColor": "#e7eef4", - "accountCardInputBackgroundColor": "#ffffff", - "accountCardInputBorderColor": "#c0c9d5", - "accountCardInputLabelColor": "#5e6d82", - "accountCardInputSelectColor": "#e4f4fd", - "accountCardInputTextColor": "#23282e", - "accountCardOuterBorderColor": "#e7eef4", - "accountCardShadow": 3, - "accountCardTabActiveBorderColor": "#109cf1", - "accountCardTabActiveColor": "#e4f4fd", - "accountCardTextColor": "#5e6d82", - "accountFooter": "", - "accountFooterEnabled": false, - "accountNavigationBackgroundColor": "#ffffff", - "accountNavigationTextColor": "#455469", - "accountNavigationToggleBorderColor": "#e7eef4", - "accountPageSections": { - "accountControls": { - "enabled": false, + "dsconfig/characterSet": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-character-set-password-validator", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "allowUnclassifiedCharacters": { + "isRequired": true, + "ldapAttribute": "ds-cfg-allow-unclassified-characters", + "type": "simple", + }, + "characterSet": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-character-set", + "type": "simple", }, - "accountSecurity": { - "enabled": true, - "subsections": { - "password": { - "enabled": true, - }, - "securityQuestions": { - "enabled": false, - }, - "twoStepVerification": { - "enabled": true, - }, - "username": { - "enabled": true, - }, - }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", }, - "consent": { - "enabled": false, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", }, - "oauthApplications": { - "enabled": false, + "minCharacterSets": { + "ldapAttribute": "ds-cfg-min-character-sets", + "type": "simple", }, - "personalInformation": { - "enabled": true, + }, + }, + "dsconfig/dictionary": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-dictionary-password-validator", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", }, - "preferences": { - "enabled": true, + "caseSensitiveValidation": { + "isRequired": true, + "ldapAttribute": "ds-cfg-case-sensitive-validation", + "type": "simple", }, - "social": { - "enabled": false, + "checkSubstrings": { + "ldapAttribute": "ds-cfg-check-substrings", + "type": "simple", }, - "trustedDevices": { - "enabled": true, + "dictionaryFile": { + "isRequired": true, + "ldapAttribute": "ds-cfg-dictionary-file", + "type": "simple", + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "minSubstringLength": { + "ldapAttribute": "ds-cfg-min-substring-length", + "type": "simple", + }, + "testReversedPassword": { + "isRequired": true, + "ldapAttribute": "ds-cfg-test-reversed-password", + "type": "simple", }, }, - "accountTableRowHoverColor": "#f6f8fa", - "backgroundColor": "#FFFFFF", - "backgroundImage": "", - "bodyText": "#000000", - "boldLinks": false, - "buttonRounded": "0", - "dangerColor": "#f7685b", - "favicon": "", - "fontFamily": "Open Sans", - "isDefault": false, - "journeyCardBackgroundColor": "#ffffff", - "journeyCardShadow": 3, - "journeyCardTextColor": "#5e6d82", - "journeyCardTitleColor": "#23282e", - "journeyFooter": "", - "journeyFooterEnabled": false, - "journeyHeader": "
Header Content
", - "journeyHeaderEnabled": false, - "journeyInputBackgroundColor": "#ffffff", - "journeyInputBorderColor": "#c0c9d5", - "journeyInputLabelColor": "#5e6d82", - "journeyInputSelectColor": "#e4f4fd", - "journeyInputTextColor": "#23282e", - "journeyJustifiedContent": "", - "journeyJustifiedContentEnabled": false, - "journeyLayout": "card", - "journeyTheaterMode": false, - "linkActiveColor": "#000000", - "linkColor": "#000000", - "linkedTrees": [ - "FrodoTest", - "AA-FrodoTest", + }, + "dsconfig/lengthBased": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-length-based-password-validator", ], - "logo": "https://cdn.forgerock.com/platform/themes/contrast/logo-contrast.svg", - "logoAltText": "Contrast", - "logoEnabled": false, - "logoHeight": "72", - "logoProfile": "data:image/svg+xml,%0A%3Csvg width='46' height='46' viewBox='0 0 46 46' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24.3477 13.5664H43.9438C43.5192 12.6317 43.0319 11.734 42.4905 10.8711H24.3477V13.5664Z' fill='black'/%3E%3Cpath d='M24.3477 8.17578H40.5261C39.6996 7.2052 38.7974 6.30182 37.8224 5.48047H24.3477V8.17578Z' fill='black'/%3E%3Cpath d='M24.3477 40.5195H37.8224C38.7975 39.6982 39.6996 38.7948 40.5261 37.8242H24.3477V40.5195Z' fill='black'/%3E%3Cpath d='M24.3477 2.78516H33.8482C31.0136 1.27039 27.7313 0.198195 24.3477 0V2.78516Z' fill='black'/%3E%3Cpath d='M24.3477 18.957H45.6208C45.4566 18.0405 45.2557 17.1372 44.9856 16.2617H24.3477V18.957Z' fill='black'/%3E%3Cpath d='M24.3477 21.6523V24.3477H45.9317C45.958 23.8992 46 23.4549 46 23C46 22.5451 45.958 22.1008 45.9317 21.6523H24.3477Z' fill='black'/%3E%3Cpath d='M0 23C0 35.1781 9.64778 45.2964 21.6523 46V0C9.64778 0.703566 0 10.8219 0 23Z' fill='black'/%3E%3Cpath d='M24.3477 46C27.7313 45.8018 31.0136 44.7296 33.8482 43.2148H24.3477V46Z' fill='black'/%3E%3Cpath d='M45.6208 27.043H24.3477V29.7383H44.9857C45.2557 28.8628 45.4566 27.9595 45.6208 27.043V27.043Z' fill='black'/%3E%3Cpath d='M24.3477 35.1289H42.4905C43.0319 34.266 43.5192 33.3683 43.9438 32.4336H24.3477V35.1289Z' fill='black'/%3E%3C/svg%3E%0A", - "logoProfileAltText": "Contrast", - "logoProfileCollapsed": "data:image/svg+xml,%0A%3Csvg width='46' height='46' viewBox='0 0 46 46' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24.3477 13.5664H43.9438C43.5192 12.6317 43.0319 11.734 42.4905 10.8711H24.3477V13.5664Z' fill='black'/%3E%3Cpath d='M24.3477 8.17578H40.5261C39.6996 7.2052 38.7974 6.30182 37.8224 5.48047H24.3477V8.17578Z' fill='black'/%3E%3Cpath d='M24.3477 40.5195H37.8224C38.7975 39.6982 39.6996 38.7948 40.5261 37.8242H24.3477V40.5195Z' fill='black'/%3E%3Cpath d='M24.3477 2.78516H33.8482C31.0136 1.27039 27.7313 0.198195 24.3477 0V2.78516Z' fill='black'/%3E%3Cpath d='M24.3477 18.957H45.6208C45.4566 18.0405 45.2557 17.1372 44.9856 16.2617H24.3477V18.957Z' fill='black'/%3E%3Cpath d='M24.3477 21.6523V24.3477H45.9317C45.958 23.8992 46 23.4549 46 23C46 22.5451 45.958 22.1008 45.9317 21.6523H24.3477Z' fill='black'/%3E%3Cpath d='M0 23C0 35.1781 9.64778 45.2964 21.6523 46V0C9.64778 0.703566 0 10.8219 0 23Z' fill='black'/%3E%3Cpath d='M24.3477 46C27.7313 45.8018 31.0136 44.7296 33.8482 43.2148H24.3477V46Z' fill='black'/%3E%3Cpath d='M45.6208 27.043H24.3477V29.7383H44.9857C45.2557 28.8628 45.4566 27.9595 45.6208 27.043V27.043Z' fill='black'/%3E%3Cpath d='M24.3477 35.1289H42.4905C43.0319 34.266 43.5192 33.3683 43.9438 32.4336H24.3477V35.1289Z' fill='black'/%3E%3C/svg%3E%0A", - "logoProfileCollapsedAltText": "", - "logoProfileCollapsedHeight": "22", - "logoProfileHeight": "22", - "name": "NoAccess", - "pageTitle": "#23282e", - "primaryColor": "#000000", - "primaryOffColor": "#000000", - "profileBackgroundColor": "#FFFFFF", - "profileMenuHighlightColor": "#FFFFFF", - "profileMenuHoverColor": "#FFFFFF", - "profileMenuHoverTextColor": "#000000", - "profileMenuTextHighlightColor": "#455469", - "secondaryColor": "#69788b", - "switchBackgroundColor": "#c0c9d5", - "textColor": "#ffffff", - "topBarBackgroundColor": "#ffffff", - "topBarBorderColor": "#e7eef4", - "topBarHeaderColor": "#23282e", - "topBarTextColor": "#69788b", + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "maxPasswordLength": { + "ldapAttribute": "ds-cfg-max-password-length", + "type": "simple", + }, + "minPasswordLength": { + "ldapAttribute": "ds-cfg-min-password-length", + "type": "simple", + }, + }, }, - { - "_id": "b82755e8-fe9a-4d27-b66b-45e37ae12345", - "accountFooter": " -", - "accountFooterEnabled": true, - "accountPageSections": { - "accountControls": { - "enabled": false, + "dsconfig/passwordPolicies": { + "dnTemplate": "cn=Password Policies,cn=config", + "objectClasses": [ + "ds-cfg-password-policy", + "ds-cfg-authentication-policy", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", }, - "accountSecurity": { - "enabled": true, - "subsections": { - "password": { - "enabled": true, - }, - "securityQuestions": { - "enabled": false, - }, - "twoStepVerification": { - "enabled": true, - }, - "username": { - "enabled": true, - }, - }, + "defaultPasswordStorageScheme": { + "isMultiValued": true, + "isRequired": true, + "ldapAttribute": "ds-cfg-default-password-storage-scheme", + "type": "simple", }, - "consent": { - "enabled": false, + "maxPasswordAge": { + "ldapAttribute": "ds-cfg-max-password-age", + "type": "simple", }, - "oauthApplications": { - "enabled": false, + "passwordAttribute": { + "isRequired": true, + "ldapAttribute": "ds-cfg-password-attribute", + "type": "simple", }, - "personalInformation": { - "enabled": true, + "passwordHistoryCount": { + "ldapAttribute": "ds-cfg-password-history-count", + "type": "simple", }, - "preferences": { - "enabled": false, + "validator": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-password-validator", + "type": "simple", }, - "social": { - "enabled": false, + }, + }, + "dsconfig/repeatedCharacters": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-repeated-characters-password-validator", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", }, - "trustedDevices": { - "enabled": true, + "caseSensitiveValidation": { + "isRequired": true, + "ldapAttribute": "ds-cfg-case-sensitive-validation", + "type": "simple", + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "maxConsecutiveLength": { + "isRequired": true, + "ldapAttribute": "ds-cfg-max-consecutive-length", + "type": "simple", + }, + }, + }, + "dsconfig/similarityBased": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-similarity-based-password-validator", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "minPasswordDifference": { + "isRequired": true, + "ldapAttribute": "ds-cfg-min-password-difference", + "type": "simple", + }, + }, + }, + "dsconfig/uniqueCharacters": { + "dnTemplate": "cn=Password Validators,cn=config", + "objectClasses": [ + "ds-cfg-password-validator", + "ds-cfg-unique-characters-password-validator", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", + }, + "caseSensitiveValidation": { + "isRequired": true, + "ldapAttribute": "ds-cfg-case-sensitive-validation", + "type": "simple", + }, + "enabled": { + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", + }, + "javaClass": { + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "minUniqueCharacters": { + "isRequired": true, + "ldapAttribute": "ds-cfg-min-unique-characters", + "type": "simple", }, }, - "backgroundColor": "#FFFFFF", - "backgroundImage": "", - "bodyText": "#5E6D82", - "buttonRounded": "50", - "dangerColor": "#f7685b", - "favicon": "", - "isDefault": false, - "journeyFooter": " -", - "journeyFooterEnabled": true, - "journeyHeader": "
- -
-", - "journeyHeaderEnabled": true, - "journeyJustifiedContent": "", - "journeyJustifiedContentEnabled": true, - "journeyLayout": "justified-right", - "journeyTheaterMode": false, - "linkActiveColor": "#49871E", - "linkColor": "#5AA625", - "linkedTrees": [], - "logo": "", - "logoAltText": "", - "logoEnabled": true, - "logoHeight": "40", - "logoProfile": "data:image/svg+xml,%0A%3Csvg width='156' height='34' viewBox='0 0 156 34' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0)'%3E%3Cpath d='M32.5539 32.5538C32.5539 32.5538 17.0796 35.6024 7.23861 25.7614C-2.60242 15.9204 0.446148 0.446137 0.446148 0.446137C0.446148 0.446137 15.9204 -2.60243 25.7614 7.23866C35.6024 17.0797 32.5539 32.5538 32.5539 32.5538Z' fill='%23C3EA21'/%3E%3Cpath d='M32.5537 32.554C32.5537 32.554 17.0795 35.6026 7.23845 25.7615C-2.60257 15.9205 0.445995 0.446289 0.445995 0.446289L32.5537 32.554Z' fill='%238ADB53'/%3E%3C/g%3E%3Cpath d='M51.053 25.38L53.186 25.11V8.964L51.161 8.586V6.939H55.076C55.418 6.939 55.796 6.93 56.21 6.912C56.624 6.894 56.939 6.876 57.155 6.858C58.091 6.786 58.865 6.75 59.477 6.75C61.331 6.75 62.816 6.939 63.932 7.317C65.048 7.695 65.858 8.271 66.362 9.045C66.866 9.819 67.118 10.836 67.118 12.096C67.118 13.338 66.785 14.49 66.119 15.552C65.453 16.614 64.49 17.343 63.23 17.739C63.95 18.045 64.589 18.603 65.147 19.413C65.705 20.223 66.299 21.276 66.929 22.572C67.379 23.454 67.721 24.093 67.955 24.489C68.207 24.867 68.45 25.083 68.684 25.137L69.575 25.407V27H64.985C64.697 27 64.391 26.712 64.067 26.136C63.761 25.542 63.356 24.615 62.852 23.355C62.258 21.879 61.745 20.727 61.313 19.899C60.881 19.071 60.422 18.558 59.936 18.36H57.155V25.11L59.639 25.38V27H51.053V25.38ZM59.639 16.713C60.665 16.713 61.466 16.344 62.042 15.606C62.618 14.868 62.906 13.761 62.906 12.285C62.906 10.971 62.618 9.999 62.042 9.369C61.484 8.739 60.512 8.424 59.126 8.424C58.622 8.424 58.19 8.451 57.83 8.505C57.488 8.541 57.263 8.559 57.155 8.559V16.659C57.371 16.695 57.893 16.713 58.721 16.713H59.639ZM70.674 19.521C70.674 17.829 71.007 16.389 71.673 15.201C72.357 14.013 73.266 13.122 74.4 12.528C75.534 11.916 76.767 11.61 78.099 11.61C80.367 11.61 82.113 12.312 83.337 13.716C84.579 15.102 85.2 16.992 85.2 19.386C85.2 21.096 84.858 22.554 84.174 23.76C83.508 24.948 82.608 25.839 81.474 26.433C80.358 27.009 79.125 27.297 77.775 27.297C75.525 27.297 73.779 26.604 72.537 25.218C71.295 23.814 70.674 21.915 70.674 19.521ZM77.991 25.542C80.025 25.542 81.042 23.58 81.042 19.656C81.042 17.604 80.799 16.047 80.313 14.985C79.827 13.905 79.035 13.365 77.937 13.365C75.849 13.365 74.805 15.327 74.805 19.251C74.805 21.303 75.057 22.869 75.561 23.949C76.083 25.011 76.893 25.542 77.991 25.542ZM86.4395 5.454L91.3805 4.86H91.4345L92.1905 5.373V13.338C92.6765 12.852 93.2705 12.447 93.9725 12.123C94.6925 11.781 95.4665 11.61 96.2945 11.61C98.0225 11.61 99.4265 12.222 100.506 13.446C101.604 14.652 102.153 16.506 102.153 19.008C102.153 20.556 101.829 21.96 101.181 23.22C100.533 24.48 99.5975 25.479 98.3735 26.217C97.1675 26.937 95.7635 27.297 94.1615 27.297C92.7395 27.297 91.5065 27.18 90.4625 26.946C89.4185 26.694 88.7525 26.469 88.4645 26.271V7.182L86.4395 6.858V5.454ZM94.8635 13.986C94.3235 13.986 93.8105 14.112 93.3245 14.364C92.8565 14.598 92.4785 14.868 92.1905 15.174V25.029C92.2985 25.227 92.5505 25.389 92.9465 25.515C93.3425 25.641 93.7925 25.704 94.2965 25.704C95.4485 25.704 96.3665 25.173 97.0505 24.111C97.7525 23.031 98.1035 21.438 98.1035 19.332C98.1035 17.514 97.8065 16.173 97.2125 15.309C96.6185 14.427 95.8355 13.986 94.8635 13.986Z' fill='black'/%3E%3Cpath d='M104.183 25.38L106.316 25.11V8.964L104.291 8.586V6.939H108.206C108.548 6.939 108.926 6.93 109.34 6.912C109.754 6.894 110.069 6.876 110.285 6.858C111.221 6.786 111.995 6.75 112.607 6.75C114.461 6.75 115.946 6.939 117.062 7.317C118.178 7.695 118.988 8.271 119.492 9.045C119.996 9.819 120.248 10.836 120.248 12.096C120.248 13.338 119.915 14.49 119.249 15.552C118.583 16.614 117.62 17.343 116.36 17.739C117.08 18.045 117.719 18.603 118.277 19.413C118.835 20.223 119.429 21.276 120.059 22.572C120.509 23.454 120.851 24.093 121.085 24.489C121.337 24.867 121.58 25.083 121.814 25.137L122.705 25.407V27H118.115C117.827 27 117.521 26.712 117.197 26.136C116.891 25.542 116.486 24.615 115.982 23.355C115.388 21.879 114.875 20.727 114.443 19.899C114.011 19.071 113.552 18.558 113.066 18.36H110.285V25.11L112.769 25.38V27H104.183V25.38ZM112.769 16.713C113.795 16.713 114.596 16.344 115.172 15.606C115.748 14.868 116.036 13.761 116.036 12.285C116.036 10.971 115.748 9.999 115.172 9.369C114.614 8.739 113.642 8.424 112.256 8.424C111.752 8.424 111.32 8.451 110.96 8.505C110.618 8.541 110.393 8.559 110.285 8.559V16.659C110.501 16.695 111.023 16.713 111.851 16.713H112.769ZM123.804 19.521C123.804 17.829 124.137 16.389 124.803 15.201C125.487 14.013 126.396 13.122 127.53 12.528C128.664 11.916 129.897 11.61 131.229 11.61C133.497 11.61 135.243 12.312 136.467 13.716C137.709 15.102 138.33 16.992 138.33 19.386C138.33 21.096 137.988 22.554 137.304 23.76C136.638 24.948 135.738 25.839 134.604 26.433C133.488 27.009 132.255 27.297 130.905 27.297C128.655 27.297 126.909 26.604 125.667 25.218C124.425 23.814 123.804 21.915 123.804 19.521ZM131.121 25.542C133.155 25.542 134.172 23.58 134.172 19.656C134.172 17.604 133.929 16.047 133.443 14.985C132.957 13.905 132.165 13.365 131.067 13.365C128.979 13.365 127.935 15.327 127.935 19.251C127.935 21.303 128.187 22.869 128.691 23.949C129.213 25.011 130.023 25.542 131.121 25.542ZM143.187 33.723C142.863 33.723 142.512 33.696 142.134 33.642C141.774 33.588 141.513 33.525 141.351 33.453V30.564C141.477 30.636 141.729 30.708 142.107 30.78C142.485 30.852 142.827 30.888 143.133 30.888C144.033 30.888 144.771 30.591 145.347 29.997C145.941 29.403 146.49 28.404 146.994 27H145.536L140.46 13.905L139.245 13.554V11.988H146.67V13.554L144.699 13.878L147.102 21.357L148.074 24.543L148.911 21.357L151.125 13.878L149.424 13.554V11.988H155.283V13.554L153.96 13.878C152.97 16.902 151.989 19.818 151.017 22.626C150.045 25.434 149.478 27.009 149.316 27.351C148.74 28.863 148.191 30.069 147.669 30.969C147.147 31.869 146.526 32.553 145.806 33.021C145.086 33.489 144.213 33.723 143.187 33.723Z' fill='%236CBE34'/%3E%3Cdefs%3E%3CclipPath id='clip0'%3E%3Crect width='33' height='33' fill='white' transform='matrix(-1 0 0 1 33 0)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A", - "logoProfileAltText": "RobRoy", - "logoProfileCollapsed": "data:image/svg+xml,%0A%3Csvg width='33' height='33' viewBox='0 0 33 33' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0)'%3E%3Cpath d='M32.5539 32.5538C32.5539 32.5538 17.0796 35.6024 7.23861 25.7614C-2.60242 15.9204 0.446148 0.446137 0.446148 0.446137C0.446148 0.446137 15.9204 -2.60243 25.7614 7.23866C35.6024 17.0797 32.5539 32.5538 32.5539 32.5538Z' fill='%23C3EA21'/%3E%3Cpath d='M32.5537 32.554C32.5537 32.554 17.0795 35.6026 7.23845 25.7615C-2.60257 15.9205 0.445996 0.446289 0.445996 0.446289L32.5537 32.554Z' fill='%238ADB53'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0'%3E%3Crect width='33' height='33' fill='white' transform='matrix(-1 0 0 1 33 0)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A", - "logoProfileCollapsedAltText": "RobRoy", - "logoProfileCollapsedHeight": "28", - "logoProfileHeight": "28", - "name": "Robroy", - "pageTitle": "#23282e", - "primaryColor": "#5AA625", - "primaryOffColor": "#49871E", - "profileBackgroundColor": "#FFFFFF", - "profileMenuHighlightColor": "#FFFFFF", - "profileMenuHoverColor": "#FFFFFF", - "profileMenuHoverTextColor": "#455469", - "profileMenuTextHighlightColor": "#5AA625", - "secondaryColor": "#69788b", - "textColor": "#ffffff", }, - { - "_id": "86ce2f64-586d-44fe-8593-b12a85aac68d", - "accountFooter": "", - "accountFooterEnabled": false, - "accountPageSections": { - "accountControls": { - "enabled": false, + "dsconfig/userDefinedVirtualAttribute": { + "dnTemplate": "cn=Virtual Attributes,cn=config", + "objectClasses": [ + "ds-cfg-user-defined-virtual-attribute", + "ds-cfg-virtual-attribute", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", }, - "accountSecurity": { - "enabled": true, - "subsections": { - "password": { - "enabled": true, - }, - "securityQuestions": { - "enabled": false, - }, - "twoStepVerification": { - "enabled": true, - }, - "username": { - "enabled": true, - }, - }, + "attributeType": { + "isRequired": true, + "ldapAttribute": "ds-cfg-attribute-type", + "type": "simple", }, - "consent": { - "enabled": false, + "baseDn": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-base-dn", + "type": "simple", }, - "oauthApplications": { - "enabled": false, + "conflictBehavior": { + "ldapAttribute": "ds-cfg-conflict-behavior", + "type": "simple", }, - "personalInformation": { - "enabled": true, + "enabled": { + "isRequired": true, + "ldapAttribute": "ds-cfg-enabled", + "type": "simple", }, - "preferences": { - "enabled": false, + "filter": { + "isMultiValued": true, + "ldapAttribute": "ds-cfg-filter", + "type": "simple", }, - "social": { - "enabled": false, + "groupDn": { + "ldapAttribute": "ds-cfg-group-dn", + "type": "simple", }, - "trustedDevices": { - "enabled": true, + "javaClass": { + "isRequired": true, + "ldapAttribute": "ds-cfg-java-class", + "type": "simple", + }, + "scope": { + "ldapAttribute": "ds-cfg-scope", + "type": "simple", + }, + "value": { + "isMultiValued": true, + "isRequired": true, + "ldapAttribute": "ds-cfg-value", + "type": "simple", }, }, - "backgroundColor": "#324054", - "backgroundImage": "", - "bodyText": "#23282e", - "buttonRounded": 5, - "dangerColor": "#f7685b", - "favicon": "", - "isDefault": true, - "journeyFooter": "", - "journeyFooterEnabled": false, - "journeyHeader": "
Header Content
", - "journeyHeaderEnabled": false, - "journeyJustifiedContent": "", - "journeyJustifiedContentEnabled": false, - "journeyLayout": "card", - "journeyTheaterMode": false, - "linkActiveColor": "#0c85cf", - "linkColor": "#109cf1", - "linkedTrees": [], - "logo": "", - "logoAltText": "", - "logoHeight": "40", - "logoProfile": "", - "logoProfileAltText": "", - "logoProfileCollapsed": "", - "logoProfileCollapsedAltText": "", - "logoProfileCollapsedHeight": "40", - "logoProfileHeight": "40", - "name": "Starter Theme", - "pageTitle": "#23282e", - "primaryColor": "#324054", - "primaryOffColor": "#242E3C", - "profileBackgroundColor": "#f6f8fa", - "profileMenuHighlightColor": "#f3f5f8", - "profileMenuHoverColor": "#324054", - "profileMenuHoverTextColor": "#ffffff", - "profileMenuTextHighlightColor": "#455469", - "secondaryColor": "#69788b", - "textColor": "#ffffff", }, - { - "_id": "4ded6d91-ceea-400a-ae3f-42209f1b0e06", - "accountFooter": " -", - "accountFooterEnabled": true, - "accountPageSections": { - "accountControls": { - "enabled": false, + "internal/role": { + "dnTemplate": "ou=roles,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "fr-idm-internal-role", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "cn", + "type": "simple", + "writability": "createOnly", }, - "accountSecurity": { - "enabled": true, - "subsections": { - "password": { - "enabled": true, - }, - "securityQuestions": { - "enabled": false, - }, - "twoStepVerification": { - "enabled": true, - }, - "username": { - "enabled": true, - }, - }, + "authzMembers": { + "isMultiValued": true, + "propertyName": "authzRoles", + "resourcePath": "managed/user", + "type": "reverseReference", }, - "consent": { - "enabled": false, + "condition": { + "ldapAttribute": "fr-idm-condition", + "type": "simple", }, - "oauthApplications": { - "enabled": false, + "description": { + "ldapAttribute": "description", + "type": "simple", }, - "personalInformation": { - "enabled": true, + "name": { + "ldapAttribute": "fr-idm-name", + "type": "simple", }, - "preferences": { - "enabled": false, + "privileges": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-privilege", + "type": "json", }, - "social": { - "enabled": false, + "temporalConstraints": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-temporal-constraints", + "type": "json", }, - "trustedDevices": { - "enabled": true, + }, + }, + "internal/user": { + "dnTemplate": "ou=users,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-internal-user", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly", + }, + "password": { + "ldapAttribute": "fr-idm-password", + "type": "json", }, }, - "backgroundColor": "#FFFFFF", - "backgroundImage": "", - "bodyText": "#5E6D82", - "buttonRounded": "50", - "dangerColor": "#f7685b", - "favicon": "", - "isDefault": false, - "journeyFooter": " -", - "journeyFooterEnabled": true, - "journeyHeader": "
Header Content
", - "journeyHeaderEnabled": false, - "journeyJustifiedContent": "
-

Uptime & Performance Benchmarking Made Easy

-
- -", - "journeyJustifiedContentEnabled": true, - "journeyLayout": "justified-right", - "journeyTheaterMode": true, - "linkActiveColor": "#007661", - "linkColor": "#009C80", - "linkedTrees": [], - "logo": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", - "logoAltText": "Zardoz Logo", - "logoEnabled": true, - "logoHeight": "47", - "logoProfile": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", - "logoProfileAltText": "Zardaz Logo", - "logoProfileCollapsed": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", - "logoProfileCollapsedAltText": "Zardaz Logo", - "logoProfileCollapsedHeight": "28", - "logoProfileHeight": "40", - "name": "Zardoz", - "pageTitle": "#23282e", - "primaryColor": "#009C80", - "primaryOffColor": "#007661", - "profileBackgroundColor": "#FFFFFF", - "profileMenuHighlightColor": "#FFFFFF", - "profileMenuHoverColor": "#FFFFFF", - "profileMenuHoverTextColor": "#455469", - "profileMenuTextHighlightColor": "#009C80", - "secondaryColor": "#69788b", - "textColor": "#ffffff", }, - ], - "bravo": [ - { - "_id": "00203891-dde0-4114-b27a-219ae0b43a61", - "accountFooter": " -", - "accountFooterEnabled": true, - "accountPageSections": { - "accountControls": { - "enabled": false, + "link": { + "dnTemplate": "ou=links,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-link", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly", }, - "accountSecurity": { - "enabled": true, - "subsections": { - "password": { - "enabled": true, - }, - "securityQuestions": { - "enabled": false, - }, - "twoStepVerification": { - "enabled": true, - }, - "username": { - "enabled": true, - }, + "firstId": { + "ldapAttribute": "fr-idm-link-firstId", + "type": "simple", + }, + "linkQualifier": { + "ldapAttribute": "fr-idm-link-qualifier", + "type": "simple", + }, + "linkType": { + "ldapAttribute": "fr-idm-link-type", + "type": "simple", + }, + "secondId": { + "ldapAttribute": "fr-idm-link-secondId", + "type": "simple", + }, + }, + }, + "locks": { + "dnTemplate": "ou=locks,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-lock", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly", + }, + "nodeId": { + "ldapAttribute": "fr-idm-lock-nodeid", + "type": "simple", + }, + }, + }, + "recon/assoc": { + "dnTemplate": "ou=assoc,ou=recon,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "namingStrategy": { + "dnAttribute": "fr-idm-reconassoc-reconid", + "type": "clientDnNaming", + }, + "objectClasses": [ + "fr-idm-reconassoc", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "fr-idm-reconassoc-reconid", + "type": "simple", + }, + "finishTime": { + "ldapAttribute": "fr-idm-reconassoc-finishtime", + "type": "simple", + }, + "isAnalysis": { + "ldapAttribute": "fr-idm-reconassoc-isanalysis", + "type": "simple", + }, + "mapping": { + "ldapAttribute": "fr-idm-reconassoc-mapping", + "type": "simple", + }, + "sourceResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-sourceresourcecollection", + "type": "simple", + }, + "targetResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-targetresourcecollection", + "type": "simple", + }, + }, + "subResources": { + "entry": { + "namingStrategy": { + "dnAttribute": "uid", + "type": "clientDnNaming", }, + "resource": "recon-assoc-entry", + "type": "collection", + }, + }, + }, + "recon/assoc/entry": { + "objectClasses": [ + "uidObject", + "fr-idm-reconassocentry", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + }, + "action": { + "ldapAttribute": "fr-idm-reconassocentry-action", + "type": "simple", + }, + "ambiguousTargetObjectIds": { + "ldapAttribute": "fr-idm-reconassocentry-ambiguoustargetobjectids", + "type": "simple", + }, + "exception": { + "ldapAttribute": "fr-idm-reconassocentry-exception", + "type": "simple", + }, + "isAnalysis": { + "ldapAttribute": "fr-idm-reconassoc-isanalysis", + "type": "simple", + }, + "linkQualifier": { + "ldapAttribute": "fr-idm-reconassocentry-linkqualifier", + "type": "simple", + }, + "mapping": { + "ldapAttribute": "fr-idm-reconassoc-mapping", + "type": "simple", + }, + "message": { + "ldapAttribute": "fr-idm-reconassocentry-message", + "type": "simple", + }, + "messageDetail": { + "ldapAttribute": "fr-idm-reconassocentry-messagedetail", + "type": "simple", }, - "consent": { - "enabled": false, + "phase": { + "ldapAttribute": "fr-idm-reconassocentry-phase", + "type": "simple", }, - "oauthApplications": { - "enabled": false, + "reconId": { + "ldapAttribute": "fr-idm-reconassocentry-reconid", + "type": "simple", }, - "personalInformation": { - "enabled": true, + "situation": { + "ldapAttribute": "fr-idm-reconassocentry-situation", + "type": "simple", }, - "preferences": { - "enabled": false, + "sourceObjectId": { + "ldapAttribute": "fr-idm-reconassocentry-sourceObjectId", + "type": "simple", }, - "social": { - "enabled": false, + "sourceResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-sourceresourcecollection", + "type": "simple", }, - "trustedDevices": { - "enabled": true, + "status": { + "ldapAttribute": "fr-idm-reconassocentry-status", + "type": "simple", + }, + "targetObjectId": { + "ldapAttribute": "fr-idm-reconassocentry-targetObjectId", + "type": "simple", + }, + "targetResourceCollection": { + "ldapAttribute": "fr-idm-reconassoc-targetresourcecollection", + "type": "simple", }, }, - "backgroundColor": "#FFFFFF", - "backgroundImage": "", - "bodyText": "#5E6D82", - "buttonRounded": "50", - "dangerColor": "#f7685b", - "favicon": "", - "isDefault": false, - "journeyFooter": " - -", - "journeyFooterEnabled": true, - "journeyHeader": "
- -
-", - "journeyHeaderEnabled": true, - "journeyJustifiedContent": "", - "journeyJustifiedContentEnabled": false, - "journeyLayout": "card", - "journeyTheaterMode": false, - "linkActiveColor": "#C60819", - "linkColor": "#EB0A1E", - "linkedTrees": [], - "logo": "", - "logoAltText": "", - "logoEnabled": true, - "logoHeight": "40", - "logoProfile": "https://cdn.forgerock.com/platform/themes/highlander/logo-highlander-full.svg", - "logoProfileAltText": "Highlander", - "logoProfileCollapsed": "https://cdn.forgerock.com/platform/themes/highlander/logo-highlander-icon.svg", - "logoProfileCollapsedAltText": "Highlander", - "logoProfileCollapsedHeight": "28", - "logoProfileHeight": "28", - "name": "Highlander", - "pageTitle": "#23282e", - "primaryColor": "#EB0A1E", - "primaryOffColor": "#C60819", - "profileBackgroundColor": "#FFFFFF", - "profileMenuHighlightColor": "#FFFFFF", - "profileMenuHoverColor": "#FFFFFF", - "profileMenuHoverTextColor": "#455469", - "profileMenuTextHighlightColor": "#EB0A1E", - "secondaryColor": "#69788b", - "textColor": "#ffffff", + "resourceName": "recon-assoc-entry", + "subResourceRouting": [ + { + "prefix": "entry", + "template": "recon/assoc/{reconId}/entry", + }, + ], }, - { - "_id": "4ded6d91-ceea-400a-ae3f-42209f1b0e06", - "accountFooter": " -", - "accountFooterEnabled": true, - "accountPageSections": { - "accountControls": { - "enabled": false, + "sync/queue": { + "dnTemplate": "ou=queue,ou=sync,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "objectClasses": [ + "uidObject", + "fr-idm-syncqueue", + ], + "properties": { + "_id": { + "isRequired": true, + "ldapAttribute": "uid", + "type": "simple", + "writability": "createOnly", }, - "accountSecurity": { - "enabled": true, - "subsections": { - "password": { - "enabled": true, - }, - "securityQuestions": { - "enabled": false, - }, - "twoStepVerification": { - "enabled": true, - }, - "username": { - "enabled": true, - }, - }, + "context": { + "ldapAttribute": "fr-idm-syncqueue-context", + "type": "json", }, - "consent": { - "enabled": false, + "createDate": { + "ldapAttribute": "fr-idm-syncqueue-createdate", + "type": "simple", }, - "oauthApplications": { - "enabled": false, + "mapping": { + "ldapAttribute": "fr-idm-syncqueue-mapping", + "type": "simple", }, - "personalInformation": { - "enabled": true, + "newObject": { + "ldapAttribute": "fr-idm-syncqueue-newobject", + "type": "json", }, - "preferences": { - "enabled": false, + "nodeId": { + "ldapAttribute": "fr-idm-syncqueue-nodeid", + "type": "simple", }, - "social": { - "enabled": false, + "objectRev": { + "ldapAttribute": "fr-idm-syncqueue-objectRev", + "type": "simple", }, - "trustedDevices": { - "enabled": true, + "oldObject": { + "ldapAttribute": "fr-idm-syncqueue-oldobject", + "type": "json", + }, + "resourceCollection": { + "ldapAttribute": "fr-idm-syncqueue-resourcecollection", + "type": "simple", + }, + "resourceId": { + "ldapAttribute": "fr-idm-syncqueue-resourceid", + "type": "simple", + }, + "state": { + "ldapAttribute": "fr-idm-syncqueue-state", + "type": "simple", + }, + "syncAction": { + "ldapAttribute": "fr-idm-syncqueue-syncaction", + "type": "simple", }, }, - "backgroundColor": "#FFFFFF", - "backgroundImage": "", - "bodyText": "#5E6D82", - "buttonRounded": "50", - "dangerColor": "#f7685b", - "favicon": "", - "isDefault": false, - "journeyFooter": " -", - "journeyFooterEnabled": true, - "journeyHeader": "
Header Content
", - "journeyHeaderEnabled": false, - "journeyJustifiedContent": "
-

Uptime & Performance Benchmarking Made Easy

-
- -", - "journeyJustifiedContentEnabled": true, - "journeyLayout": "justified-right", - "journeyTheaterMode": true, - "linkActiveColor": "#007661", - "linkColor": "#009C80", - "linkedTrees": [], - "logo": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", - "logoAltText": "Zardoz Logo", - "logoEnabled": true, - "logoHeight": "47", - "logoProfile": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", - "logoProfileAltText": "Zardaz Logo", - "logoProfileCollapsed": "https://cdn.forgerock.com/platform/themes/zardoz/logo-zardoz.svg", - "logoProfileCollapsedAltText": "Zardaz Logo", - "logoProfileCollapsedHeight": "28", - "logoProfileHeight": "40", - "name": "Zardoz", - "pageTitle": "#23282e", - "primaryColor": "#009C80", - "primaryOffColor": "#007661", - "profileBackgroundColor": "#FFFFFF", - "profileMenuHighlightColor": "#FFFFFF", - "profileMenuHoverColor": "#FFFFFF", - "profileMenuHoverTextColor": "#455469", - "profileMenuTextHighlightColor": "#009C80", - "secondaryColor": "#69788b", - "textColor": "#ffffff", }, - { - "_id": "86ce2f64-586d-44fe-8593-b12a85aac68d", - "accountFooter": "", - "accountFooterEnabled": false, - "accountPageSections": { - "accountControls": { - "enabled": false, + }, + "genericMapping": { + "cluster/*": { + "dnTemplate": "ou=cluster,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-cluster-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchClusterObject", + "objectClasses": [ + "uidObject", + "fr-idm-cluster-obj", + ], + }, + "config": { + "dnTemplate": "ou=config,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "file": { + "dnTemplate": "ou=file,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "import": { + "dnTemplate": "ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "import/*": { + "dnTemplate": "ou=import,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "internal/notification": { + "dnTemplate": "ou=notification,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-notification-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-notification", + ], + "properties": { + "target": { + "propertyName": "_notifications", + "resourcePath": "managed/user", + "type": "reverseReference", }, - "accountSecurity": { - "enabled": true, - "subsections": { - "password": { - "enabled": true, - }, - "securityQuestions": { - "enabled": false, - }, - "twoStepVerification": { - "enabled": true, - }, - "username": { - "enabled": true, - }, - }, + }, + }, + "internal/usermeta": { + "dnTemplate": "ou=usermeta,ou=internal,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-generic-obj", + ], + "properties": { + "target": { + "propertyName": "_meta", + "resourcePath": "managed/user", + "type": "reverseReference", }, - "consent": { - "enabled": false, + }, + }, + "jsonstorage": { + "dnTemplate": "ou=jsonstorage,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "managed/*": { + "dnTemplate": "ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "managed/assignment": { + "dnTemplate": "ou=assignment,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-managed-assignment-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-assignment", + ], + "properties": { + "condition": { + "ldapAttribute": "fr-idm-assignment-condition", + "type": "simple", }, - "oauthApplications": { - "enabled": false, + "members": { + "isMultiValued": true, + "propertyName": "assignments", + "resourcePath": "managed/user", + "type": "reverseReference", }, - "personalInformation": { - "enabled": true, + "roles": { + "isMultiValued": true, + "propertyName": "assignments", + "resourcePath": "managed/role", + "type": "reverseReference", }, - "preferences": { - "enabled": false, + }, + }, + "managed/organization": { + "dnTemplate": "ou=organization,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-managed-organization-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-organization", + ], + "properties": { + "admins": { + "isMultiValued": true, + "propertyName": "adminOfOrg", + "resourcePath": "managed/user", + "type": "reverseReference", + }, + "children": { + "isMultiValued": true, + "propertyName": "parent", + "resourcePath": "managed/organization", + "type": "reverseReference", + }, + "members": { + "isMultiValued": true, + "propertyName": "memberOfOrg", + "resourcePath": "managed/user", + "type": "reverseReference", + }, + "name": { + "ldapAttribute": "fr-idm-managed-organization-name", + "type": "simple", + }, + "owners": { + "isMultiValued": true, + "propertyName": "ownerOfOrg", + "resourcePath": "managed/user", + "type": "reverseReference", + }, + "parent": { + "ldapAttribute": "fr-idm-managed-organization-parent", + "primaryKey": "uid", + "resourcePath": "managed/organization", + "type": "reference", + }, + }, + }, + "managed/role": { + "dnTemplate": "ou=role,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-managed-role-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchManagedRole", + "objectClasses": [ + "uidObject", + "fr-idm-managed-role", + ], + "properties": { + "assignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-role-assignments", + "primaryKey": "uid", + "resourcePath": "managed/assignment", + "type": "reference", + }, + "members": { + "isMultiValued": true, + "propertyName": "roles", + "resourcePath": "managed/user", + "type": "reverseReference", + }, + }, + }, + "managed/user": { + "dnTemplate": "ou=user,ou=managed,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-managed-user-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchManagedUser", + "objectClasses": [ + "uidObject", + "fr-idm-managed-user", + ], + "properties": { + "_meta": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-meta", + "primaryKey": "uid", + "resourcePath": "internal/usermeta", + "type": "reference", + }, + "_notifications": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-notifications", + "primaryKey": "uid", + "resourcePath": "internal/notification", + "type": "reference", }, - "social": { - "enabled": false, + "adminOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-admin", + "primaryKey": "uid", + "resourcePath": "managed/organization", + "type": "reference", }, - "trustedDevices": { - "enabled": true, + "assignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-assignment-member", + "primaryKey": "uid", + "resourcePath": "managed/assignment", + "type": "reference", }, - }, - "backgroundColor": "#324054", - "backgroundImage": "", - "bodyText": "#23282e", - "buttonRounded": 5, - "dangerColor": "#f7685b", - "favicon": "", - "isDefault": true, - "journeyFooter": "", - "journeyFooterEnabled": false, - "journeyHeader": "
Header Content
", - "journeyHeaderEnabled": false, - "journeyJustifiedContent": "", - "journeyJustifiedContentEnabled": false, - "journeyLayout": "card", - "journeyTheaterMode": false, - "linkActiveColor": "#0c85cf", - "linkColor": "#109cf1", - "linkedTrees": [], - "logo": "", - "logoAltText": "", - "logoHeight": "40", - "logoProfile": "", - "logoProfileAltText": "", - "logoProfileCollapsed": "", - "logoProfileCollapsedAltText": "", - "logoProfileCollapsedHeight": "40", - "logoProfileHeight": "40", - "name": "Starter Theme", - "pageTitle": "#23282e", - "primaryColor": "#324054", - "primaryOffColor": "#242E3C", - "profileBackgroundColor": "#f6f8fa", - "profileMenuHighlightColor": "#f3f5f8", - "profileMenuHoverColor": "#324054", - "profileMenuHoverTextColor": "#ffffff", - "profileMenuTextHighlightColor": "#455469", - "secondaryColor": "#69788b", - "textColor": "#ffffff", - }, - { - "_id": "b82755e8-fe9a-4d27-b66b-45e37ae12345", - "accountFooter": " -", - "accountFooterEnabled": true, - "accountPageSections": { - "accountControls": { - "enabled": false, + "authzRoles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-authzroles-internal-role", + "primaryKey": "cn", + "resourcePath": "internal/role", + "type": "reference", }, - "accountSecurity": { - "enabled": true, - "subsections": { - "password": { - "enabled": true, - }, - "securityQuestions": { - "enabled": false, - }, - "twoStepVerification": { - "enabled": true, - }, - "username": { - "enabled": true, - }, - }, + "manager": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-manager", + "primaryKey": "uid", + "resourcePath": "managed/user", + "type": "reference", }, - "consent": { - "enabled": false, + "memberOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-member", + "primaryKey": "uid", + "resourcePath": "managed/organization", + "type": "reference", }, - "oauthApplications": { - "enabled": false, + "ownerOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-owner", + "primaryKey": "uid", + "resourcePath": "managed/organization", + "type": "reference", }, - "personalInformation": { - "enabled": true, + "passwordExpirationTime": { + "ldapAttribute": "pwdExpirationTime", + "type": "simple", + "writability": "readOnlyDiscardWrites", }, - "preferences": { - "enabled": false, + "passwordLastChangedTime": { + "ldapAttribute": "pwdChangedTime", + "type": "simple", + "writability": "readOnlyDiscardWrites", }, - "social": { - "enabled": false, + "reports": { + "isMultiValued": true, + "propertyName": "manager", + "resourcePath": "managed/user", + "type": "reverseReference", }, - "trustedDevices": { - "enabled": true, + "roles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-roles", + "primaryKey": "uid", + "resourcePath": "managed/role", + "type": "reference", }, }, - "backgroundColor": "#FFFFFF", - "backgroundImage": "", - "bodyText": "#5E6D82", - "buttonRounded": "50", - "dangerColor": "#f7685b", - "favicon": "", - "isDefault": false, - "journeyFooter": " + }, + "reconprogressstate": { + "dnTemplate": "ou=reconprogressstate,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "relationships": { + "dnTemplate": "ou=relationships,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + "jsonAttribute": "fr-idm-relationship-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchRelationship", + "objectClasses": [ + "uidObject", + "fr-idm-relationship", + ], + }, + "scheduler": { + "dnTemplate": "ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "scheduler/*": { + "dnTemplate": "ou=scheduler,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "ui/*": { + "dnTemplate": "ou=ui,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + "updates": { + "dnTemplate": "ou=updates,dc=openidm,dc=opendj-frodo-dev,dc=classic,dc=com", + }, + }, + }, + "rest2LdapOptions": { + "mvccAttribute": "etag", + "readOnUpdatePolicy": "controls", + "returnNullForMissingProperties": true, + "useMvcc": true, + "usePermissiveModify": true, + "useSubtreeDelete": false, + }, + "security": { + "fileBasedTrustManagerFile": "&{idm.install.dir}/security/truststore", + "fileBasedTrustManagerPasswordFile": "&{idm.install.dir}/security/storepass", + "fileBasedTrustManagerType": "JKS", + "trustManager": "file", + }, + }, + "repo.init": { + "_id": "repo.init", + "insert": { + "internal/role": [ + { + "description": "Administrative access", + "id": "openidm-admin", + "name": "openidm-admin", + }, + { + "description": "Basic minimum user", + "id": "openidm-authorized", + "name": "openidm-authorized", + }, + { + "description": "Anonymous access", + "id": "openidm-reg", + "name": "openidm-reg", + }, + { + "description": "Authenticated via certificate", + "id": "openidm-cert", + "name": "openidm-cert", + }, + { + "description": "Allowed to reassign workflow tasks", + "id": "openidm-tasks-manager", + "name": "openidm-tasks-manager", + }, + { + "description": "Platform provisioning access", + "id": "platform-provisioning", + "name": "platform-provisioning", + }, + ], + "internal/user": [ + { + "id": "openidm-admin", + "password": "&{openidm.admin.password}", + }, + { + "id": "anonymous", + "password": "anonymous", + }, + { + "id": "idm-provisioning", + }, + { + "id": "connector-server-client", + }, + ], + }, + }, + "router": { + "_id": "router", + "filters": [ + { + "methods": [ + "create", + "update", + ], + "onRequest": { + "file": "policyFilter.js", + "type": "text/javascript", + }, + "pattern": "^(managed|internal)($|(/.+))", + }, + { + "methods": [ + "update", + ], + "onRequest": { + "file": "policyFilter.js", + "type": "text/javascript", + }, + "pattern": "^config/managed$", + }, + { + "condition": { + "source": "(context.caller.external === true) && (typeof context.privilege === 'undefined' || Object.keys(context.privilege.matchingPrivileges).length === 0) ", - "journeyFooterEnabled": true, - "journeyHeader": "
- -
+ "type": "text/javascript", + }, + "onResponse": { + "source": "require('relationshipFilter').filterResponse() ", - "journeyHeaderEnabled": true, - "journeyJustifiedContent": "", - "journeyJustifiedContentEnabled": true, - "journeyLayout": "justified-right", - "journeyTheaterMode": false, - "linkActiveColor": "#49871E", - "linkColor": "#5AA625", - "linkedTrees": [], - "logo": "", - "logoAltText": "", - "logoEnabled": true, - "logoHeight": "40", - "logoProfile": "data:image/svg+xml,%0A%3Csvg width='156' height='34' viewBox='0 0 156 34' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0)'%3E%3Cpath d='M32.5539 32.5538C32.5539 32.5538 17.0796 35.6024 7.23861 25.7614C-2.60242 15.9204 0.446148 0.446137 0.446148 0.446137C0.446148 0.446137 15.9204 -2.60243 25.7614 7.23866C35.6024 17.0797 32.5539 32.5538 32.5539 32.5538Z' fill='%23C3EA21'/%3E%3Cpath d='M32.5537 32.554C32.5537 32.554 17.0795 35.6026 7.23845 25.7615C-2.60257 15.9205 0.445995 0.446289 0.445995 0.446289L32.5537 32.554Z' fill='%238ADB53'/%3E%3C/g%3E%3Cpath d='M51.053 25.38L53.186 25.11V8.964L51.161 8.586V6.939H55.076C55.418 6.939 55.796 6.93 56.21 6.912C56.624 6.894 56.939 6.876 57.155 6.858C58.091 6.786 58.865 6.75 59.477 6.75C61.331 6.75 62.816 6.939 63.932 7.317C65.048 7.695 65.858 8.271 66.362 9.045C66.866 9.819 67.118 10.836 67.118 12.096C67.118 13.338 66.785 14.49 66.119 15.552C65.453 16.614 64.49 17.343 63.23 17.739C63.95 18.045 64.589 18.603 65.147 19.413C65.705 20.223 66.299 21.276 66.929 22.572C67.379 23.454 67.721 24.093 67.955 24.489C68.207 24.867 68.45 25.083 68.684 25.137L69.575 25.407V27H64.985C64.697 27 64.391 26.712 64.067 26.136C63.761 25.542 63.356 24.615 62.852 23.355C62.258 21.879 61.745 20.727 61.313 19.899C60.881 19.071 60.422 18.558 59.936 18.36H57.155V25.11L59.639 25.38V27H51.053V25.38ZM59.639 16.713C60.665 16.713 61.466 16.344 62.042 15.606C62.618 14.868 62.906 13.761 62.906 12.285C62.906 10.971 62.618 9.999 62.042 9.369C61.484 8.739 60.512 8.424 59.126 8.424C58.622 8.424 58.19 8.451 57.83 8.505C57.488 8.541 57.263 8.559 57.155 8.559V16.659C57.371 16.695 57.893 16.713 58.721 16.713H59.639ZM70.674 19.521C70.674 17.829 71.007 16.389 71.673 15.201C72.357 14.013 73.266 13.122 74.4 12.528C75.534 11.916 76.767 11.61 78.099 11.61C80.367 11.61 82.113 12.312 83.337 13.716C84.579 15.102 85.2 16.992 85.2 19.386C85.2 21.096 84.858 22.554 84.174 23.76C83.508 24.948 82.608 25.839 81.474 26.433C80.358 27.009 79.125 27.297 77.775 27.297C75.525 27.297 73.779 26.604 72.537 25.218C71.295 23.814 70.674 21.915 70.674 19.521ZM77.991 25.542C80.025 25.542 81.042 23.58 81.042 19.656C81.042 17.604 80.799 16.047 80.313 14.985C79.827 13.905 79.035 13.365 77.937 13.365C75.849 13.365 74.805 15.327 74.805 19.251C74.805 21.303 75.057 22.869 75.561 23.949C76.083 25.011 76.893 25.542 77.991 25.542ZM86.4395 5.454L91.3805 4.86H91.4345L92.1905 5.373V13.338C92.6765 12.852 93.2705 12.447 93.9725 12.123C94.6925 11.781 95.4665 11.61 96.2945 11.61C98.0225 11.61 99.4265 12.222 100.506 13.446C101.604 14.652 102.153 16.506 102.153 19.008C102.153 20.556 101.829 21.96 101.181 23.22C100.533 24.48 99.5975 25.479 98.3735 26.217C97.1675 26.937 95.7635 27.297 94.1615 27.297C92.7395 27.297 91.5065 27.18 90.4625 26.946C89.4185 26.694 88.7525 26.469 88.4645 26.271V7.182L86.4395 6.858V5.454ZM94.8635 13.986C94.3235 13.986 93.8105 14.112 93.3245 14.364C92.8565 14.598 92.4785 14.868 92.1905 15.174V25.029C92.2985 25.227 92.5505 25.389 92.9465 25.515C93.3425 25.641 93.7925 25.704 94.2965 25.704C95.4485 25.704 96.3665 25.173 97.0505 24.111C97.7525 23.031 98.1035 21.438 98.1035 19.332C98.1035 17.514 97.8065 16.173 97.2125 15.309C96.6185 14.427 95.8355 13.986 94.8635 13.986Z' fill='black'/%3E%3Cpath d='M104.183 25.38L106.316 25.11V8.964L104.291 8.586V6.939H108.206C108.548 6.939 108.926 6.93 109.34 6.912C109.754 6.894 110.069 6.876 110.285 6.858C111.221 6.786 111.995 6.75 112.607 6.75C114.461 6.75 115.946 6.939 117.062 7.317C118.178 7.695 118.988 8.271 119.492 9.045C119.996 9.819 120.248 10.836 120.248 12.096C120.248 13.338 119.915 14.49 119.249 15.552C118.583 16.614 117.62 17.343 116.36 17.739C117.08 18.045 117.719 18.603 118.277 19.413C118.835 20.223 119.429 21.276 120.059 22.572C120.509 23.454 120.851 24.093 121.085 24.489C121.337 24.867 121.58 25.083 121.814 25.137L122.705 25.407V27H118.115C117.827 27 117.521 26.712 117.197 26.136C116.891 25.542 116.486 24.615 115.982 23.355C115.388 21.879 114.875 20.727 114.443 19.899C114.011 19.071 113.552 18.558 113.066 18.36H110.285V25.11L112.769 25.38V27H104.183V25.38ZM112.769 16.713C113.795 16.713 114.596 16.344 115.172 15.606C115.748 14.868 116.036 13.761 116.036 12.285C116.036 10.971 115.748 9.999 115.172 9.369C114.614 8.739 113.642 8.424 112.256 8.424C111.752 8.424 111.32 8.451 110.96 8.505C110.618 8.541 110.393 8.559 110.285 8.559V16.659C110.501 16.695 111.023 16.713 111.851 16.713H112.769ZM123.804 19.521C123.804 17.829 124.137 16.389 124.803 15.201C125.487 14.013 126.396 13.122 127.53 12.528C128.664 11.916 129.897 11.61 131.229 11.61C133.497 11.61 135.243 12.312 136.467 13.716C137.709 15.102 138.33 16.992 138.33 19.386C138.33 21.096 137.988 22.554 137.304 23.76C136.638 24.948 135.738 25.839 134.604 26.433C133.488 27.009 132.255 27.297 130.905 27.297C128.655 27.297 126.909 26.604 125.667 25.218C124.425 23.814 123.804 21.915 123.804 19.521ZM131.121 25.542C133.155 25.542 134.172 23.58 134.172 19.656C134.172 17.604 133.929 16.047 133.443 14.985C132.957 13.905 132.165 13.365 131.067 13.365C128.979 13.365 127.935 15.327 127.935 19.251C127.935 21.303 128.187 22.869 128.691 23.949C129.213 25.011 130.023 25.542 131.121 25.542ZM143.187 33.723C142.863 33.723 142.512 33.696 142.134 33.642C141.774 33.588 141.513 33.525 141.351 33.453V30.564C141.477 30.636 141.729 30.708 142.107 30.78C142.485 30.852 142.827 30.888 143.133 30.888C144.033 30.888 144.771 30.591 145.347 29.997C145.941 29.403 146.49 28.404 146.994 27H145.536L140.46 13.905L139.245 13.554V11.988H146.67V13.554L144.699 13.878L147.102 21.357L148.074 24.543L148.911 21.357L151.125 13.878L149.424 13.554V11.988H155.283V13.554L153.96 13.878C152.97 16.902 151.989 19.818 151.017 22.626C150.045 25.434 149.478 27.009 149.316 27.351C148.74 28.863 148.191 30.069 147.669 30.969C147.147 31.869 146.526 32.553 145.806 33.021C145.086 33.489 144.213 33.723 143.187 33.723Z' fill='%236CBE34'/%3E%3Cdefs%3E%3CclipPath id='clip0'%3E%3Crect width='33' height='33' fill='white' transform='matrix(-1 0 0 1 33 0)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A", - "logoProfileAltText": "RobRoy", - "logoProfileCollapsed": "data:image/svg+xml,%0A%3Csvg width='33' height='33' viewBox='0 0 33 33' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0)'%3E%3Cpath d='M32.5539 32.5538C32.5539 32.5538 17.0796 35.6024 7.23861 25.7614C-2.60242 15.9204 0.446148 0.446137 0.446148 0.446137C0.446148 0.446137 15.9204 -2.60243 25.7614 7.23866C35.6024 17.0797 32.5539 32.5538 32.5539 32.5538Z' fill='%23C3EA21'/%3E%3Cpath d='M32.5537 32.554C32.5537 32.554 17.0795 35.6026 7.23845 25.7615C-2.60257 15.9205 0.445996 0.446289 0.445996 0.446289L32.5537 32.554Z' fill='%238ADB53'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0'%3E%3Crect width='33' height='33' fill='white' transform='matrix(-1 0 0 1 33 0)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A", - "logoProfileCollapsedAltText": "RobRoy", - "logoProfileCollapsedHeight": "28", - "logoProfileHeight": "28", - "name": "Robroy", - "pageTitle": "#23282e", - "primaryColor": "#5AA625", - "primaryOffColor": "#49871E", - "profileBackgroundColor": "#FFFFFF", - "profileMenuHighlightColor": "#FFFFFF", - "profileMenuHoverColor": "#FFFFFF", - "profileMenuHoverTextColor": "#455469", - "profileMenuTextHighlightColor": "#5AA625", - "secondaryColor": "#69788b", - "textColor": "#ffffff", + "type": "text/javascript", }, - { - "_id": "cd6c93e2-52e2-4340-9770-66a588343841", - "accountFooter": "", - "accountFooterEnabled": false, - "accountPageSections": { - "accountControls": { - "enabled": false, - }, - "accountSecurity": { - "enabled": true, - "subsections": { - "password": { - "enabled": true, - }, - "securityQuestions": { - "enabled": false, - }, - "twoStepVerification": { - "enabled": true, - }, - "username": { - "enabled": true, - }, - }, + "pattern": "^(managed|internal)($|(/.+))", + }, + ], + }, + "schedule/seantest": { + "_id": "schedule/seantest", + "concurrentExecution": false, + "enabled": false, + "endTime": null, + "invokeContext": { + "script": { + "globals": {}, + "source": "//sean has changed this script. Let's see if it is still working. qqqqqqqqqqqqqqSchedule1 +", + "type": "text/javascript", + }, + }, + "invokeLogLevel": "info", + "invokeService": "script", + "misfirePolicy": "fireAndProceed", + "persisted": true, + "recoverable": false, + "repeatCount": 0, + "repeatInterval": 0, + "schedule": null, + "startTime": null, + "type": "simple", + }, + "schedule/taskscan_activate": { + "_id": "schedule/taskscan_activate", + "concurrentExecution": false, + "enabled": false, + "invokeContext": { + "numberOfThreads": 5, + "scan": { + "_queryFilter": "((/activeDate le "\${Time.nowWithOffset}") AND (!(/inactiveDate pr) or /inactiveDate ge "\${Time.nowWithOffset}"))", + "object": "managed/user", + "recovery": { + "timeout": "10m", + }, + "taskState": { + "completed": "/activateAccount/task-completed", + "started": "/activateAccount/task-started", + }, + }, + "task": { + "script": { + "globals": {}, + "source": "var patch = [{ "operation" : "replace", "field" : "/accountStatus", "value" : "active" }]; + +logger.debug("Performing Activate Account Task on {} ({})", input.mail, objectID); + +openidm.patch(objectID, null, patch); true; +", + "type": "text/javascript", + }, + }, + "waitForCompletion": false, + }, + "invokeService": "taskscanner", + "persisted": true, + "repeatInterval": 86400000, + "type": "simple", + }, + "schedule/taskscan_expire": { + "_id": "schedule/taskscan_expire", + "concurrentExecution": false, + "enabled": false, + "invokeContext": { + "numberOfThreads": 5, + "scan": { + "_queryFilter": "((/inactiveDate lt "\${Time.nowWithOffset}") AND (!(/activeDate pr) or /activeDate le "\${Time.nowWithOffset}"))", + "object": "managed/user", + "recovery": { + "timeout": "10m", + }, + "taskState": { + "completed": "/expireAccount/task-completed", + "started": "/expireAccount/task-started", + }, + }, + "task": { + "script": { + "globals": {}, + "source": "var patch = [{ "operation" : "replace", "field" : "/accountStatus", "value" : "inactive" }]; + +logger.debug("Performing Expire Account Task on {} ({})", input.mail, objectID); + +openidm.patch(objectID, null, patch); true; +", + "type": "text/javascript", + }, + }, + "waitForCompletion": false, + }, + "invokeService": "taskscanner", + "persisted": true, + "repeatInterval": 86400000, + "type": "simple", + }, + "scheduler": { + "_id": "scheduler", + "scheduler": { + "executePersistentSchedules": { + "$bool": "&{openidm.scheduler.execute.persistent.schedules}", + }, + }, + "threadPool": { + "threadCount": 10, + }, + }, + "script": { + "ECMAScript": { + "javascript.optimization.level": 9, + "javascript.recompile.minimumInterval": 60000, + }, + "Groovy": { + "#groovy.disabled.global.ast.transformations": "", + "#groovy.errors.tolerance": 10, + "#groovy.output.debug": false, + "#groovy.output.verbose": false, + "#groovy.script.base": "#any class extends groovy.lang.Script", + "#groovy.script.extension": ".groovy", + "#groovy.target.bytecode": "1.8", + "#groovy.target.directory": "&{idm.data.dir}/classes", + "#groovy.target.indy": true, + "#groovy.warnings": "likely errors #othere values [none,likely,possible,paranoia]", + "groovy.classpath": "&{idm.install.dir}/lib", + "groovy.recompile": true, + "groovy.recompile.minimumInterval": 60000, + "groovy.source.encoding": "UTF-8", + }, + "_id": "script", + "properties": {}, + "sources": { + "default": { + "directory": "&{idm.install.dir}/bin/defaults/script", + }, + "install": { + "directory": "&{idm.install.dir}", + }, + "project": { + "directory": "&{idm.instance.dir}", + }, + "project-script": { + "directory": "&{idm.instance.dir}/script", + }, + }, + }, + "secrets": { + "_id": "secrets", + "stores": [ + { + "class": "org.forgerock.openidm.secrets.config.KeyStoreSecretStore", + "config": { + "file": "&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}", + "mappings": [ + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}", + ], + "secretId": "idm.default", + "types": [ + "ENCRYPT", + "DECRYPT", + ], }, - "consent": { - "enabled": false, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}", + ], + "secretId": "idm.config.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], }, - "oauthApplications": { - "enabled": false, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}", + ], + "secretId": "idm.password.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], }, - "personalInformation": { - "enabled": true, + { + "aliases": [ + "&{openidm.https.keystore.cert.alias|openidm-localhost}", + ], + "secretId": "idm.jwt.session.module.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], }, - "preferences": { - "enabled": false, + { + "aliases": [ + "&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}", + ], + "secretId": "idm.jwt.session.module.signing", + "types": [ + "SIGN", + "VERIFY", + ], }, - "social": { - "enabled": false, + { + "aliases": [ + "selfservice", + ], + "secretId": "idm.selfservice.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], }, - "trustedDevices": { - "enabled": true, + { + "aliases": [ + "&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}", + ], + "secretId": "idm.selfservice.signing", + "types": [ + "SIGN", + "VERIFY", + ], }, - }, - "backgroundColor": "#FFFFFF", - "backgroundImage": "", - "bodyText": "#000000", - "buttonRounded": "0", - "dangerColor": "#f7685b", - "favicon": "", - "isDefault": false, - "journeyFooter": "", - "journeyFooterEnabled": false, - "journeyHeader": "
Header Content
", - "journeyHeaderEnabled": false, - "journeyJustifiedContent": "", - "journeyJustifiedContentEnabled": false, - "journeyLayout": "card", - "journeyTheaterMode": false, - "linkActiveColor": "#000000", - "linkColor": "#000000", - "linkedTrees": [], - "logo": "https://cdn.forgerock.com/platform/themes/contrast/logo-contrast.svg", - "logoAltText": "Contrast", - "logoEnabled": true, - "logoHeight": "72", - "logoProfile": "data:image/svg+xml,%0A%3Csvg width='46' height='46' viewBox='0 0 46 46' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24.3477 13.5664H43.9438C43.5192 12.6317 43.0319 11.734 42.4905 10.8711H24.3477V13.5664Z' fill='black'/%3E%3Cpath d='M24.3477 8.17578H40.5261C39.6996 7.2052 38.7974 6.30182 37.8224 5.48047H24.3477V8.17578Z' fill='black'/%3E%3Cpath d='M24.3477 40.5195H37.8224C38.7975 39.6982 39.6996 38.7948 40.5261 37.8242H24.3477V40.5195Z' fill='black'/%3E%3Cpath d='M24.3477 2.78516H33.8482C31.0136 1.27039 27.7313 0.198195 24.3477 0V2.78516Z' fill='black'/%3E%3Cpath d='M24.3477 18.957H45.6208C45.4566 18.0405 45.2557 17.1372 44.9856 16.2617H24.3477V18.957Z' fill='black'/%3E%3Cpath d='M24.3477 21.6523V24.3477H45.9317C45.958 23.8992 46 23.4549 46 23C46 22.5451 45.958 22.1008 45.9317 21.6523H24.3477Z' fill='black'/%3E%3Cpath d='M0 23C0 35.1781 9.64778 45.2964 21.6523 46V0C9.64778 0.703566 0 10.8219 0 23Z' fill='black'/%3E%3Cpath d='M24.3477 46C27.7313 45.8018 31.0136 44.7296 33.8482 43.2148H24.3477V46Z' fill='black'/%3E%3Cpath d='M45.6208 27.043H24.3477V29.7383H44.9857C45.2557 28.8628 45.4566 27.9595 45.6208 27.043V27.043Z' fill='black'/%3E%3Cpath d='M24.3477 35.1289H42.4905C43.0319 34.266 43.5192 33.3683 43.9438 32.4336H24.3477V35.1289Z' fill='black'/%3E%3C/svg%3E%0A", - "logoProfileAltText": "Contrast", - "logoProfileCollapsed": "data:image/svg+xml,%0A%3Csvg width='46' height='46' viewBox='0 0 46 46' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24.3477 13.5664H43.9438C43.5192 12.6317 43.0319 11.734 42.4905 10.8711H24.3477V13.5664Z' fill='black'/%3E%3Cpath d='M24.3477 8.17578H40.5261C39.6996 7.2052 38.7974 6.30182 37.8224 5.48047H24.3477V8.17578Z' fill='black'/%3E%3Cpath d='M24.3477 40.5195H37.8224C38.7975 39.6982 39.6996 38.7948 40.5261 37.8242H24.3477V40.5195Z' fill='black'/%3E%3Cpath d='M24.3477 2.78516H33.8482C31.0136 1.27039 27.7313 0.198195 24.3477 0V2.78516Z' fill='black'/%3E%3Cpath d='M24.3477 18.957H45.6208C45.4566 18.0405 45.2557 17.1372 44.9856 16.2617H24.3477V18.957Z' fill='black'/%3E%3Cpath d='M24.3477 21.6523V24.3477H45.9317C45.958 23.8992 46 23.4549 46 23C46 22.5451 45.958 22.1008 45.9317 21.6523H24.3477Z' fill='black'/%3E%3Cpath d='M0 23C0 35.1781 9.64778 45.2964 21.6523 46V0C9.64778 0.703566 0 10.8219 0 23Z' fill='black'/%3E%3Cpath d='M24.3477 46C27.7313 45.8018 31.0136 44.7296 33.8482 43.2148H24.3477V46Z' fill='black'/%3E%3Cpath d='M45.6208 27.043H24.3477V29.7383H44.9857C45.2557 28.8628 45.4566 27.9595 45.6208 27.043V27.043Z' fill='black'/%3E%3Cpath d='M24.3477 35.1289H42.4905C43.0319 34.266 43.5192 33.3683 43.9438 32.4336H24.3477V35.1289Z' fill='black'/%3E%3C/svg%3E%0A", - "logoProfileCollapsedAltText": "", - "logoProfileCollapsedHeight": "22", - "logoProfileHeight": "22", - "name": "Contrast", - "pageTitle": "#23282e", - "primaryColor": "#000000", - "primaryOffColor": "#000000", - "profileBackgroundColor": "#FFFFFF", - "profileMenuHighlightColor": "#FFFFFF", - "profileMenuHoverColor": "#FFFFFF", - "profileMenuHoverTextColor": "#000000", - "profileMenuTextHighlightColor": "#455469", - "secondaryColor": "#69788b", - "textColor": "#ffffff", + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}", + ], + "secretId": "idm.assignment.attribute.encryption", + "types": [ + "ENCRYPT", + "DECRYPT", + ], + }, + ], + "providerName": "&{openidm.keystore.provider|SunJCE}", + "storePassword": "&{openidm.keystore.password|changeit}", + "storetype": "&{openidm.keystore.type|JCEKS}", }, - ], + "name": "mainKeyStore", + }, + { + "class": "org.forgerock.openidm.secrets.config.KeyStoreSecretStore", + "config": { + "file": "&{openidm.truststore.location|&{idm.install.dir}/security/truststore}", + "mappings": [], + "providerName": "&{openidm.truststore.provider|SUN}", + "storePassword": "&{openidm.truststore.password|changeit}", + "storetype": "&{openidm.truststore.type|JKS}", + }, + "name": "mainTrustStore", + }, + ], + }, + "selfservice.kba": { + "_id": "selfservice.kba", + "kbaPropertyName": "kbaInfo", + "minimumAnswersToDefine": 2, + "minimumAnswersToVerify": 1, + "questions": { + "1": { + "en": "What's your favorite color?", + "en_GB": "What is your favourite colour?", + "fr": "Quelle est votre couleur préférée?", + }, + "2": { + "en": "Who was your first employer?", + }, }, }, - "uilocale/fr": { - "_id": "uilocale/fr", - "admin": { - "overrides": { - "AppLogoURI": "URI du logo de l’application", - "EmailAddress": "Adresse e-mail", - "Name": "Nom", - "Owners": "Les propriétaires", + "selfservice.propertymap": { + "_id": "selfservice.propertymap", + "properties": [ + { + "source": "givenName", + "target": "givenName", }, - "sideMenu": { - "securityQuestions": "Questions de sécurité", + { + "source": "familyName", + "target": "sn", + }, + { + "source": "email", + "target": "mail", + }, + { + "condition": "/object/postalAddress pr", + "source": "postalAddress", + "target": "postalAddress", + }, + { + "condition": "/object/addressLocality pr", + "source": "addressLocality", + "target": "city", + }, + { + "condition": "/object/addressRegion pr", + "source": "addressRegion", + "target": "stateProvince", + }, + { + "condition": "/object/postalCode pr", + "source": "postalCode", + "target": "postalCode", + }, + { + "condition": "/object/country pr", + "source": "country", + "target": "country", + }, + { + "condition": "/object/phone pr", + "source": "phone", + "target": "telephoneNumber", + }, + { + "source": "username", + "target": "userName", }, + ], + }, + "selfservice.terms": { + "_id": "selfservice.terms", + "active": "0.0", + "uiConfig": { + "buttonText": "Accept", + "displayName": "We've updated our terms", + "purpose": "You must accept the updated terms in order to proceed.", }, - "enduser": { - "overrides": { - "FirstName": "Prénom", - "LastName": "Nom de famille", + "versions": [ + { + "createDate": "2019-10-28T04:20:11.320Z", + "termsTranslations": { + "en": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.", + }, + "version": "0.0", }, - "pages": { - "dashboard": { - "widgets": { - "welcome": { - "greeting": "Bonjour", + ], + }, + "servletfilter/cors": { + "_id": "servletfilter/cors", + "filterClass": "org.eclipse.jetty.ee10.servlets.CrossOriginFilter", + "initParams": { + "allowCredentials": true, + "allowedHeaders": "accept,x-openidm-password,x-openidm-nosession,x-openidm-username,content-type,origin,x-requested-with", + "allowedMethods": "GET,POST,PUT,DELETE,PATCH", + "allowedOrigins": "https://localhost:&{openidm.port.https}", + "chainPreflight": false, + }, + "urlPatterns": [ + "/*", + ], + }, + "servletfilter/payload": { + "_id": "servletfilter/payload", + "filterClass": "org.forgerock.openidm.jetty.LargePayloadServletFilter", + "initParams": { + "maxRequestSizeInMegabytes": 5, + }, + "urlPatterns": [ + "&{openidm.servlet.alias}/*", + ], + }, + "servletfilter/upload": { + "_id": "servletfilter/upload", + "filterClass": "org.forgerock.openidm.jetty.LargePayloadServletFilter", + "initParams": { + "maxRequestSizeInMegabytes": 50, + }, + "urlPatterns": [ + "&{openidm.servlet.upload.alias}/*", + ], + }, + "sync": { + "_id": "sync", + "mappings": [ + { + "_id": "sync/managedOrganization_managedRole", + "consentRequired": false, + "displayName": "managedOrganization_managedRole", + "icon": null, + "name": "managedOrganization_managedRole", + "policies": [ + { + "action": { + "globals": {}, + "source": "//seantest +", + "type": "text/javascript", + }, + "situation": "AMBIGUOUS", + }, + { + "action": { + "globals": {}, + "source": "//seantest + + +//extract test +", + "type": "text/javascript", + }, + "condition": { + "globals": {}, + "source": "//seantest + +//seantesttttt + +//testsss +", + "type": "text/javascript", + }, + "situation": "SOURCE_MISSING", + }, + { + "action": { + "globals": {}, + "source": "//seantest +", + "type": "groovy", + }, + "postAction": { + "globals": {}, + "source": " +", + "type": "groovy", + }, + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "ABSENT", + }, + ], + "properties": [], + "source": "managed/organization", + "syncAfter": [], + "target": "managed/role", + }, + { + "_id": "sync/managedOrganization_managedSeantestmanagedobject", + "consentRequired": false, + "displayName": "managedOrganization_managedSeantestmanagedobject", + "icon": null, + "name": "managedOrganization_managedSeantestmanagedobject", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/organization", + "syncAfter": [ + "managedOrganization_managedRole", + ], + "target": "managed/seantestmanagedobject", + }, + { + "_id": "sync/managedAssignment_managedUser", + "consentRequired": false, + "displayName": "managedAssignment_managedUser", + "icon": null, + "name": "managedAssignment_managedUser", + "policies": [ + { + "action": { + "globals": {}, + "source": "//asdfasdf UPDATED +", + "type": "groovy", + }, + "situation": "AMBIGUOUS", + }, + { + "action": { + "globals": {}, + "source": "//asdfasdfasdfas UPDATED POLICIES SOURCE_MISSING ACTION SCRIPT +", + "type": "text/javascript", + }, + "condition": { + "globals": {}, + "source": "//asdfasdfasdf +", + "type": "groovy", + }, + "postAction": { + "globals": {}, + "source": " +", + "type": "text/javascript", + }, + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + { + "action": { + "globals": {}, + "source": "//asdfasdfasdf +", + "type": "text/javascript", }, + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "ABSENT", + }, + ], + "properties": [], + "source": "managed/assignment", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + ], + "target": "managed/user", + }, + { + "_id": "sync/managedSeantestmanagedobject_managedUser", + "consentRequired": false, + "displayName": "managedSeantestmanagedobject_managedUser", + "icon": null, + "name": "managedSeantestmanagedobject_managedUser", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", }, - }, - }, - }, - "login": { - "login": { - "next": "Suivant", - }, - "overrides": { - "Password": "Mot de passe", - "UserName": "Nom d'utilisateur", - }, - }, - "shared": { - "sideMenu": { - "dashboard": "Tableau de bord", + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/seantestmanagedobject", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser", + ], + "target": "managed/user", }, - }, - }, - "undefined": { - "_id": "undefined", - "mapping": { - "mapping/managedBravo_user_managedBravo_user0": { - "_id": "mapping/managedBravo_user_managedBravo_user0", + { + "_id": "sync/seantestmapping", "consentRequired": false, - "displayName": "managedBravo_user_managedBravo_user0", + "displayName": "seantestmapping", "icon": null, - "name": "managedBravo_user_managedBravo_user0", + "name": "seantestmapping", "policies": [ { "action": "ASYNC", @@ -54782,21 +87295,581 @@ isGoogleEligible; }, ], "properties": [], - "source": "managed/bravo_user", - "target": "managed/bravo_user", + "source": "managed/assignment", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser", + "managedSeantestmanagedobject_managedUser", + ], + "target": "managed/organization", + }, + { + "_id": "sync/systemCsvfileconnector__ACCOUNT___managedUser", + "consentRequired": false, + "displayName": "systemCsvfileconnector__ACCOUNT___managedUser", + "icon": null, + "name": "systemCsvfileconnector__ACCOUNT___managedUser", + "policies": [ + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "UPDATE", + "situation": "CONFIRMED", + }, + { + "action": "UPDATE", + "situation": "FOUND", + }, + { + "action": "CREATE", + "situation": "ABSENT", + }, + ], + "properties": [ + { + "source": "name", + "target": "userName", + }, + { + "source": "firstName", + "target": "givenName", + }, + { + "source": "lastName", + "target": "sn", + }, + { + "source": "email", + "target": "mail", + }, + ], + "source": "system/csvFileConnector/__ACCOUNT__", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser", + "managedSeantestmanagedobject_managedUser", + "seantestmapping", + ], + "target": "managed/user", + }, + { + "_id": "sync/systemCsvsampleconnector__ACCOUNT___managedUser", + "consentRequired": false, + "displayName": "systemCsvsampleconnector__ACCOUNT___managedUser", + "icon": null, + "name": "systemCsvsampleconnector__ACCOUNT___managedUser", + "policies": [ + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "UPDATE", + "situation": "CONFIRMED", + }, + { + "action": "UPDATE", + "situation": "FOUND", + }, + { + "action": "CREATE", + "situation": "ABSENT", + }, + ], + "properties": [ + { + "source": "email", + "target": "mail", + }, + { + "source": "lastname", + "target": "sn", + }, + { + "source": "description", + "target": "description", + }, + { + "source": "username", + "target": "userName", + }, + { + "source": "firstname", + "target": "givenName", + }, + ], + "source": "system/csvSampleConnector/__ACCOUNT__", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser", + "managedSeantestmanagedobject_managedUser", + "seantestmapping", + "systemCsvfileconnector__ACCOUNT___managedUser", + ], + "target": "managed/user", + }, + ], + }, + "ui.context/admin": { + "_id": "ui.context/admin", + "cacheEnabled": true, + "defaultDir": "&{idm.install.dir}/ui/admin/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/admin/extension", + "responseHeaders": { + "X-Frame-Options": "SAMEORIGIN", + }, + "urlContextRoot": "/admin", + }, + "ui.context/api": { + "_id": "ui.context/api", + "authEnabled": true, + "cacheEnabled": false, + "defaultDir": "&{idm.install.dir}/ui/api/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/api/extension", + "urlContextRoot": "/api", + }, + "ui.context/enduser": { + "_id": "ui.context/enduser", + "cacheEnabled": true, + "defaultDir": "&{idm.install.dir}/ui/enduser", + "enabled": true, + "responseHeaders": { + "X-Frame-Options": "DENY", + }, + "urlContextRoot": "/", + }, + "ui.context/oauth": { + "_id": "ui.context/oauth", + "cacheEnabled": true, + "defaultDir": "&{idm.install.dir}/ui/oauth/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/oauth/extension", + "urlContextRoot": "/oauthReturn", + }, + "ui/configuration": { + "_id": "ui/configuration", + "configuration": { + "defaultNotificationType": "info", + "forgotUsername": false, + "lang": "en", + "notificationTypes": { + "error": { + "iconPath": "images/notifications/error.png", + "name": "common.notification.types.error", + }, + "info": { + "iconPath": "images/notifications/info.png", + "name": "common.notification.types.info", + }, + "warning": { + "iconPath": "images/notifications/warning.png", + "name": "common.notification.types.warning", + }, + }, + "passwordReset": false, + "passwordResetLink": "", + "roles": { + "internal/role/openidm-admin": "ui-admin", + "internal/role/openidm-authorized": "ui-user", + }, + "selfRegistration": false, + }, + }, + "ui/dashboard": { + "_id": "ui/dashboard", + "adminDashboards": [ + { + "isDefault": true, + "name": "Quick Start", + "widgets": [ + { + "cards": [ + { + "href": "#connectors/add/", + "icon": "fa-database", + "name": "Add Connector", + }, + { + "href": "#mapping/add/", + "icon": "fa-map-marker", + "name": "Create Mapping", + }, + { + "href": "#resource/managed/role/list/", + "icon": "fa-check-square-o", + "name": "Manage Roles", + }, + { + "href": "#managed/add/", + "icon": "fa-tablet", + "name": "Add Device", + }, + { + "href": "#selfservice/userregistration/", + "icon": "fa-gear", + "name": "Configure Registration", + }, + { + "href": "#selfservice/passwordreset/", + "icon": "fa-gear", + "name": "Configure Password Reset", + }, + { + "href": "#resource/managed/user/list/", + "icon": "fa-user", + "name": "Manage Users", + }, + { + "href": "#settings/", + "icon": "fa-user", + "name": "Configure System Preferences", + }, + ], + "size": "large", + "type": "quickStart", + }, + ], + }, + { + "isDefault": false, + "name": "System Monitoring", + "widgets": [ + { + "legendRange": { + "month": [ + 500, + 2500, + 5000, + ], + "week": [ + 10, + 30, + 90, + 270, + 810, + ], + "year": [ + 10000, + 40000, + 100000, + 250000, + ], + }, + "maxRange": "#24423c", + "minRange": "#b0d4cd", + "size": "large", + "type": "audit", + }, + { + "size": "large", + "type": "clusterStatus", + }, + { + "size": "large", + "type": "systemHealthFull", + }, + { + "barchart": "false", + "size": "large", + "type": "lastRecon", + }, + ], + }, + { + "isDefault": false, + "name": "Resource Report", + "widgets": [ + { + "selected": "activeUsers", + "size": "x-small", + "type": "counter", + }, + { + "selected": "rolesEnabled", + "size": "x-small", + "type": "counter", + }, + { + "selected": "activeConnectors", + "size": "x-small", + "type": "counter", + }, + { + "size": "large", + "type": "resourceList", + }, + ], + }, + { + "isDefault": false, + "name": "Business Report", + "widgets": [ + { + "graphType": "fa-pie-chart", + "providers": [ + "Username/Password", + ], + "size": "x-small", + "type": "signIns", + "widgetTitle": "Sign-Ins", + }, + { + "graphType": "fa-bar-chart", + "size": "x-small", + "type": "passwordResets", + "widgetTitle": "Password Resets", + }, + { + "graphType": "fa-line-chart", + "providers": [ + "Username/Password", + ], + "size": "x-small", + "type": "newRegistrations", + "widgetTitle": "New Registrations", + }, + { + "size": "x-small", + "timezone": { + "hours": "07", + "minutes": "00", + "negative": true, + }, + "type": "socialLogin", + }, + { + "selected": "socialEnabled", + "size": "x-small", + "type": "counter", + }, + { + "selected": "manualRegistrations", + "size": "x-small", + "type": "counter", + }, + ], + }, + { + "isDefault": false, + "name": "seantestdashboard", + "widgets": [ + { + "size": "large", + "type": "resourceList", + }, + ], + }, + ], + "dashboard": { + "widgets": [ + { + "size": "large", + "type": "Welcome", + }, + ], + }, + }, + "ui/profile": { + "_id": "ui/profile", + "tabs": [ + { + "name": "personalInfoTab", + "view": "org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab", + }, + { + "name": "signInAndSecurity", + "view": "org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab", + }, + { + "name": "preference", + "view": "org/forgerock/openidm/ui/user/profile/PreferencesTab", + }, + { + "name": "trustedDevice", + "view": "org/forgerock/openidm/ui/user/profile/TrustedDevicesTab", + }, + { + "name": "oauthApplication", + "view": "org/forgerock/openidm/ui/user/profile/OauthApplicationsTab", + }, + { + "name": "privacyAndConsent", + "view": "org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab", + }, + { + "name": "sharing", + "view": "org/forgerock/openidm/ui/user/profile/uma/SharingTab", + }, + { + "name": "auditHistory", + "view": "org/forgerock/openidm/ui/user/profile/uma/ActivityTab", + }, + { + "name": "accountControls", + "view": "org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab", + }, + ], + }, + "ui/themeconfig": { + "_id": "ui/themeconfig", + "icon": "favicon.ico", + "path": "", + "settings": { + "footer": { + "mailto": "info@pingidentity.com", + }, + "loginLogo": { + "alt": "Ping Identity", + "height": "120px", + "src": "images/login-logo-dark.png", + "title": "Ping Identity", + "width": "120px", + }, + "logo": { + "alt": "Ping Identity", + "src": "images/logo-horizontal-white.png", + "title": "Ping Identity", }, }, + "stylesheets": [ + "css/bootstrap-3.4.1-custom.css", + "css/structure.css", + "css/theme.css", + ], + }, + "webserver": { + "_id": "webserver", + "gzip": { + "enabled": true, + "includedMethods": [ + "GET", + ], + }, + "maxThreads": { + "$int": "&{openidm.webserver.max.threads|&{org.ops4j.pax.web.server.maxThreads|200}}", + }, + }, + "webserver.listener/http": { + "_id": "webserver.listener/http", + "enabled": { + "$bool": "&{openidm.http.enabled|true}", + }, + "port": { + "$int": "&{openidm.port.http|8080}", + }, + }, + "webserver.listener/https": { + "_id": "webserver.listener/https", + "enabled": { + "$bool": "&{openidm.https.enabled|true}", + }, + "port": { + "$int": "&{openidm.port.https|8443}", + }, + "secure": true, + "sslCertAlias": "&{openidm.https.keystore.cert.alias|openidm-localhost}", + }, + "webserver.listener/mutualAuth": { + "_id": "webserver.listener/mutualAuth", + "enabled": { + "$bool": "&{openidm.mutualauth.enabled|true}", + }, + "mutualAuth": true, + "port": { + "$int": "&{openidm.port.mutualauth|8444}", + }, + "secure": true, + "sslCertAlias": "&{openidm.https.keystore.cert.alias|openidm-localhost}", }, }, "meta": Any, } `; -exports[`frodo idm export "frodo idm export -i script -D testDir4": should export the idm config entity with idm id "script" into the directory testDir4 1`] = `0`; +exports[`frodo idm export "frodo idm export -i script -D idmTestDir4": should export the idm config entity with idm id "script" into the directory idmTestDir4 1`] = `0`; -exports[`frodo idm export "frodo idm export -i script -D testDir4": should export the idm config entity with idm id "script" into the directory testDir4 2`] = `""`; +exports[`frodo idm export "frodo idm export -i script -D idmTestDir4": should export the idm config entity with idm id "script" into the directory idmTestDir4 2`] = `""`; -exports[`frodo idm export "frodo idm export -i script -D testDir4": should export the idm config entity with idm id "script" into the directory testDir4: testDir4/script.idm.json 1`] = ` +exports[`frodo idm export "frodo idm export -i script -D idmTestDir4": should export the idm config entity with idm id "script" into the directory idmTestDir4: idmTestDir4/script.idm.json 1`] = ` { "idm": { "script": { diff --git a/test/e2e/__snapshots__/idm-import.e2e.test.js.snap b/test/e2e/__snapshots__/idm-import.e2e.test.js.snap index 2ecd81c19..94dd5b6a5 100644 --- a/test/e2e/__snapshots__/idm-import.e2e.test.js.snap +++ b/test/e2e/__snapshots__/idm-import.e2e.test.js.snap @@ -39,7 +39,7 @@ Error updating config entity endpoint/testEndpoint2 " `; -exports[`frodo idm import "frodo idm import -AD test/e2e/exports/all-separate/idm/global/idm -m idm": Should import on prem idm config according to the idmenv and entity files" 1`] = `""`; +exports[`frodo idm import "frodo idm import -AD test/e2e/exports/all-separate-extracted-script/idm/global/idm -m idm": Should import on prem idm config according to the idmenv and entity files" 1`] = `""`; exports[`frodo idm import "frodo idm import -af test/e2e/exports/all/all.idm.json -e test/e2e/env/testEnvFile.env -E test/e2e/env/testEntitiesFile.json": Should import all configs from the file 'test/e2e/exports/all/all.idm.json' according to the env and entity files" 1`] = `""`; diff --git a/test/e2e/__snapshots__/mapping-export.e2e.test.js.snap b/test/e2e/__snapshots__/mapping-export.e2e.test.js.snap index b1f9e1b99..8519d346f 100644 --- a/test/e2e/__snapshots__/mapping-export.e2e.test.js.snap +++ b/test/e2e/__snapshots__/mapping-export.e2e.test.js.snap @@ -1268,39 +1268,47 @@ exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir4": exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir4": should export all mappings to separate files in the mappingExportTestDir4 directory 2`] = `""`; -exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir4": should export all mappings to separate files in the mappingExportTestDir4 directory: mappingExportTestDir4/mapping/managedBravo_group_managedBravo_group.mapping.json 1`] = ` +exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir4": should export all mappings to separate files in the mappingExportTestDir4 directory: mappingExportTestDir4/allMappings.mapping.json 1`] = ` { "mapping": { - "mapping/managedBravo_group_managedBravo_group": { - "_id": "mapping/managedBravo_group_managedBravo_group", + "mapping/mappingtest": { + "_id": "mapping/mappingtest", "consentRequired": false, - "displayName": "managedBravo_group_managedBravo_group", + "displayName": "mappingtest", "icon": null, - "name": "managedBravo_group_managedBravo_group", + "name": "mappingtest", "policies": [ { - "action": "ASYNC", - "situation": "ABSENT", + "action": { + "globals": {}, + "source": "//asdfasdf", + "type": "text/javascript", + }, + "situation": "AMBIGUOUS", }, { "action": "ASYNC", - "situation": "ALL_GONE", + "situation": "SOURCE_MISSING", }, { - "action": "ASYNC", - "situation": "AMBIGUOUS", + "action": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "groovy", + }, + "situation": "MISSING", }, { "action": "ASYNC", - "situation": "CONFIRMED", + "situation": "FOUND_ALREADY_LINKED", }, { "action": "ASYNC", - "situation": "FOUND", + "situation": "UNQUALIFIED", }, { "action": "ASYNC", - "situation": "FOUND_ALREADY_LINKED", + "situation": "UNASSIGNED", }, { "action": "ASYNC", @@ -1308,7 +1316,7 @@ exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir4": }, { "action": "ASYNC", - "situation": "MISSING", + "situation": "TARGET_IGNORED", }, { "action": "ASYNC", @@ -1316,39 +1324,31 @@ exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir4": }, { "action": "ASYNC", - "situation": "SOURCE_MISSING", + "situation": "ALL_GONE", }, { "action": "ASYNC", - "situation": "TARGET_IGNORED", + "situation": "CONFIRMED", }, { "action": "ASYNC", - "situation": "UNASSIGNED", + "situation": "FOUND", }, { "action": "ASYNC", - "situation": "UNQUALIFIED", + "situation": "ABSENT", }, ], "properties": [], - "source": "managed/bravo_group", - "target": "managed/bravo_group", + "source": "managed/assignment", + "target": "managed/organization", }, - }, - "meta": Any, -} -`; - -exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir4": should export all mappings to separate files in the mappingExportTestDir4 directory: mappingExportTestDir4/mapping/managedBravo_user_managedBravo_user0.mapping.json 1`] = ` -{ - "mapping": { - "mapping/managedBravo_user_managedBravo_user0": { - "_id": "mapping/managedBravo_user_managedBravo_user0", + "mapping/seantestmapping": { + "_id": "mapping/seantestmapping", "consentRequired": false, - "displayName": "managedBravo_user_managedBravo_user0", + "displayName": "seantestmapping", "icon": null, - "name": "managedBravo_user_managedBravo_user0", + "name": "seantestmapping", "policies": [ { "action": "ASYNC", @@ -1404,606 +1404,2809 @@ exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir4": }, ], "properties": [], - "source": "managed/bravo_user", - "target": "managed/bravo_user", + "source": "managed/assignment", + "target": "managed/organization", }, }, "meta": Any, -} -`; - -exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir4": should export all mappings to separate files in the mappingExportTestDir4 directory: mappingExportTestDir4/sync/AlphaUser2GoogleApps.sync.json 1`] = ` -{ - "_id": "sync/AlphaUser2GoogleApps", - "consentRequired": false, - "correlationQuery": [ - { - "expressionTree": { - "all": [ - "__NAME__", + "sync": { + "_id": "sync", + "mappings": [ + { + "_id": "sync/managedOrganization_managedRole", + "consentRequired": false, + "displayName": "managedOrganization_managedRole", + "icon": null, + "name": "managedOrganization_managedRole", + "policies": [ + { + "action": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript", + }, + "situation": "AMBIGUOUS", + }, + { + "action": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript", + }, + "condition": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript", + }, + "situation": "SOURCE_MISSING", + }, + { + "action": { + "globals": {}, + "source": "//seantest", + "type": "groovy", + }, + "postAction": { + "globals": {}, + "source": "//seantest", + "type": "groovy", + }, + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "ABSENT", + }, ], + "properties": [], + "source": "managed/organization", + "syncAfter": [], + "target": "managed/role", }, - "file": "ui/correlateTreeToQueryFilter.js", - "linkQualifier": "default", - "mapping": "AlphaUser2GoogleApps", - "type": "text/javascript", - }, - ], - "displayName": "AlphaUser2GoogleApps", - "enableSync": { - "$bool": "&{esv.gac.enable.mapping}", - }, - "icon": null, - "name": "AlphaUser2GoogleApps", - "onCreate": { - "globals": {}, - "source": "target.orgUnitPath = "/NewAccounts";", - "type": "text/javascript", - }, - "onUpdate": { - "globals": {}, - "source": "//testing1234 -target.givenName = oldTarget.givenName; -target.familyName = oldTarget.familyName; -target.__NAME__ = oldTarget.__NAME__;", - "type": "text/javascript", - }, - "policies": [ - { - "action": "EXCEPTION", - "situation": "AMBIGUOUS", - }, - { - "action": "UNLINK", - "situation": "SOURCE_MISSING", - }, - { - "action": { - "globals": {}, - "source": "// Timing Constants -var ATTEMPT = 6; // Number of attempts to find the Google user. -var SLEEP_TIME = 500; // Milliseconds between retries. -var SYSTEM_ENDPOINT = "system/GoogleApps/__ACCOUNT__"; -var MAPPING_NAME = "AlphaUser2GoogleApps"; -var GOOGLE_DOMAIN = identityServer.getProperty("esv.gac.domain"); -var googleEmail = source.userName + "@" + GOOGLE_DOMAIN; -var frUserGUID = source._id; -var resultingAction = "ASYNC"; - -// Get the Google GUID -var linkQueryParams = {'_queryFilter': 'firstId eq "' + frUserGUID + '" and linkType eq "' + MAPPING_NAME + '"'}; -var linkResults = openidm.query("repo/link/", linkQueryParams, null); -var googleGUID; - -if (linkResults.resultCount === 1) { - googleGUID = linkResults.result[0].secondId; -} - -var queryResults; // Resulting query from looking for the Google user. -var params = {'_queryFilter': '__UID__ eq "' + googleGUID + '"'}; - -for (var i = 1; i <= ATTEMPT; i++) { - queryResults = openidm.query(SYSTEM_ENDPOINT, params); - if (queryResults.result && queryResults.result.length > 0) { - logger.info("idmlog: ---AlphaUser2GoogleApps - Missing->UPDATE - Result found in " + i + " attempts. Query result: " + JSON.stringify(queryResults)); - resultingAction = "UPDATE"; - break; - } - java.lang.Thread.sleep(SLEEP_TIME); // Wait before trying again. -} - -if (!queryResults.result || queryResults.resultCount === 0) { - logger.warn("idmlog: ---AlphaUser2GoogleApps - Missing->UNLINK - " + googleEmail + " not found after " + ATTEMPT + " attempts."); - resultingAction = "UNLINK"; -} -resultingAction; -", - "type": "text/javascript", - }, - "situation": "MISSING", - }, - { - "action": "EXCEPTION", - "situation": "FOUND_ALREADY_LINKED", - }, - { - "action": "IGNORE", - "situation": "UNQUALIFIED", - }, - { - "action": "IGNORE", - "situation": "UNASSIGNED", - }, - { - "action": "UNLINK", - "situation": "LINK_ONLY", - }, - { - "action": "IGNORE", - "situation": "TARGET_IGNORED", - }, - { - "action": "IGNORE", - "situation": "SOURCE_IGNORED", - }, - { - "action": "IGNORE", - "situation": "ALL_GONE", - }, - { - "action": "UPDATE", - "situation": "CONFIRMED", - }, - { - "action": "LINK", - "situation": "FOUND", - }, - { - "action": "CREATE", - "situation": "ABSENT", - }, - ], - "properties": [ + { + "_id": "sync/managedOrganization_managedSeantestmanagedobject", + "consentRequired": false, + "displayName": "managedOrganization_managedSeantestmanagedobject", + "icon": null, + "name": "managedOrganization_managedSeantestmanagedobject", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/organization", + "syncAfter": [ + "managedOrganization_managedRole", + ], + "target": "managed/seantestmanagedobject", + }, + { + "_id": "sync/managedAssignment_managedUser", + "consentRequired": false, + "displayName": "managedAssignment_managedUser", + "icon": null, + "name": "managedAssignment_managedUser", + "policies": [ + { + "action": { + "globals": {}, + "source": "//asdfasdf", + "type": "groovy", + }, + "situation": "AMBIGUOUS", + }, + { + "action": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "text/javascript", + }, + "condition": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "groovy", + }, + "postAction": { + "globals": {}, + "source": "//asdfasdf", + "type": "text/javascript", + }, + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + { + "action": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "text/javascript", + }, + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "ABSENT", + }, + ], + "properties": [], + "source": "managed/assignment", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + ], + "target": "managed/user", + }, + { + "_id": "sync/seantestmapping", + "consentRequired": false, + "displayName": "seantestmapping", + "icon": null, + "name": "seantestmapping", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/assignment", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser", + ], + "target": "managed/organization", + }, + { + "_id": "sync/managedSeantestmanagedobject_managedUser", + "consentRequired": false, + "displayName": "managedSeantestmanagedobject_managedUser", + "icon": null, + "name": "managedSeantestmanagedobject_managedUser", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/seantestmanagedobject", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser", + "seantestmapping", + ], + "target": "managed/user", + }, + ], + }, +} +`; + +exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir4": should export all mappings to separate files in the mappingExportTestDir4 directory: mappingExportTestDir4/mapping/managedBravo_group_managedBravo_group.mapping.json 1`] = ` +{ + "mapping": { + "mapping/managedBravo_group_managedBravo_group": { + "_id": "mapping/managedBravo_group_managedBravo_group", + "consentRequired": false, + "displayName": "managedBravo_group_managedBravo_group", + "icon": null, + "name": "managedBravo_group_managedBravo_group", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/bravo_group", + "target": "managed/bravo_group", + }, + }, + "meta": Any, +} +`; + +exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir4": should export all mappings to separate files in the mappingExportTestDir4 directory: mappingExportTestDir4/mapping/managedBravo_user_managedBravo_user0.mapping.json 1`] = ` +{ + "mapping": { + "mapping/managedBravo_user_managedBravo_user0": { + "_id": "mapping/managedBravo_user_managedBravo_user0", + "consentRequired": false, + "displayName": "managedBravo_user_managedBravo_user0", + "icon": null, + "name": "managedBravo_user_managedBravo_user0", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/bravo_user", + "target": "managed/bravo_user", + }, + }, + "meta": Any, +} +`; + +exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir4": should export all mappings to separate files in the mappingExportTestDir4 directory: mappingExportTestDir4/sync/AlphaUser2GoogleApps.sync.json 1`] = ` +{ + "_id": "sync/AlphaUser2GoogleApps", + "consentRequired": false, + "correlationQuery": [ + { + "expressionTree": { + "all": [ + "__NAME__", + ], + }, + "file": "ui/correlateTreeToQueryFilter.js", + "linkQualifier": "default", + "mapping": "AlphaUser2GoogleApps", + "type": "text/javascript", + }, + ], + "displayName": "AlphaUser2GoogleApps", + "enableSync": { + "$bool": "&{esv.gac.enable.mapping}", + }, + "icon": null, + "name": "AlphaUser2GoogleApps", + "onCreate": { + "globals": {}, + "source": "target.orgUnitPath = "/NewAccounts";", + "type": "text/javascript", + }, + "onUpdate": { + "globals": {}, + "source": "//testing1234 +target.givenName = oldTarget.givenName; +target.familyName = oldTarget.familyName; +target.__NAME__ = oldTarget.__NAME__;", + "type": "text/javascript", + }, + "policies": [ + { + "action": "EXCEPTION", + "situation": "AMBIGUOUS", + }, + { + "action": "UNLINK", + "situation": "SOURCE_MISSING", + }, + { + "action": { + "globals": {}, + "source": "// Timing Constants +var ATTEMPT = 6; // Number of attempts to find the Google user. +var SLEEP_TIME = 500; // Milliseconds between retries. +var SYSTEM_ENDPOINT = "system/GoogleApps/__ACCOUNT__"; +var MAPPING_NAME = "AlphaUser2GoogleApps"; +var GOOGLE_DOMAIN = identityServer.getProperty("esv.gac.domain"); +var googleEmail = source.userName + "@" + GOOGLE_DOMAIN; +var frUserGUID = source._id; +var resultingAction = "ASYNC"; + +// Get the Google GUID +var linkQueryParams = {'_queryFilter': 'firstId eq "' + frUserGUID + '" and linkType eq "' + MAPPING_NAME + '"'}; +var linkResults = openidm.query("repo/link/", linkQueryParams, null); +var googleGUID; + +if (linkResults.resultCount === 1) { + googleGUID = linkResults.result[0].secondId; +} + +var queryResults; // Resulting query from looking for the Google user. +var params = {'_queryFilter': '__UID__ eq "' + googleGUID + '"'}; + +for (var i = 1; i <= ATTEMPT; i++) { + queryResults = openidm.query(SYSTEM_ENDPOINT, params); + if (queryResults.result && queryResults.result.length > 0) { + logger.info("idmlog: ---AlphaUser2GoogleApps - Missing->UPDATE - Result found in " + i + " attempts. Query result: " + JSON.stringify(queryResults)); + resultingAction = "UPDATE"; + break; + } + java.lang.Thread.sleep(SLEEP_TIME); // Wait before trying again. +} + +if (!queryResults.result || queryResults.resultCount === 0) { + logger.warn("idmlog: ---AlphaUser2GoogleApps - Missing->UNLINK - " + googleEmail + " not found after " + ATTEMPT + " attempts."); + resultingAction = "UNLINK"; +} +resultingAction; +", + "type": "text/javascript", + }, + "situation": "MISSING", + }, + { + "action": "EXCEPTION", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "IGNORE", + "situation": "UNQUALIFIED", + }, + { + "action": "IGNORE", + "situation": "UNASSIGNED", + }, + { + "action": "UNLINK", + "situation": "LINK_ONLY", + }, + { + "action": "IGNORE", + "situation": "TARGET_IGNORED", + }, + { + "action": "IGNORE", + "situation": "SOURCE_IGNORED", + }, + { + "action": "IGNORE", + "situation": "ALL_GONE", + }, + { + "action": "UPDATE", + "situation": "CONFIRMED", + }, + { + "action": "LINK", + "situation": "FOUND", + }, + { + "action": "CREATE", + "situation": "ABSENT", + }, + ], + "properties": [ + { + "condition": { + "globals": {}, + "source": "object.custom_password_encrypted != null", + "type": "text/javascript", + }, + "source": "custom_password_encrypted", + "target": "__PASSWORD__", + "transform": { + "globals": {}, + "source": "openidm.decrypt(source);", + "type": "text/javascript", + }, + }, + { + "source": "cn", + "target": "__NAME__", + "transform": { + "globals": {}, + "source": "source + "@" + identityServer.getProperty("esv.gac.domain");", + "type": "text/javascript", + }, + }, + { + "source": "givenName", + "target": "givenName", + }, + { + "source": "", + "target": "familyName", + "transform": { + "globals": {}, + "source": "if (source.frIndexedInteger1 > 2 && source.frIndexedInteger1 < 6) { + source.sn + " (Student)" +} else { + source.sn +}", + "type": "text/javascript", + }, + }, + ], + "queuedSync": { + "enabled": true, + "maxQueueSize": 20000, + "maxRetries": 5, + "pageSize": 100, + "pollingInterval": 1000, + "postRetryAction": "logged-ignore", + "retryDelay": 1000, + }, + "source": "managed/alpha_user", + "syncAfter": [ + "managedBravo_user_managedBravo_user", + "managedAlpha_application_managedBravo_application", + "managedAlpha_user_managedBravo_user", + "managedBravo_user_managedAlpha_user", + ], + "target": "system/GoogleApps/__ACCOUNT__", + "validSource": { + "globals": {}, + "source": "var isGoogleEligible = true; +//var logMsg = "idmlog: ---AplhaUser2GAC (username: " + source.userName + " - userType: " + source.frIndexedInteger1 + " cn: " + source.cn + ") -"; +var logMsg = "idmlog: ---AplhaUser2GAC (username: " + source.userName + " - userType: " + source.frIndexedInteger1 + ") -"; + +//Get Applicable userTypes (no Parent accounts) +if (source.frIndexedInteger1 !== 0 && source.frIndexedInteger1 !== 1 && source.frIndexedInteger1 !== 3 && source.frIndexedInteger1 !== 4 && source.frIndexedInteger1 !== 5) { + isGoogleEligible = false; + logMsg = logMsg + " Account type not eligible."; +} + +//Make sure the account has a valid encrypted password. +if (source.custom_password_encrypted == undefined || source.custom_password_encrypted == null) { + isGoogleEligible = false; + logMsg = logMsg + " No encrypted password yet."; +} + +//Check that CN exists and has no space. +if (source.cn && source.cn.includes(' ')) { + isGoogleEligible = false; + logMsg = logMsg + " CN with a space is not allowed."; +} + +if (!isGoogleEligible) { + logMsg = logMsg + " Not sent to Google." + logger.info(logMsg); +} + +if (isGoogleEligible) { + logMsg = logMsg + " Sent to Google." + logger.info(logMsg); +} + +isGoogleEligible; +", + "type": "text/javascript", + }, +} +`; + +exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir4": should export all mappings to separate files in the mappingExportTestDir4 directory: mappingExportTestDir4/sync/managedAlpha_application_managedBravo_application.sync.json 1`] = ` +{ + "_id": "sync/managedAlpha_application_managedBravo_application", + "consentRequired": true, + "displayName": "Test Application Mapping", + "icon": null, + "name": "managedAlpha_application_managedBravo_application", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [ + { + "source": "authoritative", + "target": "_id", + }, + ], + "source": "managed/alpha_application", + "sourceQuery": { + "_queryFilter": "(eq "" or eq "")", + }, + "syncAfter": [ + "managedBravo_user_managedBravo_user", + ], + "target": "managed/bravo_application", + "targetQuery": { + "_queryFilter": "!(eq "")", + }, +} +`; + +exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir4": should export all mappings to separate files in the mappingExportTestDir4 directory: mappingExportTestDir4/sync/managedAlpha_user_managedBravo_user.sync.json 1`] = ` +{ + "_id": "sync/managedAlpha_user_managedBravo_user", + "consentRequired": true, + "displayName": "Test Mapping for Frodo", + "icon": null, + "name": "managedAlpha_user_managedBravo_user", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [ + { + "condition": { + "globals": {}, + "source": "console.log("Hello World!");", + "type": "text/javascript", + }, + "default": [ + "Default value string", + ], + "source": "accountStatus", + "target": "applications", + "transform": { + "globals": {}, + "source": "console.log("hello");", + "type": "text/javascript", + }, + }, + ], + "source": "managed/alpha_user", + "syncAfter": [ + "managedBravo_user_managedBravo_user", + "managedAlpha_application_managedBravo_application", + ], + "target": "managed/bravo_user", +} +`; + +exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir4": should export all mappings to separate files in the mappingExportTestDir4 directory: mappingExportTestDir4/sync/managedBravo_user_managedAlpha_user.sync.json 1`] = ` +{ + "_id": "sync/managedBravo_user_managedAlpha_user", + "consentRequired": false, + "displayName": "Frodo test mapping", + "icon": null, + "name": "managedBravo_user_managedAlpha_user", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/bravo_user", + "syncAfter": [ + "managedBravo_user_managedBravo_user", + "managedAlpha_application_managedBravo_application", + "managedAlpha_user_managedBravo_user", + ], + "target": "managed/alpha_user", +} +`; + +exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir4": should export all mappings to separate files in the mappingExportTestDir4 directory: mappingExportTestDir4/sync/managedBravo_user_managedBravo_user.sync.json 1`] = ` +{ + "_id": "sync/managedBravo_user_managedBravo_user", + "consentRequired": false, + "displayName": "managedBravo_user_managedBravo_user", + "icon": null, + "name": "managedBravo_user_managedBravo_user", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/bravo_user", + "syncAfter": [], + "target": "managed/bravo_user", +} +`; + +exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir4": should export all mappings to separate files in the mappingExportTestDir4 directory: mappingExportTestDir4/sync/sync.idm.json 1`] = ` +{ + "idm": { + "sync": { + "_id": "sync", + "mappings": [ + "file://managedBravo_user_managedBravo_user.sync.json", + "file://managedAlpha_application_managedBravo_application.sync.json", + "file://managedAlpha_user_managedBravo_user.sync.json", + "file://managedBravo_user_managedAlpha_user.sync.json", + "file://AlphaUser2GoogleApps.sync.json", + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir8 -m idm": should export all IDM mappings to separate files in the directory mappingExportTestDir5 1`] = `0`; + +exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir8 -m idm": should export all IDM mappings to separate files in the directory mappingExportTestDir5 2`] = `""`; + +exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir8 -m idm": should export all IDM mappings to separate files in the directory mappingExportTestDir5: mappingExportTestDir8/mapping/mappingtest.mapping.json 1`] = ` +{ + "mapping": { + "mapping/mappingtest": { + "_id": "mapping/mappingtest", + "consentRequired": false, + "displayName": "mappingtest", + "icon": null, + "name": "mappingtest", + "policies": [ + { + "action": { + "globals": {}, + "source": "//asdfasdf +", + "type": "text/javascript", + }, + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": { + "globals": {}, + "source": "//asdfasdfasdf +", + "type": "groovy", + }, + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "ABSENT", + }, + ], + "properties": [], + "source": "managed/assignment", + "target": "managed/organization", + }, + }, + "meta": Any, +} +`; + +exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir8 -m idm": should export all IDM mappings to separate files in the directory mappingExportTestDir5: mappingExportTestDir8/mapping/seantestmapping.mapping.json 1`] = ` +{ + "mapping": { + "mapping/seantestmapping": { + "_id": "mapping/seantestmapping", + "consentRequired": false, + "displayName": "seantestmapping", + "icon": null, + "name": "seantestmapping", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/assignment", + "target": "managed/organization", + }, + }, + "meta": Any, +} +`; + +exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir8 -m idm": should export all IDM mappings to separate files in the directory mappingExportTestDir5: mappingExportTestDir8/sync/managedAssignment_managedUser.sync.json 1`] = ` +{ + "_id": "sync/managedAssignment_managedUser", + "consentRequired": false, + "displayName": "managedAssignment_managedUser", + "icon": null, + "name": "managedAssignment_managedUser", + "policies": [ + { + "action": { + "globals": {}, + "source": "//asdfasdf UPDATED +", + "type": "groovy", + }, + "situation": "AMBIGUOUS", + }, + { + "action": { + "globals": {}, + "source": "//asdfasdfasdfas UPDATED POLICIES SOURCE_MISSING ACTION SCRIPT +", + "type": "text/javascript", + }, + "condition": { + "globals": {}, + "source": "//asdfasdfasdf +", + "type": "groovy", + }, + "postAction": { + "globals": {}, + "source": " +", + "type": "text/javascript", + }, + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + { + "action": { + "globals": {}, + "source": "//asdfasdfasdf +", + "type": "text/javascript", + }, + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "ABSENT", + }, + ], + "properties": [], + "source": "managed/assignment", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + ], + "target": "managed/user", +} +`; + +exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir8 -m idm": should export all IDM mappings to separate files in the directory mappingExportTestDir5: mappingExportTestDir8/sync/managedOrganization_managedRole.sync.json 1`] = ` +{ + "_id": "sync/managedOrganization_managedRole", + "consentRequired": false, + "displayName": "managedOrganization_managedRole", + "icon": null, + "name": "managedOrganization_managedRole", + "policies": [ + { + "action": { + "globals": {}, + "source": "//seantest +", + "type": "text/javascript", + }, + "situation": "AMBIGUOUS", + }, + { + "action": { + "globals": {}, + "source": "//seantest + + +//extract test +", + "type": "text/javascript", + }, + "condition": { + "globals": {}, + "source": "//seantest + +//seantesttttt + +//testsss +", + "type": "text/javascript", + }, + "situation": "SOURCE_MISSING", + }, + { + "action": { + "globals": {}, + "source": "//seantest +", + "type": "groovy", + }, + "postAction": { + "globals": {}, + "source": " +", + "type": "groovy", + }, + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "ABSENT", + }, + ], + "properties": [], + "source": "managed/organization", + "syncAfter": [], + "target": "managed/role", +} +`; + +exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir8 -m idm": should export all IDM mappings to separate files in the directory mappingExportTestDir5: mappingExportTestDir8/sync/managedOrganization_managedSeantestmanagedobject.sync.json 1`] = ` +{ + "_id": "sync/managedOrganization_managedSeantestmanagedobject", + "consentRequired": false, + "displayName": "managedOrganization_managedSeantestmanagedobject", + "icon": null, + "name": "managedOrganization_managedSeantestmanagedobject", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/organization", + "syncAfter": [ + "managedOrganization_managedRole", + ], + "target": "managed/seantestmanagedobject", +} +`; + +exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir8 -m idm": should export all IDM mappings to separate files in the directory mappingExportTestDir5: mappingExportTestDir8/sync/managedSeantestmanagedobject_managedUser.sync.json 1`] = ` +{ + "_id": "sync/managedSeantestmanagedobject_managedUser", + "consentRequired": false, + "displayName": "managedSeantestmanagedobject_managedUser", + "icon": null, + "name": "managedSeantestmanagedobject_managedUser", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/seantestmanagedobject", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser", + ], + "target": "managed/user", +} +`; + +exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir8 -m idm": should export all IDM mappings to separate files in the directory mappingExportTestDir5: mappingExportTestDir8/sync/seantestmapping.sync.json 1`] = ` +{ + "_id": "sync/seantestmapping", + "consentRequired": false, + "displayName": "seantestmapping", + "icon": null, + "name": "seantestmapping", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/assignment", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser", + "managedSeantestmanagedobject_managedUser", + ], + "target": "managed/organization", +} +`; + +exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir8 -m idm": should export all IDM mappings to separate files in the directory mappingExportTestDir5: mappingExportTestDir8/sync/sync.idm.json 1`] = ` +{ + "idm": { + "sync": { + "_id": "sync", + "mappings": [ + "file://managedOrganization_managedRole.sync.json", + "file://managedOrganization_managedSeantestmanagedobject.sync.json", + "file://managedAssignment_managedUser.sync.json", + "file://managedSeantestmanagedobject_managedUser.sync.json", + "file://seantestmapping.sync.json", + "file://systemCsvfileconnector__ACCOUNT___managedUser.sync.json", + "file://systemCsvsampleconnector__ACCOUNT___managedUser.sync.json", + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir8 -m idm": should export all IDM mappings to separate files in the directory mappingExportTestDir5: mappingExportTestDir8/sync/systemCsvfileconnector__ACCOUNT___managedUser.sync.json 1`] = ` +{ + "_id": "sync/systemCsvfileconnector__ACCOUNT___managedUser", + "consentRequired": false, + "displayName": "systemCsvfileconnector__ACCOUNT___managedUser", + "icon": null, + "name": "systemCsvfileconnector__ACCOUNT___managedUser", + "policies": [ + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "UPDATE", + "situation": "CONFIRMED", + }, + { + "action": "UPDATE", + "situation": "FOUND", + }, + { + "action": "CREATE", + "situation": "ABSENT", + }, + ], + "properties": [ + { + "source": "name", + "target": "userName", + }, + { + "source": "firstName", + "target": "givenName", + }, + { + "source": "lastName", + "target": "sn", + }, + { + "source": "email", + "target": "mail", + }, + ], + "source": "system/csvFileConnector/__ACCOUNT__", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser", + "managedSeantestmanagedobject_managedUser", + "seantestmapping", + ], + "target": "managed/user", +} +`; + +exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir8 -m idm": should export all IDM mappings to separate files in the directory mappingExportTestDir5: mappingExportTestDir8/sync/systemCsvsampleconnector__ACCOUNT___managedUser.sync.json 1`] = ` +{ + "_id": "sync/systemCsvsampleconnector__ACCOUNT___managedUser", + "consentRequired": false, + "displayName": "systemCsvsampleconnector__ACCOUNT___managedUser", + "icon": null, + "name": "systemCsvsampleconnector__ACCOUNT___managedUser", + "policies": [ { - "condition": { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "UPDATE", + "situation": "CONFIRMED", + }, + { + "action": "UPDATE", + "situation": "FOUND", + }, + { + "action": "CREATE", + "situation": "ABSENT", + }, + ], + "properties": [ + { + "source": "email", + "target": "mail", + }, + { + "source": "lastname", + "target": "sn", + }, + { + "source": "description", + "target": "description", + }, + { + "source": "username", + "target": "userName", + }, + { + "source": "firstname", + "target": "givenName", + }, + ], + "source": "system/csvSampleConnector/__ACCOUNT__", + "syncAfter": [ + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser", + "managedSeantestmanagedobject_managedUser", + "seantestmapping", + "systemCsvfileconnector__ACCOUNT___managedUser", + ], + "target": "managed/user", +} +`; + +exports[`frodo mapping export "frodo mapping export -AxD mappingExportTestDir7": should export all mappings into separated fils with extracted scripts 1`] = `0`; + +exports[`frodo mapping export "frodo mapping export -AxD mappingExportTestDir7": should export all mappings into separated fils with extracted scripts 2`] = `""`; + +exports[`frodo mapping export "frodo mapping export -AxD mappingExportTestDir7": should export all mappings into separated fils with extracted scripts: mappingExportTestDir7/sync/extract_script_test.sync.json 1`] = ` +{ + "_id": "sync/extract_script_test", + "consentRequired": false, + "correlationScript": { + "globals": {}, + "source": "file://extract_script_test.sync.scripts/correlationScript.script.js", + "type": "text/javascript", + }, + "displayName": "extract_script_test", + "icon": null, + "name": "extract_script_test", + "onCreate": { + "globals": {}, + "source": "file://extract_script_test.sync.scripts/onCreate.script.js", + "type": "text/javascript", + }, + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [ + { + "source": "", + "target": "name", + "transform": { "globals": {}, - "source": "object.custom_password_encrypted != null", - "type": "text/javascript", + "source": "file://extract_script_test.sync.scripts/properties.SOURCE.name.transform.script.groovy", + "type": "groovy", + }, + }, + ], + "result": { + "globals": {}, + "source": "file://extract_script_test.sync.scripts/result.script.js", + "type": "text/javascript", + }, + "source": "managed/alpha_user", + "syncAfter": [], + "target": "managed/alpha_group", + "validSource": { + "globals": {}, + "source": "file://extract_script_test.sync.scripts/validSource.script.js", + "type": "text/javascript", + }, +} +`; + +exports[`frodo mapping export "frodo mapping export -AxD mappingExportTestDir7": should export all mappings into separated fils with extracted scripts: mappingExportTestDir7/sync/extract_script_test.sync.scripts/correlationScript.script.js 1`] = ` +"//extract script test UPDATED CORRELATION QUERY +" +`; + +exports[`frodo mapping export "frodo mapping export -AxD mappingExportTestDir7": should export all mappings into separated fils with extracted scripts: mappingExportTestDir7/sync/extract_script_test.sync.scripts/onCreate.script.js 1`] = ` +"//test UPDATED ONCREATED +" +`; + +exports[`frodo mapping export "frodo mapping export -AxD mappingExportTestDir7": should export all mappings into separated fils with extracted scripts: mappingExportTestDir7/sync/extract_script_test.sync.scripts/properties.SOURCE.name.transform.script.groovy 1`] = ` +"//groovy EXTRACT SCRIPT test UPDATED +" +`; + +exports[`frodo mapping export "frodo mapping export -AxD mappingExportTestDir7": should export all mappings into separated fils with extracted scripts: mappingExportTestDir7/sync/extract_script_test.sync.scripts/result.script.js 1`] = ` +"//tests UPDATED RESULT SCRIPT +" +`; + +exports[`frodo mapping export "frodo mapping export -AxD mappingExportTestDir7": should export all mappings into separated fils with extracted scripts: mappingExportTestDir7/sync/extract_script_test.sync.scripts/validSource.script.js 1`] = ` +"//extract script test UPDATED VALIDSOURCE +" +`; + +exports[`frodo mapping export "frodo mapping export -AxD mappingExportTestDir7": should export all mappings into separated fils with extracted scripts: mappingExportTestDir7/sync/sync.idm.json 1`] = ` +{ + "idm": { + "sync": { + "_id": "sync", + "mappings": [ + "file://extract_script_test.sync.json", + ], + }, + }, + "meta": Any, +} +`; + +exports[`frodo mapping export "frodo mapping export -Ni mapping/managedBravo_group_managedBravo_group --no-deps --use-string-arrays -D mappingExportTestDir1": should export the mapping with mapping id "mapping/managedBravo_group_managedBravo_group" into the directory named mappingExportTestDir1 1`] = `0`; + +exports[`frodo mapping export "frodo mapping export -Ni mapping/managedBravo_group_managedBravo_group --no-deps --use-string-arrays -D mappingExportTestDir1": should export the mapping with mapping id "mapping/managedBravo_group_managedBravo_group" into the directory named mappingExportTestDir1 2`] = `""`; + +exports[`frodo mapping export "frodo mapping export -Ni mapping/managedBravo_group_managedBravo_group --no-deps --use-string-arrays -D mappingExportTestDir1": should export the mapping with mapping id "mapping/managedBravo_group_managedBravo_group" into the directory named mappingExportTestDir1: mappingExportTestDir1/managedBravo_group_managedBravo_group.mapping.json 1`] = ` +{ + "mapping": { + "mapping/managedBravo_group_managedBravo_group": { + "_id": "mapping/managedBravo_group_managedBravo_group", + "consentRequired": false, + "displayName": "managedBravo_group_managedBravo_group", + "icon": null, + "name": "managedBravo_group_managedBravo_group", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/bravo_group", + "target": "managed/bravo_group", + }, + }, + "sync": { + "_id": "sync", + "mappings": [], + }, +} +`; + +exports[`frodo mapping export "frodo mapping export -a --file my-allMappings.mapping.json": should export all mappings to a single file named my-allMappings.mapping.json 1`] = `0`; + +exports[`frodo mapping export "frodo mapping export -a --file my-allMappings.mapping.json": should export all mappings to a single file named my-allMappings.mapping.json 2`] = `""`; + +exports[`frodo mapping export "frodo mapping export -a --file my-allMappings.mapping.json": should export all mappings to a single file named my-allMappings.mapping.json: my-allMappings.mapping.json 1`] = ` +{ + "mapping": { + "mapping/managedBravo_group_managedBravo_group": { + "_id": "mapping/managedBravo_group_managedBravo_group", + "consentRequired": false, + "displayName": "managedBravo_group_managedBravo_group", + "icon": null, + "name": "managedBravo_group_managedBravo_group", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/bravo_group", + "target": "managed/bravo_group", + }, + "mapping/managedBravo_user_managedBravo_user0": { + "_id": "mapping/managedBravo_user_managedBravo_user0", + "consentRequired": false, + "displayName": "managedBravo_user_managedBravo_user0", + "icon": null, + "name": "managedBravo_user_managedBravo_user0", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/bravo_user", + "target": "managed/bravo_user", + }, + }, + "meta": Any, + "sync": { + "_id": "sync", + "mappings": [ + { + "_id": "sync/managedBravo_user_managedBravo_user", + "consentRequired": false, + "displayName": "managedBravo_user_managedBravo_user", + "icon": null, + "name": "managedBravo_user_managedBravo_user", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/bravo_user", + "syncAfter": [], + "target": "managed/bravo_user", }, - "source": "custom_password_encrypted", - "target": "__PASSWORD__", - "transform": { - "globals": {}, - "source": "openidm.decrypt(source);", - "type": "text/javascript", + { + "_id": "sync/managedAlpha_application_managedBravo_application", + "consentRequired": true, + "displayName": "Test Application Mapping", + "icon": null, + "name": "managedAlpha_application_managedBravo_application", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [ + { + "source": "authoritative", + "target": "_id", + }, + ], + "source": "managed/alpha_application", + "sourceQuery": { + "_queryFilter": "(eq "" or eq "")", + }, + "syncAfter": [ + "managedBravo_user_managedBravo_user", + ], + "target": "managed/bravo_application", + "targetQuery": { + "_queryFilter": "!(eq "")", + }, }, - }, - { - "source": "cn", - "target": "__NAME__", - "transform": { - "globals": {}, - "source": "source + "@" + identityServer.getProperty("esv.gac.domain");", - "type": "text/javascript", + { + "_id": "sync/managedAlpha_user_managedBravo_user", + "consentRequired": true, + "displayName": "Test Mapping for Frodo", + "icon": null, + "name": "managedAlpha_user_managedBravo_user", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [ + { + "condition": { + "globals": {}, + "source": "console.log("Hello World!");", + "type": "text/javascript", + }, + "default": [ + "Default value string", + ], + "source": "accountStatus", + "target": "applications", + "transform": { + "globals": {}, + "source": "console.log("hello");", + "type": "text/javascript", + }, + }, + ], + "source": "managed/alpha_user", + "syncAfter": [ + "managedBravo_user_managedBravo_user", + "managedAlpha_application_managedBravo_application", + ], + "target": "managed/bravo_user", }, - }, - { - "source": "givenName", - "target": "givenName", - }, - { - "source": "", - "target": "familyName", - "transform": { - "globals": {}, - "source": "if (source.frIndexedInteger1 > 2 && source.frIndexedInteger1 < 6) { - source.sn + " (Student)" -} else { - source.sn -}", - "type": "text/javascript", + { + "_id": "sync/managedBravo_user_managedAlpha_user", + "consentRequired": false, + "displayName": "Frodo test mapping", + "icon": null, + "name": "managedBravo_user_managedAlpha_user", + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT", + }, + { + "action": "ASYNC", + "situation": "ALL_GONE", + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS", + }, + { + "action": "ASYNC", + "situation": "CONFIRMED", + }, + { + "action": "ASYNC", + "situation": "FOUND", + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY", + }, + { + "action": "ASYNC", + "situation": "MISSING", + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED", + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING", + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED", + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED", + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED", + }, + ], + "properties": [], + "source": "managed/bravo_user", + "syncAfter": [ + "managedBravo_user_managedBravo_user", + "managedAlpha_application_managedBravo_application", + "managedAlpha_user_managedBravo_user", + ], + "target": "managed/alpha_user", }, - }, - ], - "queuedSync": { - "enabled": true, - "maxQueueSize": 20000, - "maxRetries": 5, - "pageSize": 100, - "pollingInterval": 1000, - "postRetryAction": "logged-ignore", - "retryDelay": 1000, - }, - "source": "managed/alpha_user", - "syncAfter": [ - "managedBravo_user_managedBravo_user", - "managedAlpha_application_managedBravo_application", - "managedAlpha_user_managedBravo_user", - "managedBravo_user_managedAlpha_user", - ], - "target": "system/GoogleApps/__ACCOUNT__", - "validSource": { - "globals": {}, - "source": "var isGoogleEligible = true; -//var logMsg = "idmlog: ---AplhaUser2GAC (username: " + source.userName + " - userType: " + source.frIndexedInteger1 + " cn: " + source.cn + ") -"; -var logMsg = "idmlog: ---AplhaUser2GAC (username: " + source.userName + " - userType: " + source.frIndexedInteger1 + ") -"; - -//Get Applicable userTypes (no Parent accounts) -if (source.frIndexedInteger1 !== 0 && source.frIndexedInteger1 !== 1 && source.frIndexedInteger1 !== 3 && source.frIndexedInteger1 !== 4 && source.frIndexedInteger1 !== 5) { - isGoogleEligible = false; - logMsg = logMsg + " Account type not eligible."; -} + { + "_id": "sync/AlphaUser2GoogleApps", + "consentRequired": false, + "correlationQuery": [ + { + "expressionTree": { + "all": [ + "__NAME__", + ], + }, + "file": "ui/correlateTreeToQueryFilter.js", + "linkQualifier": "default", + "mapping": "AlphaUser2GoogleApps", + "type": "text/javascript", + }, + ], + "displayName": "AlphaUser2GoogleApps", + "enableSync": { + "$bool": "&{esv.gac.enable.mapping}", + }, + "icon": null, + "name": "AlphaUser2GoogleApps", + "onCreate": { + "globals": {}, + "source": "target.orgUnitPath = "/NewAccounts";", + "type": "text/javascript", + }, + "onUpdate": { + "globals": {}, + "source": "//testing1234 +target.givenName = oldTarget.givenName; +target.familyName = oldTarget.familyName; +target.__NAME__ = oldTarget.__NAME__;", + "type": "text/javascript", + }, + "policies": [ + { + "action": "EXCEPTION", + "situation": "AMBIGUOUS", + }, + { + "action": "UNLINK", + "situation": "SOURCE_MISSING", + }, + { + "action": { + "globals": {}, + "source": "// Timing Constants +var ATTEMPT = 6; // Number of attempts to find the Google user. +var SLEEP_TIME = 500; // Milliseconds between retries. +var SYSTEM_ENDPOINT = "system/GoogleApps/__ACCOUNT__"; +var MAPPING_NAME = "AlphaUser2GoogleApps"; +var GOOGLE_DOMAIN = identityServer.getProperty("esv.gac.domain"); +var googleEmail = source.userName + "@" + GOOGLE_DOMAIN; +var frUserGUID = source._id; +var resultingAction = "ASYNC"; -//Make sure the account has a valid encrypted password. -if (source.custom_password_encrypted == undefined || source.custom_password_encrypted == null) { - isGoogleEligible = false; - logMsg = logMsg + " No encrypted password yet."; -} +// Get the Google GUID +var linkQueryParams = {'_queryFilter': 'firstId eq "' + frUserGUID + '" and linkType eq "' + MAPPING_NAME + '"'}; +var linkResults = openidm.query("repo/link/", linkQueryParams, null); +var googleGUID; -//Check that CN exists and has no space. -if (source.cn && source.cn.includes(' ')) { - isGoogleEligible = false; - logMsg = logMsg + " CN with a space is not allowed."; +if (linkResults.resultCount === 1) { + googleGUID = linkResults.result[0].secondId; } -if (!isGoogleEligible) { - logMsg = logMsg + " Not sent to Google." - logger.info(logMsg); -} - -if (isGoogleEligible) { - logMsg = logMsg + " Sent to Google." - logger.info(logMsg); -} +var queryResults; // Resulting query from looking for the Google user. +var params = {'_queryFilter': '__UID__ eq "' + googleGUID + '"'}; -isGoogleEligible; -", - "type": "text/javascript", - }, +for (var i = 1; i <= ATTEMPT; i++) { + queryResults = openidm.query(SYSTEM_ENDPOINT, params); + if (queryResults.result && queryResults.result.length > 0) { + logger.info("idmlog: ---AlphaUser2GoogleApps - Missing->UPDATE - Result found in " + i + " attempts. Query result: " + JSON.stringify(queryResults)); + resultingAction = "UPDATE"; + break; + } + java.lang.Thread.sleep(SLEEP_TIME); // Wait before trying again. } -`; -exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir4": should export all mappings to separate files in the mappingExportTestDir4 directory: mappingExportTestDir4/sync/managedAlpha_application_managedBravo_application.sync.json 1`] = ` -{ - "_id": "sync/managedAlpha_application_managedBravo_application", - "consentRequired": true, - "displayName": "Test Application Mapping", - "icon": null, - "name": "managedAlpha_application_managedBravo_application", - "policies": [ - { - "action": "ASYNC", - "situation": "ABSENT", - }, - { - "action": "ASYNC", - "situation": "ALL_GONE", - }, - { - "action": "ASYNC", - "situation": "AMBIGUOUS", - }, - { - "action": "ASYNC", - "situation": "CONFIRMED", - }, - { - "action": "ASYNC", - "situation": "FOUND", - }, - { - "action": "ASYNC", - "situation": "FOUND_ALREADY_LINKED", - }, - { - "action": "ASYNC", - "situation": "LINK_ONLY", - }, - { - "action": "ASYNC", - "situation": "MISSING", - }, - { - "action": "ASYNC", - "situation": "SOURCE_IGNORED", - }, - { - "action": "ASYNC", - "situation": "SOURCE_MISSING", - }, - { - "action": "ASYNC", - "situation": "TARGET_IGNORED", - }, - { - "action": "ASYNC", - "situation": "UNASSIGNED", - }, - { - "action": "ASYNC", - "situation": "UNQUALIFIED", - }, - ], - "properties": [ - { - "source": "authoritative", - "target": "_id", - }, - ], - "source": "managed/alpha_application", - "sourceQuery": { - "_queryFilter": "(eq "" or eq "")", - }, - "syncAfter": [ - "managedBravo_user_managedBravo_user", - ], - "target": "managed/bravo_application", - "targetQuery": { - "_queryFilter": "!(eq "")", - }, +if (!queryResults.result || queryResults.resultCount === 0) { + logger.warn("idmlog: ---AlphaUser2GoogleApps - Missing->UNLINK - " + googleEmail + " not found after " + ATTEMPT + " attempts."); + resultingAction = "UNLINK"; } -`; +resultingAction; +", + "type": "text/javascript", + }, + "situation": "MISSING", + }, + { + "action": "EXCEPTION", + "situation": "FOUND_ALREADY_LINKED", + }, + { + "action": "IGNORE", + "situation": "UNQUALIFIED", + }, + { + "action": "IGNORE", + "situation": "UNASSIGNED", + }, + { + "action": "UNLINK", + "situation": "LINK_ONLY", + }, + { + "action": "IGNORE", + "situation": "TARGET_IGNORED", + }, + { + "action": "IGNORE", + "situation": "SOURCE_IGNORED", + }, + { + "action": "IGNORE", + "situation": "ALL_GONE", + }, + { + "action": "UPDATE", + "situation": "CONFIRMED", + }, + { + "action": "LINK", + "situation": "FOUND", + }, + { + "action": "CREATE", + "situation": "ABSENT", + }, + ], + "properties": [ + { + "condition": { + "globals": {}, + "source": "object.custom_password_encrypted != null", + "type": "text/javascript", + }, + "source": "custom_password_encrypted", + "target": "__PASSWORD__", + "transform": { + "globals": {}, + "source": "openidm.decrypt(source);", + "type": "text/javascript", + }, + }, + { + "source": "cn", + "target": "__NAME__", + "transform": { + "globals": {}, + "source": "source + "@" + identityServer.getProperty("esv.gac.domain");", + "type": "text/javascript", + }, + }, + { + "source": "givenName", + "target": "givenName", + }, + { + "source": "", + "target": "familyName", + "transform": { + "globals": {}, + "source": "if (source.frIndexedInteger1 > 2 && source.frIndexedInteger1 < 6) { + source.sn + " (Student)" +} else { + source.sn +}", + "type": "text/javascript", + }, + }, + ], + "queuedSync": { + "enabled": true, + "maxQueueSize": 20000, + "maxRetries": 5, + "pageSize": 100, + "pollingInterval": 1000, + "postRetryAction": "logged-ignore", + "retryDelay": 1000, + }, + "source": "managed/alpha_user", + "syncAfter": [ + "managedBravo_user_managedBravo_user", + "managedAlpha_application_managedBravo_application", + "managedAlpha_user_managedBravo_user", + "managedBravo_user_managedAlpha_user", + ], + "target": "system/GoogleApps/__ACCOUNT__", + "validSource": { + "globals": {}, + "source": "var isGoogleEligible = true; +//var logMsg = "idmlog: ---AplhaUser2GAC (username: " + source.userName + " - userType: " + source.frIndexedInteger1 + " cn: " + source.cn + ") -"; +var logMsg = "idmlog: ---AplhaUser2GAC (username: " + source.userName + " - userType: " + source.frIndexedInteger1 + ") -"; -exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir4": should export all mappings to separate files in the mappingExportTestDir4 directory: mappingExportTestDir4/sync/managedAlpha_user_managedBravo_user.sync.json 1`] = ` -{ - "_id": "sync/managedAlpha_user_managedBravo_user", - "consentRequired": true, - "displayName": "Test Mapping for Frodo", - "icon": null, - "name": "managedAlpha_user_managedBravo_user", - "policies": [ - { - "action": "ASYNC", - "situation": "ABSENT", - }, - { - "action": "ASYNC", - "situation": "ALL_GONE", - }, - { - "action": "ASYNC", - "situation": "AMBIGUOUS", - }, - { - "action": "ASYNC", - "situation": "CONFIRMED", - }, - { - "action": "ASYNC", - "situation": "FOUND", - }, - { - "action": "ASYNC", - "situation": "FOUND_ALREADY_LINKED", - }, - { - "action": "ASYNC", - "situation": "LINK_ONLY", - }, - { - "action": "ASYNC", - "situation": "MISSING", - }, - { - "action": "ASYNC", - "situation": "SOURCE_IGNORED", - }, - { - "action": "ASYNC", - "situation": "SOURCE_MISSING", - }, - { - "action": "ASYNC", - "situation": "TARGET_IGNORED", - }, - { - "action": "ASYNC", - "situation": "UNASSIGNED", - }, - { - "action": "ASYNC", - "situation": "UNQUALIFIED", - }, - ], - "properties": [ - { - "condition": { - "globals": {}, - "source": "console.log("Hello World!");", - "type": "text/javascript", - }, - "default": [ - "Default value string", - ], - "source": "accountStatus", - "target": "applications", - "transform": { - "globals": {}, - "source": "console.log("hello");", - "type": "text/javascript", - }, - }, - ], - "source": "managed/alpha_user", - "syncAfter": [ - "managedBravo_user_managedBravo_user", - "managedAlpha_application_managedBravo_application", - ], - "target": "managed/bravo_user", +//Get Applicable userTypes (no Parent accounts) +if (source.frIndexedInteger1 !== 0 && source.frIndexedInteger1 !== 1 && source.frIndexedInteger1 !== 3 && source.frIndexedInteger1 !== 4 && source.frIndexedInteger1 !== 5) { + isGoogleEligible = false; + logMsg = logMsg + " Account type not eligible."; } -`; -exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir4": should export all mappings to separate files in the mappingExportTestDir4 directory: mappingExportTestDir4/sync/managedBravo_user_managedAlpha_user.sync.json 1`] = ` -{ - "_id": "sync/managedBravo_user_managedAlpha_user", - "consentRequired": false, - "displayName": "Frodo test mapping", - "icon": null, - "name": "managedBravo_user_managedAlpha_user", - "policies": [ - { - "action": "ASYNC", - "situation": "ABSENT", - }, - { - "action": "ASYNC", - "situation": "ALL_GONE", - }, - { - "action": "ASYNC", - "situation": "AMBIGUOUS", - }, - { - "action": "ASYNC", - "situation": "CONFIRMED", - }, - { - "action": "ASYNC", - "situation": "FOUND", - }, - { - "action": "ASYNC", - "situation": "FOUND_ALREADY_LINKED", - }, - { - "action": "ASYNC", - "situation": "LINK_ONLY", - }, - { - "action": "ASYNC", - "situation": "MISSING", - }, - { - "action": "ASYNC", - "situation": "SOURCE_IGNORED", - }, - { - "action": "ASYNC", - "situation": "SOURCE_MISSING", - }, - { - "action": "ASYNC", - "situation": "TARGET_IGNORED", - }, - { - "action": "ASYNC", - "situation": "UNASSIGNED", - }, - { - "action": "ASYNC", - "situation": "UNQUALIFIED", - }, - ], - "properties": [], - "source": "managed/bravo_user", - "syncAfter": [ - "managedBravo_user_managedBravo_user", - "managedAlpha_application_managedBravo_application", - "managedAlpha_user_managedBravo_user", - ], - "target": "managed/alpha_user", +//Make sure the account has a valid encrypted password. +if (source.custom_password_encrypted == undefined || source.custom_password_encrypted == null) { + isGoogleEligible = false; + logMsg = logMsg + " No encrypted password yet."; } -`; -exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir4": should export all mappings to separate files in the mappingExportTestDir4 directory: mappingExportTestDir4/sync/managedBravo_user_managedBravo_user.sync.json 1`] = ` -{ - "_id": "sync/managedBravo_user_managedBravo_user", - "consentRequired": false, - "displayName": "managedBravo_user_managedBravo_user", - "icon": null, - "name": "managedBravo_user_managedBravo_user", - "policies": [ - { - "action": "ASYNC", - "situation": "ABSENT", - }, - { - "action": "ASYNC", - "situation": "ALL_GONE", - }, - { - "action": "ASYNC", - "situation": "AMBIGUOUS", - }, - { - "action": "ASYNC", - "situation": "CONFIRMED", - }, - { - "action": "ASYNC", - "situation": "FOUND", - }, - { - "action": "ASYNC", - "situation": "FOUND_ALREADY_LINKED", - }, - { - "action": "ASYNC", - "situation": "LINK_ONLY", - }, - { - "action": "ASYNC", - "situation": "MISSING", - }, - { - "action": "ASYNC", - "situation": "SOURCE_IGNORED", - }, - { - "action": "ASYNC", - "situation": "SOURCE_MISSING", - }, - { - "action": "ASYNC", - "situation": "TARGET_IGNORED", - }, - { - "action": "ASYNC", - "situation": "UNASSIGNED", - }, - { - "action": "ASYNC", - "situation": "UNQUALIFIED", - }, - ], - "properties": [], - "source": "managed/bravo_user", - "syncAfter": [], - "target": "managed/bravo_user", +//Check that CN exists and has no space. +if (source.cn && source.cn.includes(' ')) { + isGoogleEligible = false; + logMsg = logMsg + " CN with a space is not allowed."; } -`; -exports[`frodo mapping export "frodo mapping export -AD mappingExportTestDir4": should export all mappings to separate files in the mappingExportTestDir4 directory: mappingExportTestDir4/sync/sync.idm.json 1`] = ` -{ - "idm": { - "sync": { - "_id": "sync", - "mappings": [ - "file://managedBravo_user_managedBravo_user.sync.json", - "file://managedAlpha_application_managedBravo_application.sync.json", - "file://managedAlpha_user_managedBravo_user.sync.json", - "file://managedBravo_user_managedAlpha_user.sync.json", - "file://AlphaUser2GoogleApps.sync.json", - ], - }, +if (!isGoogleEligible) { + logMsg = logMsg + " Not sent to Google." + logger.info(logMsg); +} + +if (isGoogleEligible) { + logMsg = logMsg + " Sent to Google." + logger.info(logMsg); +} + +isGoogleEligible; +", + "type": "text/javascript", + }, + }, + ], }, - "meta": Any, } `; -exports[`frodo mapping export "frodo mapping export -Ni mapping/managedBravo_group_managedBravo_group --no-deps --use-string-arrays -D mappingExportTestDir1": should export the mapping with mapping id "mapping/managedBravo_group_managedBravo_group" into the directory named mappingExportTestDir1 1`] = `0`; +exports[`frodo mapping export "frodo mapping export -aD mappingExportTestDir9 -m idm": should export all IDM mappings to one file in the directory mappingExportTestDir4 1`] = `0`; -exports[`frodo mapping export "frodo mapping export -Ni mapping/managedBravo_group_managedBravo_group --no-deps --use-string-arrays -D mappingExportTestDir1": should export the mapping with mapping id "mapping/managedBravo_group_managedBravo_group" into the directory named mappingExportTestDir1 2`] = `""`; +exports[`frodo mapping export "frodo mapping export -aD mappingExportTestDir9 -m idm": should export all IDM mappings to one file in the directory mappingExportTestDir4 2`] = `""`; -exports[`frodo mapping export "frodo mapping export -Ni mapping/managedBravo_group_managedBravo_group --no-deps --use-string-arrays -D mappingExportTestDir1": should export the mapping with mapping id "mapping/managedBravo_group_managedBravo_group" into the directory named mappingExportTestDir1: mappingExportTestDir1/managedBravo_group_managedBravo_group.mapping.json 1`] = ` +exports[`frodo mapping export "frodo mapping export -aD mappingExportTestDir9 -m idm": should export all IDM mappings to one file in the directory mappingExportTestDir4: mappingExportTestDir9/allMappings.mapping.json 1`] = ` { "mapping": { - "mapping/managedBravo_group_managedBravo_group": { - "_id": "mapping/managedBravo_group_managedBravo_group", + "mapping/mappingtest": { + "_id": "mapping/mappingtest", "consentRequired": false, - "displayName": "managedBravo_group_managedBravo_group", + "displayName": "mappingtest", "icon": null, - "name": "managedBravo_group_managedBravo_group", + "name": "mappingtest", "policies": [ { - "action": "ASYNC", - "situation": "ABSENT", - }, - { - "action": "ASYNC", - "situation": "ALL_GONE", - }, - { - "action": "ASYNC", + "action": { + "globals": {}, + "source": "//asdfasdf", + "type": "text/javascript", + }, "situation": "AMBIGUOUS", }, { "action": "ASYNC", - "situation": "CONFIRMED", + "situation": "SOURCE_MISSING", }, { - "action": "ASYNC", - "situation": "FOUND", + "action": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "groovy", + }, + "situation": "MISSING", }, { "action": "ASYNC", @@ -2011,19 +4214,15 @@ exports[`frodo mapping export "frodo mapping export -Ni mapping/managedBravo_gro }, { "action": "ASYNC", - "situation": "LINK_ONLY", - }, - { - "action": "ASYNC", - "situation": "MISSING", + "situation": "UNQUALIFIED", }, { "action": "ASYNC", - "situation": "SOURCE_IGNORED", + "situation": "UNASSIGNED", }, { "action": "ASYNC", - "situation": "SOURCE_MISSING", + "situation": "LINK_ONLY", }, { "action": "ASYNC", @@ -2031,51 +4230,12 @@ exports[`frodo mapping export "frodo mapping export -Ni mapping/managedBravo_gro }, { "action": "ASYNC", - "situation": "UNASSIGNED", - }, - { - "action": "ASYNC", - "situation": "UNQUALIFIED", - }, - ], - "properties": [], - "source": "managed/bravo_group", - "target": "managed/bravo_group", - }, - }, - "sync": { - "_id": "sync", - "mappings": [], - }, -} -`; - -exports[`frodo mapping export "frodo mapping export -a --file my-allMappings.mapping.json": should export all mappings to a single file named my-allMappings.mapping.json 1`] = `0`; - -exports[`frodo mapping export "frodo mapping export -a --file my-allMappings.mapping.json": should export all mappings to a single file named my-allMappings.mapping.json 2`] = `""`; - -exports[`frodo mapping export "frodo mapping export -a --file my-allMappings.mapping.json": should export all mappings to a single file named my-allMappings.mapping.json: my-allMappings.mapping.json 1`] = ` -{ - "mapping": { - "mapping/managedBravo_group_managedBravo_group": { - "_id": "mapping/managedBravo_group_managedBravo_group", - "consentRequired": false, - "displayName": "managedBravo_group_managedBravo_group", - "icon": null, - "name": "managedBravo_group_managedBravo_group", - "policies": [ - { - "action": "ASYNC", - "situation": "ABSENT", + "situation": "SOURCE_IGNORED", }, { "action": "ASYNC", "situation": "ALL_GONE", }, - { - "action": "ASYNC", - "situation": "AMBIGUOUS", - }, { "action": "ASYNC", "situation": "CONFIRMED", @@ -2086,47 +4246,19 @@ exports[`frodo mapping export "frodo mapping export -a --file my-allMappings.map }, { "action": "ASYNC", - "situation": "FOUND_ALREADY_LINKED", - }, - { - "action": "ASYNC", - "situation": "LINK_ONLY", - }, - { - "action": "ASYNC", - "situation": "MISSING", - }, - { - "action": "ASYNC", - "situation": "SOURCE_IGNORED", - }, - { - "action": "ASYNC", - "situation": "SOURCE_MISSING", - }, - { - "action": "ASYNC", - "situation": "TARGET_IGNORED", - }, - { - "action": "ASYNC", - "situation": "UNASSIGNED", - }, - { - "action": "ASYNC", - "situation": "UNQUALIFIED", + "situation": "ABSENT", }, ], "properties": [], - "source": "managed/bravo_group", - "target": "managed/bravo_group", + "source": "managed/assignment", + "target": "managed/organization", }, - "mapping/managedBravo_user_managedBravo_user0": { - "_id": "mapping/managedBravo_user_managedBravo_user0", + "mapping/seantestmapping": { + "_id": "mapping/seantestmapping", "consentRequired": false, - "displayName": "managedBravo_user_managedBravo_user0", + "displayName": "seantestmapping", "icon": null, - "name": "managedBravo_user_managedBravo_user0", + "name": "seantestmapping", "policies": [ { "action": "ASYNC", @@ -2182,8 +4314,8 @@ exports[`frodo mapping export "frodo mapping export -a --file my-allMappings.map }, ], "properties": [], - "source": "managed/bravo_user", - "target": "managed/bravo_user", + "source": "managed/assignment", + "target": "managed/organization", }, }, "meta": Any, @@ -2191,35 +4323,57 @@ exports[`frodo mapping export "frodo mapping export -a --file my-allMappings.map "_id": "sync", "mappings": [ { - "_id": "sync/managedBravo_user_managedBravo_user", + "_id": "sync/managedOrganization_managedRole", "consentRequired": false, - "displayName": "managedBravo_user_managedBravo_user", + "displayName": "managedOrganization_managedRole", "icon": null, - "name": "managedBravo_user_managedBravo_user", + "name": "managedOrganization_managedRole", "policies": [ { - "action": "ASYNC", - "situation": "ABSENT", + "action": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript", + }, + "situation": "AMBIGUOUS", }, { - "action": "ASYNC", - "situation": "ALL_GONE", + "action": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript", + }, + "condition": { + "globals": {}, + "source": "//seantest", + "type": "text/javascript", + }, + "situation": "SOURCE_MISSING", }, { - "action": "ASYNC", - "situation": "AMBIGUOUS", + "action": { + "globals": {}, + "source": "//seantest", + "type": "groovy", + }, + "postAction": { + "globals": {}, + "source": "//seantest", + "type": "groovy", + }, + "situation": "MISSING", }, { "action": "ASYNC", - "situation": "CONFIRMED", + "situation": "FOUND_ALREADY_LINKED", }, { "action": "ASYNC", - "situation": "FOUND", + "situation": "UNQUALIFIED", }, { "action": "ASYNC", - "situation": "FOUND_ALREADY_LINKED", + "situation": "UNASSIGNED", }, { "action": "ASYNC", @@ -2227,7 +4381,7 @@ exports[`frodo mapping export "frodo mapping export -a --file my-allMappings.map }, { "action": "ASYNC", - "situation": "MISSING", + "situation": "TARGET_IGNORED", }, { "action": "ASYNC", @@ -2235,32 +4389,32 @@ exports[`frodo mapping export "frodo mapping export -a --file my-allMappings.map }, { "action": "ASYNC", - "situation": "SOURCE_MISSING", + "situation": "ALL_GONE", }, { "action": "ASYNC", - "situation": "TARGET_IGNORED", + "situation": "CONFIRMED", }, { "action": "ASYNC", - "situation": "UNASSIGNED", + "situation": "FOUND", }, { "action": "ASYNC", - "situation": "UNQUALIFIED", + "situation": "ABSENT", }, ], "properties": [], - "source": "managed/bravo_user", + "source": "managed/organization", "syncAfter": [], - "target": "managed/bravo_user", + "target": "managed/role", }, { - "_id": "sync/managedAlpha_application_managedBravo_application", - "consentRequired": true, - "displayName": "Test Application Mapping", + "_id": "sync/managedOrganization_managedSeantestmanagedobject", + "consentRequired": false, + "displayName": "managedOrganization_managedSeantestmanagedobject", "icon": null, - "name": "managedAlpha_application_managedBravo_application", + "name": "managedOrganization_managedSeantestmanagedobject", "policies": [ { "action": "ASYNC", @@ -2315,54 +4469,65 @@ exports[`frodo mapping export "frodo mapping export -a --file my-allMappings.map "situation": "UNQUALIFIED", }, ], - "properties": [ - { - "source": "authoritative", - "target": "_id", - }, - ], - "source": "managed/alpha_application", - "sourceQuery": { - "_queryFilter": "(eq "" or eq "")", - }, + "properties": [], + "source": "managed/organization", "syncAfter": [ - "managedBravo_user_managedBravo_user", + "managedOrganization_managedRole", ], - "target": "managed/bravo_application", - "targetQuery": { - "_queryFilter": "!(eq "")", - }, + "target": "managed/seantestmanagedobject", }, { - "_id": "sync/managedAlpha_user_managedBravo_user", - "consentRequired": true, - "displayName": "Test Mapping for Frodo", + "_id": "sync/managedAssignment_managedUser", + "consentRequired": false, + "displayName": "managedAssignment_managedUser", "icon": null, - "name": "managedAlpha_user_managedBravo_user", + "name": "managedAssignment_managedUser", "policies": [ { - "action": "ASYNC", - "situation": "ABSENT", + "action": { + "globals": {}, + "source": "//asdfasdf", + "type": "groovy", + }, + "situation": "AMBIGUOUS", }, { - "action": "ASYNC", - "situation": "ALL_GONE", + "action": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "text/javascript", + }, + "condition": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "groovy", + }, + "postAction": { + "globals": {}, + "source": "//asdfasdf", + "type": "text/javascript", + }, + "situation": "SOURCE_MISSING", }, { "action": "ASYNC", - "situation": "AMBIGUOUS", + "situation": "MISSING", }, { "action": "ASYNC", - "situation": "CONFIRMED", + "situation": "FOUND_ALREADY_LINKED", }, { "action": "ASYNC", - "situation": "FOUND", + "situation": "UNQUALIFIED", }, { - "action": "ASYNC", - "situation": "FOUND_ALREADY_LINKED", + "action": { + "globals": {}, + "source": "//asdfasdfasdf", + "type": "text/javascript", + }, + "situation": "UNASSIGNED", }, { "action": "ASYNC", @@ -2370,61 +4535,43 @@ exports[`frodo mapping export "frodo mapping export -a --file my-allMappings.map }, { "action": "ASYNC", - "situation": "MISSING", - }, - { - "action": "ASYNC", - "situation": "SOURCE_IGNORED", + "situation": "TARGET_IGNORED", }, { "action": "ASYNC", - "situation": "SOURCE_MISSING", + "situation": "SOURCE_IGNORED", }, { "action": "ASYNC", - "situation": "TARGET_IGNORED", + "situation": "ALL_GONE", }, { "action": "ASYNC", - "situation": "UNASSIGNED", + "situation": "CONFIRMED", }, { "action": "ASYNC", - "situation": "UNQUALIFIED", + "situation": "FOUND", }, - ], - "properties": [ { - "condition": { - "globals": {}, - "source": "console.log("Hello World!");", - "type": "text/javascript", - }, - "default": [ - "Default value string", - ], - "source": "accountStatus", - "target": "applications", - "transform": { - "globals": {}, - "source": "console.log("hello");", - "type": "text/javascript", - }, + "action": "ASYNC", + "situation": "ABSENT", }, ], - "source": "managed/alpha_user", + "properties": [], + "source": "managed/assignment", "syncAfter": [ - "managedBravo_user_managedBravo_user", - "managedAlpha_application_managedBravo_application", + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", ], - "target": "managed/bravo_user", + "target": "managed/user", }, { - "_id": "sync/managedBravo_user_managedAlpha_user", + "_id": "sync/seantestmapping", "consentRequired": false, - "displayName": "Frodo test mapping", + "displayName": "seantestmapping", "icon": null, - "name": "managedBravo_user_managedAlpha_user", + "name": "seantestmapping", "policies": [ { "action": "ASYNC", @@ -2480,241 +4627,83 @@ exports[`frodo mapping export "frodo mapping export -a --file my-allMappings.map }, ], "properties": [], - "source": "managed/bravo_user", + "source": "managed/assignment", "syncAfter": [ - "managedBravo_user_managedBravo_user", - "managedAlpha_application_managedBravo_application", - "managedAlpha_user_managedBravo_user", + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser", ], - "target": "managed/alpha_user", + "target": "managed/organization", }, { - "_id": "sync/AlphaUser2GoogleApps", + "_id": "sync/managedSeantestmanagedobject_managedUser", "consentRequired": false, - "correlationQuery": [ - { - "expressionTree": { - "all": [ - "__NAME__", - ], - }, - "file": "ui/correlateTreeToQueryFilter.js", - "linkQualifier": "default", - "mapping": "AlphaUser2GoogleApps", - "type": "text/javascript", - }, - ], - "displayName": "AlphaUser2GoogleApps", - "enableSync": { - "$bool": "&{esv.gac.enable.mapping}", - }, + "displayName": "managedSeantestmanagedobject_managedUser", "icon": null, - "name": "AlphaUser2GoogleApps", - "onCreate": { - "globals": {}, - "source": "target.orgUnitPath = "/NewAccounts";", - "type": "text/javascript", - }, - "onUpdate": { - "globals": {}, - "source": "//testing1234 -target.givenName = oldTarget.givenName; -target.familyName = oldTarget.familyName; -target.__NAME__ = oldTarget.__NAME__;", - "type": "text/javascript", - }, + "name": "managedSeantestmanagedobject_managedUser", "policies": [ { - "action": "EXCEPTION", - "situation": "AMBIGUOUS", + "action": "ASYNC", + "situation": "ABSENT", }, { - "action": "UNLINK", - "situation": "SOURCE_MISSING", + "action": "ASYNC", + "situation": "ALL_GONE", }, { - "action": { - "globals": {}, - "source": "// Timing Constants -var ATTEMPT = 6; // Number of attempts to find the Google user. -var SLEEP_TIME = 500; // Milliseconds between retries. -var SYSTEM_ENDPOINT = "system/GoogleApps/__ACCOUNT__"; -var MAPPING_NAME = "AlphaUser2GoogleApps"; -var GOOGLE_DOMAIN = identityServer.getProperty("esv.gac.domain"); -var googleEmail = source.userName + "@" + GOOGLE_DOMAIN; -var frUserGUID = source._id; -var resultingAction = "ASYNC"; - -// Get the Google GUID -var linkQueryParams = {'_queryFilter': 'firstId eq "' + frUserGUID + '" and linkType eq "' + MAPPING_NAME + '"'}; -var linkResults = openidm.query("repo/link/", linkQueryParams, null); -var googleGUID; - -if (linkResults.resultCount === 1) { - googleGUID = linkResults.result[0].secondId; -} - -var queryResults; // Resulting query from looking for the Google user. -var params = {'_queryFilter': '__UID__ eq "' + googleGUID + '"'}; - -for (var i = 1; i <= ATTEMPT; i++) { - queryResults = openidm.query(SYSTEM_ENDPOINT, params); - if (queryResults.result && queryResults.result.length > 0) { - logger.info("idmlog: ---AlphaUser2GoogleApps - Missing->UPDATE - Result found in " + i + " attempts. Query result: " + JSON.stringify(queryResults)); - resultingAction = "UPDATE"; - break; - } - java.lang.Thread.sleep(SLEEP_TIME); // Wait before trying again. -} - -if (!queryResults.result || queryResults.resultCount === 0) { - logger.warn("idmlog: ---AlphaUser2GoogleApps - Missing->UNLINK - " + googleEmail + " not found after " + ATTEMPT + " attempts."); - resultingAction = "UNLINK"; -} -resultingAction; -", - "type": "text/javascript", - }, - "situation": "MISSING", + "action": "ASYNC", + "situation": "AMBIGUOUS", }, { - "action": "EXCEPTION", - "situation": "FOUND_ALREADY_LINKED", + "action": "ASYNC", + "situation": "CONFIRMED", }, { - "action": "IGNORE", - "situation": "UNQUALIFIED", + "action": "ASYNC", + "situation": "FOUND", }, { - "action": "IGNORE", - "situation": "UNASSIGNED", + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED", }, { - "action": "UNLINK", + "action": "ASYNC", "situation": "LINK_ONLY", }, { - "action": "IGNORE", - "situation": "TARGET_IGNORED", + "action": "ASYNC", + "situation": "MISSING", }, { - "action": "IGNORE", + "action": "ASYNC", "situation": "SOURCE_IGNORED", }, { - "action": "IGNORE", - "situation": "ALL_GONE", - }, - { - "action": "UPDATE", - "situation": "CONFIRMED", - }, - { - "action": "LINK", - "situation": "FOUND", - }, - { - "action": "CREATE", - "situation": "ABSENT", - }, - ], - "properties": [ - { - "condition": { - "globals": {}, - "source": "object.custom_password_encrypted != null", - "type": "text/javascript", - }, - "source": "custom_password_encrypted", - "target": "__PASSWORD__", - "transform": { - "globals": {}, - "source": "openidm.decrypt(source);", - "type": "text/javascript", - }, + "action": "ASYNC", + "situation": "SOURCE_MISSING", }, { - "source": "cn", - "target": "__NAME__", - "transform": { - "globals": {}, - "source": "source + "@" + identityServer.getProperty("esv.gac.domain");", - "type": "text/javascript", - }, + "action": "ASYNC", + "situation": "TARGET_IGNORED", }, { - "source": "givenName", - "target": "givenName", + "action": "ASYNC", + "situation": "UNASSIGNED", }, { - "source": "", - "target": "familyName", - "transform": { - "globals": {}, - "source": "if (source.frIndexedInteger1 > 2 && source.frIndexedInteger1 < 6) { - source.sn + " (Student)" -} else { - source.sn -}", - "type": "text/javascript", - }, + "action": "ASYNC", + "situation": "UNQUALIFIED", }, ], - "queuedSync": { - "enabled": true, - "maxQueueSize": 20000, - "maxRetries": 5, - "pageSize": 100, - "pollingInterval": 1000, - "postRetryAction": "logged-ignore", - "retryDelay": 1000, - }, - "source": "managed/alpha_user", + "properties": [], + "source": "managed/seantestmanagedobject", "syncAfter": [ - "managedBravo_user_managedBravo_user", - "managedAlpha_application_managedBravo_application", - "managedAlpha_user_managedBravo_user", - "managedBravo_user_managedAlpha_user", + "managedOrganization_managedRole", + "managedOrganization_managedSeantestmanagedobject", + "managedAssignment_managedUser", + "seantestmapping", ], - "target": "system/GoogleApps/__ACCOUNT__", - "validSource": { - "globals": {}, - "source": "var isGoogleEligible = true; -//var logMsg = "idmlog: ---AplhaUser2GAC (username: " + source.userName + " - userType: " + source.frIndexedInteger1 + " cn: " + source.cn + ") -"; -var logMsg = "idmlog: ---AplhaUser2GAC (username: " + source.userName + " - userType: " + source.frIndexedInteger1 + ") -"; - -//Get Applicable userTypes (no Parent accounts) -if (source.frIndexedInteger1 !== 0 && source.frIndexedInteger1 !== 1 && source.frIndexedInteger1 !== 3 && source.frIndexedInteger1 !== 4 && source.frIndexedInteger1 !== 5) { - isGoogleEligible = false; - logMsg = logMsg + " Account type not eligible."; -} - -//Make sure the account has a valid encrypted password. -if (source.custom_password_encrypted == undefined || source.custom_password_encrypted == null) { - isGoogleEligible = false; - logMsg = logMsg + " No encrypted password yet."; -} - -//Check that CN exists and has no space. -if (source.cn && source.cn.includes(' ')) { - isGoogleEligible = false; - logMsg = logMsg + " CN with a space is not allowed."; -} - -if (!isGoogleEligible) { - logMsg = logMsg + " Not sent to Google." - logger.info(logMsg); -} - -if (isGoogleEligible) { - logMsg = logMsg + " Sent to Google." - logger.info(logMsg); -} - -isGoogleEligible; -", - "type": "text/javascript", - }, + "target": "managed/user", }, ], }, diff --git a/test/e2e/__snapshots__/mapping-import.e2e.test.js.snap b/test/e2e/__snapshots__/mapping-import.e2e.test.js.snap index f94b01a2b..5163419b3 100644 --- a/test/e2e/__snapshots__/mapping-import.e2e.test.js.snap +++ b/test/e2e/__snapshots__/mapping-import.e2e.test.js.snap @@ -8,9 +8,120 @@ exports[`frodo mapping import "frodo mapping import --no-deps --file allMappings exports[`frodo mapping import "frodo mapping import --no-deps --mapping-id mapping/managedBravo_group_managedBravo_group --file allMappings.mapping.json -D test/e2e/exports/all": should import the mapping with the id "mapping/managedBravo_group_managedBravo_group" from the file "test/e2e/exports/all/allMappings.mapping.json" 1`] = `""`; -exports[`frodo mapping import "frodo mapping import -AD test/e2e/exports/all-separate/cloud/global/idm": should import all mappings from the test/e2e/exports/all-separate/cloud/global/idm directory" 1`] = `""`; +exports[`frodo mapping import "frodo mapping import -AD test/e2e/exports/all-separate-extracted-script/cloud/global/sync": should import all mappings from the test/e2e/exports/all-separate/cloud/global/idm directory" 1`] = `""`; -exports[`frodo mapping import "frodo mapping import -AD test/e2e/exports/all-separate/idm/global/sync -m idm": should import all IDM mappings from the directory" 1`] = `""`; +exports[`frodo mapping import "frodo mapping import -AD test/e2e/exports/all-separate-extracted-script/idm/global -m idm -m idm": should import all IDM mappings from the directory" 1`] = ` +"Usage: frodo mapping import [options] [host] [realm] [username] [password] + +Import IDM mappings. + +Arguments: + host AM base URL, e.g.: + https://cdk.iam.example.com/am. To use a + connection profile, just specify a + unique substring. + realm Realm. Specify realm as '/' for the root + realm or 'realm' or '/parent/child' + otherwise. (default: "alpha" for + Identity Cloud tenants, "/" otherwise.) + username Username to login with. Must be an admin + user with appropriate rights to manage + authentication journeys/trees. + password Password. + +Options: + -a, --all Import all mappings from single file. + Ignored with -i. + -A, --all-separate Import all mappings from separate files + (*.sync.json or *.mapping.json) in the + current directory. Ignored with -i and + -a. + --curlirize Output all network calls in curl format. + -D, --directory Set the working directory. + --debug Debug output during command execution. + If specified, may or may not produce + additional output helpful for + troubleshooting. + -f, --file Name of the file to import + --flush-cache Flush token cache. + -h, --help Help + -i, --mapping-id Mapping id. If specified, only one + mapping is imported and the options -a + and -A are ignored. + --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". + -k, --insecure Allow insecure connections when using + SSL/TLS. Has no effect when using a + network proxy for https + (HTTPS_PROXY=http://:), in + that case the proxy must provide this + capability. (default: Don't allow + insecure connections) + --login-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: + "/platform/appAuthHelperRedirect.html"). + --login-redirect-uri Specify a custom redirect URI to use + with your custom OAuth2 client (efault: + "/platform/appAuthHelperRedirect.html"). + -m, --type Override auto-detected deployment type. + Valid values for type: + classic: A classic Access + Management-only deployment with custom + layout and configuration. + cloud: A ForgeRock Identity Cloud + environment. + forgeops: A ForgeOps CDK or CDM + deployment. + The detected or provided deployment type + controls certain behavior like obtaining + an Identity Management admin token or + not and whether to export/import + referenced email templates or how to + walk through the tenant admin login flow + of Identity Cloud and handle MFA + (choices: "classic", "cloud", + "forgeops", "idm") + --no-cache Disable token cache for this operation. + --no-deps Do not include any dependencies. + --sa-id Service account id. + --sa-jwk-file File containing the JSON Web Key (JWK) + associated with the the service account. + --verbose Verbose output during command execution. + If specified, may or may not produce + additional output. + +Environment Variables: + FRODO_HOST: AM base URL. Overridden by 'host' argument. + FRODO_IDM_HOST: IDM base URL. Overridden by '--idm-host' option. + FRODO_REALM: Realm. Overridden by 'realm' argument. + FRODO_USERNAME: Username. Overridden by 'username' argument. + FRODO_PASSWORD: Password. Overridden by 'password' argument. + FRODO_LOGIN_CLIENT_ID: OAuth2 client id for IDM API calls. Overridden by '--login-client-id' option. + FRODO_LOGIN_REDIRECT_URI: Redirect Uri for custom OAuth2 client id. Overridden by '--login-redirect-uri' option. + FRODO_SA_ID: Service account uuid. Overridden by '--sa-id' option. + FRODO_SA_JWK: Service account JWK. Overridden by '--sa-jwk-file' option but takes the actual JWK as a value, not a file name. + FRODO_NO_CACHE: Disable token cache. Same as '--no-cache' option. + FRODO_TOKEN_CACHE_PATH: Use this token cache file instead of '~/.frodo/TokenCache.json'. + FRODO_CONNECTION_PROFILES_PATH: Use this connection profiles file instead of '~/.frodo/Connections.json'. + FRODO_AUTHENTICATION_SERVICE: Name of a login journey to use. + FRODO_DEBUG: Set to any value to enable debug output. Same as '--debug'. + FRODO_MASTER_KEY_PATH: Use this master key file instead of '~/.frodo/masterkey.key' file. + FRODO_MASTER_KEY: Use this master key instead of what's in '~/.frodo/masterkey.key'. Takes precedence over FRODO_MASTER_KEY_PATH. + +" +`; exports[`frodo mapping import "frodo mapping import -af test/e2e/exports/all/allMappings.mapping.json": should import all mappings from the file "test/e2e/exports/all/allMappings.mapping.json" 1`] = `""`; diff --git a/test/e2e/__snapshots__/role-export.e2e.test.js.snap b/test/e2e/__snapshots__/role-export.e2e.test.js.snap index 35f9fe824..9d123d293 100644 --- a/test/e2e/__snapshots__/role-export.e2e.test.js.snap +++ b/test/e2e/__snapshots__/role-export.e2e.test.js.snap @@ -1495,6 +1495,106 @@ exports[`frodo role export "frodo role export --role-name test-internal-role --f } `; +exports[`frodo role export "frodo role export -AD roleExportTestDir3 -m idm": should export all idm roles to separate files 1`] = `0`; + +exports[`frodo role export "frodo role export -AD roleExportTestDir3 -m idm": should export all idm roles to separate files 2`] = `""`; + +exports[`frodo role export "frodo role export -AD roleExportTestDir3 -m idm": should export all idm roles to separate files: roleExportTestDir3/openidm-admin.internalRole.json 1`] = ` +{ + "internalRole": { + "openidm-admin": { + "_id": "openidm-admin", + "condition": null, + "description": "Administrative access", + "name": "openidm-admin", + "privileges": [], + "temporalConstraints": [], + }, + }, + "meta": Any, +} +`; + +exports[`frodo role export "frodo role export -AD roleExportTestDir3 -m idm": should export all idm roles to separate files: roleExportTestDir3/openidm-authorized.internalRole.json 1`] = ` +{ + "internalRole": { + "openidm-authorized": { + "_id": "openidm-authorized", + "condition": null, + "description": "Basic minimum user", + "name": "openidm-authorized", + "privileges": [], + "temporalConstraints": [], + }, + }, + "meta": Any, +} +`; + +exports[`frodo role export "frodo role export -AD roleExportTestDir3 -m idm": should export all idm roles to separate files: roleExportTestDir3/openidm-cert.internalRole.json 1`] = ` +{ + "internalRole": { + "openidm-cert": { + "_id": "openidm-cert", + "condition": null, + "description": "Authenticated via certificate", + "name": "openidm-cert", + "privileges": [], + "temporalConstraints": [], + }, + }, + "meta": Any, +} +`; + +exports[`frodo role export "frodo role export -AD roleExportTestDir3 -m idm": should export all idm roles to separate files: roleExportTestDir3/openidm-reg.internalRole.json 1`] = ` +{ + "internalRole": { + "openidm-reg": { + "_id": "openidm-reg", + "condition": null, + "description": "Anonymous access", + "name": "openidm-reg", + "privileges": [], + "temporalConstraints": [], + }, + }, + "meta": Any, +} +`; + +exports[`frodo role export "frodo role export -AD roleExportTestDir3 -m idm": should export all idm roles to separate files: roleExportTestDir3/openidm-tasks-manager.internalRole.json 1`] = ` +{ + "internalRole": { + "openidm-tasks-manager": { + "_id": "openidm-tasks-manager", + "condition": null, + "description": "Allowed to reassign workflow tasks", + "name": "openidm-tasks-manager", + "privileges": [], + "temporalConstraints": [], + }, + }, + "meta": Any, +} +`; + +exports[`frodo role export "frodo role export -AD roleExportTestDir3 -m idm": should export all idm roles to separate files: roleExportTestDir3/platform-provisioning.internalRole.json 1`] = ` +{ + "internalRole": { + "platform-provisioning": { + "_id": "platform-provisioning", + "condition": null, + "description": "Platform provisioning access", + "name": "platform-provisioning", + "privileges": [], + "temporalConstraints": [], + }, + }, + "meta": Any, +} +`; + exports[`frodo role export "frodo role export -AND roleExportTestDir1": should export all roles to separate files 1`] = `0`; exports[`frodo role export "frodo role export -AND roleExportTestDir1": should export all roles to separate files 2`] = `""`; @@ -1922,6 +2022,66 @@ exports[`frodo role export "frodo role export -AND roleExportTestDir1": should e } `; +exports[`frodo role export "frodo role export -aD roleExportTestDir4 -m idm ": should export all idm roles to one file 1`] = `0`; + +exports[`frodo role export "frodo role export -aD roleExportTestDir4 -m idm ": should export all idm roles to one file 2`] = `""`; + +exports[`frodo role export "frodo role export -aD roleExportTestDir4 -m idm ": should export all idm roles to one file: roleExportTestDir4/allInternalRoles.internalRole.json 1`] = ` +{ + "internalRole": { + "openidm-admin": { + "_id": "openidm-admin", + "condition": null, + "description": "Administrative access", + "name": "openidm-admin", + "privileges": [], + "temporalConstraints": [], + }, + "openidm-authorized": { + "_id": "openidm-authorized", + "condition": null, + "description": "Basic minimum user", + "name": "openidm-authorized", + "privileges": [], + "temporalConstraints": [], + }, + "openidm-cert": { + "_id": "openidm-cert", + "condition": null, + "description": "Authenticated via certificate", + "name": "openidm-cert", + "privileges": [], + "temporalConstraints": [], + }, + "openidm-reg": { + "_id": "openidm-reg", + "condition": null, + "description": "Anonymous access", + "name": "openidm-reg", + "privileges": [], + "temporalConstraints": [], + }, + "openidm-tasks-manager": { + "_id": "openidm-tasks-manager", + "condition": null, + "description": "Allowed to reassign workflow tasks", + "name": "openidm-tasks-manager", + "privileges": [], + "temporalConstraints": [], + }, + "platform-provisioning": { + "_id": "platform-provisioning", + "condition": null, + "description": "Platform provisioning access", + "name": "platform-provisioning", + "privileges": [], + "temporalConstraints": [], + }, + }, + "meta": Any, +} +`; + exports[`frodo role export "frodo role export -aNf roleExportTestFile3.json": should export all roles to a single file. 1`] = `0`; exports[`frodo role export "frodo role export -aNf roleExportTestFile3.json": should export all roles to a single file. 2`] = `""`; diff --git a/test/e2e/__snapshots__/server-export.e2e.test.js.snap b/test/e2e/__snapshots__/server-export.e2e.test.js.snap index 054565bd0..525c4fa12 100644 --- a/test/e2e/__snapshots__/server-export.e2e.test.js.snap +++ b/test/e2e/__snapshots__/server-export.e2e.test.js.snap @@ -1,10 +1,10 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP -exports[`frodo server export "frodo server export --all": should export all servers to a single file 1`] = `0`; +exports[`frodo server export "frodo server export --all -m classic": should export all servers to a single file 1`] = `0`; -exports[`frodo server export "frodo server export --all": should export all servers to a single file 2`] = `""`; +exports[`frodo server export "frodo server export --all -m classic": should export all servers to a single file 2`] = `""`; -exports[`frodo server export "frodo server export --all": should export all servers to a single file: allServers.server.json 1`] = ` +exports[`frodo server export "frodo server export --all -m classic": should export all servers to a single file: allServers.server.json 1`] = ` { "defaultProperties": {}, "meta": Any, @@ -1742,11 +1742,11 @@ exports[`frodo server export "frodo server export --all": should export all serv } `; -exports[`frodo server export "frodo server export --all-separate --directory serverExportTestDir5": should export all servers to separate files in the directory serverExportTestDir5 1`] = `0`; +exports[`frodo server export "frodo server export --all-separate --directory serverExportTestDir5 -m classic": should export all servers to separate files in the directory serverExportTestDir5 1`] = `0`; -exports[`frodo server export "frodo server export --all-separate --directory serverExportTestDir5": should export all servers to separate files in the directory serverExportTestDir5 2`] = `""`; +exports[`frodo server export "frodo server export --all-separate --directory serverExportTestDir5 -m classic": should export all servers to separate files in the directory serverExportTestDir5 2`] = `""`; -exports[`frodo server export "frodo server export --all-separate --directory serverExportTestDir5": should export all servers to separate files in the directory serverExportTestDir5: serverExportTestDir5/01.server.json 1`] = ` +exports[`frodo server export "frodo server export --all-separate --directory serverExportTestDir5 -m classic": should export all servers to separate files in the directory serverExportTestDir5: serverExportTestDir5/01.server.json 1`] = ` { "defaultProperties": {}, "meta": Any, @@ -2338,7 +2338,7 @@ exports[`frodo server export "frodo server export --all-separate --directory ser } `; -exports[`frodo server export "frodo server export --all-separate --directory serverExportTestDir5": should export all servers to separate files in the directory serverExportTestDir5: serverExportTestDir5/03.server.json 1`] = ` +exports[`frodo server export "frodo server export --all-separate --directory serverExportTestDir5 -m classic": should export all servers to separate files in the directory serverExportTestDir5: serverExportTestDir5/03.server.json 1`] = ` { "defaultProperties": {}, "meta": Any, @@ -2920,7 +2920,7 @@ exports[`frodo server export "frodo server export --all-separate --directory ser } `; -exports[`frodo server export "frodo server export --all-separate --directory serverExportTestDir5": should export all servers to separate files in the directory serverExportTestDir5: serverExportTestDir5/04.server.json 1`] = ` +exports[`frodo server export "frodo server export --all-separate --directory serverExportTestDir5 -m classic": should export all servers to separate files in the directory serverExportTestDir5: serverExportTestDir5/04.server.json 1`] = ` { "defaultProperties": {}, "meta": Any, @@ -3502,11 +3502,11 @@ exports[`frodo server export "frodo server export --all-separate --directory ser } `; -exports[`frodo server export "frodo server export --server-id 01": should export the server with server id "01". 1`] = `0`; +exports[`frodo server export "frodo server export --server-id 01 -m classic": should export the server with server id "01". 1`] = `0`; -exports[`frodo server export "frodo server export --server-id 01": should export the server with server id "01". 2`] = `""`; +exports[`frodo server export "frodo server export --server-id 01 -m classic": should export the server with server id "01". 2`] = `""`; -exports[`frodo server export "frodo server export --server-id 01": should export the server with server id "01".: 01.server.json 1`] = ` +exports[`frodo server export "frodo server export --server-id 01 -m classic": should export the server with server id "01".: 01.server.json 1`] = ` { "defaultProperties": {}, "meta": Any, @@ -4098,11 +4098,11 @@ exports[`frodo server export "frodo server export --server-id 01": should export } `; -exports[`frodo server export "frodo server export --server-url http://localhost:8081/am --extract --directory serverExportTestDir2": should export the server with url "http://localhost:8081/am" along with extracted properties. 1`] = `0`; +exports[`frodo server export "frodo server export --server-url http://localhost:8081/am --extract --directory serverExportTestDir2 -m classic": should export the server with url "http://localhost:8081/am" along with extracted properties. 1`] = `0`; -exports[`frodo server export "frodo server export --server-url http://localhost:8081/am --extract --directory serverExportTestDir2": should export the server with url "http://localhost:8081/am" along with extracted properties. 2`] = `""`; +exports[`frodo server export "frodo server export --server-url http://localhost:8081/am --extract --directory serverExportTestDir2 -m classic": should export the server with url "http://localhost:8081/am" along with extracted properties. 2`] = `""`; -exports[`frodo server export "frodo server export --server-url http://localhost:8081/am --extract --directory serverExportTestDir2": should export the server with url "http://localhost:8081/am" along with extracted properties.: serverExportTestDir2/03.server.json 1`] = ` +exports[`frodo server export "frodo server export --server-url http://localhost:8081/am --extract --directory serverExportTestDir2 -m classic": should export the server with url "http://localhost:8081/am" along with extracted properties.: serverExportTestDir2/03.server.json 1`] = ` { "defaultProperties": {}, "meta": Any, @@ -4126,14 +4126,14 @@ exports[`frodo server export "frodo server export --server-url http://localhost: } `; -exports[`frodo server export "frodo server export --server-url http://localhost:8081/am --extract --directory serverExportTestDir2": should export the server with url "http://localhost:8081/am" along with extracted properties.: serverExportTestDir2/03/advanced.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export --server-url http://localhost:8081/am --extract --directory serverExportTestDir2 -m classic": should export the server with url "http://localhost:8081/am" along with extracted properties.: serverExportTestDir2/03/advanced.properties.server.json 1`] = ` { "_id": "03/properties/advanced", "com.iplanet.am.lbcookie.value": "03", } `; -exports[`frodo server export "frodo server export --server-url http://localhost:8081/am --extract --directory serverExportTestDir2": should export the server with url "http://localhost:8081/am" along with extracted properties.: serverExportTestDir2/03/cts.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export --server-url http://localhost:8081/am --extract --directory serverExportTestDir2 -m classic": should export the server with url "http://localhost:8081/am" along with extracted properties.: serverExportTestDir2/03/cts.properties.server.json 1`] = ` { "_id": "03/properties/cts", "amconfig.org.forgerock.services.cts.store.common.section": { @@ -4195,7 +4195,7 @@ exports[`frodo server export "frodo server export --server-url http://localhost: } `; -exports[`frodo server export "frodo server export --server-url http://localhost:8081/am --extract --directory serverExportTestDir2": should export the server with url "http://localhost:8081/am" along with extracted properties.: serverExportTestDir2/03/directoryConfiguration.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export --server-url http://localhost:8081/am --extract --directory serverExportTestDir2 -m classic": should export the server with url "http://localhost:8081/am" along with extracted properties.: serverExportTestDir2/03/directoryConfiguration.properties.server.json 1`] = ` { "_id": "03/properties/directoryConfiguration", "directoryConfiguration": { @@ -4221,7 +4221,7 @@ exports[`frodo server export "frodo server export --server-url http://localhost: } `; -exports[`frodo server export "frodo server export --server-url http://localhost:8081/am --extract --directory serverExportTestDir2": should export the server with url "http://localhost:8081/am" along with extracted properties.: serverExportTestDir2/03/general.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export --server-url http://localhost:8081/am --extract --directory serverExportTestDir2 -m classic": should export the server with url "http://localhost:8081/am" along with extracted properties.: serverExportTestDir2/03/general.properties.server.json 1`] = ` { "_id": "03/properties/general", "amconfig.header.debug": { @@ -4272,7 +4272,7 @@ exports[`frodo server export "frodo server export --server-url http://localhost: } `; -exports[`frodo server export "frodo server export --server-url http://localhost:8081/am --extract --directory serverExportTestDir2": should export the server with url "http://localhost:8081/am" along with extracted properties.: serverExportTestDir2/03/sdk.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export --server-url http://localhost:8081/am --extract --directory serverExportTestDir2 -m classic": should export the server with url "http://localhost:8081/am" along with extracted properties.: serverExportTestDir2/03/sdk.properties.server.json 1`] = ` { "_id": "03/properties/sdk", "amconfig.header.cachingreplica": { @@ -4340,7 +4340,7 @@ exports[`frodo server export "frodo server export --server-url http://localhost: } `; -exports[`frodo server export "frodo server export --server-url http://localhost:8081/am --extract --directory serverExportTestDir2": should export the server with url "http://localhost:8081/am" along with extracted properties.: serverExportTestDir2/03/security.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export --server-url http://localhost:8081/am --extract --directory serverExportTestDir2 -m classic": should export the server with url "http://localhost:8081/am" along with extracted properties.: serverExportTestDir2/03/security.properties.server.json 1`] = ` { "_id": "03/properties/security", "amconfig.header.cookie": { @@ -4484,7 +4484,7 @@ exports[`frodo server export "frodo server export --server-url http://localhost: } `; -exports[`frodo server export "frodo server export --server-url http://localhost:8081/am --extract --directory serverExportTestDir2": should export the server with url "http://localhost:8081/am" along with extracted properties.: serverExportTestDir2/03/session.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export --server-url http://localhost:8081/am --extract --directory serverExportTestDir2 -m classic": should export the server with url "http://localhost:8081/am" along with extracted properties.: serverExportTestDir2/03/session.properties.server.json 1`] = ` { "_id": "03/properties/session", "amconfig.header.sessionlogging": { @@ -4534,7 +4534,7 @@ exports[`frodo server export "frodo server export --server-url http://localhost: } `; -exports[`frodo server export "frodo server export --server-url http://localhost:8081/am --extract --directory serverExportTestDir2": should export the server with url "http://localhost:8081/am" along with extracted properties.: serverExportTestDir2/03/uma.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export --server-url http://localhost:8081/am --extract --directory serverExportTestDir2 -m classic": should export the server with url "http://localhost:8081/am" along with extracted properties.: serverExportTestDir2/03/uma.properties.server.json 1`] = ` { "_id": "03/properties/uma", "amconfig.org.forgerock.services.resourcesets.store.common.section": { @@ -4716,11 +4716,11 @@ exports[`frodo server export "frodo server export --server-url http://localhost: } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties 1`] = `0`; +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties 1`] = `0`; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties 2`] = `""`; +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties 2`] = `""`; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/01.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/01.server.json 1`] = ` { "defaultProperties": { "advanced": "file://default/advanced.default.properties.server.json", @@ -4751,7 +4751,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/01/advanced.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/01/advanced.properties.server.json 1`] = ` { "_id": "01/properties/advanced", "bootstrap.file": "/home/prestonhales/.openamcfg/AMConfig_usr_local_tomcat_webapps_am_", @@ -4768,7 +4768,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/01/cts.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/01/cts.properties.server.json 1`] = ` { "_id": "01/properties/cts", "amconfig.org.forgerock.services.cts.store.common.section": { @@ -4830,7 +4830,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/01/directoryConfiguration.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/01/directoryConfiguration.properties.server.json 1`] = ` { "_id": "01/properties/directoryConfiguration", "directoryConfiguration": { @@ -4856,7 +4856,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/01/general.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/01/general.properties.server.json 1`] = ` { "_id": "01/properties/general", "amconfig.header.debug": { @@ -4907,7 +4907,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/01/sdk.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/01/sdk.properties.server.json 1`] = ` { "_id": "01/properties/sdk", "amconfig.header.cachingreplica": { @@ -4975,7 +4975,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/01/security.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/01/security.properties.server.json 1`] = ` { "_id": "01/properties/security", "amconfig.header.cookie": { @@ -5119,7 +5119,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/01/session.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/01/session.properties.server.json 1`] = ` { "_id": "01/properties/session", "amconfig.header.sessionlogging": { @@ -5169,7 +5169,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/01/uma.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/01/uma.properties.server.json 1`] = ` { "_id": "01/properties/uma", "amconfig.org.forgerock.services.resourcesets.store.common.section": { @@ -5351,7 +5351,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/03.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/03.server.json 1`] = ` { "defaultProperties": { "advanced": "file://default/advanced.default.properties.server.json", @@ -5382,14 +5382,14 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/03/advanced.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/03/advanced.properties.server.json 1`] = ` { "_id": "03/properties/advanced", "com.iplanet.am.lbcookie.value": "03", } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/03/cts.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/03/cts.properties.server.json 1`] = ` { "_id": "03/properties/cts", "amconfig.org.forgerock.services.cts.store.common.section": { @@ -5451,7 +5451,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/03/directoryConfiguration.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/03/directoryConfiguration.properties.server.json 1`] = ` { "_id": "03/properties/directoryConfiguration", "directoryConfiguration": { @@ -5477,7 +5477,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/03/general.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/03/general.properties.server.json 1`] = ` { "_id": "03/properties/general", "amconfig.header.debug": { @@ -5528,7 +5528,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/03/sdk.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/03/sdk.properties.server.json 1`] = ` { "_id": "03/properties/sdk", "amconfig.header.cachingreplica": { @@ -5596,7 +5596,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/03/security.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/03/security.properties.server.json 1`] = ` { "_id": "03/properties/security", "amconfig.header.cookie": { @@ -5740,7 +5740,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/03/session.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/03/session.properties.server.json 1`] = ` { "_id": "03/properties/session", "amconfig.header.sessionlogging": { @@ -5790,7 +5790,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/03/uma.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/03/uma.properties.server.json 1`] = ` { "_id": "03/properties/uma", "amconfig.org.forgerock.services.resourcesets.store.common.section": { @@ -5972,7 +5972,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/04.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/04.server.json 1`] = ` { "defaultProperties": { "advanced": "file://default/advanced.default.properties.server.json", @@ -6003,14 +6003,14 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/04/advanced.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/04/advanced.properties.server.json 1`] = ` { "_id": "04/properties/advanced", "com.iplanet.am.lbcookie.value": "04", } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/04/cts.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/04/cts.properties.server.json 1`] = ` { "_id": "04/properties/cts", "amconfig.org.forgerock.services.cts.store.common.section": { @@ -6072,7 +6072,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/04/directoryConfiguration.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/04/directoryConfiguration.properties.server.json 1`] = ` { "_id": "04/properties/directoryConfiguration", "directoryConfiguration": { @@ -6098,7 +6098,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/04/general.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/04/general.properties.server.json 1`] = ` { "_id": "04/properties/general", "amconfig.header.debug": { @@ -6149,7 +6149,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/04/sdk.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/04/sdk.properties.server.json 1`] = ` { "_id": "04/properties/sdk", "amconfig.header.cachingreplica": { @@ -6217,7 +6217,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/04/security.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/04/security.properties.server.json 1`] = ` { "_id": "04/properties/security", "amconfig.header.cookie": { @@ -6361,7 +6361,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/04/session.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/04/session.properties.server.json 1`] = ` { "_id": "04/properties/session", "amconfig.header.sessionlogging": { @@ -6411,7 +6411,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/04/uma.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/04/uma.properties.server.json 1`] = ` { "_id": "04/properties/uma", "amconfig.org.forgerock.services.resourcesets.store.common.section": { @@ -6593,7 +6593,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/default/advanced.default.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/default/advanced.default.properties.server.json 1`] = ` { "_id": "null/properties/advanced", "com.iplanet.am.buildDate": "2024-March-28 16:00", @@ -6752,7 +6752,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/default/cts.default.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/default/cts.default.properties.server.json 1`] = ` { "_id": "null/properties/cts", "amconfig.org.forgerock.services.cts.store.common.section": { @@ -6774,7 +6774,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/default/general.default.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/default/general.default.properties.server.json 1`] = ` { "_id": "null/properties/general", "amconfig.header.debug": { @@ -6795,7 +6795,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/default/sdk.default.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/default/sdk.default.properties.server.json 1`] = ` { "_id": "null/properties/sdk", "amconfig.header.cachingreplica": { @@ -6824,7 +6824,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/default/security.default.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/default/security.default.properties.server.json 1`] = ` { "_id": "null/properties/security", "amconfig.header.cookie": { @@ -6871,7 +6871,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/default/session.default.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/default/session.default.properties.server.json 1`] = ` { "_id": "null/properties/session", "amconfig.header.sessionlogging": { @@ -6894,7 +6894,7 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/default/uma.default.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4 -m classic": should export all servers to separate files along with extracted and default properties: serverExportTestDir4/default/uma.default.properties.server.json 1`] = ` { "_id": "null/properties/uma", "amconfig.org.forgerock.services.resourcesets.store.common.section": { @@ -6956,11 +6956,11 @@ exports[`frodo server export "frodo server export -AxNdD serverExportTestDir4": } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties. 1`] = `0`; +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties. 1`] = `0`; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties. 2`] = `""`; +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties. 2`] = `""`; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/01/advanced.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/01/advanced.properties.server.json 1`] = ` { "_id": "01/properties/advanced", "bootstrap.file": "/home/prestonhales/.openamcfg/AMConfig_usr_local_tomcat_webapps_am_", @@ -6977,7 +6977,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/01/cts.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/01/cts.properties.server.json 1`] = ` { "_id": "01/properties/cts", "amconfig.org.forgerock.services.cts.store.common.section": { @@ -7039,7 +7039,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/01/directoryConfiguration.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/01/directoryConfiguration.properties.server.json 1`] = ` { "_id": "01/properties/directoryConfiguration", "directoryConfiguration": { @@ -7065,7 +7065,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/01/general.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/01/general.properties.server.json 1`] = ` { "_id": "01/properties/general", "amconfig.header.debug": { @@ -7116,7 +7116,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/01/sdk.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/01/sdk.properties.server.json 1`] = ` { "_id": "01/properties/sdk", "amconfig.header.cachingreplica": { @@ -7184,7 +7184,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/01/security.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/01/security.properties.server.json 1`] = ` { "_id": "01/properties/security", "amconfig.header.cookie": { @@ -7328,7 +7328,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/01/session.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/01/session.properties.server.json 1`] = ` { "_id": "01/properties/session", "amconfig.header.sessionlogging": { @@ -7378,7 +7378,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/01/uma.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/01/uma.properties.server.json 1`] = ` { "_id": "01/properties/uma", "amconfig.org.forgerock.services.resourcesets.store.common.section": { @@ -7560,14 +7560,14 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/03/advanced.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/03/advanced.properties.server.json 1`] = ` { "_id": "03/properties/advanced", "com.iplanet.am.lbcookie.value": "03", } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/03/cts.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/03/cts.properties.server.json 1`] = ` { "_id": "03/properties/cts", "amconfig.org.forgerock.services.cts.store.common.section": { @@ -7629,7 +7629,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/03/directoryConfiguration.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/03/directoryConfiguration.properties.server.json 1`] = ` { "_id": "03/properties/directoryConfiguration", "directoryConfiguration": { @@ -7655,7 +7655,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/03/general.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/03/general.properties.server.json 1`] = ` { "_id": "03/properties/general", "amconfig.header.debug": { @@ -7706,7 +7706,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/03/sdk.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/03/sdk.properties.server.json 1`] = ` { "_id": "03/properties/sdk", "amconfig.header.cachingreplica": { @@ -7774,7 +7774,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/03/security.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/03/security.properties.server.json 1`] = ` { "_id": "03/properties/security", "amconfig.header.cookie": { @@ -7918,7 +7918,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/03/session.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/03/session.properties.server.json 1`] = ` { "_id": "03/properties/session", "amconfig.header.sessionlogging": { @@ -7968,7 +7968,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/03/uma.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/03/uma.properties.server.json 1`] = ` { "_id": "03/properties/uma", "amconfig.org.forgerock.services.resourcesets.store.common.section": { @@ -8150,14 +8150,14 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/04/advanced.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/04/advanced.properties.server.json 1`] = ` { "_id": "04/properties/advanced", "com.iplanet.am.lbcookie.value": "04", } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/04/cts.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/04/cts.properties.server.json 1`] = ` { "_id": "04/properties/cts", "amconfig.org.forgerock.services.cts.store.common.section": { @@ -8219,7 +8219,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/04/directoryConfiguration.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/04/directoryConfiguration.properties.server.json 1`] = ` { "_id": "04/properties/directoryConfiguration", "directoryConfiguration": { @@ -8245,7 +8245,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/04/general.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/04/general.properties.server.json 1`] = ` { "_id": "04/properties/general", "amconfig.header.debug": { @@ -8296,7 +8296,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/04/sdk.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/04/sdk.properties.server.json 1`] = ` { "_id": "04/properties/sdk", "amconfig.header.cachingreplica": { @@ -8364,7 +8364,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/04/security.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/04/security.properties.server.json 1`] = ` { "_id": "04/properties/security", "amconfig.header.cookie": { @@ -8508,7 +8508,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/04/session.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/04/session.properties.server.json 1`] = ` { "_id": "04/properties/session", "amconfig.header.sessionlogging": { @@ -8558,7 +8558,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/04/uma.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/04/uma.properties.server.json 1`] = ` { "_id": "04/properties/uma", "amconfig.org.forgerock.services.resourcesets.store.common.section": { @@ -8740,7 +8740,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/default/advanced.default.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/default/advanced.default.properties.server.json 1`] = ` { "_id": "null/properties/advanced", "com.iplanet.am.buildDate": "2024-March-28 16:00", @@ -8899,7 +8899,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/default/cts.default.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/default/cts.default.properties.server.json 1`] = ` { "_id": "null/properties/cts", "amconfig.org.forgerock.services.cts.store.common.section": { @@ -8921,7 +8921,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/default/general.default.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/default/general.default.properties.server.json 1`] = ` { "_id": "null/properties/general", "amconfig.header.debug": { @@ -8942,7 +8942,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/default/sdk.default.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/default/sdk.default.properties.server.json 1`] = ` { "_id": "null/properties/sdk", "amconfig.header.cachingreplica": { @@ -8971,7 +8971,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/default/security.default.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/default/security.default.properties.server.json 1`] = ` { "_id": "null/properties/security", "amconfig.header.cookie": { @@ -9018,7 +9018,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/default/session.default.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/default/session.default.properties.server.json 1`] = ` { "_id": "null/properties/session", "amconfig.header.sessionlogging": { @@ -9041,7 +9041,7 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/default/uma.default.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.json -D serverExportTestDir3 -m classic": should export all servers to a single file in the directory serverExportTestDir3 along with extracted and default properties.: serverExportTestDir3/default/uma.default.properties.server.json 1`] = ` { "_id": "null/properties/uma", "amconfig.org.forgerock.services.resourcesets.store.common.section": { @@ -9103,11 +9103,11 @@ exports[`frodo server export "frodo server export -axNdf serverExportTestFile3.j } `; -exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1": should export the server with server id "01" along with extracted properties and default properties. 1`] = `0`; +exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1 -m classic": should export the server with server id "01" along with extracted properties and default properties. 1`] = `0`; -exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1": should export the server with server id "01" along with extracted properties and default properties. 2`] = `""`; +exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1 -m classic": should export the server with server id "01" along with extracted properties and default properties. 2`] = `""`; -exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/01/advanced.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1 -m classic": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/01/advanced.properties.server.json 1`] = ` { "_id": "01/properties/advanced", "bootstrap.file": "/home/prestonhales/.openamcfg/AMConfig_usr_local_tomcat_webapps_am_", @@ -9124,7 +9124,7 @@ exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1 } `; -exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/01/cts.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1 -m classic": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/01/cts.properties.server.json 1`] = ` { "_id": "01/properties/cts", "amconfig.org.forgerock.services.cts.store.common.section": { @@ -9186,7 +9186,7 @@ exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1 } `; -exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/01/directoryConfiguration.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1 -m classic": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/01/directoryConfiguration.properties.server.json 1`] = ` { "_id": "01/properties/directoryConfiguration", "directoryConfiguration": { @@ -9212,7 +9212,7 @@ exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1 } `; -exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/01/general.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1 -m classic": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/01/general.properties.server.json 1`] = ` { "_id": "01/properties/general", "amconfig.header.debug": { @@ -9263,7 +9263,7 @@ exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1 } `; -exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/01/sdk.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1 -m classic": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/01/sdk.properties.server.json 1`] = ` { "_id": "01/properties/sdk", "amconfig.header.cachingreplica": { @@ -9331,7 +9331,7 @@ exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1 } `; -exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/01/security.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1 -m classic": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/01/security.properties.server.json 1`] = ` { "_id": "01/properties/security", "amconfig.header.cookie": { @@ -9475,7 +9475,7 @@ exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1 } `; -exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/01/session.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1 -m classic": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/01/session.properties.server.json 1`] = ` { "_id": "01/properties/session", "amconfig.header.sessionlogging": { @@ -9525,7 +9525,7 @@ exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1 } `; -exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/01/uma.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1 -m classic": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/01/uma.properties.server.json 1`] = ` { "_id": "01/properties/uma", "amconfig.org.forgerock.services.resourcesets.store.common.section": { @@ -9707,7 +9707,7 @@ exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1 } `; -exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/default/advanced.default.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1 -m classic": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/default/advanced.default.properties.server.json 1`] = ` { "_id": "null/properties/advanced", "com.iplanet.am.buildDate": "2024-March-28 16:00", @@ -9866,7 +9866,7 @@ exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1 } `; -exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/default/cts.default.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1 -m classic": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/default/cts.default.properties.server.json 1`] = ` { "_id": "null/properties/cts", "amconfig.org.forgerock.services.cts.store.common.section": { @@ -9888,7 +9888,7 @@ exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1 } `; -exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/default/general.default.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1 -m classic": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/default/general.default.properties.server.json 1`] = ` { "_id": "null/properties/general", "amconfig.header.debug": { @@ -9909,7 +9909,7 @@ exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1 } `; -exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/default/sdk.default.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1 -m classic": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/default/sdk.default.properties.server.json 1`] = ` { "_id": "null/properties/sdk", "amconfig.header.cachingreplica": { @@ -9938,7 +9938,7 @@ exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1 } `; -exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/default/security.default.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1 -m classic": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/default/security.default.properties.server.json 1`] = ` { "_id": "null/properties/security", "amconfig.header.cookie": { @@ -9985,7 +9985,7 @@ exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1 } `; -exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/default/session.default.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1 -m classic": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/default/session.default.properties.server.json 1`] = ` { "_id": "null/properties/session", "amconfig.header.sessionlogging": { @@ -10008,7 +10008,7 @@ exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1 } `; -exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/default/uma.default.properties.server.json 1`] = ` +exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1.json -xNdD serverExportTestDir1 -m classic": should export the server with server id "01" along with extracted properties and default properties.: serverExportTestDir1/default/uma.default.properties.server.json 1`] = ` { "_id": "null/properties/uma", "amconfig.org.forgerock.services.resourcesets.store.common.section": { @@ -10070,11 +10070,11 @@ exports[`frodo server export "frodo server export -i 01 -f serverExportTestFile1 } `; -exports[`frodo server export "frodo server export -u 8081 --file serverExportTestFile2.json --default --no-metadata": should export the server with url containing "8081" along with default properties. 1`] = `0`; +exports[`frodo server export "frodo server export -u 8081 --file serverExportTestFile2.json --default --no-metadata -m classic": should export the server with url containing "8081" along with default properties. 1`] = `0`; -exports[`frodo server export "frodo server export -u 8081 --file serverExportTestFile2.json --default --no-metadata": should export the server with url containing "8081" along with default properties. 2`] = `""`; +exports[`frodo server export "frodo server export -u 8081 --file serverExportTestFile2.json --default --no-metadata -m classic": should export the server with url containing "8081" along with default properties. 2`] = `""`; -exports[`frodo server export "frodo server export -u 8081 --file serverExportTestFile2.json --default --no-metadata": should export the server with url containing "8081" along with default properties.: serverExportTestFile2.json 1`] = ` +exports[`frodo server export "frodo server export -u 8081 --file serverExportTestFile2.json --default --no-metadata -m classic": should export the server with url containing "8081" along with default properties.: serverExportTestFile2.json 1`] = ` { "defaultProperties": { "advanced": { diff --git a/test/e2e/__snapshots__/server-import.e2e.test.js.snap b/test/e2e/__snapshots__/server-import.e2e.test.js.snap index 8ca63397b..6855bf3b9 100644 --- a/test/e2e/__snapshots__/server-import.e2e.test.js.snap +++ b/test/e2e/__snapshots__/server-import.e2e.test.js.snap @@ -1,19 +1,27 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP -exports[`frodo server import "frodo server import --all --file test/e2e/exports/all/allServers.server.json": should import all servers from the file "test/e2e/exports/all/allServers.server.json" 1`] = `""`; +exports[`frodo server import "frodo server import --all --file test/e2e/exports/all/allServers.server.json -m classic": should import all servers from the file "test/e2e/exports/all/allServers.server.json" 1`] = `""`; -exports[`frodo server import "frodo server import --all-separate --directory test/e2e/exports/all-separate/classic/global/server": should import all servers from the test/e2e/exports/all-separate/classic/global/server directory" 1`] = `""`; +exports[`frodo server import "frodo server import --all-separate --directory test/e2e/exports/all-separate/classic/global/server -m classic": should import all servers from the test/e2e/exports/all-separate/classic/global/server directory" 1`] = `""`; -exports[`frodo server import "frodo server import --default --server-url http://localhost:8081/am --file test/e2e/exports/all/allServers.server.json": should import the server with the url "http://localhost:8081/am" from the file "test/e2e/exports/all/allServers.server.json" 1`] = `""`; +exports[`frodo server import "frodo server import --default --server-url http://localhost:8081/am --file test/e2e/exports/all/allServers.server.json -m classic": should import the server with the url "http://localhost:8081/am" from the file "test/e2e/exports/all/allServers.server.json" 1`] = `""`; -exports[`frodo server import "frodo server import --server-id 01 --file test/e2e/exports/all/allServers.server.json": should import the server with the id "01" from the file "test/e2e/exports/all/allServers.server.json" 1`] = `""`; +exports[`frodo server import "frodo server import --server-id 01 --file test/e2e/exports/all/allServers.server.json -m classic": should import the server with the id "01" from the file "test/e2e/exports/all/allServers.server.json" 1`] = `""`; -exports[`frodo server import "frodo server import -dAD test/e2e/exports/all-separate/classic/global/server": should import all servers from the test/e2e/exports/all-separate/classic/global/server directory" 1`] = `""`; +exports[`frodo server import "frodo server import -dAD test/e2e/exports/all-separate/classic/global/server -m classic": should import all servers from the test/e2e/exports/all-separate/classic/global/server directory" 1`] = `""`; -exports[`frodo server import "frodo server import -daf test/e2e/exports/all/allServers.server.json": should import all servers from the file "test/e2e/exports/all/allServers.server.json" 1`] = `""`; +exports[`frodo server import "frodo server import -daf test/e2e/exports/all/allServers.server.json -m classic": should import all servers from the file "test/e2e/exports/all/allServers.server.json" 1`] = `""`; -exports[`frodo server import "frodo server import -di 01 -f test/e2e/exports/all/allServers.server.json": should import the server with the id "01" from the file "test/e2e/exports/all/allServers.server.json" 1`] = `""`; +exports[`frodo server import "frodo server import -di 01 -f test/e2e/exports/all/allServers.server.json -m classic": should import the server with the id "01" from the file "test/e2e/exports/all/allServers.server.json" 1`] = `""`; -exports[`frodo server import "frodo server import -f test/e2e/exports/all/allServers.server.json": should import the first server from the file "test/e2e/exports/all/allServers.server.json" 1`] = `""`; +exports[`frodo server import "frodo server import -di 01 -f test/e2e/exports/all/allServers.server.json -m classic": should import the server with the id "01" from the file "test/e2e/exports/all/allServers.server.json" 2`] = ` +"Connected to http://openam-frodo-dev.classic.com:8080/am [/] as user amAdmin +- Reading server from file... +- Importing server... +- Successfully imported server 01. +" +`; -exports[`frodo server import "frodo server import -u 8081 -f test/e2e/exports/all/allServers.server.json": should import the server with the url containing "8081" from the file "test/e2e/exports/all/allServers.server.json" 1`] = `""`; +exports[`frodo server import "frodo server import -f test/e2e/exports/all/allServers.server.json -m classic": should import the first server from the file "test/e2e/exports/all/allServers.server.json" 1`] = `""`; + +exports[`frodo server import "frodo server import -u 8081 -f test/e2e/exports/all/allServers.server.json -m classic": should import the server with the url containing "8081" from the file "test/e2e/exports/all/allServers.server.json" 1`] = `""`; diff --git a/test/e2e/__snapshots__/server-list.e2e.test.js.snap b/test/e2e/__snapshots__/server-list.e2e.test.js.snap index 9f15cfe02..ec8fa9d71 100644 --- a/test/e2e/__snapshots__/server-list.e2e.test.js.snap +++ b/test/e2e/__snapshots__/server-list.e2e.test.js.snap @@ -1,24 +1,24 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP -exports[`frodo server list "frodo server list --long": should list the ids, urls, and site names of the servers 1`] = ` -"Id│Url │Site Name -01│http://localhost:8080/am│ -03│http://localhost:8081/am│testsite -04│http://localhost:8082/am│ +exports[`frodo server list -m classic "frodo server list --long -m classic": should list the ids, urls, and site names of the servers 1`] = ` +"Id│Url │Site Name +03│http://localhost:8081/am │ +04│http://localhost:8082/am │ +01│http://openam-frodo-dev.classic.com:8080/am│ " `; -exports[`frodo server list "frodo server list -l": should list the ids, urls, and site names of the servers 1`] = ` -"Id│Url │Site Name -01│http://localhost:8080/am│ -03│http://localhost:8081/am│testsite -04│http://localhost:8082/am│ +exports[`frodo server list -m classic "frodo server list -l -m classic": should list the ids, urls, and site names of the servers 1`] = ` +"Id│Url │Site Name +03│http://localhost:8081/am │ +04│http://localhost:8082/am │ +01│http://openam-frodo-dev.classic.com:8080/am│ " `; -exports[`frodo server list "frodo server list": should list the urls of the servers 1`] = ` -"http://localhost:8080/am -http://localhost:8081/am +exports[`frodo server list -m classic "frodo server list": should list the urls of the servers 1`] = ` +"http://localhost:8081/am http://localhost:8082/am +http://openam-frodo-dev.classic.com:8080/am " `; diff --git a/test/e2e/config-export.e2e.test.js b/test/e2e/config-export.e2e.test.js index 359e13c21..f4b562aa6 100644 --- a/test/e2e/config-export.e2e.test.js +++ b/test/e2e/config-export.e2e.test.js @@ -68,6 +68,8 @@ FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openam-frodo-dev.classic.co FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo config export -af idmexport.json -m idm FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo config export -aD exportAllTestDir12 -f testExportAllIdm.config.json -m idm FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo config export -AD exportAllTestDir13 -m idm +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo config export -AxD exportAllTestDir14 -m idm + */ @@ -204,4 +206,9 @@ describe.skip('frodo config export', () => { const CMD = `frodo config export -AD ${exportDirectory} -m idm`; await testExport(CMD, idmEnv, undefined, undefined, exportDirectory, false); }); + test('"frodo config export -AxD exportAllTestDir14 -m idm": should export all IDM config with script extracted to the directory with separate mappings', async () => { + const exportDirectory = 'exportAllTestDir14'; + const CMD = `frodo config export -AxD ${exportDirectory} -m idm`; + await testExport(CMD, idmEnv, undefined, undefined, exportDirectory, false); + }); }); diff --git a/test/e2e/config-import.e2e.test.js b/test/e2e/config-import.e2e.test.js index 73895a0e5..18cebaadc 100644 --- a/test/e2e/config-import.e2e.test.js +++ b/test/e2e/config-import.e2e.test.js @@ -59,6 +59,12 @@ rm -rf test/e2e/exports/all-separate/classic FRODO_NO_CACHE=1 FRODO_HOST=http://openam-frodo-dev.classic.com:8080/am frodo config export -NRdaD test/e2e/exports/all -f all.classic.json --include-active-values FRODO_NO_CACHE=1 FRODO_HOST=http://openam-frodo-dev.classic.com:8080/am frodo config export -NRdxAD test/e2e/exports/all-separate/classic --include-active-values +To update idm exports, ensure you have a local on-prem instance of idm with the host http://openidm-frodo-dev.classic.com:9080/openidm, then run these: +FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo config export -NRdaD test/e2e/exports/all/idm -f all.config.json --include-active-values +FRODO_NO_CACHE=1 FRODO_HOST=http://openidm-frodo-dev.classic.com:9080/openidm frodo config export -NRdxAD test/e2e/exports/all-separate-extracted-script/idm --include-active-values + + + To record, run these: // Cloud @@ -72,6 +78,8 @@ FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgebloc FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo config import -AD test/e2e/exports/all-separate/cloud --include-active-values FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo config import -gf test/e2e/exports/all-separate/cloud/global/sync/sync.idm.json FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo config import --file test/e2e/exports/all-separate/cloud/realm/root-alpha/script/mode.script.json +// Extract script +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo config import -AD test/e2e/exports/all-separate-extracted-script/cloud --type cloud // Classic FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openam-frodo-dev.classic.com:8080/am frodo config import -adf test/e2e/exports/all/all.classic.json -m classic FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=http://openam-frodo-dev.classic.com:8080/am frodo config import --all --clean --re-uuid-scripts --re-uuid-journeys --include-active-values --file test/e2e/exports/all/all.classic.json --type classic diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/emailTemplate/forgottenUsername.emailTemplate.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/emailTemplate/forgottenUsername.emailTemplate.json new file mode 100644 index 000000000..e5469d572 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/emailTemplate/forgottenUsername.emailTemplate.json @@ -0,0 +1,24 @@ +{ + "emailTemplate": { + "forgottenUsername": { + "_id": "emailTemplate/forgottenUsername", + "defaultLocale": "en", + "enabled": true, + "from": "", + "html": { + "en": "{{#if object.userName}}

Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

", + "fr": "{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

" + }, + "message": { + "en": "

{{#if object.userName}}Your username is '{{object.userName}}'.

{{else}}If you received this email in error, please disregard.{{/if}}

Click here to login

", + "fr": "
{{#if object.userName}}

Votre nom d'utilisateur est '{{object.userName}}'.

{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}

Cliquez ici pour vous connecter

" + }, + "mimeType": "text/html", + "styles": "body{background-color:#324054;color:#5e6d82;padding:60px;text-align:center}a{text-decoration:none;color:#109cf1}.content{background-color:#fff;border-radius:4px;margin:0 auto;padding:48px;width:235px}", + "subject": { + "en": "Account Information - username", + "fr": "Informations sur le compte - nom d'utilisateur" + } + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/emailTemplate/registration.emailTemplate.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/emailTemplate/registration.emailTemplate.json new file mode 100644 index 000000000..bb77e55fc --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/emailTemplate/registration.emailTemplate.json @@ -0,0 +1,24 @@ +{ + "emailTemplate": { + "registration": { + "_id": "emailTemplate/registration", + "defaultLocale": "en", + "enabled": true, + "from": "", + "html": { + "en": "

This is your registration email.

Email verification link

", + "fr": "

Ceci est votre mail d'inscription.

Lien de vérification email

" + }, + "message": { + "en": "

This is your registration email.

Email verification link

", + "fr": "

Ceci est votre mail d'inscription.

Lien de vérification email

" + }, + "mimeType": "text/html", + "styles": "body{background-color:#324054;color:#5e6d82;padding:60px;text-align:center}a{text-decoration:none;color:#109cf1}.content{background-color:#fff;border-radius:4px;margin:0 auto;padding:48px;width:235px}", + "subject": { + "en": "Register new account", + "fr": "Créer un nouveau compte" + } + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/emailTemplate/resetPassword.emailTemplate.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/emailTemplate/resetPassword.emailTemplate.json new file mode 100644 index 000000000..7d62f29a0 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/emailTemplate/resetPassword.emailTemplate.json @@ -0,0 +1,19 @@ +{ + "emailTemplate": { + "resetPassword": { + "_id": "emailTemplate/resetPassword", + "defaultLocale": "en", + "enabled": true, + "from": "", + "message": { + "en": "

Click to reset your password

Password reset link

", + "fr": "

Cliquez pour réinitialiser votre mot de passe

Mot de passe lien de réinitialisation

" + }, + "mimeType": "text/html", + "subject": { + "en": "Reset your password", + "fr": "Réinitialisez votre mot de passe" + } + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/emailTemplate/updatePassword.emailTemplate.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/emailTemplate/updatePassword.emailTemplate.json new file mode 100644 index 000000000..3d4156c44 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/emailTemplate/updatePassword.emailTemplate.json @@ -0,0 +1,21 @@ +{ + "emailTemplate": { + "updatePassword": { + "_id": "emailTemplate/updatePassword", + "defaultLocale": "en", + "enabled": true, + "from": "", + "html": { + "en": "

Verify email to update password

Update password link

" + }, + "message": { + "en": "

Verify email to update password

Update password link

" + }, + "mimeType": "text/html", + "styles": "body{background-color:#324054;color:#5e6d82;padding:60px;text-align:center}a{text-decoration:none;color:#109cf1}.content{background-color:#fff;border-radius:4px;margin:0 auto;padding:48px;width:235px}", + "subject": { + "en": "Update your password" + } + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/emailTemplate/welcome.emailTemplate.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/emailTemplate/welcome.emailTemplate.json new file mode 100644 index 000000000..18c4597f0 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/emailTemplate/welcome.emailTemplate.json @@ -0,0 +1,21 @@ +{ + "emailTemplate": { + "welcome": { + "_id": "emailTemplate/welcome", + "defaultLocale": "en", + "enabled": true, + "from": "", + "html": { + "en": "

Welcome. Your username is '{{object.userName}}'.

" + }, + "message": { + "en": "

Welcome. Your username is '{{object.userName}}'.

" + }, + "mimeType": "text/html", + "styles": "body{background-color:#324054;color:#5e6d82;padding:60px;text-align:center}a{text-decoration:none;color:#109cf1}.content{background-color:#fff;border-radius:4px;margin:0 auto;padding:48px;width:235px}", + "subject": { + "en": "Your account has been created" + } + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/access.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/access.idm.json new file mode 100644 index 000000000..3b8bc2e59 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/access.idm.json @@ -0,0 +1,316 @@ +{ + "idm": { + "access": { + "_id": "access", + "configs": [ + { + "actions": "*", + "methods": "read", + "pattern": "info/*", + "roles": "*" + }, + { + "actions": "login,logout", + "methods": "read,action", + "pattern": "authentication", + "roles": "*" + }, + { + "actions": "*", + "methods": "*", + "pattern": "config/fidc/*", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/themeconfig", + "roles": "*" + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/themerealm", + "roles": "*" + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/uilocale/*", + "roles": "*" + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/fieldPolicy/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "methods": "read", + "pattern": "info/uiconfig", + "roles": "*" + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/dashboard", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "methods": "query", + "pattern": "info/features", + "roles": "*" + }, + { + "actions": "listPrivileges", + "methods": "action", + "pattern": "privilege", + "roles": "*" + }, + { + "actions": "*", + "methods": "read", + "pattern": "privilege/*", + "roles": "*" + }, + { + "actions": "validate", + "methods": "action", + "pattern": "util/validateQueryFilter", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "customAuthz": "checkIfAnyFeatureEnabled('kba')", + "methods": "read", + "pattern": "selfservice/kba", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "methods": "read", + "pattern": "schema/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "methods": "action,query", + "pattern": "consent", + "roles": "internal/role/openidm-authorized" + }, + { + "methods": "read", + "pattern": "*", + "roles": "~rcsclient-authorized", + "servlet": "openicf" + }, + { + "actions": "*", + "excludePatterns": "repo,repo/*", + "methods": "*", + "pattern": "*", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "", + "methods": "create,read,update,delete,patch,query", + "pattern": "system/*", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "*", + "methods": "script", + "pattern": "system/*", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "test,testConfig,createconfiguration,liveSync,authenticate", + "methods": "action", + "pattern": "system/*", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "*", + "customAuthz": "disallowCommandAction()", + "methods": "*", + "pattern": "repo", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "*", + "customAuthz": "disallowCommandAction()", + "methods": "*", + "pattern": "repo/*", + "roles": "internal/role/openidm-admin" + }, + { + "actions": "command", + "customAuthz": "request.additionalParameters.commandId === 'delete-mapping-links'", + "methods": "action", + "pattern": "repo/link", + "roles": "internal/role/openidm-admin" + }, + { + "methods": "create,read,query,patch", + "pattern": "managed/*", + "roles": "internal/role/platform-provisioning" + }, + { + "methods": "read,query", + "pattern": "internal/role/*", + "roles": "internal/role/platform-provisioning" + }, + { + "actions": "*", + "methods": "create,read,action,update", + "pattern": "profile/*", + "roles": "internal/role/platform-provisioning" + }, + { + "actions": "*", + "methods": "read,action", + "pattern": "policy/*", + "roles": "internal/role/platform-provisioning" + }, + { + "methods": "read", + "pattern": "schema/*", + "roles": "internal/role/platform-provisioning" + }, + { + "actions": "*", + "methods": "action,query", + "pattern": "consent", + "roles": "internal/role/platform-provisioning" + }, + { + "methods": "read", + "pattern": "selfservice/kba", + "roles": "internal/role/platform-provisioning" + }, + { + "methods": "read", + "pattern": "selfservice/terms", + "roles": "internal/role/platform-provisioning" + }, + { + "actions": "sendTemplate", + "methods": "action", + "pattern": "external/email", + "roles": "internal/role/platform-provisioning" + }, + { + "actions": "authenticate", + "methods": "action", + "pattern": "system/*", + "roles": "internal/role/platform-provisioning" + }, + { + "actions": "*", + "methods": "read,action", + "pattern": "policy/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "methods": "read", + "pattern": "config/ui/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "bind,unbind", + "customAuthz": "ownDataOnly()", + "methods": "read,action,delete", + "pattern": "*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "patch", + "customAuthz": "ownDataOnly() && onlyEditableManagedObjectProperties('user', [])", + "methods": "update,patch,action", + "pattern": "*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "patch", + "customAuthz": "isQueryOneOf({'managed/user': ['for-userName']}) && restrictPatchToFields(['password'])", + "methods": "patch,action", + "pattern": "managed/user", + "roles": "internal/role/openidm-cert" + }, + { + "actions": "*", + "customAuthz": "ownRelationshipProperty('_meta', false)", + "methods": "read", + "pattern": "internal/usermeta/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "customAuthz": "ownRelationshipProperty('_notifications', true)", + "methods": "read,delete", + "pattern": "internal/notification/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "customAuthz": "ownRelationshipCollection(['_meta','_notifications'])", + "methods": "read,query", + "pattern": "managed/user/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "", + "customAuthz": "ownDataOnly()", + "methods": "read,delete", + "pattern": "managed/alpha_user/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "patch", + "customAuthz": "ownDataOnly() && onlyEditableManagedObjectProperties('alpha_user', [])", + "methods": "update,patch,action", + "pattern": "managed/alpha_user/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "customAuthz": "ownRelationshipCollection(['_meta','_notifications'])", + "methods": "read,query", + "pattern": "managed/alpha_user/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "", + "customAuthz": "ownDataOnly()", + "methods": "read,delete", + "pattern": "managed/bravo_user/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "patch", + "customAuthz": "ownDataOnly() && onlyEditableManagedObjectProperties('bravo_user', [])", + "methods": "update,patch,action", + "pattern": "managed/bravo_user/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "*", + "customAuthz": "ownRelationshipCollection(['_meta','_notifications'])", + "methods": "read,query", + "pattern": "managed/bravo_user/*", + "roles": "internal/role/openidm-authorized" + }, + { + "actions": "deleteNotificationsForTarget", + "customAuthz": "request.additionalParameters.target === (context.security.authorization.component + '/' + context.security.authorization.id)", + "methods": "action", + "pattern": "notification", + "roles": "internal/role/openidm-authorized" + } + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/alphaOrgPrivileges.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/alphaOrgPrivileges.idm.json new file mode 100644 index 000000000..0fbaf3cfd --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/alphaOrgPrivileges.idm.json @@ -0,0 +1,761 @@ +{ + "idm": { + "alphaOrgPrivileges": { + "_id": "alphaOrgPrivileges", + "privileges": [ + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "owners", + "readOnly": true + }, + { + "attribute": "admins", + "readOnly": false + }, + { + "attribute": "members", + "readOnly": false + }, + { + "attribute": "parent", + "readOnly": false + }, + { + "attribute": "children", + "readOnly": false + }, + { + "attribute": "parentIDs", + "readOnly": true + }, + { + "attribute": "adminIDs", + "readOnly": true + }, + { + "attribute": "parentAdminIDs", + "readOnly": true + }, + { + "attribute": "ownerIDs", + "readOnly": true + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/ownerIDs eq \"{{_id}}\" or /parentOwnerIDs eq \"{{_id}}\"", + "name": "owner-view-update-delete-orgs", + "path": "managed/alpha_organization", + "permissions": [ + "VIEW", + "UPDATE", + "DELETE" + ] + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "owners", + "readOnly": true + }, + { + "attribute": "admins", + "readOnly": false + }, + { + "attribute": "members", + "readOnly": false + }, + { + "attribute": "parent", + "readOnly": false + }, + { + "attribute": "children", + "readOnly": false + }, + { + "attribute": "parentIDs", + "readOnly": true + }, + { + "attribute": "adminIDs", + "readOnly": true + }, + { + "attribute": "parentAdminIDs", + "readOnly": true + }, + { + "attribute": "ownerIDs", + "readOnly": true + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/parent pr", + "name": "owner-create-orgs", + "path": "managed/alpha_organization", + "permissions": [ + "CREATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false + }, + { + "attribute": "password", + "readOnly": false + }, + { + "attribute": "givenName", + "readOnly": false + }, + { + "attribute": "sn", + "readOnly": false + }, + { + "attribute": "mail", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "accountStatus", + "readOnly": false + }, + { + "attribute": "telephoneNumber", + "readOnly": false + }, + { + "attribute": "postalAddress", + "readOnly": false + }, + { + "attribute": "city", + "readOnly": false + }, + { + "attribute": "postalCode", + "readOnly": false + }, + { + "attribute": "country", + "readOnly": false + }, + { + "attribute": "stateProvince", + "readOnly": false + }, + { + "attribute": "roles", + "readOnly": false + }, + { + "attribute": "groups", + "readOnly": false + }, + { + "attribute": "manager", + "readOnly": false + }, + { + "attribute": "authzRoles", + "readOnly": false + }, + { + "attribute": "reports", + "readOnly": false + }, + { + "attribute": "effectiveRoles", + "readOnly": false + }, + { + "attribute": "effectiveAssignments", + "readOnly": false + }, + { + "attribute": "effectiveGroups", + "readOnly": false + }, + { + "attribute": "lastSync", + "readOnly": false + }, + { + "attribute": "kbaInfo", + "readOnly": false + }, + { + "attribute": "preferences", + "readOnly": false + }, + { + "attribute": "consentedMappings", + "readOnly": false + }, + { + "attribute": "memberOfOrg", + "readOnly": false + }, + { + "attribute": "adminOfOrg", + "readOnly": false + }, + { + "attribute": "ownerOfOrg", + "readOnly": true + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/memberOfOrgIDs eq \"__org_id_placeholder__\"", + "name": "owner-view-update-delete-admins-and-members", + "path": "managed/alpha_user", + "permissions": [ + "VIEW", + "DELETE", + "UPDATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false + }, + { + "attribute": "password", + "readOnly": false + }, + { + "attribute": "givenName", + "readOnly": false + }, + { + "attribute": "sn", + "readOnly": false + }, + { + "attribute": "mail", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "accountStatus", + "readOnly": false + }, + { + "attribute": "telephoneNumber", + "readOnly": false + }, + { + "attribute": "postalAddress", + "readOnly": false + }, + { + "attribute": "city", + "readOnly": false + }, + { + "attribute": "postalCode", + "readOnly": false + }, + { + "attribute": "country", + "readOnly": false + }, + { + "attribute": "stateProvince", + "readOnly": false + }, + { + "attribute": "roles", + "readOnly": false + }, + { + "attribute": "groups", + "readOnly": false + }, + { + "attribute": "manager", + "readOnly": false + }, + { + "attribute": "authzRoles", + "readOnly": false + }, + { + "attribute": "reports", + "readOnly": false + }, + { + "attribute": "effectiveRoles", + "readOnly": false + }, + { + "attribute": "effectiveAssignments", + "readOnly": false + }, + { + "attribute": "effectiveGroups", + "readOnly": false + }, + { + "attribute": "lastSync", + "readOnly": false + }, + { + "attribute": "kbaInfo", + "readOnly": false + }, + { + "attribute": "preferences", + "readOnly": false + }, + { + "attribute": "consentedMappings", + "readOnly": false + }, + { + "attribute": "memberOfOrg", + "readOnly": false + }, + { + "attribute": "adminOfOrg", + "readOnly": false + }, + { + "attribute": "ownerOfOrg", + "readOnly": true + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/memberOfOrg/0 pr and /adminOfOrg/0 pr and !(/ownerOfOrg pr)", + "name": "owner-create-admins", + "path": "managed/alpha_user", + "permissions": [ + "CREATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "owners", + "readOnly": true + }, + { + "attribute": "admins", + "readOnly": true + }, + { + "attribute": "members", + "readOnly": false + }, + { + "attribute": "parent", + "readOnly": false + }, + { + "attribute": "children", + "readOnly": false + }, + { + "attribute": "parentIDs", + "readOnly": true + }, + { + "attribute": "adminIDs", + "readOnly": true + }, + { + "attribute": "parentAdminIDs", + "readOnly": true + }, + { + "attribute": "ownerIDs", + "readOnly": true + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/adminIDs eq \"{{_id}}\" or /parentAdminIDs eq \"{{_id}}\"", + "name": "admin-view-update-delete-orgs", + "path": "managed/alpha_organization", + "permissions": [ + "VIEW", + "UPDATE", + "DELETE" + ] + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "owners", + "readOnly": true + }, + { + "attribute": "admins", + "readOnly": true + }, + { + "attribute": "members", + "readOnly": false + }, + { + "attribute": "parent", + "readOnly": false + }, + { + "attribute": "children", + "readOnly": false + }, + { + "attribute": "parentIDs", + "readOnly": true + }, + { + "attribute": "adminIDs", + "readOnly": true + }, + { + "attribute": "parentAdminIDs", + "readOnly": true + }, + { + "attribute": "ownerIDs", + "readOnly": true + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/parent pr", + "name": "admin-create-orgs", + "path": "managed/alpha_organization", + "permissions": [ + "CREATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false + }, + { + "attribute": "password", + "readOnly": false + }, + { + "attribute": "givenName", + "readOnly": false + }, + { + "attribute": "sn", + "readOnly": false + }, + { + "attribute": "mail", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "accountStatus", + "readOnly": false + }, + { + "attribute": "telephoneNumber", + "readOnly": false + }, + { + "attribute": "postalAddress", + "readOnly": false + }, + { + "attribute": "city", + "readOnly": false + }, + { + "attribute": "postalCode", + "readOnly": false + }, + { + "attribute": "country", + "readOnly": false + }, + { + "attribute": "stateProvince", + "readOnly": false + }, + { + "attribute": "roles", + "readOnly": false + }, + { + "attribute": "groups", + "readOnly": false + }, + { + "attribute": "manager", + "readOnly": false + }, + { + "attribute": "authzRoles", + "readOnly": false + }, + { + "attribute": "reports", + "readOnly": false + }, + { + "attribute": "effectiveRoles", + "readOnly": false + }, + { + "attribute": "effectiveAssignments", + "readOnly": false + }, + { + "attribute": "effectiveGroups", + "readOnly": false + }, + { + "attribute": "lastSync", + "readOnly": false + }, + { + "attribute": "kbaInfo", + "readOnly": false + }, + { + "attribute": "preferences", + "readOnly": false + }, + { + "attribute": "consentedMappings", + "readOnly": false + }, + { + "attribute": "memberOfOrg", + "readOnly": false + }, + { + "attribute": "adminOfOrg", + "readOnly": true + }, + { + "attribute": "ownerOfOrg", + "readOnly": true + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/memberOfOrgIDs eq \"__org_id_placeholder__\"", + "name": "admin-view-update-delete-members", + "path": "managed/alpha_user", + "permissions": [ + "VIEW", + "DELETE", + "UPDATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false + }, + { + "attribute": "password", + "readOnly": false + }, + { + "attribute": "givenName", + "readOnly": false + }, + { + "attribute": "sn", + "readOnly": false + }, + { + "attribute": "mail", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "accountStatus", + "readOnly": false + }, + { + "attribute": "telephoneNumber", + "readOnly": false + }, + { + "attribute": "postalAddress", + "readOnly": false + }, + { + "attribute": "city", + "readOnly": false + }, + { + "attribute": "postalCode", + "readOnly": false + }, + { + "attribute": "country", + "readOnly": false + }, + { + "attribute": "stateProvince", + "readOnly": false + }, + { + "attribute": "roles", + "readOnly": false + }, + { + "attribute": "groups", + "readOnly": false + }, + { + "attribute": "manager", + "readOnly": false + }, + { + "attribute": "authzRoles", + "readOnly": false + }, + { + "attribute": "reports", + "readOnly": false + }, + { + "attribute": "effectiveRoles", + "readOnly": false + }, + { + "attribute": "effectiveAssignments", + "readOnly": false + }, + { + "attribute": "effectiveGroups", + "readOnly": false + }, + { + "attribute": "lastSync", + "readOnly": false + }, + { + "attribute": "kbaInfo", + "readOnly": false + }, + { + "attribute": "preferences", + "readOnly": false + }, + { + "attribute": "consentedMappings", + "readOnly": false + }, + { + "attribute": "memberOfOrg", + "readOnly": false + }, + { + "attribute": "adminOfOrg", + "readOnly": true + }, + { + "attribute": "ownerOfOrg", + "readOnly": true + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/memberOfOrg/0 pr and !(/adminOfOrg pr) and !(/ownerOfOrg pr)", + "name": "admin-create-members", + "path": "managed/alpha_user", + "permissions": [ + "CREATE" + ] + } + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/audit.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/audit.idm.json new file mode 100644 index 000000000..edeb5816e --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/audit.idm.json @@ -0,0 +1,104 @@ +{ + "idm": { + "audit": { + "_id": "audit", + "auditServiceConfig": { + "availableAuditEventHandlers": [ + "org.forgerock.audit.handlers.csv.CsvAuditEventHandler", + "org.forgerock.audit.handlers.jms.JmsAuditEventHandler", + "org.forgerock.audit.handlers.json.JsonAuditEventHandler", + "org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler", + "org.forgerock.openidm.audit.impl.RepositoryAuditEventHandler", + "org.forgerock.openidm.audit.impl.RouterAuditEventHandler", + "org.forgerock.audit.handlers.syslog.SyslogAuditEventHandler" + ], + "caseInsensitiveFields": [ + "/access/http/request/headers", + "/access/http/response/headers" + ], + "filterPolicies": { + "value": { + "excludeIf": [ + "/access/http/request/cookies/&{com.iplanet.am.cookie.name}", + "/access/http/request/cookies/session-jwt", + "/access/http/request/headers/&{com.sun.identity.auth.cookieName}", + "/access/http/request/headers/&{com.iplanet.am.cookie.name}", + "/access/http/request/headers/accept-encoding", + "/access/http/request/headers/accept-language", + "/access/http/request/headers/Authorization", + "/access/http/request/headers/cache-control", + "/access/http/request/headers/connection", + "/access/http/request/headers/content-length", + "/access/http/request/headers/content-type", + "/access/http/request/headers/proxy-authorization", + "/access/http/request/headers/X-OpenAM-Password", + "/access/http/request/headers/X-OpenIDM-Password", + "/access/http/request/queryParameters/access_token", + "/access/http/request/queryParameters/IDToken1", + "/access/http/request/queryParameters/id_token_hint", + "/access/http/request/queryParameters/Login.Token1", + "/access/http/request/queryParameters/redirect_uri", + "/access/http/request/queryParameters/requester", + "/access/http/request/queryParameters/sessionUpgradeSSOTokenId", + "/access/http/request/queryParameters/tokenId", + "/access/http/response/headers/Authorization", + "/access/http/response/headers/Set-Cookie", + "/access/http/response/headers/X-OpenIDM-Password" + ], + "includeIf": [] + } + }, + "handlerForQueries": "json" + }, + "eventHandlers": [ + { + "class": "org.forgerock.audit.handlers.json.stdout.JsonStdoutAuditEventHandler", + "config": { + "name": "json", + "topics": [ + "access", + "activity", + "sync", + "authentication", + "config" + ] + } + } + ], + "eventTopics": { + "activity": { + "filter": { + "actions": [ + "create", + "update", + "delete", + "patch", + "action" + ] + }, + "passwordFields": [ + "password" + ], + "watchedFields": [ + "*" + ] + }, + "config": { + "filter": { + "actions": [ + "create", + "update", + "delete", + "patch", + "action" + ] + } + } + }, + "exceptionFormatter": { + "file": "bin/defaults/script/audit/stacktraceFormatter.js", + "type": "text/javascript" + } + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/authentication.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/authentication.idm.json new file mode 100644 index 000000000..287fbf2d4 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/authentication.idm.json @@ -0,0 +1,36 @@ +{ + "idm": { + "authentication": { + "_id": "authentication", + "rsFilter": { + "augmentSecurityContext": { + "source": "file://authentication.idm.scripts/rsFilter.augmentSecurityContext.script.js", + "type": "text/javascript" + }, + "cache": { + "maxTimeout": "300 seconds" + }, + "scopes": [ + "fr:idm:*" + ], + "staticUserMapping": [], + "subjectMapping": [ + { + "additionalUserFields": [ + "adminOfOrg", + "ownerOfOrg" + ], + "defaultRoles": [ + "internal/role/openidm-authorized" + ], + "propertyMapping": { + "sub": "_id" + }, + "queryOnResource": "managed/{{substring realm 1}}_user", + "userRoles": "authzRoles/*" + } + ] + } + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/authentication.idm.scripts/rsFilter.augmentSecurityContext.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/authentication.idm.scripts/rsFilter.augmentSecurityContext.script.js new file mode 100644 index 000000000..0e72af277 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/authentication.idm.scripts/rsFilter.augmentSecurityContext.script.js @@ -0,0 +1 @@ +require('auth/orgPrivileges').assignPrivilegesToUser(resource, security, properties, subjectMapping, privileges, security.authorization.component.includes('/alpha_') ? 'alphaOrgPrivileges' : 'bravoOrgPrivileges', 'privilegeAssignments'); diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/bravoOrgPrivileges.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/bravoOrgPrivileges.idm.json new file mode 100644 index 000000000..3e5f74445 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/bravoOrgPrivileges.idm.json @@ -0,0 +1,761 @@ +{ + "idm": { + "bravoOrgPrivileges": { + "_id": "bravoOrgPrivileges", + "privileges": [ + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "owners", + "readOnly": true + }, + { + "attribute": "admins", + "readOnly": false + }, + { + "attribute": "members", + "readOnly": false + }, + { + "attribute": "parent", + "readOnly": false + }, + { + "attribute": "children", + "readOnly": false + }, + { + "attribute": "parentIDs", + "readOnly": true + }, + { + "attribute": "adminIDs", + "readOnly": true + }, + { + "attribute": "parentAdminIDs", + "readOnly": true + }, + { + "attribute": "ownerIDs", + "readOnly": true + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/ownerIDs eq \"{{_id}}\" or /parentOwnerIDs eq \"{{_id}}\"", + "name": "owner-view-update-delete-orgs", + "path": "managed/bravo_organization", + "permissions": [ + "VIEW", + "UPDATE", + "DELETE" + ] + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "owners", + "readOnly": true + }, + { + "attribute": "admins", + "readOnly": false + }, + { + "attribute": "members", + "readOnly": false + }, + { + "attribute": "parent", + "readOnly": false + }, + { + "attribute": "children", + "readOnly": false + }, + { + "attribute": "parentIDs", + "readOnly": true + }, + { + "attribute": "adminIDs", + "readOnly": true + }, + { + "attribute": "parentAdminIDs", + "readOnly": true + }, + { + "attribute": "ownerIDs", + "readOnly": true + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/parent pr", + "name": "owner-create-orgs", + "path": "managed/bravo_organization", + "permissions": [ + "CREATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false + }, + { + "attribute": "password", + "readOnly": false + }, + { + "attribute": "givenName", + "readOnly": false + }, + { + "attribute": "sn", + "readOnly": false + }, + { + "attribute": "mail", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "accountStatus", + "readOnly": false + }, + { + "attribute": "telephoneNumber", + "readOnly": false + }, + { + "attribute": "postalAddress", + "readOnly": false + }, + { + "attribute": "city", + "readOnly": false + }, + { + "attribute": "postalCode", + "readOnly": false + }, + { + "attribute": "country", + "readOnly": false + }, + { + "attribute": "stateProvince", + "readOnly": false + }, + { + "attribute": "roles", + "readOnly": false + }, + { + "attribute": "groups", + "readOnly": false + }, + { + "attribute": "manager", + "readOnly": false + }, + { + "attribute": "authzRoles", + "readOnly": false + }, + { + "attribute": "reports", + "readOnly": false + }, + { + "attribute": "effectiveRoles", + "readOnly": false + }, + { + "attribute": "effectiveAssignments", + "readOnly": false + }, + { + "attribute": "effectiveGroups", + "readOnly": false + }, + { + "attribute": "lastSync", + "readOnly": false + }, + { + "attribute": "kbaInfo", + "readOnly": false + }, + { + "attribute": "preferences", + "readOnly": false + }, + { + "attribute": "consentedMappings", + "readOnly": false + }, + { + "attribute": "memberOfOrg", + "readOnly": false + }, + { + "attribute": "adminOfOrg", + "readOnly": false + }, + { + "attribute": "ownerOfOrg", + "readOnly": true + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/memberOfOrgIDs eq \"__org_id_placeholder__\"", + "name": "owner-view-update-delete-admins-and-members", + "path": "managed/bravo_user", + "permissions": [ + "VIEW", + "DELETE", + "UPDATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false + }, + { + "attribute": "password", + "readOnly": false + }, + { + "attribute": "givenName", + "readOnly": false + }, + { + "attribute": "sn", + "readOnly": false + }, + { + "attribute": "mail", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "accountStatus", + "readOnly": false + }, + { + "attribute": "telephoneNumber", + "readOnly": false + }, + { + "attribute": "postalAddress", + "readOnly": false + }, + { + "attribute": "city", + "readOnly": false + }, + { + "attribute": "postalCode", + "readOnly": false + }, + { + "attribute": "country", + "readOnly": false + }, + { + "attribute": "stateProvince", + "readOnly": false + }, + { + "attribute": "roles", + "readOnly": false + }, + { + "attribute": "groups", + "readOnly": false + }, + { + "attribute": "manager", + "readOnly": false + }, + { + "attribute": "authzRoles", + "readOnly": false + }, + { + "attribute": "reports", + "readOnly": false + }, + { + "attribute": "effectiveRoles", + "readOnly": false + }, + { + "attribute": "effectiveAssignments", + "readOnly": false + }, + { + "attribute": "effectiveGroups", + "readOnly": false + }, + { + "attribute": "lastSync", + "readOnly": false + }, + { + "attribute": "kbaInfo", + "readOnly": false + }, + { + "attribute": "preferences", + "readOnly": false + }, + { + "attribute": "consentedMappings", + "readOnly": false + }, + { + "attribute": "memberOfOrg", + "readOnly": false + }, + { + "attribute": "adminOfOrg", + "readOnly": false + }, + { + "attribute": "ownerOfOrg", + "readOnly": true + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/memberOfOrg/0 pr and /adminOfOrg/0 pr and !(/ownerOfOrg pr)", + "name": "owner-create-admins", + "path": "managed/bravo_user", + "permissions": [ + "CREATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "owners", + "readOnly": true + }, + { + "attribute": "admins", + "readOnly": true + }, + { + "attribute": "members", + "readOnly": false + }, + { + "attribute": "parent", + "readOnly": false + }, + { + "attribute": "children", + "readOnly": false + }, + { + "attribute": "parentIDs", + "readOnly": true + }, + { + "attribute": "adminIDs", + "readOnly": true + }, + { + "attribute": "parentAdminIDs", + "readOnly": true + }, + { + "attribute": "ownerIDs", + "readOnly": true + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/adminIDs eq \"{{_id}}\" or /parentAdminIDs eq \"{{_id}}\"", + "name": "admin-view-update-delete-orgs", + "path": "managed/bravo_organization", + "permissions": [ + "VIEW", + "UPDATE", + "DELETE" + ] + }, + { + "accessFlags": [ + { + "attribute": "name", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "owners", + "readOnly": true + }, + { + "attribute": "admins", + "readOnly": true + }, + { + "attribute": "members", + "readOnly": false + }, + { + "attribute": "parent", + "readOnly": false + }, + { + "attribute": "children", + "readOnly": false + }, + { + "attribute": "parentIDs", + "readOnly": true + }, + { + "attribute": "adminIDs", + "readOnly": true + }, + { + "attribute": "parentAdminIDs", + "readOnly": true + }, + { + "attribute": "ownerIDs", + "readOnly": true + }, + { + "attribute": "parentOwnerIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/parent pr", + "name": "admin-create-orgs", + "path": "managed/bravo_organization", + "permissions": [ + "CREATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false + }, + { + "attribute": "password", + "readOnly": false + }, + { + "attribute": "givenName", + "readOnly": false + }, + { + "attribute": "sn", + "readOnly": false + }, + { + "attribute": "mail", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "accountStatus", + "readOnly": false + }, + { + "attribute": "telephoneNumber", + "readOnly": false + }, + { + "attribute": "postalAddress", + "readOnly": false + }, + { + "attribute": "city", + "readOnly": false + }, + { + "attribute": "postalCode", + "readOnly": false + }, + { + "attribute": "country", + "readOnly": false + }, + { + "attribute": "stateProvince", + "readOnly": false + }, + { + "attribute": "roles", + "readOnly": false + }, + { + "attribute": "groups", + "readOnly": false + }, + { + "attribute": "manager", + "readOnly": false + }, + { + "attribute": "authzRoles", + "readOnly": false + }, + { + "attribute": "reports", + "readOnly": false + }, + { + "attribute": "effectiveRoles", + "readOnly": false + }, + { + "attribute": "effectiveAssignments", + "readOnly": false + }, + { + "attribute": "effectiveGroups", + "readOnly": false + }, + { + "attribute": "lastSync", + "readOnly": false + }, + { + "attribute": "kbaInfo", + "readOnly": false + }, + { + "attribute": "preferences", + "readOnly": false + }, + { + "attribute": "consentedMappings", + "readOnly": false + }, + { + "attribute": "memberOfOrg", + "readOnly": false + }, + { + "attribute": "adminOfOrg", + "readOnly": true + }, + { + "attribute": "ownerOfOrg", + "readOnly": true + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/memberOfOrgIDs eq \"__org_id_placeholder__\"", + "name": "admin-view-update-delete-members", + "path": "managed/bravo_user", + "permissions": [ + "VIEW", + "DELETE", + "UPDATE" + ] + }, + { + "accessFlags": [ + { + "attribute": "userName", + "readOnly": false + }, + { + "attribute": "password", + "readOnly": false + }, + { + "attribute": "givenName", + "readOnly": false + }, + { + "attribute": "sn", + "readOnly": false + }, + { + "attribute": "mail", + "readOnly": false + }, + { + "attribute": "description", + "readOnly": false + }, + { + "attribute": "accountStatus", + "readOnly": false + }, + { + "attribute": "telephoneNumber", + "readOnly": false + }, + { + "attribute": "postalAddress", + "readOnly": false + }, + { + "attribute": "city", + "readOnly": false + }, + { + "attribute": "postalCode", + "readOnly": false + }, + { + "attribute": "country", + "readOnly": false + }, + { + "attribute": "stateProvince", + "readOnly": false + }, + { + "attribute": "roles", + "readOnly": false + }, + { + "attribute": "groups", + "readOnly": false + }, + { + "attribute": "manager", + "readOnly": false + }, + { + "attribute": "authzRoles", + "readOnly": false + }, + { + "attribute": "reports", + "readOnly": false + }, + { + "attribute": "effectiveRoles", + "readOnly": false + }, + { + "attribute": "effectiveAssignments", + "readOnly": false + }, + { + "attribute": "effectiveGroups", + "readOnly": false + }, + { + "attribute": "lastSync", + "readOnly": false + }, + { + "attribute": "kbaInfo", + "readOnly": false + }, + { + "attribute": "preferences", + "readOnly": false + }, + { + "attribute": "consentedMappings", + "readOnly": false + }, + { + "attribute": "memberOfOrg", + "readOnly": false + }, + { + "attribute": "adminOfOrg", + "readOnly": true + }, + { + "attribute": "ownerOfOrg", + "readOnly": true + }, + { + "attribute": "memberOfOrgIDs", + "readOnly": true + } + ], + "actions": [], + "filter": "/memberOfOrg/0 pr and !(/adminOfOrg pr) and !(/ownerOfOrg pr)", + "name": "admin-create-members", + "path": "managed/bravo_user", + "permissions": [ + "CREATE" + ] + } + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/endpoint/extractscripttest.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/endpoint/extractscripttest.idm.json new file mode 100644 index 000000000..fabe03e4e --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/endpoint/extractscripttest.idm.json @@ -0,0 +1,11 @@ +{ + "idm": { + "endpoint/extractscripttest": { + "_id": "endpoint/extractscripttest", + "description": "", + "globalsObject": "\" {\\n \\\"request\\\": {\\n \\\"method\\\": \\\"create\\\"\\n }\\n }\"", + "source": "file://extractscripttest.script.js", + "type": "text/javascript" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/endpoint/extractscripttest.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/endpoint/extractscripttest.script.js new file mode 100644 index 000000000..a03302ff8 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/endpoint/extractscripttest.script.js @@ -0,0 +1,3 @@ +//extract idm script test + +//test diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/external.email.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/external.email.idm.json new file mode 100644 index 000000000..deed194ac --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/external.email.idm.json @@ -0,0 +1,27 @@ +{ + "idm": { + "external.email": { + "_id": "external.email", + "auth": { + "enable": true, + "password": "&{aic.customer.sasl.pass}", + "username": "&{aic.customer.sasl.user|donotuse@pingidentity.com}" + }, + "connectiontimeout": 300000, + "debug": false, + "from": "&{email.sender.address}", + "host": "&{aic.smtp.relay.host|smtp-relay.fr-platform.svc.cluster.local}", + "port": 25, + "smtpProperties": [], + "ssl": { + "enable": false + }, + "starttls": { + "enable": false + }, + "threadPoolSize": 20, + "timeout": 300000, + "writetimeout": 300000 + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/external.emailDefault.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/external.emailDefault.idm.json new file mode 100644 index 000000000..3a3c214a0 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/external.emailDefault.idm.json @@ -0,0 +1,27 @@ +{ + "idm": { + "external.emailDefault": { + "_id": "external.emailDefault", + "auth": { + "enable": true, + "password": "&{aic.customer.sasl.pass}", + "username": "&{aic.customer.sasl.user|donotuse@pingidentity.com}" + }, + "connectiontimeout": 300000, + "debug": false, + "from": "&{email.sender.address}", + "host": "&{aic.smtp.relay.host|smtp-relay.fr-platform.svc.cluster.local}", + "port": 25, + "smtpProperties": [], + "ssl": { + "enable": false + }, + "starttls": { + "enable": false + }, + "threadPoolSize": 20, + "timeout": 300000, + "writetimeout": 300000 + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/fieldPolicy/alpha_user.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/fieldPolicy/alpha_user.idm.json new file mode 100644 index 000000000..4ae5fba3c --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/fieldPolicy/alpha_user.idm.json @@ -0,0 +1,50 @@ +{ + "idm": { + "fieldPolicy/alpha_user": { + "_id": "fieldPolicy/alpha_user", + "defaultPasswordStorageScheme": [ + { + "_id": "PBKDF2-HMAC-SHA256" + } + ], + "passwordAttribute": "password", + "resourceCollection": "managed/alpha_user", + "type": "password-policy", + "validator": [ + { + "_id": "alpha_userPasswordPolicy-length-based-password-validator", + "enabled": true, + "maxPasswordLength": 0, + "minPasswordLength": 8, + "type": "length-based" + }, + { + "_id": "alpha_userPasswordPolicy-attribute-value-password-validator", + "checkSubstrings": true, + "enabled": true, + "matchAttribute": [ + "userName", + "givenName", + "sn" + ], + "minSubstringLength": 5, + "testReversedPassword": true, + "type": "attribute-value" + }, + { + "_id": "alpha_userPasswordPolicy-character-set-password-validator", + "allowUnclassifiedCharacters": true, + "characterSet": [ + "0:abcdefghijklmnopqrstuvwxyz", + "0:ABCDEFGHIJKLMNOPQRSTUVWXYZ", + "0:0123456789", + "0:~!@#$%^&*()-_=+[]{}|;:,.<>/?\"'\\`" + ], + "enabled": true, + "minCharacterSets": 4, + "type": "character-set" + } + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/fieldPolicy/bravo_user.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/fieldPolicy/bravo_user.idm.json new file mode 100644 index 000000000..b1a893ca7 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/fieldPolicy/bravo_user.idm.json @@ -0,0 +1,50 @@ +{ + "idm": { + "fieldPolicy/bravo_user": { + "_id": "fieldPolicy/bravo_user", + "defaultPasswordStorageScheme": [ + { + "_id": "PBKDF2-HMAC-SHA256" + } + ], + "passwordAttribute": "password", + "resourceCollection": "managed/bravo_user", + "type": "password-policy", + "validator": [ + { + "_id": "bravo_userPasswordPolicy-length-based-password-validator", + "enabled": true, + "maxPasswordLength": 0, + "minPasswordLength": 8, + "type": "length-based" + }, + { + "_id": "bravo_userPasswordPolicy-attribute-value-password-validator", + "checkSubstrings": true, + "enabled": true, + "matchAttribute": [ + "mail", + "userName", + "givenName", + "sn" + ], + "minSubstringLength": 5, + "testReversedPassword": true, + "type": "attribute-value" + }, + { + "_id": "bravo_userPasswordPolicy-character-set-password-validator", + "allowUnclassifiedCharacters": true, + "characterSet": [ + "1:abcdefghijklmnopqrstuvwxyz", + "1:ABCDEFGHIJKLMNOPQRSTUVWXYZ", + "1:0123456789", + "1:~!@#$%^&*()-_=+[]{}|;:,.<>/?\"'\\`" + ], + "enabled": true, + "type": "character-set" + } + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/internal.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/internal.idm.json new file mode 100644 index 000000000..4419c6726 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/internal.idm.json @@ -0,0 +1,34 @@ +{ + "idm": { + "internal": { + "_id": "internal", + "objects": [ + { + "name": "role", + "properties": { + "authzMembers": { + "items": { + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ] + } + } + } + } + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_application.managed.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_application.managed.json new file mode 100644 index 000000000..620ae1d40 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_application.managed.json @@ -0,0 +1,335 @@ +{ + "name": "alpha_application", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "Application Object", + "icon": "fa-folder", + "order": [ + "name", + "description", + "url", + "icon", + "mappingNames", + "owners", + "roles", + "members" + ], + "properties": { + "_id": { + "description": "Application ID", + "isPersonal": false, + "searchable": false, + "type": "string", + "userEditable": false, + "viewable": false + }, + "authoritative": { + "description": "Is this an authoritative application", + "searchable": false, + "title": "Authoritative", + "type": "boolean", + "viewable": false + }, + "connectorId": { + "description": "Id of the connector associated with the application", + "searchable": false, + "title": "Connector ID", + "type": "string", + "userEditable": false, + "viewable": false + }, + "description": { + "description": "Application Description", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true + }, + "icon": { + "searchable": true, + "title": "Icon", + "type": "string", + "userEditable": true, + "viewable": true + }, + "mappingNames": { + "description": "Names of the sync mappings used by an application with provisioning configured.", + "items": { + "title": "Mapping Name Items", + "type": "string" + }, + "searchable": true, + "title": "Sync Mapping Names", + "type": "array", + "viewable": true + }, + "members": { + "description": "Application Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Application:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string" + }, + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + }, + "_uniqueId": { + "description": "Unique identifier", + "type": "string" + } + }, + "title": "Group Members Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "notify": true, + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "applications", + "reverseRelationship": true, + "title": "Group Members Items", + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Members", + "type": "array", + "userEditable": false, + "viewable": true + }, + "name": { + "description": "Application name", + "notifyRelationships": [ + "roles", + "members" + ], + "policies": [ + { + "policyId": "unique" + } + ], + "returnByDefault": true, + "searchable": true, + "title": "Name", + "type": "string", + "userEditable": true, + "viewable": true + }, + "owners": { + "description": "Application Owners", + "items": { + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Application _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "ownerOfApp", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "searchable": false, + "title": "Owners", + "type": "array", + "userEditable": false, + "viewable": true + }, + "roles": { + "description": "Roles granting users the application", + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_accountType": { + "description": "Account type", + "type": "string" + }, + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Role", + "notify": true, + "path": "managed/alpha_role", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "applications", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "searchable": false, + "title": "Roles", + "type": "array", + "userEditable": false, + "viewable": true + }, + "ssoEntities": { + "description": "SSO Entity Id", + "properties": { + "domain": { + "type": "string" + }, + "federatedDomain": { + "type": "string" + }, + "idpLocation": { + "type": "string" + }, + "idpLoginUrl": { + "type": "string" + }, + "idpPrivateId": { + "type": "string" + }, + "key": { + "type": "string" + }, + "oidcId": { + "type": "string" + }, + "pfApcId": { + "type": "string" + }, + "pfIdpAdapterId": { + "type": "string" + }, + "pfPolicyId": { + "type": "string" + }, + "pfSigningCertId": { + "type": "string" + }, + "pfSpConnectionId": { + "type": "string" + }, + "spLocation": { + "type": "string" + }, + "spPrivate": { + "type": "string" + }, + "spPrivateId": { + "type": "string" + } + }, + "searchable": false, + "title": "SSO Entity Id", + "type": "object", + "userEditable": false, + "viewable": false + }, + "templateName": { + "description": "Name of the template the application was created from", + "searchable": false, + "title": "Template Name", + "type": "string", + "userEditable": false, + "viewable": false + }, + "templateVersion": { + "description": "The template version", + "searchable": false, + "title": "Template Version", + "type": "string", + "userEditable": false, + "viewable": false + }, + "uiConfig": { + "description": "UI Config", + "isPersonal": false, + "properties": {}, + "searchable": false, + "title": "UI Config", + "type": "object", + "usageDescription": "", + "viewable": false + }, + "url": { + "searchable": true, + "title": "Url", + "type": "string", + "userEditable": true, + "viewable": true + } + }, + "required": [ + "name" + ], + "title": "Alpha realm - Application", + "type": "object" + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_assignment.managed.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_assignment.managed.json new file mode 100644 index 000000000..9aa8ef9dd --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_assignment.managed.json @@ -0,0 +1,254 @@ +{ + "attributeEncryption": {}, + "name": "alpha_assignment", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "A role assignment", + "icon": "fa-key", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment", + "mat-icon": "vpn_key", + "order": [ + "_id", + "name", + "description", + "type", + "mapping", + "attributes", + "linkQualifiers", + "roles", + "members", + "condition", + "weight" + ], + "properties": { + "_id": { + "description": "The assignment ID", + "searchable": false, + "title": "Name", + "type": "string", + "viewable": false + }, + "attributes": { + "description": "The attributes operated on by this assignment.", + "items": { + "order": [ + "assignmentOperation", + "unassignmentOperation", + "name", + "value" + ], + "properties": { + "assignmentOperation": { + "description": "Assignment operation", + "type": "string" + }, + "name": { + "description": "Name", + "type": "string" + }, + "unassignmentOperation": { + "description": "Unassignment operation", + "type": "string" + }, + "value": { + "description": "Value", + "type": "string" + } + }, + "required": [], + "title": "Assignment Attributes Items", + "type": "object" + }, + "notifyRelationships": [ + "roles", + "members" + ], + "title": "Assignment Attributes", + "type": "array", + "viewable": true + }, + "condition": { + "description": "A conditional filter for this assignment", + "isConditional": true, + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false + }, + "description": { + "description": "The assignment description, used for display purposes.", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true + }, + "linkQualifiers": { + "description": "Conditional link qualifiers to restrict this assignment to.", + "items": { + "title": "Link Qualifiers Items", + "type": "string" + }, + "title": "Link Qualifiers", + "type": "array", + "viewable": true + }, + "mapping": { + "description": "The name of the mapping this assignment applies to", + "policies": [ + { + "policyId": "mapping-exists" + } + ], + "searchable": true, + "title": "Mapping", + "type": "string", + "viewable": true + }, + "members": { + "description": "Assignment Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string" + }, + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + }, + "_uniqueId": { + "description": "Unique identifier", + "type": "string" + } + }, + "title": "Assignment Members Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "assignments", + "reverseRelationship": true, + "title": "Assignment Members Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Assignment Members", + "type": "array", + "viewable": true + }, + "name": { + "description": "The assignment name, used for display purposes.", + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true + }, + "roles": { + "description": "Managed Roles", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Managed Roles Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Role", + "notify": true, + "path": "managed/alpha_role", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "assignments", + "reverseRelationship": true, + "title": "Managed Roles Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Managed Roles", + "type": "array", + "userEditable": false, + "viewable": true + }, + "type": { + "description": "The type of object this assignment represents", + "title": "Type", + "type": "string", + "viewable": true + }, + "weight": { + "description": "The weight of the assignment.", + "notifyRelationships": [ + "roles", + "members" + ], + "searchable": false, + "title": "Weight", + "type": [ + "number", + "null" + ], + "viewable": true + } + }, + "required": [ + "name", + "description", + "mapping" + ], + "title": "Alpha realm - Assignment", + "type": "object" + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_group.managed.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_group.managed.json new file mode 100644 index 000000000..0c38caf28 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_group.managed.json @@ -0,0 +1,137 @@ +{ + "name": "alpha_group", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "icon": "fa-group", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Group", + "mat-icon": "group", + "order": [ + "_id", + "name", + "description", + "condition", + "members" + ], + "properties": { + "_id": { + "description": "Group ID", + "isPersonal": false, + "policies": [ + { + "params": { + "propertyName": "name" + }, + "policyId": "id-must-equal-property" + } + ], + "searchable": false, + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": false + }, + "condition": { + "description": "A filter for conditionally assigned members", + "isConditional": true, + "policies": [ + { + "policyId": "valid-query-filter" + } + ], + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false + }, + "description": { + "description": "Group Description", + "searchable": true, + "title": "Description", + "type": "string", + "userEditable": false, + "viewable": true + }, + "members": { + "description": "Group Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Group:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Group Members Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "groups", + "reverseRelationship": true, + "title": "Group Members Items", + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Members", + "type": "array", + "userEditable": false, + "viewable": true + }, + "name": { + "description": "Group Name", + "policies": [ + { + "policyId": "required" + }, + { + "params": { + "forbiddenChars": [ + "/*" + ] + }, + "policyId": "cannot-contain-characters" + } + ], + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true + } + }, + "required": [ + "name" + ], + "title": "Alpha realm - Group", + "viewable": true + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_organization.managed.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_organization.managed.json new file mode 100644 index 000000000..654595c3b --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_organization.managed.json @@ -0,0 +1,395 @@ +{ + "name": "alpha_organization", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "An organization or tenant, whose resources are managed by organizational admins.", + "icon": "fa-building", + "mat-icon": "domain", + "order": [ + "name", + "description", + "owners", + "admins", + "members", + "parent", + "children", + "adminIDs", + "ownerIDs", + "parentAdminIDs", + "parentOwnerIDs", + "parentIDs" + ], + "properties": { + "adminIDs": { + "isVirtual": true, + "items": { + "title": "admin ids", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id" + ], + "referencedRelationshipFields": [ + "admins" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "Admin user ids", + "type": "array", + "userEditable": false, + "viewable": false + }, + "admins": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "notify": false, + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "adminOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "notifyRelationships": [ + "children" + ], + "returnByDefault": false, + "searchable": false, + "title": "Administrators", + "type": "array", + "userEditable": false, + "viewable": true + }, + "children": { + "description": "Child Organizations", + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/alpha_organization", + "query": { + "fields": [ + "name", + "description" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "parent", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Child Organizations", + "type": "array", + "userEditable": false, + "viewable": false + }, + "description": { + "searchable": true, + "title": "Description", + "type": "string", + "userEditable": true, + "viewable": true + }, + "members": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "notify": true, + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "memberOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "searchable": false, + "title": "Members", + "type": "array", + "userEditable": false, + "viewable": true + }, + "name": { + "searchable": true, + "title": "Name", + "type": "string", + "userEditable": true, + "viewable": true + }, + "ownerIDs": { + "isVirtual": true, + "items": { + "title": "owner ids", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id" + ], + "referencedRelationshipFields": [ + "owners" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "Owner user ids", + "type": "array", + "userEditable": false, + "viewable": false + }, + "owners": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "notify": false, + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "ownerOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "notifyRelationships": [ + "children" + ], + "returnByDefault": false, + "searchable": false, + "title": "Owner", + "type": "array", + "userEditable": false, + "viewable": true + }, + "parent": { + "description": "Parent Organization", + "notifyRelationships": [ + "children", + "members" + ], + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/alpha_organization", + "query": { + "fields": [ + "name", + "description" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "returnByDefault": false, + "reversePropertyName": "children", + "reverseRelationship": true, + "searchable": false, + "title": "Parent Organization", + "type": "relationship", + "userEditable": false, + "validate": true, + "viewable": true + }, + "parentAdminIDs": { + "isVirtual": true, + "items": { + "title": "user ids of parent admins", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "adminIDs", + "parentAdminIDs" + ], + "referencedRelationshipFields": [ + "parent" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent admins", + "type": "array", + "userEditable": false, + "viewable": false + }, + "parentIDs": { + "isVirtual": true, + "items": { + "title": "parent org ids", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs" + ], + "referencedRelationshipFields": [ + "parent" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "parent org ids", + "type": "array", + "userEditable": false, + "viewable": false + }, + "parentOwnerIDs": { + "isVirtual": true, + "items": { + "title": "user ids of parent owners", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "ownerIDs", + "parentOwnerIDs" + ], + "referencedRelationshipFields": [ + "parent" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent owners", + "type": "array", + "userEditable": false, + "viewable": false + } + }, + "required": [ + "name" + ], + "title": "Alpha realm - Organization", + "type": "object" + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_role.managed.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_role.managed.json new file mode 100644 index 000000000..564429a2e --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_role.managed.json @@ -0,0 +1,247 @@ +{ + "name": "alpha_role", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "", + "icon": "fa-check-square-o", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role", + "mat-icon": "assignment_ind", + "order": [ + "_id", + "name", + "description", + "members", + "assignments", + "applications", + "condition", + "temporalConstraints" + ], + "properties": { + "_id": { + "description": "Role ID", + "searchable": false, + "title": "Name", + "type": "string", + "viewable": false + }, + "applications": { + "description": "Role Applications", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:applications:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Role Application Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Application", + "path": "managed/alpha_application", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Role Application Items", + "type": "relationship", + "validate": true + }, + "notifyRelationships": [ + "members" + ], + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Applications", + "type": "array", + "viewable": false + }, + "assignments": { + "description": "Managed Assignments", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Managed Assignments Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Assignment", + "path": "managed/alpha_assignment", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Managed Assignments Items", + "type": "relationship", + "validate": true + }, + "notifyRelationships": [ + "members" + ], + "returnByDefault": false, + "title": "Managed Assignments", + "type": "array", + "viewable": true + }, + "condition": { + "description": "A conditional filter for this role", + "isConditional": true, + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false + }, + "description": { + "description": "The role description, used for display purposes.", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true + }, + "members": { + "description": "Role Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Role Members Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Role Members Items", + "type": "relationship", + "validate": true + }, + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Role Members", + "type": "array", + "viewable": true + }, + "name": { + "description": "The role name, used for display purposes.", + "policies": [ + { + "policyId": "unique" + } + ], + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true + }, + "temporalConstraints": { + "description": "An array of temporal constraints for a role", + "isTemporalConstraint": true, + "items": { + "order": [ + "duration" + ], + "properties": { + "duration": { + "description": "Duration", + "type": "string" + } + }, + "required": [ + "duration" + ], + "title": "Temporal Constraints Items", + "type": "object" + }, + "notifyRelationships": [ + "members" + ], + "returnByDefault": true, + "title": "Temporal Constraints", + "type": "array", + "viewable": false + } + }, + "required": [ + "name" + ], + "title": "Alpha realm - Role", + "type": "object" + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_user.managed.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_user.managed.json new file mode 100644 index 000000000..9b5cf6277 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_user.managed.json @@ -0,0 +1,1818 @@ +{ + "lastSync": { + "effectiveAssignmentsProperty": "effectiveAssignments", + "lastSyncProperty": "lastSync" + }, + "name": "alpha_user", + "notifications": {}, + "onCreate": { + "globals": {}, + "source": "file://alpha_user.managed.scripts/onCreate.script.js", + "type": "text/javascript" + }, + "schema": { + "$schema": "http://json-schema.org/draft-03/schema", + "icon": "fa-user", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User", + "mat-icon": "people", + "order": [ + "_id", + "userName", + "password", + "givenName", + "cn", + "sn", + "mail", + "profileImage", + "description", + "accountStatus", + "telephoneNumber", + "postalAddress", + "city", + "postalCode", + "country", + "stateProvince", + "roles", + "assignments", + "groups", + "applications", + "manager", + "authzRoles", + "reports", + "effectiveRoles", + "effectiveAssignments", + "effectiveGroups", + "effectiveApplications", + "lastSync", + "kbaInfo", + "preferences", + "consentedMappings", + "ownerOfOrg", + "adminOfOrg", + "memberOfOrg", + "memberOfOrgIDs", + "ownerOfApp", + "passwordLastChangedTime", + "passwordExpirationTime", + "frIndexedString1", + "frIndexedString2", + "frIndexedString3", + "frIndexedString4", + "frIndexedString5", + "frIndexedString6", + "frIndexedString7", + "frIndexedString8", + "frIndexedString9", + "frIndexedString10", + "frIndexedString11", + "frIndexedString12", + "frIndexedString13", + "frIndexedString14", + "frIndexedString15", + "frIndexedString16", + "frIndexedString17", + "frIndexedString18", + "frIndexedString19", + "frIndexedString20", + "frUnindexedString1", + "frUnindexedString2", + "frUnindexedString3", + "frUnindexedString4", + "frUnindexedString5", + "frIndexedMultivalued1", + "frIndexedMultivalued2", + "frIndexedMultivalued3", + "frIndexedMultivalued4", + "frIndexedMultivalued5", + "frUnindexedMultivalued1", + "frUnindexedMultivalued2", + "frUnindexedMultivalued3", + "frUnindexedMultivalued4", + "frUnindexedMultivalued5", + "frIndexedDate1", + "frIndexedDate2", + "frIndexedDate3", + "frIndexedDate4", + "frIndexedDate5", + "frUnindexedDate1", + "frUnindexedDate2", + "frUnindexedDate3", + "frUnindexedDate4", + "frUnindexedDate5", + "frIndexedInteger1", + "frIndexedInteger2", + "frIndexedInteger3", + "frIndexedInteger4", + "frIndexedInteger5", + "frUnindexedInteger1", + "frUnindexedInteger2", + "frUnindexedInteger3", + "frUnindexedInteger4", + "frUnindexedInteger5", + "assignedDashboard", + "devicePrintProfiles", + "deviceProfiles", + "oathDeviceProfiles", + "pushDeviceProfiles", + "webauthnDeviceProfiles" + ], + "properties": { + "_id": { + "description": "User ID", + "isPersonal": false, + "policies": [ + { + "params": { + "forbiddenChars": [ + "/" + ] + }, + "policyId": "cannot-contain-characters" + } + ], + "searchable": false, + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": false + }, + "accountStatus": { + "default": "active", + "description": "Status", + "isPersonal": false, + "searchable": false, + "title": "Status", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "adminOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/alpha_organization", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "admins", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Administer", + "type": "array", + "userEditable": false, + "viewable": true + }, + "aliasList": { + "description": "List of identity aliases used primarily to record social IdP subjects for this user", + "isVirtual": false, + "items": { + "title": "User Alias Names Items", + "type": "string" + }, + "returnByDefault": false, + "searchable": false, + "title": "User Alias Names List", + "type": "array", + "userEditable": true, + "viewable": false + }, + "applications": { + "description": "Applications", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:applications", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:applications:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + }, + "_uniqueId": { + "description": "Unique identifier", + "type": "string" + } + }, + "title": "Groups Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Application", + "path": "managed/alpha_application", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true", + "sortKeys": [ + "name" + ] + } + } + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Groups Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Applications", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": false + }, + "assignedDashboard": { + "description": "List of items to click on for this user", + "isVirtual": true, + "items": { + "title": "Assigned Dashboard Items", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "name" + ], + "referencedRelationshipFields": [ + [ + "roles", + "applications" + ], + [ + "applications" + ] + ] + }, + "searchable": false, + "title": "Assigned Dashboard", + "type": "array", + "userEditable": false, + "viewable": true + }, + "assignments": { + "description": "Assignments", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string" + }, + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + }, + "_uniqueId": { + "description": "Unique identifier", + "type": "string" + } + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Assignment", + "path": "managed/alpha_assignment", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Assignments Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Assignments", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "authzRoles": { + "description": "Authorization Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Authorization Roles Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Internal Role", + "path": "internal/role", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "authzMembers", + "reverseRelationship": true, + "title": "Authorization Roles Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Authorization Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "city": { + "description": "City", + "isPersonal": false, + "title": "City", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "cn": { + "default": "{{givenName}} {{sn}}", + "description": "Common Name", + "isPersonal": true, + "scope": "private", + "searchable": false, + "title": "Common Name", + "type": "string", + "userEditable": false, + "viewable": false + }, + "consentedMappings": { + "description": "Consented Mappings", + "isPersonal": false, + "isVirtual": false, + "items": { + "items": { + "order": [ + "mapping", + "consentDate" + ], + "properties": { + "consentDate": { + "description": "Consent Date", + "searchable": false, + "title": "Consent Date", + "type": "string", + "userEditable": true, + "viewable": true + }, + "mapping": { + "description": "Mapping", + "searchable": false, + "title": "Mapping", + "type": "string", + "userEditable": true, + "viewable": true + } + }, + "required": [ + "mapping", + "consentDate" + ], + "title": "Consented Mappings Item", + "type": "object" + }, + "title": "Consented Mappings Items", + "type": "array" + }, + "returnByDefault": false, + "searchable": false, + "title": "Consented Mappings", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false + }, + "country": { + "description": "Country", + "isPersonal": false, + "title": "Country", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "description": { + "description": "Description", + "isPersonal": false, + "searchable": false, + "title": "Description", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "devicePrintProfiles": { + "description": "Device Print Profiles Information", + "isPersonal": false, + "items": { + "title": "Profile", + "type": "string" + }, + "searchable": false, + "title": "Device Print Profiles", + "type": "array", + "userEditable": true, + "viewable": true + }, + "deviceProfiles": { + "description": "Device Profiles", + "isPersonal": false, + "items": { + "title": "Profile", + "type": "string" + }, + "searchable": false, + "title": "Device Profiles", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "effectiveApplications": { + "description": "Effective Applications", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Assigned Application Items", + "type": "object" + }, + "queryConfig": { + "referencedObjectFields": [ + "name" + ], + "referencedRelationshipFields": [ + [ + "roles", + "applications" + ], + [ + "applications" + ] + ] + }, + "returnByDefault": true, + "title": "Effective Applications", + "type": "array", + "viewable": false + }, + "effectiveAssignments": { + "description": "Effective Assignments", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Assignments Items", + "type": "object" + }, + "queryConfig": { + "referencedObjectFields": [ + "*" + ], + "referencedRelationshipFields": [ + [ + "roles", + "assignments" + ], + [ + "assignments" + ] + ] + }, + "returnByDefault": true, + "title": "Effective Assignments", + "type": "array", + "usageDescription": "", + "viewable": false + }, + "effectiveGroups": { + "description": "Effective Groups", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Groups Items", + "type": "object" + }, + "queryConfig": { + "referencedRelationshipFields": [ + "groups" + ] + }, + "returnByDefault": true, + "title": "Effective Groups", + "type": "array", + "usageDescription": "", + "viewable": false + }, + "effectiveRoles": { + "description": "Effective Roles", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Roles Items", + "type": "object" + }, + "queryConfig": { + "referencedRelationshipFields": [ + "roles" + ] + }, + "returnByDefault": true, + "title": "Effective Roles", + "type": "array", + "usageDescription": "", + "viewable": false + }, + "frIndexedDate1": { + "description": "Generic Indexed Date 1", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Date 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedDate2": { + "description": "Generic Indexed Date 2", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Date 2", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedDate3": { + "description": "Generic Indexed Date 3", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Date 3", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedDate4": { + "description": "Generic Indexed Date 4", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Date 4", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedDate5": { + "description": "Generic Indexed Date 5", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Date 5", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedInteger1": { + "description": "Generic Indexed Integer 1", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Integer 1", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedInteger2": { + "description": "Generic Indexed Integer 2", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Integer 2", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedInteger3": { + "description": "Generic Indexed Integer 3", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Integer 3", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedInteger4": { + "description": "Generic Indexed Integer 4", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Integer 4", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedInteger5": { + "description": "Generic Indexed Integer 5", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Integer 5", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedMultivalued1": { + "description": "Generic Indexed Multivalue 1", + "isPersonal": false, + "items": { + "type": "string" + }, + "searchable": true, + "title": "Generic Indexed Multivalue 1", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedMultivalued2": { + "description": "Generic Indexed Multivalue 2", + "isPersonal": false, + "items": { + "type": "string" + }, + "searchable": true, + "title": "Generic Indexed Multivalue 2", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedMultivalued3": { + "description": "Generic Indexed Multivalue 3", + "isPersonal": false, + "items": { + "type": "string" + }, + "searchable": true, + "title": "Generic Indexed Multivalue 3", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedMultivalued4": { + "description": "Generic Indexed Multivalue 4", + "isPersonal": false, + "items": { + "type": "string" + }, + "searchable": true, + "title": "Generic Indexed Multivalue 4", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedMultivalued5": { + "description": "Generic Indexed Multivalue 5", + "isPersonal": false, + "items": { + "type": "string" + }, + "searchable": true, + "title": "Generic Indexed Multivalue 5", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString1": { + "description": "Generic Indexed String 1", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString10": { + "description": "Generic Indexed String 10", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 10", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString11": { + "description": "Generic Indexed String 11", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 11", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString12": { + "description": "Generic Indexed String 12", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 12", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString13": { + "description": "Generic Indexed String 13", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 13", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString14": { + "description": "Generic Indexed String 14", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 14", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString15": { + "description": "Generic Indexed String 15", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 15", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString16": { + "description": "Generic Indexed String 16", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 16", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString17": { + "description": "Generic Indexed String 17", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 17", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString18": { + "description": "Generic Indexed String 18", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 18", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString19": { + "description": "Generic Indexed String 19", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 19", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString2": { + "description": "Generic Indexed String 2", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 2", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString20": { + "description": "Generic Indexed String 20", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 20", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString3": { + "description": "Generic Indexed String 3", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 3", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString4": { + "description": "Generic Indexed String 4", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 4", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString5": { + "description": "Generic Indexed String 5", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 5", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString6": { + "description": "Generic Indexed String 6", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 6", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString7": { + "description": "Generic Indexed String 7", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 7", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString8": { + "description": "Generic Indexed String 8", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 8", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString9": { + "description": "Generic Indexed String 9", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 9", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedDate1": { + "description": "Generic Unindexed Date 1", + "isPersonal": false, + "title": "Generic Unindexed Date 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedDate2": { + "description": "Generic Unindexed Date 2", + "isPersonal": false, + "title": "Generic Unindexed Date 2", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedDate3": { + "description": "Generic Unindexed Date 3", + "isPersonal": false, + "title": "Generic Unindexed Date 3", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedDate4": { + "description": "Generic Unindexed Date 4", + "isPersonal": false, + "title": "Generic Unindexed Date 4", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedDate5": { + "description": "Generic Unindexed Date 5", + "isPersonal": false, + "title": "Generic Unindexed Date 5", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedInteger1": { + "description": "Generic Unindexed Integer 1", + "isPersonal": false, + "title": "Generic Unindexed Integer 1", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedInteger2": { + "description": "Generic Unindexed Integer 2", + "isPersonal": false, + "title": "Generic Unindexed Integer 2", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedInteger3": { + "description": "Generic Unindexed Integer 3", + "isPersonal": false, + "title": "Generic Unindexed Integer 3", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedInteger4": { + "description": "Generic Unindexed Integer 4", + "isPersonal": false, + "title": "Generic Unindexed Integer 4", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedInteger5": { + "description": "Generic Unindexed Integer 5", + "isPersonal": false, + "title": "Generic Unindexed Integer 5", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedMultivalued1": { + "description": "Generic Unindexed Multivalue 1", + "isPersonal": false, + "items": { + "type": "string" + }, + "title": "Generic Unindexed Multivalue 1", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedMultivalued2": { + "description": "Generic Unindexed Multivalue 2", + "isPersonal": false, + "items": { + "type": "string" + }, + "title": "Generic Unindexed Multivalue 2", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedMultivalued3": { + "description": "Generic Unindexed Multivalue 3", + "isPersonal": false, + "items": { + "type": "string" + }, + "title": "Generic Unindexed Multivalue 3", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedMultivalued4": { + "description": "Generic Unindexed Multivalue 4", + "isPersonal": false, + "items": { + "type": "string" + }, + "title": "Generic Unindexed Multivalue 4", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedMultivalued5": { + "description": "Generic Unindexed Multivalue 5", + "isPersonal": false, + "items": { + "type": "string" + }, + "title": "Generic Unindexed Multivalue 5", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedString1": { + "description": "Generic Unindexed String 1", + "isPersonal": false, + "title": "Generic Unindexed String 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedString2": { + "description": "Generic Unindexed String 2", + "isPersonal": false, + "title": "Generic Unindexed String 2", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedString3": { + "description": "Generic Unindexed String 3", + "isPersonal": false, + "title": "Generic Unindexed String 3", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedString4": { + "description": "Generic Unindexed String 4", + "isPersonal": false, + "title": "Generic Unindexed String 4", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedString5": { + "description": "Generic Unindexed String 5", + "isPersonal": false, + "title": "Generic Unindexed String 5", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "givenName": { + "description": "First Name", + "isPersonal": true, + "searchable": true, + "title": "First Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "groups": { + "description": "Groups", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:groups", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:groups:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Groups Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Group", + "path": "managed/alpha_group", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Groups Items", + "type": "relationship", + "validate": true + }, + "relationshipGrantTemporalConstraintsEnforced": false, + "returnByDefault": false, + "title": "Groups", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "kbaInfo": { + "description": "KBA Info", + "isPersonal": true, + "items": { + "order": [ + "answer", + "customQuestion", + "questionId" + ], + "properties": { + "answer": { + "description": "Answer", + "type": "string" + }, + "customQuestion": { + "description": "Custom question", + "type": "string" + }, + "questionId": { + "description": "Question ID", + "type": "string" + } + }, + "required": [], + "title": "KBA Info Items", + "type": "object" + }, + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false + }, + "lastSync": { + "description": "Last Sync timestamp", + "isPersonal": false, + "order": [ + "effectiveAssignments", + "timestamp" + ], + "properties": { + "effectiveAssignments": { + "description": "Effective Assignments", + "items": { + "title": "Effective Assignments Items", + "type": "object" + }, + "title": "Effective Assignments", + "type": "array" + }, + "timestamp": { + "description": "Timestamp", + "type": "string" + } + }, + "required": [], + "scope": "private", + "searchable": false, + "title": "Last Sync timestamp", + "type": "object", + "usageDescription": "", + "viewable": false + }, + "mail": { + "description": "Email Address", + "isPersonal": true, + "policies": [ + { + "policyId": "valid-email-address-format" + } + ], + "searchable": true, + "title": "Email Address", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "manager": { + "description": "Manager", + "isPersonal": false, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Manager _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "reports", + "reverseRelationship": true, + "searchable": false, + "title": "Manager", + "type": "relationship", + "usageDescription": "", + "userEditable": false, + "validate": true, + "viewable": true + }, + "memberOfOrg": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/alpha_organization", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations to which I Belong", + "type": "array", + "userEditable": false, + "viewable": true + }, + "memberOfOrgIDs": { + "isVirtual": true, + "items": { + "title": "org identifiers", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs" + ], + "referencedRelationshipFields": [ + "memberOfOrg" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "MemberOfOrgIDs", + "type": "array", + "userEditable": false, + "viewable": false + }, + "oathDeviceProfiles": { + "description": "Oath Device Profiles", + "isPersonal": false, + "items": { + "title": "Profile", + "type": "string" + }, + "searchable": false, + "title": "Oath Device Profiles", + "type": "array", + "userEditable": true, + "viewable": true + }, + "ownerOfApp": { + "items": { + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Application", + "path": "managed/alpha_application", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true", + "sortKeys": [ + "name" + ] + } + } + ], + "reversePropertyName": "owners", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "searchable": false, + "title": "Applications I Own", + "type": "array", + "userEditable": false, + "viewable": true + }, + "ownerOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/alpha_organization", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "owners", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Own", + "type": "array", + "userEditable": false, + "viewable": true + }, + "password": { + "description": "Password", + "isPersonal": false, + "isProtected": true, + "scope": "private", + "searchable": false, + "title": "Password", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": false + }, + "passwordExpirationTime": { + "description": "Password Expiration Time", + "searchable": true, + "title": "Password Expiration Time", + "type": "string", + "userEditable": false, + "viewable": true + }, + "passwordLastChangedTime": { + "description": "Password Last Changed Time", + "searchable": true, + "title": "Password Last Changed Time", + "type": "string", + "userEditable": false, + "viewable": true + }, + "postalAddress": { + "description": "Address 1", + "isPersonal": true, + "title": "Address 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "postalCode": { + "description": "Postal Code", + "isPersonal": false, + "title": "Postal Code", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "preferences": { + "description": "Preferences", + "isPersonal": false, + "order": [ + "updates", + "marketing" + ], + "properties": { + "marketing": { + "description": "Send me special offers and services", + "type": "boolean" + }, + "updates": { + "description": "Send me news and updates", + "type": "boolean" + } + }, + "required": [], + "searchable": false, + "title": "Preferences", + "type": "object", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "profileImage": { + "description": "Profile Image", + "isPersonal": true, + "searchable": false, + "title": "Profile Image", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": false + }, + "pushDeviceProfiles": { + "description": "Push Device Profiles", + "isPersonal": false, + "items": { + "title": "Profile", + "type": "string" + }, + "searchable": false, + "title": "Push Device Profiles", + "type": "array", + "userEditable": true, + "viewable": true + }, + "reports": { + "description": "Direct Reports", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Direct Reports Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/alpha_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "manager", + "reverseRelationship": true, + "title": "Direct Reports Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Direct Reports", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "roles": { + "description": "Provisioning Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Role", + "path": "managed/alpha_role", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Provisioning Roles Items", + "type": "relationship", + "validate": true + }, + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Provisioning Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "sn": { + "description": "Last Name", + "isPersonal": true, + "searchable": true, + "title": "Last Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "stateProvince": { + "description": "State/Province", + "isPersonal": false, + "title": "State/Province", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "telephoneNumber": { + "description": "Telephone Number", + "isPersonal": true, + "pattern": "^\\+?([0-9\\- \\(\\)])*$", + "title": "Telephone Number", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "userName": { + "description": "Username", + "isPersonal": true, + "minLength": 1, + "policies": [ + { + "policyId": "valid-username" + }, + { + "params": { + "forbiddenChars": [ + "/" + ] + }, + "policyId": "cannot-contain-characters" + }, + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "searchable": true, + "title": "Username", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "webauthnDeviceProfiles": { + "description": "Web AuthN Device Profiles", + "isPersonal": false, + "items": { + "title": "Profile", + "type": "string" + }, + "searchable": false, + "title": "Web AuthN Device Profiles", + "type": "array", + "userEditable": true, + "viewable": true + } + }, + "required": [ + "userName", + "givenName", + "sn", + "mail" + ], + "title": "Alpha realm - User", + "type": "object", + "viewable": true + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_user.managed.scripts/onCreate.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_user.managed.scripts/onCreate.script.js new file mode 100644 index 000000000..3bb2307b2 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/alpha_user.managed.scripts/onCreate.script.js @@ -0,0 +1,5 @@ +//extract script test UPDATED + + +//test UPDATED + diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_application.managed.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_application.managed.json new file mode 100644 index 000000000..78c0213a5 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_application.managed.json @@ -0,0 +1,332 @@ +{ + "name": "bravo_application", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "Application Object", + "icon": "fa-folder", + "order": [ + "name", + "description", + "url", + "icon", + "mappingNames", + "owners", + "roles", + "members" + ], + "properties": { + "_id": { + "description": "Application ID", + "isPersonal": false, + "searchable": false, + "type": "string", + "userEditable": false, + "viewable": false + }, + "authoritative": { + "description": "Is this an authoritative application", + "searchable": false, + "title": "Authoritative", + "type": "boolean", + "viewable": false + }, + "connectorId": { + "description": "Id of the connector associated with the application", + "searchable": false, + "title": "Connector ID", + "type": "string", + "userEditable": false, + "viewable": false + }, + "description": { + "description": "Application Description", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true + }, + "icon": { + "searchable": true, + "title": "Icon", + "type": "string", + "userEditable": true, + "viewable": true + }, + "mappingNames": { + "description": "Names of the sync mappings used by an application with provisioning configured.", + "items": { + "title": "Mapping Name Items", + "type": "string" + }, + "searchable": true, + "title": "Sync Mapping Names", + "type": "array", + "viewable": true + }, + "members": { + "description": "Application Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Application:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string" + }, + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + }, + "_uniqueId": { + "description": "Unique identifier", + "type": "string" + } + }, + "title": "Group Members Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "notify": true, + "path": "managed/bravo_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "applications", + "reverseRelationship": true, + "title": "Group Members Items", + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Members", + "type": "array", + "userEditable": false, + "viewable": true + }, + "name": { + "description": "Application name", + "notifyRelationships": [ + "roles", + "members" + ], + "policies": [ + { + "policyId": "unique" + } + ], + "returnByDefault": true, + "searchable": true, + "title": "Name", + "type": "string", + "userEditable": true, + "viewable": true + }, + "owners": { + "description": "Application Owners", + "items": { + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Application _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/bravo_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "ownerOfApp", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "searchable": false, + "title": "Owners", + "type": "array", + "userEditable": false, + "viewable": true + }, + "roles": { + "description": "Roles granting users the application", + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_accountType": { + "description": "Account type", + "type": "string" + }, + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Role", + "notify": true, + "path": "managed/bravo_role", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "applications", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "searchable": false, + "title": "Roles", + "type": "array", + "userEditable": false, + "viewable": true + }, + "ssoEntities": { + "description": "SSO Entity Id", + "properties": { + "domain": { + "type": "string" + }, + "federatedDomain": { + "type": "string" + }, + "idpLocation": { + "type": "string" + }, + "idpLoginUrl": { + "type": "string" + }, + "idpPrivateId": { + "type": "string" + }, + "key": { + "type": "string" + }, + "oidcId": { + "type": "string" + }, + "pfApcId": { + "type": "string" + }, + "pfIdpAdapterId": { + "type": "string" + }, + "pfPolicyId": { + "type": "string" + }, + "pfSigningCertId": { + "type": "string" + }, + "pfSpConnectionId": { + "type": "string" + }, + "spLocation": { + "type": "string" + }, + "spPrivate": { + "type": "string" + } + }, + "searchable": false, + "title": "SSO Entity Id", + "type": "object", + "userEditable": false, + "viewable": false + }, + "templateName": { + "description": "Name of the template the application was created from", + "searchable": false, + "title": "Template Name", + "type": "string", + "userEditable": false, + "viewable": false + }, + "templateVersion": { + "description": "The template version", + "searchable": false, + "title": "Template Version", + "type": "string", + "userEditable": false, + "viewable": false + }, + "uiConfig": { + "description": "UI Config", + "isPersonal": false, + "properties": {}, + "searchable": false, + "title": "UI Config", + "type": "object", + "usageDescription": "", + "viewable": false + }, + "url": { + "searchable": true, + "title": "Url", + "type": "string", + "userEditable": true, + "viewable": true + } + }, + "required": [ + "name" + ], + "title": "Bravo realm - Application", + "type": "object" + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_assignment.managed.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_assignment.managed.json new file mode 100644 index 000000000..7f9f8e9d0 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_assignment.managed.json @@ -0,0 +1,254 @@ +{ + "attributeEncryption": {}, + "name": "bravo_assignment", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "A role assignment", + "icon": "fa-key", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment", + "mat-icon": "vpn_key", + "order": [ + "_id", + "name", + "description", + "type", + "mapping", + "attributes", + "linkQualifiers", + "roles", + "members", + "condition", + "weight" + ], + "properties": { + "_id": { + "description": "The assignment ID", + "searchable": false, + "title": "Name", + "type": "string", + "viewable": false + }, + "attributes": { + "description": "The attributes operated on by this assignment.", + "items": { + "order": [ + "assignmentOperation", + "unassignmentOperation", + "name", + "value" + ], + "properties": { + "assignmentOperation": { + "description": "Assignment operation", + "type": "string" + }, + "name": { + "description": "Name", + "type": "string" + }, + "unassignmentOperation": { + "description": "Unassignment operation", + "type": "string" + }, + "value": { + "description": "Value", + "type": "string" + } + }, + "required": [], + "title": "Assignment Attributes Items", + "type": "object" + }, + "notifyRelationships": [ + "roles", + "members" + ], + "title": "Assignment Attributes", + "type": "array", + "viewable": true + }, + "condition": { + "description": "A conditional filter for this assignment", + "isConditional": true, + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false + }, + "description": { + "description": "The assignment description, used for display purposes.", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true + }, + "linkQualifiers": { + "description": "Conditional link qualifiers to restrict this assignment to.", + "items": { + "title": "Link Qualifiers Items", + "type": "string" + }, + "title": "Link Qualifiers", + "type": "array", + "viewable": true + }, + "mapping": { + "description": "The name of the mapping this assignment applies to", + "policies": [ + { + "policyId": "mapping-exists" + } + ], + "searchable": true, + "title": "Mapping", + "type": "string", + "viewable": true + }, + "members": { + "description": "Assignment Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string" + }, + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + }, + "_uniqueId": { + "description": "Unique identifier", + "type": "string" + } + }, + "title": "Assignment Members Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/bravo_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "assignments", + "reverseRelationship": true, + "title": "Assignment Members Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Assignment Members", + "type": "array", + "viewable": true + }, + "name": { + "description": "The assignment name, used for display purposes.", + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true + }, + "roles": { + "description": "Managed Roles", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Assignment:roles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Managed Roles Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Role", + "notify": true, + "path": "managed/bravo_role", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "assignments", + "reverseRelationship": true, + "title": "Managed Roles Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Managed Roles", + "type": "array", + "userEditable": false, + "viewable": true + }, + "type": { + "description": "The type of object this assignment represents", + "title": "Type", + "type": "string", + "viewable": true + }, + "weight": { + "description": "The weight of the assignment.", + "notifyRelationships": [ + "roles", + "members" + ], + "searchable": false, + "title": "Weight", + "type": [ + "number", + "null" + ], + "viewable": true + } + }, + "required": [ + "name", + "description", + "mapping" + ], + "title": "Bravo realm - Assignment", + "type": "object" + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_group.managed.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_group.managed.json new file mode 100644 index 000000000..639d20311 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_group.managed.json @@ -0,0 +1,137 @@ +{ + "name": "bravo_group", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "icon": "fa-group", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Group", + "mat-icon": "group", + "order": [ + "_id", + "name", + "description", + "condition", + "members" + ], + "properties": { + "_id": { + "description": "Group ID", + "isPersonal": false, + "policies": [ + { + "params": { + "propertyName": "name" + }, + "policyId": "id-must-equal-property" + } + ], + "searchable": false, + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": false + }, + "condition": { + "description": "A filter for conditionally assigned members", + "isConditional": true, + "policies": [ + { + "policyId": "valid-query-filter" + } + ], + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false + }, + "description": { + "description": "Group Description", + "searchable": true, + "title": "Description", + "type": "string", + "userEditable": false, + "viewable": true + }, + "members": { + "description": "Group Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Group:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Group Members Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/bravo_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "groups", + "reverseRelationship": true, + "title": "Group Members Items", + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Members", + "type": "array", + "userEditable": false, + "viewable": true + }, + "name": { + "description": "Group Name", + "policies": [ + { + "policyId": "required" + }, + { + "params": { + "forbiddenChars": [ + "/*" + ] + }, + "policyId": "cannot-contain-characters" + } + ], + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true + } + }, + "required": [ + "name" + ], + "title": "Bravo realm - Group", + "viewable": true + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_organization.managed.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_organization.managed.json new file mode 100644 index 000000000..e61030677 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_organization.managed.json @@ -0,0 +1,395 @@ +{ + "name": "bravo_organization", + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "description": "An organization or tenant, whose resources are managed by organizational admins.", + "icon": "fa-building", + "mat-icon": "domain", + "order": [ + "name", + "description", + "owners", + "admins", + "members", + "parent", + "children", + "adminIDs", + "ownerIDs", + "parentAdminIDs", + "parentOwnerIDs", + "parentIDs" + ], + "properties": { + "adminIDs": { + "isVirtual": true, + "items": { + "title": "admin ids", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id" + ], + "referencedRelationshipFields": [ + "admins" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "Admin user ids", + "type": "array", + "userEditable": false, + "viewable": false + }, + "admins": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "notify": false, + "path": "managed/bravo_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "adminOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "notifyRelationships": [ + "children" + ], + "returnByDefault": false, + "searchable": false, + "title": "Administrators", + "type": "array", + "userEditable": false, + "viewable": true + }, + "children": { + "description": "Child Organizations", + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/bravo_organization", + "query": { + "fields": [ + "name", + "description" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "parent", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Child Organizations", + "type": "array", + "userEditable": false, + "viewable": false + }, + "description": { + "searchable": true, + "title": "Description", + "type": "string", + "userEditable": true, + "viewable": true + }, + "members": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "notify": true, + "path": "managed/bravo_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "memberOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "searchable": false, + "title": "Members", + "type": "array", + "userEditable": false, + "viewable": true + }, + "name": { + "searchable": true, + "title": "Name", + "type": "string", + "userEditable": true, + "viewable": true + }, + "ownerIDs": { + "isVirtual": true, + "items": { + "title": "owner ids", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id" + ], + "referencedRelationshipFields": [ + "owners" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "Owner user ids", + "type": "array", + "userEditable": false, + "viewable": false + }, + "owners": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "notify": false, + "path": "managed/bravo_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "ownerOfOrg", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "notifyRelationships": [ + "children" + ], + "returnByDefault": false, + "searchable": false, + "title": "Owner", + "type": "array", + "userEditable": false, + "viewable": true + }, + "parent": { + "description": "Parent Organization", + "notifyRelationships": [ + "children", + "members" + ], + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/bravo_organization", + "query": { + "fields": [ + "name", + "description" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "returnByDefault": false, + "reversePropertyName": "children", + "reverseRelationship": true, + "searchable": false, + "title": "Parent Organization", + "type": "relationship", + "userEditable": false, + "validate": true, + "viewable": true + }, + "parentAdminIDs": { + "isVirtual": true, + "items": { + "title": "user ids of parent admins", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "adminIDs", + "parentAdminIDs" + ], + "referencedRelationshipFields": [ + "parent" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent admins", + "type": "array", + "userEditable": false, + "viewable": false + }, + "parentIDs": { + "isVirtual": true, + "items": { + "title": "parent org ids", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs" + ], + "referencedRelationshipFields": [ + "parent" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "parent org ids", + "type": "array", + "userEditable": false, + "viewable": false + }, + "parentOwnerIDs": { + "isVirtual": true, + "items": { + "title": "user ids of parent owners", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "ownerIDs", + "parentOwnerIDs" + ], + "referencedRelationshipFields": [ + "parent" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "user ids of parent owners", + "type": "array", + "userEditable": false, + "viewable": false + } + }, + "required": [ + "name" + ], + "title": "Bravo realm - Organization", + "type": "object" + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_role.managed.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_role.managed.json new file mode 100644 index 000000000..c1c0f5c7c --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_role.managed.json @@ -0,0 +1,251 @@ +{ + "name": "bravo_role", + "onValidate": { + "globals": {}, + "source": "file://bravo_role.managed.scripts/onValidate.script.js", + "type": "text/javascript" + }, + "schema": { + "$schema": "http://forgerock.org/json-schema#", + "icon": "fa-check-square-o", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role", + "mat-icon": "assignment_ind", + "order": [ + "_id", + "name", + "description", + "members", + "assignments", + "applications", + "condition", + "temporalConstraints" + ], + "properties": { + "_id": { + "description": "Role ID", + "searchable": false, + "title": "Name", + "type": "string", + "viewable": false + }, + "applications": { + "description": "Role Applications", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:applications:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Role Application Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Application", + "path": "managed/bravo_application", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Role Application Items", + "type": "relationship", + "validate": true + }, + "notifyRelationships": [ + "members" + ], + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Applications", + "type": "array", + "viewable": false + }, + "assignments": { + "description": "Managed Assignments", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Managed Assignments Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Assignment", + "path": "managed/bravo_assignment", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Managed Assignments Items", + "type": "relationship", + "validate": true + }, + "notifyRelationships": [ + "members" + ], + "returnByDefault": false, + "title": "Managed Assignments", + "type": "array", + "viewable": true + }, + "condition": { + "description": "A conditional filter for this role", + "isConditional": true, + "searchable": false, + "title": "Condition", + "type": "string", + "viewable": false + }, + "description": { + "description": "The role description, used for display purposes.", + "searchable": true, + "title": "Description", + "type": "string", + "viewable": true + }, + "members": { + "description": "Role Members", + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:Role:members:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Role Members Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociation": true, + "label": "User", + "notify": true, + "path": "managed/bravo_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "roles", + "reverseRelationship": true, + "title": "Role Members Items", + "type": "relationship", + "validate": true + }, + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Role Members", + "type": "array", + "viewable": true + }, + "name": { + "description": "The role name, used for display purposes.", + "policies": [ + { + "policyId": "unique" + } + ], + "searchable": true, + "title": "Name", + "type": "string", + "viewable": true + }, + "temporalConstraints": { + "description": "An array of temporal constraints for a role", + "isTemporalConstraint": true, + "items": { + "order": [ + "duration" + ], + "properties": { + "duration": { + "description": "Duration", + "type": "string" + } + }, + "required": [ + "duration" + ], + "title": "Temporal Constraints Items", + "type": "object" + }, + "notifyRelationships": [ + "members" + ], + "returnByDefault": true, + "title": "Temporal Constraints", + "type": "array", + "viewable": false + } + }, + "required": [ + "name" + ], + "title": "Bravo realm - Role", + "type": "object" + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_role.managed.scripts/onValidate.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_role.managed.scripts/onValidate.script.js new file mode 100644 index 000000000..80f741cf7 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_role.managed.scripts/onValidate.script.js @@ -0,0 +1,3 @@ +//extract script test UPDATED ONVALIDATE + +//test UPDATED diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_user.managed.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_user.managed.json new file mode 100644 index 000000000..593e28295 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_user.managed.json @@ -0,0 +1,1817 @@ +{ + "lastSync": { + "effectiveAssignmentsProperty": "effectiveAssignments", + "lastSyncProperty": "lastSync" + }, + "name": "bravo_user", + "notifications": {}, + "postUpdate": { + "globals": {}, + "source": "file://bravo_user.managed.scripts/postUpdate.script.js", + "type": "text/javascript" + }, + "schema": { + "$schema": "http://json-schema.org/draft-03/schema", + "icon": "fa-user", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User", + "mat-icon": "people", + "order": [ + "_id", + "userName", + "password", + "givenName", + "cn", + "sn", + "mail", + "profileImage", + "description", + "accountStatus", + "telephoneNumber", + "postalAddress", + "city", + "postalCode", + "country", + "stateProvince", + "roles", + "assignments", + "groups", + "applications", + "manager", + "authzRoles", + "reports", + "effectiveRoles", + "effectiveAssignments", + "effectiveGroups", + "effectiveApplications", + "lastSync", + "kbaInfo", + "preferences", + "consentedMappings", + "ownerOfOrg", + "adminOfOrg", + "memberOfOrg", + "memberOfOrgIDs", + "ownerOfApp", + "passwordLastChangedTime", + "passwordExpirationTime", + "frIndexedString1", + "frIndexedString2", + "frIndexedString3", + "frIndexedString4", + "frIndexedString5", + "frIndexedString6", + "frIndexedString7", + "frIndexedString8", + "frIndexedString9", + "frIndexedString10", + "frIndexedString11", + "frIndexedString12", + "frIndexedString13", + "frIndexedString14", + "frIndexedString15", + "frIndexedString16", + "frIndexedString17", + "frIndexedString18", + "frIndexedString19", + "frIndexedString20", + "frUnindexedString1", + "frUnindexedString2", + "frUnindexedString3", + "frUnindexedString4", + "frUnindexedString5", + "frIndexedMultivalued1", + "frIndexedMultivalued2", + "frIndexedMultivalued3", + "frIndexedMultivalued4", + "frIndexedMultivalued5", + "frUnindexedMultivalued1", + "frUnindexedMultivalued2", + "frUnindexedMultivalued3", + "frUnindexedMultivalued4", + "frUnindexedMultivalued5", + "frIndexedDate1", + "frIndexedDate2", + "frIndexedDate3", + "frIndexedDate4", + "frIndexedDate5", + "frUnindexedDate1", + "frUnindexedDate2", + "frUnindexedDate3", + "frUnindexedDate4", + "frUnindexedDate5", + "frIndexedInteger1", + "frIndexedInteger2", + "frIndexedInteger3", + "frIndexedInteger4", + "frIndexedInteger5", + "frUnindexedInteger1", + "frUnindexedInteger2", + "frUnindexedInteger3", + "frUnindexedInteger4", + "frUnindexedInteger5", + "assignedDashboard", + "devicePrintProfiles", + "deviceProfiles", + "oathDeviceProfiles", + "pushDeviceProfiles", + "webauthnDeviceProfiles" + ], + "properties": { + "_id": { + "description": "User ID", + "isPersonal": false, + "policies": [ + { + "params": { + "forbiddenChars": [ + "/" + ] + }, + "policyId": "cannot-contain-characters" + } + ], + "searchable": false, + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": false + }, + "accountStatus": { + "default": "active", + "description": "Status", + "isPersonal": false, + "searchable": false, + "title": "Status", + "type": "string", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "adminOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/bravo_organization", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "admins", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Administer", + "type": "array", + "userEditable": false, + "viewable": true + }, + "aliasList": { + "description": "List of identity aliases used primarily to record social IdP subjects for this user", + "isVirtual": false, + "items": { + "title": "User Alias Names Items", + "type": "string" + }, + "returnByDefault": false, + "searchable": false, + "title": "User Alias Names List", + "type": "array", + "userEditable": true, + "viewable": false + }, + "applications": { + "description": "Applications", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:applications", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:applications:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + }, + "_uniqueId": { + "description": "Unique identifier", + "type": "string" + } + }, + "title": "Groups Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Application", + "path": "managed/bravo_application", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true", + "sortKeys": [ + "name" + ] + } + } + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Groups Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Applications", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": false + }, + "assignedDashboard": { + "description": "List of items to click on for this user", + "isVirtual": true, + "items": { + "title": "Assigned Dashboard Items", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "name" + ], + "referencedRelationshipFields": [ + [ + "roles", + "applications" + ], + [ + "applications" + ] + ] + }, + "searchable": false, + "title": "Assigned Dashboard", + "type": "array", + "userEditable": false, + "viewable": true + }, + "assignments": { + "description": "Assignments", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:assignments:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_accountType": { + "description": "Account type", + "type": "string" + }, + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + }, + "_uniqueId": { + "description": "Unique identifier", + "type": "string" + } + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Assignment", + "path": "managed/bravo_assignment", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Assignments Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Assignments", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "authzRoles": { + "description": "Authorization Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:authzRoles:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Authorization Roles Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Internal Role", + "path": "internal/role", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "authzMembers", + "reverseRelationship": true, + "title": "Authorization Roles Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Authorization Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "city": { + "description": "City", + "isPersonal": false, + "title": "City", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "cn": { + "default": "{{givenName}} {{sn}}", + "description": "Common Name", + "isPersonal": true, + "scope": "private", + "searchable": false, + "title": "Common Name", + "type": "string", + "userEditable": false, + "viewable": false + }, + "consentedMappings": { + "description": "Consented Mappings", + "isPersonal": false, + "isVirtual": false, + "items": { + "items": { + "order": [ + "mapping", + "consentDate" + ], + "properties": { + "consentDate": { + "description": "Consent Date", + "searchable": false, + "title": "Consent Date", + "type": "string", + "userEditable": true, + "viewable": true + }, + "mapping": { + "description": "Mapping", + "searchable": false, + "title": "Mapping", + "type": "string", + "userEditable": true, + "viewable": true + } + }, + "required": [ + "mapping", + "consentDate" + ], + "title": "Consented Mappings Item", + "type": "object" + }, + "title": "Consented Mappings Items", + "type": "array" + }, + "returnByDefault": false, + "searchable": false, + "title": "Consented Mappings", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false + }, + "country": { + "description": "Country", + "isPersonal": false, + "title": "Country", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "description": { + "description": "Description", + "isPersonal": false, + "searchable": false, + "title": "Description", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "devicePrintProfiles": { + "description": "Device Print Profiles Information", + "isPersonal": false, + "items": { + "title": "Profile", + "type": "string" + }, + "searchable": false, + "title": "Device Print Profiles", + "type": "array", + "userEditable": true, + "viewable": true + }, + "deviceProfiles": { + "description": "Device Profiles", + "isPersonal": false, + "items": { + "title": "Profile", + "type": "string" + }, + "searchable": false, + "title": "Device Profiles", + "type": "array", + "userEditable": true, + "viewable": true + }, + "effectiveApplications": { + "description": "Effective Applications", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Assigned Application Items", + "type": "object" + }, + "queryConfig": { + "referencedObjectFields": [ + "name" + ], + "referencedRelationshipFields": [ + [ + "roles", + "applications" + ], + [ + "applications" + ] + ] + }, + "returnByDefault": true, + "title": "Effective Applications", + "type": "array", + "viewable": false + }, + "effectiveAssignments": { + "description": "Effective Assignments", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Assignments Items", + "type": "object" + }, + "queryConfig": { + "referencedObjectFields": [ + "*" + ], + "referencedRelationshipFields": [ + [ + "roles", + "assignments" + ], + [ + "assignments" + ] + ] + }, + "returnByDefault": true, + "title": "Effective Assignments", + "type": "array", + "usageDescription": "", + "viewable": false + }, + "effectiveGroups": { + "description": "Effective Groups", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Groups Items", + "type": "object" + }, + "queryConfig": { + "referencedRelationshipFields": [ + "groups" + ] + }, + "returnByDefault": true, + "title": "Effective Groups", + "type": "array", + "usageDescription": "", + "viewable": false + }, + "effectiveRoles": { + "description": "Effective Roles", + "isPersonal": false, + "isVirtual": true, + "items": { + "title": "Effective Roles Items", + "type": "object" + }, + "queryConfig": { + "referencedRelationshipFields": [ + "roles" + ] + }, + "returnByDefault": true, + "title": "Effective Roles", + "type": "array", + "usageDescription": "", + "viewable": false + }, + "frIndexedDate1": { + "description": "Generic Indexed Date 1", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Date 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedDate2": { + "description": "Generic Indexed Date 2", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Date 2", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedDate3": { + "description": "Generic Indexed Date 3", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Date 3", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedDate4": { + "description": "Generic Indexed Date 4", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Date 4", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedDate5": { + "description": "Generic Indexed Date 5", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Date 5", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedInteger1": { + "description": "Generic Indexed Integer 1", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Integer 1", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedInteger2": { + "description": "Generic Indexed Integer 2", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Integer 2", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedInteger3": { + "description": "Generic Indexed Integer 3", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Integer 3", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedInteger4": { + "description": "Generic Indexed Integer 4", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Integer 4", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedInteger5": { + "description": "Generic Indexed Integer 5", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed Integer 5", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedMultivalued1": { + "description": "Generic Indexed Multivalue 1", + "isPersonal": false, + "items": { + "type": "string" + }, + "searchable": true, + "title": "Generic Indexed Multivalue 1", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedMultivalued2": { + "description": "Generic Indexed Multivalue 2", + "isPersonal": false, + "items": { + "type": "string" + }, + "searchable": true, + "title": "Generic Indexed Multivalue 2", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedMultivalued3": { + "description": "Generic Indexed Multivalue 3", + "isPersonal": false, + "items": { + "type": "string" + }, + "searchable": true, + "title": "Generic Indexed Multivalue 3", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedMultivalued4": { + "description": "Generic Indexed Multivalue 4", + "isPersonal": false, + "items": { + "type": "string" + }, + "searchable": true, + "title": "Generic Indexed Multivalue 4", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedMultivalued5": { + "description": "Generic Indexed Multivalue 5", + "isPersonal": false, + "items": { + "type": "string" + }, + "searchable": true, + "title": "Generic Indexed Multivalue 5", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString1": { + "description": "Generic Indexed String 1", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString10": { + "description": "Generic Indexed String 10", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 10", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString11": { + "description": "Generic Indexed String 11", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 11", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString12": { + "description": "Generic Indexed String 12", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 12", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString13": { + "description": "Generic Indexed String 13", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 13", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString14": { + "description": "Generic Indexed String 14", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 14", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString15": { + "description": "Generic Indexed String 15", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 15", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString16": { + "description": "Generic Indexed String 16", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 16", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString17": { + "description": "Generic Indexed String 17", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 17", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString18": { + "description": "Generic Indexed String 18", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 18", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString19": { + "description": "Generic Indexed String 19", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 19", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString2": { + "description": "Generic Indexed String 2", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 2", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString20": { + "description": "Generic Indexed String 20", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 20", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString3": { + "description": "Generic Indexed String 3", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 3", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString4": { + "description": "Generic Indexed String 4", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 4", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString5": { + "description": "Generic Indexed String 5", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 5", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString6": { + "description": "Generic Indexed String 6", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 6", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString7": { + "description": "Generic Indexed String 7", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 7", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString8": { + "description": "Generic Indexed String 8", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 8", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frIndexedString9": { + "description": "Generic Indexed String 9", + "isPersonal": false, + "searchable": true, + "title": "Generic Indexed String 9", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedDate1": { + "description": "Generic Unindexed Date 1", + "isPersonal": false, + "title": "Generic Unindexed Date 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedDate2": { + "description": "Generic Unindexed Date 2", + "isPersonal": false, + "title": "Generic Unindexed Date 2", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedDate3": { + "description": "Generic Unindexed Date 3", + "isPersonal": false, + "title": "Generic Unindexed Date 3", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedDate4": { + "description": "Generic Unindexed Date 4", + "isPersonal": false, + "title": "Generic Unindexed Date 4", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedDate5": { + "description": "Generic Unindexed Date 5", + "isPersonal": false, + "title": "Generic Unindexed Date 5", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedInteger1": { + "description": "Generic Unindexed Integer 1", + "isPersonal": false, + "title": "Generic Unindexed Integer 1", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedInteger2": { + "description": "Generic Unindexed Integer 2", + "isPersonal": false, + "title": "Generic Unindexed Integer 2", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedInteger3": { + "description": "Generic Unindexed Integer 3", + "isPersonal": false, + "title": "Generic Unindexed Integer 3", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedInteger4": { + "description": "Generic Unindexed Integer 4", + "isPersonal": false, + "title": "Generic Unindexed Integer 4", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedInteger5": { + "description": "Generic Unindexed Integer 5", + "isPersonal": false, + "title": "Generic Unindexed Integer 5", + "type": "number", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedMultivalued1": { + "description": "Generic Unindexed Multivalue 1", + "isPersonal": false, + "items": { + "type": "string" + }, + "title": "Generic Unindexed Multivalue 1", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedMultivalued2": { + "description": "Generic Unindexed Multivalue 2", + "isPersonal": false, + "items": { + "type": "string" + }, + "title": "Generic Unindexed Multivalue 2", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedMultivalued3": { + "description": "Generic Unindexed Multivalue 3", + "isPersonal": false, + "items": { + "type": "string" + }, + "title": "Generic Unindexed Multivalue 3", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedMultivalued4": { + "description": "Generic Unindexed Multivalue 4", + "isPersonal": false, + "items": { + "type": "string" + }, + "title": "Generic Unindexed Multivalue 4", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedMultivalued5": { + "description": "Generic Unindexed Multivalue 5", + "isPersonal": false, + "items": { + "type": "string" + }, + "title": "Generic Unindexed Multivalue 5", + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedString1": { + "description": "Generic Unindexed String 1", + "isPersonal": false, + "title": "Generic Unindexed String 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedString2": { + "description": "Generic Unindexed String 2", + "isPersonal": false, + "title": "Generic Unindexed String 2", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedString3": { + "description": "Generic Unindexed String 3", + "isPersonal": false, + "title": "Generic Unindexed String 3", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedString4": { + "description": "Generic Unindexed String 4", + "isPersonal": false, + "title": "Generic Unindexed String 4", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "frUnindexedString5": { + "description": "Generic Unindexed String 5", + "isPersonal": false, + "title": "Generic Unindexed String 5", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "givenName": { + "description": "First Name", + "isPersonal": true, + "searchable": true, + "title": "First Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "groups": { + "description": "Groups", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:groups", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:groups:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Groups Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Group", + "path": "managed/bravo_group", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Groups Items", + "type": "relationship", + "validate": true + }, + "relationshipGrantTemporalConstraintsEnforced": false, + "returnByDefault": false, + "title": "Groups", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "kbaInfo": { + "description": "KBA Info", + "isPersonal": true, + "items": { + "order": [ + "answer", + "customQuestion", + "questionId" + ], + "properties": { + "answer": { + "description": "Answer", + "type": "string" + }, + "customQuestion": { + "description": "Custom question", + "type": "string" + }, + "questionId": { + "description": "Question ID", + "type": "string" + } + }, + "required": [], + "title": "KBA Info Items", + "type": "object" + }, + "type": "array", + "usageDescription": "", + "userEditable": true, + "viewable": false + }, + "lastSync": { + "description": "Last Sync timestamp", + "isPersonal": false, + "order": [ + "effectiveAssignments", + "timestamp" + ], + "properties": { + "effectiveAssignments": { + "description": "Effective Assignments", + "items": { + "title": "Effective Assignments Items", + "type": "object" + }, + "title": "Effective Assignments", + "type": "array" + }, + "timestamp": { + "description": "Timestamp", + "type": "string" + } + }, + "required": [], + "scope": "private", + "searchable": false, + "title": "Last Sync timestamp", + "type": "object", + "usageDescription": "", + "viewable": false + }, + "mail": { + "description": "Email Address", + "isPersonal": true, + "policies": [ + { + "policyId": "valid-email-address-format" + } + ], + "searchable": true, + "title": "Email Address", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "manager": { + "description": "Manager", + "isPersonal": false, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Manager _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/bravo_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "reports", + "reverseRelationship": true, + "searchable": false, + "title": "Manager", + "type": "relationship", + "usageDescription": "", + "userEditable": false, + "validate": true, + "viewable": true + }, + "memberOfOrg": { + "items": { + "notifySelf": true, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": false, + "path": "managed/bravo_organization", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations to which I Belong", + "type": "array", + "userEditable": false, + "viewable": true + }, + "memberOfOrgIDs": { + "isVirtual": true, + "items": { + "title": "org identifiers", + "type": "string" + }, + "queryConfig": { + "flattenProperties": true, + "referencedObjectFields": [ + "_id", + "parentIDs" + ], + "referencedRelationshipFields": [ + "memberOfOrg" + ] + }, + "returnByDefault": true, + "searchable": false, + "title": "MemberOfOrgIDs", + "type": "array", + "userEditable": false, + "viewable": false + }, + "oathDeviceProfiles": { + "description": "Oath Device Profiles", + "isPersonal": false, + "items": { + "title": "Profile", + "type": "string" + }, + "searchable": false, + "title": "Oath Device Profiles", + "type": "array", + "userEditable": true, + "viewable": true + }, + "ownerOfApp": { + "items": { + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Application", + "path": "managed/bravo_application", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true", + "sortKeys": [ + "name" + ] + } + } + ], + "reversePropertyName": "owners", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "searchable": false, + "title": "Applications I Own", + "type": "array", + "userEditable": false, + "viewable": true + }, + "ownerOfOrg": { + "items": { + "notifySelf": false, + "properties": { + "_ref": { + "type": "string" + }, + "_refProperties": { + "properties": { + "_id": { + "propName": "_id", + "required": false, + "type": "string" + } + }, + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "Organization", + "notify": true, + "path": "managed/bravo_organization", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true", + "sortKeys": [] + } + } + ], + "reversePropertyName": "owners", + "reverseRelationship": true, + "type": "relationship", + "validate": true + }, + "policies": [], + "returnByDefault": false, + "searchable": false, + "title": "Organizations I Own", + "type": "array", + "userEditable": false, + "viewable": true + }, + "password": { + "description": "Password", + "isPersonal": false, + "isProtected": true, + "scope": "private", + "searchable": false, + "title": "Password", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": false + }, + "passwordExpirationTime": { + "description": "Password Expiration Time", + "searchable": true, + "title": "Password Expiration Time", + "type": "string", + "userEditable": false, + "viewable": true + }, + "passwordLastChangedTime": { + "description": "Password Last Changed Time", + "searchable": true, + "title": "Password Last Changed Time", + "type": "string", + "userEditable": false, + "viewable": true + }, + "postalAddress": { + "description": "Address 1", + "isPersonal": true, + "title": "Address 1", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "postalCode": { + "description": "Postal Code", + "isPersonal": false, + "title": "Postal Code", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "preferences": { + "description": "Preferences", + "isPersonal": false, + "order": [ + "updates", + "marketing" + ], + "properties": { + "marketing": { + "description": "Send me special offers and services", + "type": "boolean" + }, + "updates": { + "description": "Send me news and updates", + "type": "boolean" + } + }, + "required": [], + "searchable": false, + "title": "Preferences", + "type": "object", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "profileImage": { + "description": "Profile Image", + "isPersonal": true, + "searchable": false, + "title": "Profile Image", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": false + }, + "pushDeviceProfiles": { + "description": "Push Device Profiles", + "isPersonal": false, + "items": { + "title": "Profile", + "type": "string" + }, + "searchable": false, + "title": "Push Device Profiles", + "type": "array", + "userEditable": true, + "viewable": true + }, + "reports": { + "description": "Direct Reports", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:reports:items", + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Direct Reports Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "label": "User", + "path": "managed/bravo_user", + "query": { + "fields": [ + "userName", + "givenName", + "sn" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "manager", + "reverseRelationship": true, + "title": "Direct Reports Items", + "type": "relationship", + "validate": true + }, + "returnByDefault": false, + "title": "Direct Reports", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "roles": { + "description": "Provisioning Roles", + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles", + "isPersonal": false, + "items": { + "id": "urn:jsonschema:org:forgerock:openidm:managed:api:User:roles:items", + "notifySelf": true, + "properties": { + "_ref": { + "description": "References a relationship from a managed object", + "type": "string" + }, + "_refProperties": { + "description": "Supports metadata within the relationship", + "properties": { + "_grantType": { + "description": "Grant Type", + "label": "Grant Type", + "type": "string" + }, + "_id": { + "description": "_refProperties object ID", + "type": "string" + } + }, + "title": "Provisioning Roles Items _refProperties", + "type": "object" + } + }, + "resourceCollection": [ + { + "conditionalAssociationField": "condition", + "label": "Role", + "path": "managed/bravo_role", + "query": { + "fields": [ + "name" + ], + "queryFilter": "true" + } + } + ], + "reversePropertyName": "members", + "reverseRelationship": true, + "title": "Provisioning Roles Items", + "type": "relationship", + "validate": true + }, + "relationshipGrantTemporalConstraintsEnforced": true, + "returnByDefault": false, + "title": "Provisioning Roles", + "type": "array", + "usageDescription": "", + "userEditable": false, + "viewable": true + }, + "sn": { + "description": "Last Name", + "isPersonal": true, + "searchable": true, + "title": "Last Name", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "stateProvince": { + "description": "State/Province", + "isPersonal": false, + "title": "State/Province", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "telephoneNumber": { + "description": "Telephone Number", + "isPersonal": true, + "pattern": "^\\+?([0-9\\- \\(\\)])*$", + "title": "Telephone Number", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "userName": { + "description": "Username", + "isPersonal": true, + "minLength": 1, + "policies": [ + { + "policyId": "valid-username" + }, + { + "params": { + "forbiddenChars": [ + "/" + ] + }, + "policyId": "cannot-contain-characters" + }, + { + "params": { + "minLength": 1 + }, + "policyId": "minimum-length" + }, + { + "params": { + "maxLength": 255 + }, + "policyId": "maximum-length" + } + ], + "searchable": true, + "title": "Username", + "type": "string", + "usageDescription": "", + "userEditable": true, + "viewable": true + }, + "webauthnDeviceProfiles": { + "description": "Web AuthN Device Profiles", + "isPersonal": false, + "items": { + "title": "Profile", + "type": "string" + }, + "searchable": false, + "title": "Web AuthN Device Profiles", + "type": "array", + "userEditable": true, + "viewable": true + } + }, + "required": [ + "userName", + "givenName", + "sn", + "mail" + ], + "title": "Bravo realm - User", + "type": "object", + "viewable": true + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_user.managed.scripts/postUpdate.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_user.managed.scripts/postUpdate.script.js new file mode 100644 index 000000000..2802f2cac --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/bravo_user.managed.scripts/postUpdate.script.js @@ -0,0 +1,4 @@ +//extract feature test UPDATED POSTUPDATE SCRIPT + + +//test UPDATED diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/managed.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/managed.idm.json new file mode 100644 index 000000000..cffcb4462 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/managed/managed.idm.json @@ -0,0 +1,21 @@ +{ + "idm": { + "managed": { + "_id": "managed", + "objects": [ + "file://alpha_user.managed.json", + "file://bravo_user.managed.json", + "file://alpha_role.managed.json", + "file://bravo_role.managed.json", + "file://alpha_assignment.managed.json", + "file://bravo_assignment.managed.json", + "file://alpha_organization.managed.json", + "file://bravo_organization.managed.json", + "file://alpha_group.managed.json", + "file://bravo_group.managed.json", + "file://alpha_application.managed.json", + "file://bravo_application.managed.json" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/policy.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/policy.idm.json new file mode 100644 index 000000000..ab5b687a9 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/policy.idm.json @@ -0,0 +1,9 @@ +{ + "idm": { + "policy": { + "_id": "policy", + "additionalFiles": [], + "resources": [] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/privilegeAssignments.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/privilegeAssignments.idm.json new file mode 100644 index 000000000..7b0f0a2ce --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/privilegeAssignments.idm.json @@ -0,0 +1,31 @@ +{ + "idm": { + "privilegeAssignments": { + "_id": "privilegeAssignments", + "privilegeAssignments": [ + { + "name": "ownerPrivileges", + "privileges": [ + "owner-view-update-delete-orgs", + "owner-create-orgs", + "owner-view-update-delete-admins-and-members", + "owner-create-admins", + "admin-view-update-delete-members", + "admin-create-members" + ], + "relationshipField": "ownerOfOrg" + }, + { + "name": "adminPrivileges", + "privileges": [ + "admin-view-update-delete-orgs", + "admin-create-orgs", + "admin-view-update-delete-members", + "admin-create-members" + ], + "relationshipField": "adminOfOrg" + } + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/privileges.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/privileges.idm.json new file mode 100644 index 000000000..2df21b067 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/privileges.idm.json @@ -0,0 +1,8 @@ +{ + "idm": { + "privileges": { + "_id": "privileges", + "privileges": [] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/repo.ds.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/repo.ds.idm.json new file mode 100644 index 000000000..b305e195b --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/repo.ds.idm.json @@ -0,0 +1,1437 @@ +{ + "idm": { + "repo.ds": { + "_id": "repo.ds", + "resourceMapping": { + "genericMapping": { + "managed/alpha_application": { + "dnTemplate": "ou=application,o=alpha,o=root,ou=identities", + "jsonAttribute": "fr-idm-managed-application-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-application" + ], + "properties": { + "members": { + "isMultiValued": true, + "propertyName": "applications", + "resourcePath": "managed/alpha_user", + "type": "reverseReference" + }, + "name": { + "ldapAttribute": "fr-idm-managed-application-name", + "type": "simple" + }, + "owners": { + "isMultiValued": true, + "propertyName": "ownerOfApp", + "resourcePath": "managed/alpha_user", + "type": "reverseReference" + }, + "roles": { + "isMultiValued": true, + "propertyName": "applications", + "resourcePath": "managed/alpha_role", + "type": "reverseReference" + } + } + }, + "managed/alpha_assignment": { + "dnTemplate": "ou=assignment,o=alpha,o=root,ou=identities", + "jsonAttribute": "fr-idm-managed-assignment-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-assignment" + ], + "properties": { + "condition": { + "ldapAttribute": "fr-idm-assignment-condition", + "type": "simple" + }, + "members": { + "isMultiValued": true, + "propertyName": "assignments", + "resourcePath": "managed/alpha_user", + "type": "reverseReference" + }, + "roles": { + "isMultiValued": true, + "propertyName": "assignments", + "resourcePath": "managed/alpha_role", + "type": "reverseReference" + } + } + }, + "managed/alpha_group": { + "dnTemplate": "ou=groups,o=alpha,o=root,ou=identities", + "idGenerator": { + "propertyName": "name", + "type": "property" + }, + "jsonAttribute": "fr-idm-managed-group-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "namingStrategy": { + "dnAttribute": "cn", + "type": "clientDnNaming" + }, + "nativeId": false, + "objectClasses": [ + "top", + "groupOfURLs", + "fr-idm-managed-group" + ], + "properties": { + "_id": { + "ldapAttribute": "cn", + "primaryKey": true, + "type": "simple", + "writability": "createOnly" + }, + "condition": { + "ldapAttribute": "fr-idm-managed-group-condition", + "type": "simple" + }, + "description": { + "ldapAttribute": "description", + "type": "simple" + }, + "members": { + "isMultiValued": true, + "propertyName": "groups", + "resourcePath": "managed/alpha_user", + "type": "reverseReference" + } + } + }, + "managed/alpha_organization": { + "dnTemplate": "ou=organization,o=alpha,o=root,ou=identities", + "jsonAttribute": "fr-idm-managed-organization-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-organization", + "fr-ext-attrs" + ], + "properties": { + "admins": { + "isMultiValued": true, + "propertyName": "adminOfOrg", + "resourcePath": "managed/alpha_user", + "type": "reverseReference" + }, + "children": { + "isMultiValued": true, + "propertyName": "parent", + "resourcePath": "managed/alpha_organization", + "type": "reverseReference" + }, + "members": { + "isMultiValued": true, + "propertyName": "memberOfOrg", + "resourcePath": "managed/alpha_user", + "type": "reverseReference" + }, + "name": { + "ldapAttribute": "fr-idm-managed-organization-name", + "type": "simple" + }, + "owners": { + "isMultiValued": true, + "propertyName": "ownerOfOrg", + "resourcePath": "managed/alpha_user", + "type": "reverseReference" + }, + "parent": { + "ldapAttribute": "fr-idm-managed-organization-parent", + "primaryKey": "uid", + "resourcePath": "managed/alpha_organization", + "type": "reference" + } + } + }, + "managed/alpha_role": { + "dnTemplate": "ou=role,o=alpha,o=root,ou=identities", + "jsonAttribute": "fr-idm-managed-role-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchManagedRole", + "objectClasses": [ + "uidObject", + "fr-idm-managed-role" + ], + "properties": { + "applications": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-role-applications", + "primaryKey": "uid", + "resourcePath": "managed/alpha_application", + "type": "reference" + }, + "assignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-role-assignments", + "primaryKey": "uid", + "resourcePath": "managed/alpha_assignment", + "type": "reference" + }, + "members": { + "isMultiValued": true, + "propertyName": "roles", + "resourcePath": "managed/alpha_user", + "type": "reverseReference" + } + } + }, + "managed/alpha_user": { + "dnTemplate": "ou=user,o=alpha,o=root,ou=identities", + "jsonAttribute": "fr-idm-custom-attrs", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "namingStrategy": { + "dnAttribute": "fr-idm-uuid", + "type": "clientDnNaming" + }, + "nativeId": false, + "objectClasses": [ + "person", + "organizationalPerson", + "inetOrgPerson", + "iplanet-am-user-service", + "devicePrintProfilesContainer", + "deviceProfilesContainer", + "kbaInfoContainer", + "fr-idm-managed-user-explicit", + "forgerock-am-dashboard-service", + "inetuser", + "iplanet-am-auth-configuration-service", + "iplanet-am-managed-person", + "iPlanetPreferences", + "oathDeviceProfilesContainer", + "pushDeviceProfilesContainer", + "sunAMAuthAccountLockout", + "sunFMSAML2NameIdentifier", + "webauthnDeviceProfilesContainer", + "fr-idm-hybrid-obj", + "fr-ext-attrs" + ], + "properties": { + "_id": { + "ldapAttribute": "fr-idm-uuid", + "primaryKey": true, + "type": "simple" + }, + "_meta": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-meta", + "primaryKey": "uid", + "resourcePath": "managed/alpha_usermeta", + "type": "reference" + }, + "_notifications": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-notifications", + "primaryKey": "uid", + "resourcePath": "internal/notification", + "type": "reference" + }, + "accountStatus": { + "ldapAttribute": "inetUserStatus", + "type": "simple" + }, + "adminOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-admin", + "primaryKey": "uid", + "resourcePath": "managed/alpha_organization", + "type": "reference" + }, + "aliasList": { + "isMultiValued": true, + "ldapAttribute": "iplanet-am-user-alias-list", + "type": "simple" + }, + "applications": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-application-member", + "primaryKey": "uid", + "resourcePath": "managed/alpha_application", + "type": "reference" + }, + "assignedDashboard": { + "isMultiValued": true, + "ldapAttribute": "assignedDashboard", + "type": "simple" + }, + "assignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-assignment-member", + "primaryKey": "uid", + "resourcePath": "managed/alpha_assignment", + "type": "reference" + }, + "authzRoles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-authzroles-internal-role", + "primaryKey": "cn", + "resourcePath": "internal/role", + "type": "reference" + }, + "city": { + "ldapAttribute": "l", + "type": "simple" + }, + "cn": { + "ldapAttribute": "cn", + "type": "simple" + }, + "consentedMappings": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-consentedMapping", + "type": "json" + }, + "country": { + "ldapAttribute": "co", + "type": "simple" + }, + "description": { + "ldapAttribute": "description", + "type": "simple" + }, + "devicePrintProfiles": { + "isMultiValued": true, + "ldapAttribute": "devicePrintProfiles", + "type": "simple" + }, + "deviceProfiles": { + "isMultiValued": true, + "ldapAttribute": "deviceProfiles", + "type": "simple" + }, + "displayName": { + "ldapAttribute": "displayName", + "type": "simple" + }, + "effectiveApplications": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-effectiveApplications", + "type": "json" + }, + "effectiveAssignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-effectiveAssignment", + "type": "json" + }, + "effectiveGroups": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-effectiveGroup", + "type": "json" + }, + "effectiveRoles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-effectiveRole", + "type": "json" + }, + "frIndexedDate1": { + "ldapAttribute": "fr-attr-idate1", + "type": "simple" + }, + "frIndexedDate2": { + "ldapAttribute": "fr-attr-idate2", + "type": "simple" + }, + "frIndexedDate3": { + "ldapAttribute": "fr-attr-idate3", + "type": "simple" + }, + "frIndexedDate4": { + "ldapAttribute": "fr-attr-idate4", + "type": "simple" + }, + "frIndexedDate5": { + "ldapAttribute": "fr-attr-idate5", + "type": "simple" + }, + "frIndexedInteger1": { + "ldapAttribute": "fr-attr-iint1", + "type": "simple" + }, + "frIndexedInteger2": { + "ldapAttribute": "fr-attr-iint2", + "type": "simple" + }, + "frIndexedInteger3": { + "ldapAttribute": "fr-attr-iint3", + "type": "simple" + }, + "frIndexedInteger4": { + "ldapAttribute": "fr-attr-iint4", + "type": "simple" + }, + "frIndexedInteger5": { + "ldapAttribute": "fr-attr-iint5", + "type": "simple" + }, + "frIndexedMultivalued1": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti1", + "type": "simple" + }, + "frIndexedMultivalued2": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti2", + "type": "simple" + }, + "frIndexedMultivalued3": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti3", + "type": "simple" + }, + "frIndexedMultivalued4": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti4", + "type": "simple" + }, + "frIndexedMultivalued5": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti5", + "type": "simple" + }, + "frIndexedString1": { + "ldapAttribute": "fr-attr-istr1", + "type": "simple" + }, + "frIndexedString10": { + "ldapAttribute": "fr-attr-istr10", + "type": "simple" + }, + "frIndexedString11": { + "ldapAttribute": "fr-attr-istr11", + "type": "simple" + }, + "frIndexedString12": { + "ldapAttribute": "fr-attr-istr12", + "type": "simple" + }, + "frIndexedString13": { + "ldapAttribute": "fr-attr-istr13", + "type": "simple" + }, + "frIndexedString14": { + "ldapAttribute": "fr-attr-istr14", + "type": "simple" + }, + "frIndexedString15": { + "ldapAttribute": "fr-attr-istr15", + "type": "simple" + }, + "frIndexedString16": { + "ldapAttribute": "fr-attr-istr16", + "type": "simple" + }, + "frIndexedString17": { + "ldapAttribute": "fr-attr-istr17", + "type": "simple" + }, + "frIndexedString18": { + "ldapAttribute": "fr-attr-istr18", + "type": "simple" + }, + "frIndexedString19": { + "ldapAttribute": "fr-attr-istr19", + "type": "simple" + }, + "frIndexedString2": { + "ldapAttribute": "fr-attr-istr2", + "type": "simple" + }, + "frIndexedString20": { + "ldapAttribute": "fr-attr-istr20", + "type": "simple" + }, + "frIndexedString3": { + "ldapAttribute": "fr-attr-istr3", + "type": "simple" + }, + "frIndexedString4": { + "ldapAttribute": "fr-attr-istr4", + "type": "simple" + }, + "frIndexedString5": { + "ldapAttribute": "fr-attr-istr5", + "type": "simple" + }, + "frIndexedString6": { + "ldapAttribute": "fr-attr-istr6", + "type": "simple" + }, + "frIndexedString7": { + "ldapAttribute": "fr-attr-istr7", + "type": "simple" + }, + "frIndexedString8": { + "ldapAttribute": "fr-attr-istr8", + "type": "simple" + }, + "frIndexedString9": { + "ldapAttribute": "fr-attr-istr9", + "type": "simple" + }, + "frUnindexedDate1": { + "ldapAttribute": "fr-attr-date1", + "type": "simple" + }, + "frUnindexedDate2": { + "ldapAttribute": "fr-attr-date2", + "type": "simple" + }, + "frUnindexedDate3": { + "ldapAttribute": "fr-attr-date3", + "type": "simple" + }, + "frUnindexedDate4": { + "ldapAttribute": "fr-attr-date4", + "type": "simple" + }, + "frUnindexedDate5": { + "ldapAttribute": "fr-attr-date5", + "type": "simple" + }, + "frUnindexedInteger1": { + "ldapAttribute": "fr-attr-int1", + "type": "simple" + }, + "frUnindexedInteger2": { + "ldapAttribute": "fr-attr-int2", + "type": "simple" + }, + "frUnindexedInteger3": { + "ldapAttribute": "fr-attr-int3", + "type": "simple" + }, + "frUnindexedInteger4": { + "ldapAttribute": "fr-attr-int4", + "type": "simple" + }, + "frUnindexedInteger5": { + "ldapAttribute": "fr-attr-int5", + "type": "simple" + }, + "frUnindexedMultivalued1": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi1", + "type": "simple" + }, + "frUnindexedMultivalued2": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi2", + "type": "simple" + }, + "frUnindexedMultivalued3": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi3", + "type": "simple" + }, + "frUnindexedMultivalued4": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi4", + "type": "simple" + }, + "frUnindexedMultivalued5": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi5", + "type": "simple" + }, + "frUnindexedString1": { + "ldapAttribute": "fr-attr-str1", + "type": "simple" + }, + "frUnindexedString2": { + "ldapAttribute": "fr-attr-str2", + "type": "simple" + }, + "frUnindexedString3": { + "ldapAttribute": "fr-attr-str3", + "type": "simple" + }, + "frUnindexedString4": { + "ldapAttribute": "fr-attr-str4", + "type": "simple" + }, + "frUnindexedString5": { + "ldapAttribute": "fr-attr-str5", + "type": "simple" + }, + "givenName": { + "ldapAttribute": "givenName", + "type": "simple" + }, + "groups": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-groups", + "primaryKey": "cn", + "resourcePath": "managed/alpha_group", + "type": "reference" + }, + "kbaInfo": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-kbaInfo", + "type": "json" + }, + "lastSync": { + "ldapAttribute": "fr-idm-lastSync", + "type": "json" + }, + "mail": { + "ldapAttribute": "mail", + "type": "simple" + }, + "manager": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-manager", + "primaryKey": "uid", + "resourcePath": "managed/alpha_user", + "type": "reference" + }, + "memberOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-member", + "primaryKey": "uid", + "resourcePath": "managed/alpha_organization", + "type": "reference" + }, + "memberOfOrgIDs": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-memberoforgid", + "type": "simple" + }, + "oathDeviceProfiles": { + "isMultiValued": true, + "ldapAttribute": "oathDeviceProfiles", + "type": "simple" + }, + "ownerOfApp": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-application-owner", + "primaryKey": "uid", + "resourcePath": "managed/alpha_application", + "type": "reference" + }, + "ownerOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-owner", + "primaryKey": "uid", + "resourcePath": "managed/alpha_organization", + "type": "reference" + }, + "password": { + "ldapAttribute": "userPassword", + "type": "simple" + }, + "passwordExpirationTime": { + "ldapAttribute": "pwdExpirationTime", + "type": "simple", + "writability": "readOnlyDiscardWrites" + }, + "passwordLastChangedTime": { + "ldapAttribute": "pwdChangedTime", + "type": "simple", + "writability": "readOnlyDiscardWrites" + }, + "postalAddress": { + "ldapAttribute": "street", + "type": "simple" + }, + "postalCode": { + "ldapAttribute": "postalCode", + "type": "simple" + }, + "preferences": { + "ldapAttribute": "fr-idm-preferences", + "type": "json" + }, + "profileImage": { + "ldapAttribute": "labeledURI", + "type": "simple" + }, + "pushDeviceProfiles": { + "isMultiValued": true, + "ldapAttribute": "pushDeviceProfiles", + "type": "simple" + }, + "reports": { + "isMultiValued": true, + "propertyName": "manager", + "resourcePath": "managed/alpha_user", + "type": "reverseReference" + }, + "roles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-roles", + "primaryKey": "uid", + "resourcePath": "managed/alpha_role", + "type": "reference" + }, + "sn": { + "ldapAttribute": "sn", + "type": "simple" + }, + "stateProvince": { + "ldapAttribute": "st", + "type": "simple" + }, + "telephoneNumber": { + "ldapAttribute": "telephoneNumber", + "type": "simple" + }, + "userName": { + "ldapAttribute": "uid", + "type": "simple" + }, + "webauthnDeviceProfiles": { + "isMultiValued": true, + "ldapAttribute": "webauthnDeviceProfiles", + "type": "simple" + } + } + }, + "managed/alpha_usermeta": { + "dnTemplate": "ou=usermeta,o=alpha,o=root,ou=identities", + "jsonAttribute": "fr-idm-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-generic-obj" + ], + "properties": { + "target": { + "propertyName": "_meta", + "resourcePath": "managed/alpha_user", + "type": "reverseReference" + } + } + }, + "managed/bravo_application": { + "dnTemplate": "ou=application,o=bravo,o=root,ou=identities", + "jsonAttribute": "fr-idm-managed-application-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-application" + ], + "properties": { + "members": { + "isMultiValued": true, + "propertyName": "applications", + "resourcePath": "managed/bravo_user", + "type": "reverseReference" + }, + "name": { + "ldapAttribute": "fr-idm-managed-application-name", + "type": "simple" + }, + "owners": { + "isMultiValued": true, + "propertyName": "ownerOfApp", + "resourcePath": "managed/bravo_user", + "type": "reverseReference" + }, + "roles": { + "isMultiValued": true, + "propertyName": "applications", + "resourcePath": "managed/bravo_role", + "type": "reverseReference" + } + } + }, + "managed/bravo_assignment": { + "dnTemplate": "ou=assignment,o=bravo,o=root,ou=identities", + "jsonAttribute": "fr-idm-managed-assignment-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-assignment" + ], + "properties": { + "condition": { + "ldapAttribute": "fr-idm-assignment-condition", + "type": "simple" + }, + "members": { + "isMultiValued": true, + "propertyName": "assignments", + "resourcePath": "managed/bravo_user", + "type": "reverseReference" + }, + "roles": { + "isMultiValued": true, + "propertyName": "assignments", + "resourcePath": "managed/bravo_role", + "type": "reverseReference" + } + } + }, + "managed/bravo_group": { + "dnTemplate": "ou=groups,o=bravo,o=root,ou=identities", + "idGenerator": { + "propertyName": "name", + "type": "property" + }, + "jsonAttribute": "fr-idm-managed-group-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "namingStrategy": { + "dnAttribute": "cn", + "type": "clientDnNaming" + }, + "nativeId": false, + "objectClasses": [ + "top", + "groupOfURLs", + "fr-idm-managed-group" + ], + "properties": { + "_id": { + "ldapAttribute": "cn", + "primaryKey": true, + "type": "simple", + "writability": "createOnly" + }, + "condition": { + "ldapAttribute": "fr-idm-managed-group-condition", + "type": "simple" + }, + "description": { + "ldapAttribute": "description", + "type": "simple" + }, + "members": { + "isMultiValued": true, + "propertyName": "groups", + "resourcePath": "managed/bravo_user", + "type": "reverseReference" + } + } + }, + "managed/bravo_organization": { + "dnTemplate": "ou=organization,o=bravo,o=root,ou=identities", + "jsonAttribute": "fr-idm-managed-organization-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-managed-organization", + "fr-ext-attrs" + ], + "properties": { + "admins": { + "isMultiValued": true, + "propertyName": "adminOfOrg", + "resourcePath": "managed/bravo_user", + "type": "reverseReference" + }, + "children": { + "isMultiValued": true, + "propertyName": "parent", + "resourcePath": "managed/bravo_organization", + "type": "reverseReference" + }, + "members": { + "isMultiValued": true, + "propertyName": "memberOfOrg", + "resourcePath": "managed/bravo_user", + "type": "reverseReference" + }, + "name": { + "ldapAttribute": "fr-idm-managed-organization-name", + "type": "simple" + }, + "owners": { + "isMultiValued": true, + "propertyName": "ownerOfOrg", + "resourcePath": "managed/bravo_user", + "type": "reverseReference" + }, + "parent": { + "ldapAttribute": "fr-idm-managed-organization-parent", + "primaryKey": "uid", + "resourcePath": "managed/bravo_organization", + "type": "reference" + } + } + }, + "managed/bravo_role": { + "dnTemplate": "ou=role,o=bravo,o=root,ou=identities", + "jsonAttribute": "fr-idm-managed-role-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatchManagedRole", + "objectClasses": [ + "uidObject", + "fr-idm-managed-role" + ], + "properties": { + "applications": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-role-applications", + "primaryKey": "uid", + "resourcePath": "managed/bravo_application", + "type": "reference" + }, + "assignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-role-assignments", + "primaryKey": "uid", + "resourcePath": "managed/bravo_assignment", + "type": "reference" + }, + "members": { + "isMultiValued": true, + "propertyName": "roles", + "resourcePath": "managed/bravo_user", + "type": "reverseReference" + } + } + }, + "managed/bravo_user": { + "dnTemplate": "ou=user,o=bravo,o=root,ou=identities", + "jsonAttribute": "fr-idm-custom-attrs", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "namingStrategy": { + "dnAttribute": "fr-idm-uuid", + "type": "clientDnNaming" + }, + "nativeId": false, + "objectClasses": [ + "person", + "organizationalPerson", + "inetOrgPerson", + "iplanet-am-user-service", + "devicePrintProfilesContainer", + "deviceProfilesContainer", + "kbaInfoContainer", + "fr-idm-managed-user-explicit", + "forgerock-am-dashboard-service", + "inetuser", + "iplanet-am-auth-configuration-service", + "iplanet-am-managed-person", + "iPlanetPreferences", + "oathDeviceProfilesContainer", + "pushDeviceProfilesContainer", + "sunAMAuthAccountLockout", + "sunFMSAML2NameIdentifier", + "webauthnDeviceProfilesContainer", + "fr-idm-hybrid-obj", + "fr-ext-attrs" + ], + "properties": { + "_id": { + "ldapAttribute": "fr-idm-uuid", + "primaryKey": true, + "type": "simple" + }, + "_meta": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-meta", + "primaryKey": "uid", + "resourcePath": "managed/bravo_usermeta", + "type": "reference" + }, + "_notifications": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-notifications", + "primaryKey": "uid", + "resourcePath": "internal/notification", + "type": "reference" + }, + "accountStatus": { + "ldapAttribute": "inetUserStatus", + "type": "simple" + }, + "adminOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-admin", + "primaryKey": "uid", + "resourcePath": "managed/bravo_organization", + "type": "reference" + }, + "aliasList": { + "isMultiValued": true, + "ldapAttribute": "iplanet-am-user-alias-list", + "type": "simple" + }, + "applications": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-application-member", + "primaryKey": "uid", + "resourcePath": "managed/bravo_application", + "type": "reference" + }, + "assignedDashboard": { + "isMultiValued": true, + "ldapAttribute": "assignedDashboard", + "type": "simple" + }, + "assignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-assignment-member", + "primaryKey": "uid", + "resourcePath": "managed/bravo_assignment", + "type": "reference" + }, + "authzRoles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-authzroles-internal-role", + "primaryKey": "cn", + "resourcePath": "internal/role", + "type": "reference" + }, + "city": { + "ldapAttribute": "l", + "type": "simple" + }, + "cn": { + "ldapAttribute": "cn", + "type": "simple" + }, + "consentedMappings": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-consentedMapping", + "type": "json" + }, + "country": { + "ldapAttribute": "co", + "type": "simple" + }, + "description": { + "ldapAttribute": "description", + "type": "simple" + }, + "devicePrintProfiles": { + "isMultiValued": true, + "ldapAttribute": "devicePrintProfiles", + "type": "simple" + }, + "deviceProfiles": { + "isMultiValued": true, + "ldapAttribute": "deviceProfiles", + "type": "simple" + }, + "displayName": { + "ldapAttribute": "displayName", + "type": "simple" + }, + "effectiveApplications": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-effectiveApplications", + "type": "json" + }, + "effectiveAssignments": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-effectiveAssignment", + "type": "json" + }, + "effectiveGroups": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-effectiveGroup", + "type": "json" + }, + "effectiveRoles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-effectiveRole", + "type": "json" + }, + "frIndexedDate1": { + "ldapAttribute": "fr-attr-idate1", + "type": "simple" + }, + "frIndexedDate2": { + "ldapAttribute": "fr-attr-idate2", + "type": "simple" + }, + "frIndexedDate3": { + "ldapAttribute": "fr-attr-idate3", + "type": "simple" + }, + "frIndexedDate4": { + "ldapAttribute": "fr-attr-idate4", + "type": "simple" + }, + "frIndexedDate5": { + "ldapAttribute": "fr-attr-idate5", + "type": "simple" + }, + "frIndexedInteger1": { + "ldapAttribute": "fr-attr-iint1", + "type": "simple" + }, + "frIndexedInteger2": { + "ldapAttribute": "fr-attr-iint2", + "type": "simple" + }, + "frIndexedInteger3": { + "ldapAttribute": "fr-attr-iint3", + "type": "simple" + }, + "frIndexedInteger4": { + "ldapAttribute": "fr-attr-iint4", + "type": "simple" + }, + "frIndexedInteger5": { + "ldapAttribute": "fr-attr-iint5", + "type": "simple" + }, + "frIndexedMultivalued1": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti1", + "type": "simple" + }, + "frIndexedMultivalued2": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti2", + "type": "simple" + }, + "frIndexedMultivalued3": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti3", + "type": "simple" + }, + "frIndexedMultivalued4": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti4", + "type": "simple" + }, + "frIndexedMultivalued5": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-imulti5", + "type": "simple" + }, + "frIndexedString1": { + "ldapAttribute": "fr-attr-istr1", + "type": "simple" + }, + "frIndexedString10": { + "ldapAttribute": "fr-attr-istr10", + "type": "simple" + }, + "frIndexedString11": { + "ldapAttribute": "fr-attr-istr11", + "type": "simple" + }, + "frIndexedString12": { + "ldapAttribute": "fr-attr-istr12", + "type": "simple" + }, + "frIndexedString13": { + "ldapAttribute": "fr-attr-istr13", + "type": "simple" + }, + "frIndexedString14": { + "ldapAttribute": "fr-attr-istr14", + "type": "simple" + }, + "frIndexedString15": { + "ldapAttribute": "fr-attr-istr15", + "type": "simple" + }, + "frIndexedString16": { + "ldapAttribute": "fr-attr-istr16", + "type": "simple" + }, + "frIndexedString17": { + "ldapAttribute": "fr-attr-istr17", + "type": "simple" + }, + "frIndexedString18": { + "ldapAttribute": "fr-attr-istr18", + "type": "simple" + }, + "frIndexedString19": { + "ldapAttribute": "fr-attr-istr19", + "type": "simple" + }, + "frIndexedString2": { + "ldapAttribute": "fr-attr-istr2", + "type": "simple" + }, + "frIndexedString20": { + "ldapAttribute": "fr-attr-istr20", + "type": "simple" + }, + "frIndexedString3": { + "ldapAttribute": "fr-attr-istr3", + "type": "simple" + }, + "frIndexedString4": { + "ldapAttribute": "fr-attr-istr4", + "type": "simple" + }, + "frIndexedString5": { + "ldapAttribute": "fr-attr-istr5", + "type": "simple" + }, + "frIndexedString6": { + "ldapAttribute": "fr-attr-istr6", + "type": "simple" + }, + "frIndexedString7": { + "ldapAttribute": "fr-attr-istr7", + "type": "simple" + }, + "frIndexedString8": { + "ldapAttribute": "fr-attr-istr8", + "type": "simple" + }, + "frIndexedString9": { + "ldapAttribute": "fr-attr-istr9", + "type": "simple" + }, + "frUnindexedDate1": { + "ldapAttribute": "fr-attr-date1", + "type": "simple" + }, + "frUnindexedDate2": { + "ldapAttribute": "fr-attr-date2", + "type": "simple" + }, + "frUnindexedDate3": { + "ldapAttribute": "fr-attr-date3", + "type": "simple" + }, + "frUnindexedDate4": { + "ldapAttribute": "fr-attr-date4", + "type": "simple" + }, + "frUnindexedDate5": { + "ldapAttribute": "fr-attr-date5", + "type": "simple" + }, + "frUnindexedInteger1": { + "ldapAttribute": "fr-attr-int1", + "type": "simple" + }, + "frUnindexedInteger2": { + "ldapAttribute": "fr-attr-int2", + "type": "simple" + }, + "frUnindexedInteger3": { + "ldapAttribute": "fr-attr-int3", + "type": "simple" + }, + "frUnindexedInteger4": { + "ldapAttribute": "fr-attr-int4", + "type": "simple" + }, + "frUnindexedInteger5": { + "ldapAttribute": "fr-attr-int5", + "type": "simple" + }, + "frUnindexedMultivalued1": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi1", + "type": "simple" + }, + "frUnindexedMultivalued2": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi2", + "type": "simple" + }, + "frUnindexedMultivalued3": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi3", + "type": "simple" + }, + "frUnindexedMultivalued4": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi4", + "type": "simple" + }, + "frUnindexedMultivalued5": { + "isMultiValued": true, + "ldapAttribute": "fr-attr-multi5", + "type": "simple" + }, + "frUnindexedString1": { + "ldapAttribute": "fr-attr-str1", + "type": "simple" + }, + "frUnindexedString2": { + "ldapAttribute": "fr-attr-str2", + "type": "simple" + }, + "frUnindexedString3": { + "ldapAttribute": "fr-attr-str3", + "type": "simple" + }, + "frUnindexedString4": { + "ldapAttribute": "fr-attr-str4", + "type": "simple" + }, + "frUnindexedString5": { + "ldapAttribute": "fr-attr-str5", + "type": "simple" + }, + "givenName": { + "ldapAttribute": "givenName", + "type": "simple" + }, + "groups": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-groups", + "primaryKey": "cn", + "resourcePath": "managed/bravo_group", + "type": "reference" + }, + "kbaInfo": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-kbaInfo", + "type": "json" + }, + "lastSync": { + "ldapAttribute": "fr-idm-lastSync", + "type": "json" + }, + "mail": { + "ldapAttribute": "mail", + "type": "simple" + }, + "manager": { + "isMultiValued": false, + "ldapAttribute": "fr-idm-managed-user-manager", + "primaryKey": "uid", + "resourcePath": "managed/bravo_user", + "type": "reference" + }, + "memberOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-member", + "primaryKey": "uid", + "resourcePath": "managed/bravo_organization", + "type": "reference" + }, + "memberOfOrgIDs": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-memberoforgid", + "type": "simple" + }, + "oathDeviceProfiles": { + "isMultiValued": true, + "ldapAttribute": "oathDeviceProfiles", + "type": "simple" + }, + "ownerOfApp": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-application-owner", + "primaryKey": "uid", + "resourcePath": "managed/bravo_application", + "type": "reference" + }, + "ownerOfOrg": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-organization-owner", + "primaryKey": "uid", + "resourcePath": "managed/bravo_organization", + "type": "reference" + }, + "password": { + "ldapAttribute": "userPassword", + "type": "simple" + }, + "passwordExpirationTime": { + "ldapAttribute": "pwdExpirationTime", + "type": "simple", + "writability": "readOnlyDiscardWrites" + }, + "passwordLastChangedTime": { + "ldapAttribute": "pwdChangedTime", + "type": "simple", + "writability": "readOnlyDiscardWrites" + }, + "postalAddress": { + "ldapAttribute": "street", + "type": "simple" + }, + "postalCode": { + "ldapAttribute": "postalCode", + "type": "simple" + }, + "preferences": { + "ldapAttribute": "fr-idm-preferences", + "type": "json" + }, + "profileImage": { + "ldapAttribute": "labeledURI", + "type": "simple" + }, + "pushDeviceProfiles": { + "isMultiValued": true, + "ldapAttribute": "pushDeviceProfiles", + "type": "simple" + }, + "reports": { + "isMultiValued": true, + "propertyName": "manager", + "resourcePath": "managed/bravo_user", + "type": "reverseReference" + }, + "roles": { + "isMultiValued": true, + "ldapAttribute": "fr-idm-managed-user-roles", + "primaryKey": "uid", + "resourcePath": "managed/bravo_role", + "type": "reference" + }, + "sn": { + "ldapAttribute": "sn", + "type": "simple" + }, + "stateProvince": { + "ldapAttribute": "st", + "type": "simple" + }, + "telephoneNumber": { + "ldapAttribute": "telephoneNumber", + "type": "simple" + }, + "userName": { + "ldapAttribute": "uid", + "type": "simple" + }, + "webauthnDeviceProfiles": { + "isMultiValued": true, + "ldapAttribute": "webauthnDeviceProfiles", + "type": "simple" + } + } + }, + "managed/bravo_usermeta": { + "dnTemplate": "ou=usermeta,o=bravo,o=root,ou=identities", + "jsonAttribute": "fr-idm-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-generic-obj" + ], + "properties": { + "target": { + "propertyName": "_meta", + "resourcePath": "managed/bravo_user", + "type": "reverseReference" + } + } + }, + "managed/teammembermeta": { + "dnTemplate": "ou=teammembermeta,o=root,ou=identities", + "jsonAttribute": "fr-idm-json", + "jsonQueryEqualityMatchingRule": "caseIgnoreJsonQueryMatch", + "objectClasses": [ + "uidObject", + "fr-idm-generic-obj" + ], + "properties": { + "target": { + "propertyName": "_meta", + "resourcePath": "managed/teammember", + "type": "reverseReference" + } + } + } + } + } + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/router.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/router.idm.json new file mode 100644 index 000000000..4a80f1149 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/router.idm.json @@ -0,0 +1,8 @@ +{ + "idm": { + "router": { + "_id": "router", + "filters": [] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/secrets.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/secrets.idm.json new file mode 100644 index 000000000..281213d7b --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/secrets.idm.json @@ -0,0 +1,113 @@ +{ + "idm": { + "secrets": { + "_id": "secrets", + "stores": [ + { + "class": "org.forgerock.openidm.secrets.config.KeyStoreSecretStore", + "config": { + "file": "&{openidm.keystore.location|&{idm.install.dir}/security/keystore.jceks}", + "mappings": [ + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}", + "openidm-localhost" + ], + "secretId": "idm.default", + "types": [ + "ENCRYPT", + "DECRYPT" + ] + }, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}" + ], + "secretId": "idm.config.encryption", + "types": [ + "ENCRYPT", + "DECRYPT" + ] + }, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}" + ], + "secretId": "idm.password.encryption", + "types": [ + "ENCRYPT", + "DECRYPT" + ] + }, + { + "aliases": [ + "&{openidm.https.keystore.cert.alias|openidm-localhost}" + ], + "secretId": "idm.jwt.session.module.encryption", + "types": [ + "ENCRYPT", + "DECRYPT" + ] + }, + { + "aliases": [ + "&{openidm.config.crypto.jwtsession.hmackey.alias|openidm-jwtsessionhmac-key}" + ], + "secretId": "idm.jwt.session.module.signing", + "types": [ + "SIGN", + "VERIFY" + ] + }, + { + "aliases": [ + "selfservice" + ], + "secretId": "idm.selfservice.encryption", + "types": [ + "ENCRYPT", + "DECRYPT" + ] + }, + { + "aliases": [ + "&{openidm.config.crypto.selfservice.sharedkey.alias|openidm-selfservice-key}" + ], + "secretId": "idm.selfservice.signing", + "types": [ + "SIGN", + "VERIFY" + ] + }, + { + "aliases": [ + "&{openidm.config.crypto.alias|openidm-sym-default}" + ], + "secretId": "idm.assignment.attribute.encryption", + "types": [ + "ENCRYPT", + "DECRYPT" + ] + } + ], + "providerName": "&{openidm.keystore.provider|SunJCE}", + "storePassword": "&{openidm.keystore.password|changeit}", + "storetype": "&{openidm.keystore.type|JCEKS}" + }, + "name": "mainKeyStore" + }, + { + "class": "org.forgerock.openidm.secrets.config.KeyStoreSecretStore", + "config": { + "file": "&{openidm.truststore.location|&{idm.install.dir}/security/truststore}", + "mappings": [], + "providerName": "&{openidm.truststore.provider|SUN}", + "storePassword": "&{openidm.truststore.password|changeit}", + "storetype": "&{openidm.truststore.type|JKS}" + }, + "name": "mainTrustStore" + } + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/selfservice.kba.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/selfservice.kba.idm.json new file mode 100644 index 000000000..f05d4f189 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/selfservice.kba.idm.json @@ -0,0 +1,15 @@ +{ + "idm": { + "selfservice.kba": { + "_id": "selfservice.kba", + "kbaPropertyName": "kbaInfo", + "minimumAnswersToDefine": 1, + "minimumAnswersToVerify": 1, + "questions": { + "1": { + "en": "What's your favorite color?" + } + } + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/selfservice.terms.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/selfservice.terms.idm.json new file mode 100644 index 000000000..48341c5fe --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/selfservice.terms.idm.json @@ -0,0 +1,22 @@ +{ + "idm": { + "selfservice.terms": { + "_id": "selfservice.terms", + "active": "0.0", + "uiConfig": { + "buttonText": "Accept", + "displayName": "We've updated our terms", + "purpose": "You must accept the updated terms in order to proceed." + }, + "versions": [ + { + "createDate": "2019-10-28T04:20:11.320Z", + "termsTranslations": { + "en": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum." + }, + "version": "0.0" + } + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/servletfilter/cors.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/servletfilter/cors.idm.json new file mode 100644 index 000000000..9fe932668 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/servletfilter/cors.idm.json @@ -0,0 +1,18 @@ +{ + "idm": { + "servletfilter/cors": { + "_id": "servletfilter/cors", + "initParams": { + "allowCredentials": false, + "allowedHeaders": "authorization,accept,content-type,origin,x-requested-with,cache-control,accept-api-version,if-match,if-none-match", + "allowedMethods": "GET,POST,PUT,DELETE,PATCH", + "allowedOrigins": "*", + "chainPreflight": false, + "exposedHeaders": "WWW-Authenticate" + }, + "urlPatterns": [ + "/*" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/servletfilter/payload.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/servletfilter/payload.idm.json new file mode 100644 index 000000000..78c559ce2 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/servletfilter/payload.idm.json @@ -0,0 +1,13 @@ +{ + "idm": { + "servletfilter/payload": { + "_id": "servletfilter/payload", + "initParams": { + "maxRequestSizeInMegabytes": 5 + }, + "urlPatterns": [ + "&{openidm.servlet.alias}/*" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/servletfilter/upload.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/servletfilter/upload.idm.json new file mode 100644 index 000000000..a593d043b --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/servletfilter/upload.idm.json @@ -0,0 +1,13 @@ +{ + "idm": { + "servletfilter/upload": { + "_id": "servletfilter/upload", + "initParams": { + "maxRequestSizeInMegabytes": 50 + }, + "urlPatterns": [ + "&{openidm.servlet.upload.alias}/*" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui.context/admin.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui.context/admin.idm.json new file mode 100644 index 000000000..c20b3f9a9 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui.context/admin.idm.json @@ -0,0 +1,14 @@ +{ + "idm": { + "ui.context/admin": { + "_id": "ui.context/admin", + "defaultDir": "&{idm.install.dir}/ui/admin/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/admin/extension", + "responseHeaders": { + "X-Frame-Options": "SAMEORIGIN" + }, + "urlContextRoot": "/admin" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui.context/api.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui.context/api.idm.json new file mode 100644 index 000000000..0ace771f4 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui.context/api.idm.json @@ -0,0 +1,13 @@ +{ + "idm": { + "ui.context/api": { + "_id": "ui.context/api", + "authEnabled": true, + "cacheEnabled": false, + "defaultDir": "&{idm.install.dir}/ui/api/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/api/extension", + "urlContextRoot": "/api" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui.context/enduser.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui.context/enduser.idm.json new file mode 100644 index 000000000..76ecb31fd --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui.context/enduser.idm.json @@ -0,0 +1,13 @@ +{ + "idm": { + "ui.context/enduser": { + "_id": "ui.context/enduser", + "defaultDir": "&{idm.install.dir}/ui/enduser", + "enabled": true, + "responseHeaders": { + "X-Frame-Options": "DENY" + }, + "urlContextRoot": "/" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui.context/oauth.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui.context/oauth.idm.json new file mode 100644 index 000000000..63880cdda --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui.context/oauth.idm.json @@ -0,0 +1,12 @@ +{ + "idm": { + "ui.context/oauth": { + "_id": "ui.context/oauth", + "cacheEnabled": true, + "defaultDir": "&{idm.install.dir}/ui/oauth/default", + "enabled": true, + "extensionDir": "&{idm.install.dir}/ui/oauth/extension", + "urlContextRoot": "/oauthReturn" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui/configuration.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui/configuration.idm.json new file mode 100644 index 000000000..a9e34a8a5 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui/configuration.idm.json @@ -0,0 +1,41 @@ +{ + "idm": { + "ui/configuration": { + "_id": "ui/configuration", + "configuration": { + "defaultNotificationType": "info", + "forgotUsername": false, + "lang": "en", + "notificationTypes": { + "error": { + "iconPath": "images/notifications/error.png", + "name": "common.notification.types.error" + }, + "info": { + "iconPath": "images/notifications/info.png", + "name": "common.notification.types.info" + }, + "warning": { + "iconPath": "images/notifications/warning.png", + "name": "common.notification.types.warning" + } + }, + "passwordReset": true, + "passwordResetLink": "", + "platformSettings": { + "adminOauthClient": "idmAdminClient", + "adminOauthClientScopes": "fr:idm:*", + "amUrl": "/am", + "loginUrl": "" + }, + "roles": { + "internal/role/openidm-admin": "ui-admin", + "internal/role/openidm-authorized": "ui-user", + "super-admins": "ui-admin", + "tenant-admins": "ui-admin" + }, + "selfRegistration": true + } + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui/dashboard.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui/dashboard.idm.json new file mode 100644 index 000000000..88000c060 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui/dashboard.idm.json @@ -0,0 +1,178 @@ +{ + "idm": { + "ui/dashboard": { + "_id": "ui/dashboard", + "adminDashboards": [ + { + "isDefault": true, + "name": "Quick Start", + "widgets": [ + { + "cards": [ + { + "href": "#resource/managed/alpha_user/list/", + "icon": "fa-user", + "name": "Manage Users" + }, + { + "href": "#resource/managed/alpha_role/list/", + "icon": "fa-check-square-o", + "name": "Manage Roles" + }, + { + "href": "#connectors/add/", + "icon": "fa-database", + "name": "Add Connector" + }, + { + "href": "#mapping/add/", + "icon": "fa-map-marker", + "name": "Create Mapping" + }, + { + "href": "#managed/add/", + "icon": "fa-tablet", + "name": "Add Device" + }, + { + "href": "#settings/", + "icon": "fa-user", + "name": "Configure System Preferences" + } + ], + "size": "large", + "type": "quickStart" + } + ] + }, + { + "isDefault": false, + "name": "System Monitoring", + "widgets": [ + { + "legendRange": { + "month": [ + 500, + 2500, + 5000 + ], + "week": [ + 10, + 30, + 90, + 270, + 810 + ], + "year": [ + 10000, + 40000, + 100000, + 250000 + ] + }, + "maxRange": "#24423c", + "minRange": "#b0d4cd", + "size": "large", + "type": "audit" + }, + { + "size": "large", + "type": "clusterStatus" + }, + { + "size": "large", + "type": "systemHealthFull" + }, + { + "barchart": "false", + "size": "large", + "type": "lastRecon" + } + ] + }, + { + "isDefault": false, + "name": "Resource Report", + "widgets": [ + { + "selected": "activeUsers", + "size": "x-small", + "type": "counter" + }, + { + "selected": "rolesEnabled", + "size": "x-small", + "type": "counter" + }, + { + "selected": "activeConnectors", + "size": "x-small", + "type": "counter" + }, + { + "size": "large", + "type": "resourceList" + } + ] + }, + { + "isDefault": false, + "name": "Business Report", + "widgets": [ + { + "graphType": "fa-pie-chart", + "providers": [ + "Username/Password" + ], + "size": "x-small", + "type": "signIns", + "widgetTitle": "Sign-Ins" + }, + { + "graphType": "fa-bar-chart", + "size": "x-small", + "type": "passwordResets", + "widgetTitle": "Password Resets" + }, + { + "graphType": "fa-line-chart", + "providers": [ + "Username/Password" + ], + "size": "x-small", + "type": "newRegistrations", + "widgetTitle": "New Registrations" + }, + { + "size": "x-small", + "timezone": { + "hours": "07", + "minutes": "00", + "negative": true + }, + "type": "socialLogin" + }, + { + "selected": "socialEnabled", + "size": "x-small", + "type": "counter" + }, + { + "selected": "manualRegistrations", + "size": "x-small", + "type": "counter" + } + ] + } + ], + "dashboard": { + "widgets": [ + { + "size": "large", + "type": "Welcome" + } + ] + } + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui/profile.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui/profile.idm.json new file mode 100644 index 000000000..5a65db8a2 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui/profile.idm.json @@ -0,0 +1,45 @@ +{ + "idm": { + "ui/profile": { + "_id": "ui/profile", + "tabs": [ + { + "name": "personalInfoTab", + "view": "org/forgerock/openidm/ui/user/profile/personalInfo/PersonalInfoTab" + }, + { + "name": "signInAndSecurity", + "view": "org/forgerock/openidm/ui/user/profile/signInAndSecurity/SignInAndSecurityTab" + }, + { + "name": "preference", + "view": "org/forgerock/openidm/ui/user/profile/PreferencesTab" + }, + { + "name": "trustedDevice", + "view": "org/forgerock/openidm/ui/user/profile/TrustedDevicesTab" + }, + { + "name": "oauthApplication", + "view": "org/forgerock/openidm/ui/user/profile/OauthApplicationsTab" + }, + { + "name": "privacyAndConsent", + "view": "org/forgerock/openidm/ui/user/profile/PrivacyAndConsentTab" + }, + { + "name": "sharing", + "view": "org/forgerock/openidm/ui/user/profile/uma/SharingTab" + }, + { + "name": "auditHistory", + "view": "org/forgerock/openidm/ui/user/profile/uma/ActivityTab" + }, + { + "name": "accountControls", + "view": "org/forgerock/openidm/ui/user/profile/accountControls/AccountControlsTab" + } + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui/themeconfig.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui/themeconfig.idm.json new file mode 100644 index 000000000..e497b7b41 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/idm/ui/themeconfig.idm.json @@ -0,0 +1,31 @@ +{ + "idm": { + "ui/themeconfig": { + "_id": "ui/themeconfig", + "icon": "favicon.ico", + "path": "", + "settings": { + "footer": { + "mailto": "info@pingidentity.com" + }, + "loginLogo": { + "alt": "Ping Identity", + "height": "120px", + "src": "images/login-logo-dark.png", + "title": "Ping Identity", + "width": "120px" + }, + "logo": { + "alt": "Ping Identity", + "src": "images/logo-horizontal-white.png", + "title": "Ping Identity" + } + }, + "stylesheets": [ + "css/bootstrap-3.4.1-custom.css", + "css/structure.css", + "css/theme.css" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/internalRole/openidm-admin.internalRole.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/internalRole/openidm-admin.internalRole.json new file mode 100644 index 000000000..092106e27 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/internalRole/openidm-admin.internalRole.json @@ -0,0 +1,12 @@ +{ + "internalRole": { + "openidm-admin": { + "_id": "openidm-admin", + "condition": null, + "description": "Administrative access", + "name": "openidm-admin", + "privileges": [], + "temporalConstraints": [] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/internalRole/openidm-authorized.internalRole.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/internalRole/openidm-authorized.internalRole.json new file mode 100644 index 000000000..d198b81bf --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/internalRole/openidm-authorized.internalRole.json @@ -0,0 +1,12 @@ +{ + "internalRole": { + "openidm-authorized": { + "_id": "openidm-authorized", + "condition": null, + "description": "Basic minimum user", + "name": "openidm-authorized", + "privileges": [], + "temporalConstraints": [] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/internalRole/openidm-cert.internalRole.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/internalRole/openidm-cert.internalRole.json new file mode 100644 index 000000000..203d7e3e3 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/internalRole/openidm-cert.internalRole.json @@ -0,0 +1,12 @@ +{ + "internalRole": { + "openidm-cert": { + "_id": "openidm-cert", + "condition": null, + "description": "Authenticated via certificate", + "name": "openidm-cert", + "privileges": [], + "temporalConstraints": [] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/internalRole/openidm-reg.internalRole.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/internalRole/openidm-reg.internalRole.json new file mode 100644 index 000000000..5ba60972a --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/internalRole/openidm-reg.internalRole.json @@ -0,0 +1,12 @@ +{ + "internalRole": { + "openidm-reg": { + "_id": "openidm-reg", + "condition": null, + "description": "Anonymous access", + "name": "openidm-reg", + "privileges": [], + "temporalConstraints": [] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/internalRole/openidm-tasks-manager.internalRole.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/internalRole/openidm-tasks-manager.internalRole.json new file mode 100644 index 000000000..56e161c52 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/internalRole/openidm-tasks-manager.internalRole.json @@ -0,0 +1,12 @@ +{ + "internalRole": { + "openidm-tasks-manager": { + "_id": "openidm-tasks-manager", + "condition": null, + "description": "Allowed to reassign workflow tasks", + "name": "openidm-tasks-manager", + "privileges": [], + "temporalConstraints": [] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/internalRole/platform-provisioning.internalRole.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/internalRole/platform-provisioning.internalRole.json new file mode 100644 index 000000000..4cfee3ff9 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/internalRole/platform-provisioning.internalRole.json @@ -0,0 +1,12 @@ +{ + "internalRole": { + "platform-provisioning": { + "_id": "platform-provisioning", + "condition": null, + "description": "Platform provisioning access", + "name": "platform-provisioning", + "privileges": [], + "temporalConstraints": [] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/realm/alpha.realm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/realm/alpha.realm.json new file mode 100644 index 000000000..506521eec --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/realm/alpha.realm.json @@ -0,0 +1,11 @@ +{ + "realm": { + "L2FscGhh": { + "_id": "L2FscGhh", + "active": true, + "aliases": [], + "name": "alpha", + "parentPath": "/" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/realm/bravo.realm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/realm/bravo.realm.json new file mode 100644 index 000000000..a582f5e85 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/realm/bravo.realm.json @@ -0,0 +1,11 @@ +{ + "realm": { + "L2JyYXZv": { + "_id": "L2JyYXZv", + "active": true, + "aliases": [], + "name": "bravo", + "parentPath": "/" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/realm/root.realm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/realm/root.realm.json new file mode 100644 index 000000000..a90b665d5 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/realm/root.realm.json @@ -0,0 +1,11 @@ +{ + "realm": { + "Lw": { + "_id": "Lw", + "active": true, + "aliases": [], + "name": "/", + "parentPath": "" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/AUTHENTICATION_CLIENT_SIDE.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/AUTHENTICATION_CLIENT_SIDE.scripttype.json new file mode 100644 index 000000000..e279dd797 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/AUTHENTICATION_CLIENT_SIDE.scripttype.json @@ -0,0 +1,31 @@ +{ + "scripttype": { + "AUTHENTICATION_CLIENT_SIDE": { + "_id": "AUTHENTICATION_CLIENT_SIDE", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "AUTHENTICATION_CLIENT_SIDE", + "allowLists": [], + "bindings": [], + "evaluatorVersions": { + "GROOVY": [ + "1.0" + ], + "JAVASCRIPT": [ + "1.0" + ] + } + }, + "defaultScript": "[Empty]", + "isHidden": false, + "languages": [ + "JAVASCRIPT", + "GROOVY" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/AUTHENTICATION_SERVER_SIDE.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/AUTHENTICATION_SERVER_SIDE.scripttype.json new file mode 100644 index 000000000..fe05d9b0a --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/AUTHENTICATION_SERVER_SIDE.scripttype.json @@ -0,0 +1,348 @@ +{ + "scripttype": { + "AUTHENTICATION_SERVER_SIDE": { + "_id": "AUTHENTICATION_SERVER_SIDE", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "AUTHENTICATION_SERVER_SIDE", + "allowLists": [ + "com.sun.identity.shared.debug.Debug", + "groovy.json.JsonSlurper", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Character", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.Number", + "java.lang.Object", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.util.ArrayList$Itr", + "java.util.ArrayList", + "java.util.HashMap$KeyIterator", + "java.util.HashMap", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.TreeMap", + "java.util.TreeSet", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.http.client.*", + "org.forgerock.http.protocol.Cookie", + "org.forgerock.http.protocol.Entity", + "org.forgerock.http.protocol.Form", + "org.forgerock.http.protocol.Header", + "org.forgerock.http.protocol.Headers", + "org.forgerock.http.protocol.Message", + "org.forgerock.http.protocol.Request", + "org.forgerock.http.protocol.RequestCookies", + "org.forgerock.http.protocol.Response", + "org.forgerock.http.protocol.ResponseException", + "org.forgerock.http.protocol.Responses", + "org.forgerock.http.protocol.Status", + "org.forgerock.json.JsonValue", + "org.forgerock.openam.authentication.modules.scripted.*", + "org.forgerock.openam.core.rest.devices.deviceprint.DeviceIdDao", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "org.forgerock.openam.scripting.api.ScriptedSession", + "org.forgerock.openam.scripting.idrepo.ScriptIdentityRepository", + "org.forgerock.openam.shared.security.crypto.CertificateService", + "org.forgerock.util.promise.NeverThrowsException", + "org.forgerock.util.promise.Promise", + "org.forgerock.util.promise.PromiseImpl", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "java.util.List", + "java.util.Map", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "org.mozilla.javascript.JavaScriptException", + "sun.security.ec.ECPrivateKeyImpl", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.opendj.ldap.Dn" + ], + "bindings": [], + "evaluatorVersions": { + "GROOVY": [ + "1.0" + ], + "JAVASCRIPT": [ + "1.0" + ] + } + }, + "defaultScript": "7e3d7067-d50f-4674-8c76-a3e13a810c33", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.lang.Thread", + "java.lang.invoke.*", + "java.lang.reflect.*", + "java.security.AccessController" + ], + "coreThreads": { + "$int": "&{authentication.server.side.script.context.core.threads|10}" + }, + "idleTimeout": 60, + "maxThreads": { + "$int": "&{authentication.server.side.script.context.max.threads|100}" + }, + "propertyNamePrefix": "esv.", + "queueSize": { + "$int": "&{authentication.server.side.script.context.queue.size|50}" + }, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "com.google.common.collect.ImmutableList", + "com.google.common.collect.Sets$1", + "com.iplanet.am.sdk.AMHashMap", + "com.iplanet.sso.providers.dpro.SSOTokenIDImpl", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.identity.authentication.callbacks.HiddenValueCallback", + "com.sun.identity.authentication.callbacks.ReCaptchaCallback", + "com.sun.identity.authentication.callbacks.ScriptTextOutputCallback", + "com.sun.identity.authentication.spi.HttpCallback", + "com.sun.identity.authentication.spi.IdentifiableCallback", + "com.sun.identity.authentication.spi.MetadataCallback", + "com.sun.identity.authentication.spi.PagePropertiesCallback", + "com.sun.identity.authentication.spi.RedirectCallback", + "com.sun.identity.authentication.spi.X509CertificateCallback", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.common.CaseInsensitiveHashMap$Entry", + "com.sun.identity.idm.AMIdentity", + "com.sun.identity.idm.IdType", + "com.sun.identity.saml2.assertion.impl.AttributeImpl", + "com.sun.identity.saml2.common.SAML2Exception", + "com.sun.identity.saml2.plugins.scripted.IdpAttributeMapperScriptHelper", + "com.sun.identity.shared.debug.Debug", + "groovy.json.JsonSlurper", + "groovy.json.StringEscapeUtils", + "groovy.json.internal.LazyMap", + "java.io.ByteArrayInputStream", + "java.io.ByteArrayOutputStream", + "java.io.UnsupportedEncodingException", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.NullPointerException", + "java.lang.Number", + "java.lang.Object", + "java.lang.RuntimeException", + "java.lang.SecurityException", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.math.BigDecimal", + "java.math.BigInteger", + "java.net.URI", + "java.security.KeyFactory", + "java.security.KeyPair", + "java.security.KeyPairGenerator", + "java.security.KeyPairGenerator$*", + "java.security.MessageDigest", + "java.security.MessageDigest$Delegate", + "java.security.MessageDigest$Delegate$CloneableDelegate", + "java.security.NoSuchAlgorithmException", + "java.security.PrivateKey", + "java.security.PublicKey", + "java.security.cert.CertificateFactory", + "java.security.cert.X509Certificate", + "java.security.spec.MGF1ParameterSpec", + "java.security.spec.PKCS8EncodedKeySpec", + "java.security.spec.X509EncodedKeySpec", + "java.text.SimpleDateFormat", + "java.time.Clock", + "java.time.Clock$FixedClock", + "java.time.Clock$OffsetClock", + "java.time.Clock$SystemClock", + "java.time.Clock$TickClock", + "java.time.temporal.ChronoUnit", + "java.util.AbstractMap$*", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Arrays", + "java.util.Collections", + "java.util.Collections$*", + "java.util.Date", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashMap$LinkedKeySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.List", + "java.util.Locale", + "java.util.Map", + "java.util.TreeMap", + "java.util.TreeSet", + "java.util.UUID", + "javax.crypto.Cipher", + "javax.crypto.Mac", + "javax.crypto.spec.IvParameterSpec", + "javax.crypto.spec.OAEPParameterSpec", + "javax.crypto.spec.PSource", + "javax.crypto.spec.PSource$*", + "javax.crypto.spec.SecretKeySpec", + "javax.security.auth.callback.ChoiceCallback", + "javax.security.auth.callback.ConfirmationCallback", + "javax.security.auth.callback.LanguageCallback", + "javax.security.auth.callback.NameCallback", + "javax.security.auth.callback.PasswordCallback", + "javax.security.auth.callback.TextInputCallback", + "javax.security.auth.callback.TextOutputCallback", + "org.apache.groovy.json.internal.LazyMap", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.guice.core.IdentityProvider", + "org.forgerock.guice.core.InjectorHolder", + "org.forgerock.http.Client", + "org.forgerock.http.Context", + "org.forgerock.http.Handler", + "org.forgerock.http.client.*", + "org.forgerock.http.context.RootContext", + "org.forgerock.http.header.*", + "org.forgerock.http.header.authorization.*", + "org.forgerock.http.protocol.*", + "org.forgerock.json.JsonValue", + "org.forgerock.json.jose.builders.EncryptedJwtBuilder", + "org.forgerock.json.jose.builders.EncryptedThenSignedJwtBuilder", + "org.forgerock.json.jose.builders.JweHeaderBuilder", + "org.forgerock.json.jose.builders.JwsHeaderBuilder", + "org.forgerock.json.jose.builders.JwtBuilderFactory", + "org.forgerock.json.jose.builders.SignedJwtBuilderImpl", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtBuilder", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtHeaderBuilder", + "org.forgerock.json.jose.jwe.EncryptedJwt", + "org.forgerock.json.jose.jwe.EncryptionMethod", + "org.forgerock.json.jose.jwe.JweAlgorithm", + "org.forgerock.json.jose.jwe.SignedThenEncryptedJwt", + "org.forgerock.json.jose.jwk.JWKSet", + "org.forgerock.json.jose.jwk.RsaJWK", + "org.forgerock.json.jose.jws.EncryptedThenSignedJwt", + "org.forgerock.json.jose.jws.JwsAlgorithm", + "org.forgerock.json.jose.jws.JwsHeader", + "org.forgerock.json.jose.jws.SignedEncryptedJwt", + "org.forgerock.json.jose.jws.SignedJwt", + "org.forgerock.json.jose.jws.SigningManager", + "org.forgerock.json.jose.jws.handlers.HmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.RSASigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretHmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretRSASigningHandler", + "org.forgerock.json.jose.jwt.JwtClaimsSet", + "org.forgerock.macaroons.Macaroon", + "org.forgerock.oauth.clients.oidc.Claim", + "org.forgerock.oauth2.core.GrantType", + "org.forgerock.oauth2.core.StatefulAccessToken", + "org.forgerock.oauth2.core.UserInfoClaims", + "org.forgerock.oauth2.core.exceptions.InvalidRequestException", + "org.forgerock.oauth2.core.tokenexchange.ExchangeableToken", + "org.forgerock.openam.auth.node.api.Action", + "org.forgerock.openam.auth.node.api.Action$ActionBuilder", + "org.forgerock.openam.auth.node.api.NodeState", + "org.forgerock.openam.auth.node.api.SuspendedTextOutputCallback", + "org.forgerock.openam.auth.nodes.IdentityProvider", + "org.forgerock.openam.auth.nodes.InjectorHolder", + "org.forgerock.openam.authentication.callbacks.AbstractValidatedCallback", + "org.forgerock.openam.authentication.callbacks.AttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.BooleanAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.ConsentMappingCallback", + "org.forgerock.openam.authentication.callbacks.DeviceProfileCallback", + "org.forgerock.openam.authentication.callbacks.IdPCallback", + "org.forgerock.openam.authentication.callbacks.KbaCreateCallback", + "org.forgerock.openam.authentication.callbacks.NumberAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.PollingWaitCallback", + "org.forgerock.openam.authentication.callbacks.SelectIdPCallback", + "org.forgerock.openam.authentication.callbacks.StringAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.TermsAndConditionsCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedPasswordCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedUsernameCallback", + "org.forgerock.openam.authentication.modules.scripted.*", + "org.forgerock.openam.core.rest.authn.callbackhandlers.*", + "org.forgerock.openam.core.rest.devices.deviceprint.DeviceIdDao", + "org.forgerock.openam.core.rest.devices.profile.DeviceProfilesDao", + "org.forgerock.openam.oauth2.OpenAMAccessToken", + "org.forgerock.openam.oauth2.token.grantset.Authorization$ModifiedAccessToken", + "org.forgerock.openam.oauth2.token.macaroon.MacaroonAccessToken", + "org.forgerock.openam.oauth2.token.stateless.StatelessAccessToken", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "org.forgerock.openam.scripting.api.ScriptedIdentity", + "org.forgerock.openam.scripting.api.ScriptedSession", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentityRepository", + "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "org.forgerock.openam.scripting.api.secrets.Secret", + "org.forgerock.openam.scripting.idrepo.ScriptIdentityRepository", + "org.forgerock.openam.shared.security.ThreadLocalSecureRandom", + "org.forgerock.openidconnect.Claim", + "org.forgerock.openidconnect.OpenIdConnectToken", + "org.forgerock.openidconnect.ssoprovider.OpenIdConnectSSOToken", + "org.forgerock.secrets.SecretBuilder", + "org.forgerock.secrets.keys.SigningKey", + "org.forgerock.secrets.keys.VerificationKey", + "org.forgerock.util.encode.Base64", + "org.forgerock.util.encode.Base64url", + "org.forgerock.util.encode.Hex", + "org.forgerock.util.promise.NeverThrowsException", + "org.forgerock.util.promise.Promise", + "org.forgerock.util.promise.PromiseImpl", + "org.mozilla.javascript.ConsString", + "org.mozilla.javascript.JavaScriptException", + "org.mozilla.javascript.WrappedException", + "sun.security.ec.ECPrivateKeyImpl", + "sun.security.rsa.RSAPrivateCrtKeyImpl", + "sun.security.rsa.RSAPublicKeyImpl", + "sun.security.x509.X500Name", + "sun.security.x509.X509CertImpl", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.opendj.ldap.Dn", + "org.forgerock.openam.auth.nodes.VerifyTransactionsHelper" + ] + }, + "isHidden": false, + "languages": [ + "JAVASCRIPT", + "GROOVY" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/AUTHENTICATION_TREE_DECISION_NODE.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/AUTHENTICATION_TREE_DECISION_NODE.scripttype.json new file mode 100644 index 000000000..dbe58b546 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/AUTHENTICATION_TREE_DECISION_NODE.scripttype.json @@ -0,0 +1,420 @@ +{ + "scripttype": { + "AUTHENTICATION_TREE_DECISION_NODE": { + "_id": "AUTHENTICATION_TREE_DECISION_NODE", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "AUTHENTICATION_TREE_DECISION_NODE", + "allowLists": [ + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.Number", + "java.lang.Object", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.util.AbstractMap$*", + "java.util.ArrayList", + "java.util.Collections", + "java.util.Collections$*", + "java.util.concurrent.TimeUnit", + "java.util.concurrent.ExecutionException", + "java.util.concurrent.TimeoutException", + "java.util.HashSet", + "java.util.HashMap", + "java.util.HashMap$KeyIterator", + "java.util.LinkedHashMap", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.TreeMap", + "java.util.TreeSet", + "java.security.KeyPair", + "java.security.KeyPairGenerator", + "java.security.KeyPairGenerator$*", + "java.security.PrivateKey", + "java.security.PublicKey", + "java.security.spec.InvalidKeySpecException", + "java.security.spec.X509EncodedKeySpec", + "java.security.spec.MGF1ParameterSpec", + "javax.crypto.SecretKeyFactory", + "javax.crypto.spec.OAEPParameterSpec", + "javax.crypto.spec.PBEKeySpec", + "javax.crypto.spec.PSource", + "javax.crypto.spec.PSource$*", + "javax.security.auth.callback.NameCallback", + "javax.security.auth.callback.PasswordCallback", + "javax.security.auth.callback.ChoiceCallback", + "javax.security.auth.callback.ConfirmationCallback", + "javax.security.auth.callback.LanguageCallback", + "javax.security.auth.callback.TextInputCallback", + "javax.security.auth.callback.TextOutputCallback", + "com.sun.crypto.provider.PBKDF2KeyImpl", + "com.sun.identity.authentication.callbacks.HiddenValueCallback", + "com.sun.identity.authentication.callbacks.ScriptTextOutputCallback", + "com.sun.identity.authentication.spi.HttpCallback", + "com.sun.identity.authentication.spi.MetadataCallback", + "com.sun.identity.authentication.spi.RedirectCallback", + "com.sun.identity.authentication.spi.X509CertificateCallback", + "com.sun.identity.shared.debug.Debug", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.http.client.*", + "org.forgerock.http.Client", + "org.forgerock.http.Handler", + "org.forgerock.http.Context", + "org.forgerock.http.context.RootContext", + "org.forgerock.http.protocol.Cookie", + "org.forgerock.http.header.*", + "org.forgerock.http.header.authorization.*", + "org.forgerock.http.protocol.Entity", + "org.forgerock.http.protocol.Form", + "org.forgerock.http.protocol.Header", + "org.forgerock.http.protocol.Headers", + "org.forgerock.http.protocol.Message", + "org.forgerock.http.protocol.Request", + "org.forgerock.http.protocol.RequestCookies", + "org.forgerock.http.protocol.Response", + "org.forgerock.http.protocol.ResponseException", + "org.forgerock.http.protocol.Responses", + "org.forgerock.http.protocol.Status", + "org.forgerock.json.JsonValue", + "org.forgerock.util.promise.NeverThrowsException", + "org.forgerock.util.promise.Promise", + "org.forgerock.util.promise.PromiseImpl", + "org.forgerock.openam.auth.node.api.Action", + "org.forgerock.openam.auth.node.api.Action$ActionBuilder", + "org.forgerock.openam.authentication.callbacks.IdPCallback", + "org.forgerock.openam.authentication.callbacks.PollingWaitCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedPasswordCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedUsernameCallback", + "org.forgerock.openam.core.rest.authn.callbackhandlers.*", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "org.forgerock.openam.scripting.api.ScriptedSession", + "groovy.json.JsonSlurper", + "org.forgerock.openam.core.rest.devices.profile.DeviceProfilesDao", + "org.forgerock.openam.scripting.idrepo.ScriptIdentityRepository", + "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "org.forgerock.openam.scripting.api.secrets.Secret", + "org.forgerock.openam.shared.security.crypto.CertificateService", + "org.forgerock.openam.auth.node.api.NodeState", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "java.util.List", + "java.util.Map", + "org.mozilla.javascript.ConsString", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "org.mozilla.javascript.JavaScriptException", + "sun.security.ec.ECPrivateKeyImpl", + "org.forgerock.openam.authentication.callbacks.BooleanAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.NumberAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.StringAttributeInputCallback", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.opendj.ldap.Dn", + "org.forgerock.openam.auth.nodes.VerifyTransactionsHelper" + ], + "bindings": [], + "evaluatorVersions": { + "GROOVY": [ + "1.0" + ], + "JAVASCRIPT": [ + "1.0" + ] + } + }, + "defaultScript": "01e1a3c0-038b-4c16-956a-6c9d89328cff", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.lang.Thread", + "java.lang.invoke.*", + "java.lang.reflect.*", + "java.security.AccessController" + ], + "coreThreads": { + "$int": "&{authentication.tree.decision.node.script.context.core.threads|50}" + }, + "idleTimeout": 60, + "maxThreads": { + "$int": "&{authentication.tree.decision.node.script.context.max.threads|100}" + }, + "propertyNamePrefix": "esv.", + "queueSize": { + "$int": "&{authentication.tree.decision.node.script.context.queue.size|50}" + }, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "com.google.common.collect.ImmutableList", + "com.google.common.collect.Sets$1", + "com.iplanet.am.sdk.AMHashMap", + "com.iplanet.sso.providers.dpro.SSOTokenIDImpl", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.identity.authentication.callbacks.HiddenValueCallback", + "com.sun.identity.authentication.callbacks.ReCaptchaCallback", + "com.sun.identity.authentication.callbacks.ScriptTextOutputCallback", + "com.sun.identity.authentication.spi.HttpCallback", + "com.sun.identity.authentication.spi.IdentifiableCallback", + "com.sun.identity.authentication.spi.MetadataCallback", + "com.sun.identity.authentication.spi.PagePropertiesCallback", + "com.sun.identity.authentication.spi.RedirectCallback", + "com.sun.identity.authentication.spi.X509CertificateCallback", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.common.CaseInsensitiveHashMap$Entry", + "com.sun.identity.idm.AMIdentity", + "com.sun.identity.idm.IdType", + "com.sun.identity.saml2.assertion.impl.AttributeImpl", + "com.sun.identity.saml2.common.SAML2Exception", + "com.sun.identity.saml2.plugins.scripted.IdpAttributeMapperScriptHelper", + "com.sun.identity.shared.debug.Debug", + "groovy.json.JsonSlurper", + "groovy.json.StringEscapeUtils", + "groovy.json.internal.LazyMap", + "java.io.ByteArrayInputStream", + "java.io.ByteArrayOutputStream", + "java.io.UnsupportedEncodingException", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.NullPointerException", + "java.lang.Number", + "java.lang.Object", + "java.lang.RuntimeException", + "java.lang.SecurityException", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.math.BigDecimal", + "java.math.BigInteger", + "java.net.URI", + "java.security.KeyFactory", + "java.security.KeyPair", + "java.security.KeyPairGenerator", + "java.security.KeyPairGenerator$*", + "java.security.MessageDigest", + "java.security.MessageDigest$Delegate", + "java.security.MessageDigest$Delegate$CloneableDelegate", + "java.security.NoSuchAlgorithmException", + "java.security.PrivateKey", + "java.security.PublicKey", + "java.security.cert.CertificateFactory", + "java.security.cert.X509Certificate", + "java.security.spec.MGF1ParameterSpec", + "java.security.spec.PKCS8EncodedKeySpec", + "java.security.spec.X509EncodedKeySpec", + "java.text.SimpleDateFormat", + "java.time.Clock", + "java.time.Clock$FixedClock", + "java.time.Clock$OffsetClock", + "java.time.Clock$SystemClock", + "java.time.Clock$TickClock", + "java.time.temporal.ChronoUnit", + "java.util.AbstractMap$*", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Arrays", + "java.util.Collections", + "java.util.Collections$*", + "java.util.Date", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashMap$LinkedKeySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.List", + "java.util.Locale", + "java.util.Map", + "java.util.TreeMap", + "java.util.TreeSet", + "java.util.UUID", + "javax.crypto.Cipher", + "javax.crypto.Mac", + "javax.crypto.spec.IvParameterSpec", + "javax.crypto.spec.OAEPParameterSpec", + "javax.crypto.spec.PSource", + "javax.crypto.spec.PSource$*", + "javax.crypto.spec.SecretKeySpec", + "javax.security.auth.callback.ChoiceCallback", + "javax.security.auth.callback.ConfirmationCallback", + "javax.security.auth.callback.LanguageCallback", + "javax.security.auth.callback.NameCallback", + "javax.security.auth.callback.PasswordCallback", + "javax.security.auth.callback.TextInputCallback", + "javax.security.auth.callback.TextOutputCallback", + "org.apache.groovy.json.internal.LazyMap", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.guice.core.IdentityProvider", + "org.forgerock.guice.core.InjectorHolder", + "org.forgerock.http.Client", + "org.forgerock.http.Context", + "org.forgerock.http.Handler", + "org.forgerock.http.client.*", + "org.forgerock.http.context.RootContext", + "org.forgerock.http.header.*", + "org.forgerock.http.header.authorization.*", + "org.forgerock.http.protocol.*", + "org.forgerock.json.JsonValue", + "org.forgerock.json.jose.builders.EncryptedJwtBuilder", + "org.forgerock.json.jose.builders.EncryptedThenSignedJwtBuilder", + "org.forgerock.json.jose.builders.JweHeaderBuilder", + "org.forgerock.json.jose.builders.JwsHeaderBuilder", + "org.forgerock.json.jose.builders.JwtBuilderFactory", + "org.forgerock.json.jose.builders.SignedJwtBuilderImpl", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtBuilder", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtHeaderBuilder", + "org.forgerock.json.jose.jwe.EncryptedJwt", + "org.forgerock.json.jose.jwe.EncryptionMethod", + "org.forgerock.json.jose.jwe.JweAlgorithm", + "org.forgerock.json.jose.jwe.JweHeader", + "org.forgerock.json.jose.jwe.SignedThenEncryptedJwt", + "org.forgerock.json.jose.jwk.JWKSet", + "org.forgerock.json.jose.jwk.RsaJWK", + "org.forgerock.json.jose.jws.EncryptedThenSignedJwt", + "org.forgerock.json.jose.jws.JwsAlgorithm", + "org.forgerock.json.jose.jws.JwsHeader", + "org.forgerock.json.jose.jws.SignedEncryptedJwt", + "org.forgerock.json.jose.jws.SignedJwt", + "org.forgerock.json.jose.jws.SigningManager", + "org.forgerock.json.jose.jws.handlers.HmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.RSASigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretHmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretRSASigningHandler", + "org.forgerock.json.jose.jwt.JwtClaimsSet", + "org.forgerock.macaroons.Macaroon", + "org.forgerock.oauth.clients.oidc.Claim", + "org.forgerock.oauth2.core.GrantType", + "org.forgerock.oauth2.core.StatefulAccessToken", + "org.forgerock.oauth2.core.UserInfoClaims", + "org.forgerock.oauth2.core.exceptions.InvalidRequestException", + "org.forgerock.oauth2.core.tokenexchange.ExchangeableToken", + "org.forgerock.openam.auth.node.api.Action", + "org.forgerock.openam.auth.node.api.Action$ActionBuilder", + "org.forgerock.openam.auth.node.api.NodeState", + "org.forgerock.openam.auth.node.api.SuspendedTextOutputCallback", + "org.forgerock.openam.auth.nodes.IdentityProvider", + "org.forgerock.openam.auth.nodes.InjectorHolder", + "org.forgerock.openam.authentication.callbacks.AbstractValidatedCallback", + "org.forgerock.openam.authentication.callbacks.AttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.BooleanAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.ConsentMappingCallback", + "org.forgerock.openam.authentication.callbacks.DeviceProfileCallback", + "org.forgerock.openam.authentication.callbacks.IdPCallback", + "org.forgerock.openam.authentication.callbacks.KbaCreateCallback", + "org.forgerock.openam.authentication.callbacks.NumberAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.PollingWaitCallback", + "org.forgerock.openam.authentication.callbacks.SelectIdPCallback", + "org.forgerock.openam.authentication.callbacks.StringAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.TermsAndConditionsCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedPasswordCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedUsernameCallback", + "org.forgerock.openam.authentication.modules.scripted.*", + "org.forgerock.openam.core.realms.impl.RealmImpl", + "org.forgerock.openam.core.realms.Realms", + "org.forgerock.openam.core.realms.RootRealm", + "org.forgerock.openam.core.rest.authn.callbackhandlers.*", + "org.forgerock.openam.core.rest.devices.deviceprint.DeviceIdDao", + "org.forgerock.openam.core.rest.devices.profile.DeviceProfilesDao", + "org.forgerock.openam.oauth2.OpenAMAccessToken", + "org.forgerock.openam.oauth2.token.grantset.Authorization$ModifiedAccessToken", + "org.forgerock.openam.oauth2.token.macaroon.MacaroonAccessToken", + "org.forgerock.openam.oauth2.token.stateless.StatelessAccessToken", + "org.forgerock.openam.placeholder.substitution.FbcPlaceholderSubstitution", + "org.forgerock.openam.placeholder.substitution.PlaceholderSubstitution", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "org.forgerock.openam.scripting.api.ScriptedIdentity", + "org.forgerock.openam.scripting.api.ScriptedSession", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentityRepository", + "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "org.forgerock.openam.scripting.api.secrets.Secret", + "org.forgerock.openam.scripting.idrepo.ScriptIdentityRepository", + "org.forgerock.openam.shared.security.ThreadLocalSecureRandom", + "org.forgerock.openam.social.idp.OpenIDConnectClientConfig", + "org.forgerock.openam.social.idp.OpenIDConnectClientConfig$ByteBuddy*", + "org.forgerock.openam.social.idp.SocialIdentityProviders", + "org.forgerock.openam.social.idp.SocialIdentityProvidersImpl", + "org.forgerock.openidconnect.Claim", + "org.forgerock.openidconnect.OpenIdConnectToken", + "org.forgerock.openidconnect.ssoprovider.OpenIdConnectSSOToken", + "org.forgerock.secrets.SecretBuilder", + "org.forgerock.secrets.keys.SigningKey", + "org.forgerock.secrets.keys.VerificationKey", + "org.forgerock.util.encode.Base64", + "org.forgerock.util.encode.Base64url", + "org.forgerock.util.encode.Hex", + "org.forgerock.util.promise.NeverThrowsException", + "org.forgerock.util.promise.Promise", + "org.forgerock.util.promise.PromiseImpl", + "org.mozilla.javascript.ConsString", + "org.mozilla.javascript.JavaScriptException", + "org.mozilla.javascript.WrappedException", + "sun.security.ec.ECPrivateKeyImpl", + "sun.security.rsa.RSAPrivateCrtKeyImpl", + "sun.security.rsa.RSAPublicKeyImpl", + "sun.security.x509.X500Name", + "sun.security.x509.X509CertImpl", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "java.util.concurrent.TimeUnit", + "java.util.concurrent.ExecutionException", + "java.util.concurrent.TimeoutException", + "java.util.zip.Deflater", + "java.util.zip.Inflater", + "java.util.zip.DeflaterOutputStream", + "java.util.zip.InflaterInputStream", + "javax.crypto.SecretKeyFactory", + "javax.crypto.spec.PBEKeySpec", + "com.sun.crypto.provider.PBKDF2KeyImpl", + "java.security.spec.InvalidKeySpecException", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.opendj.ldap.Dn" + ] + }, + "isHidden": false, + "languages": [ + "JAVASCRIPT", + "GROOVY" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/CONFIG_PROVIDER_NODE.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/CONFIG_PROVIDER_NODE.scripttype.json new file mode 100644 index 000000000..22e95ac79 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/CONFIG_PROVIDER_NODE.scripttype.json @@ -0,0 +1,407 @@ +{ + "scripttype": { + "CONFIG_PROVIDER_NODE": { + "_id": "CONFIG_PROVIDER_NODE", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "CONFIG_PROVIDER_NODE", + "allowLists": [ + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.Number", + "java.lang.Object", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.util.AbstractMap$*", + "java.util.ArrayList", + "java.util.Collections", + "java.util.Collections$*", + "java.util.concurrent.TimeUnit", + "java.util.concurrent.ExecutionException", + "java.util.concurrent.TimeoutException", + "java.util.HashSet", + "java.util.HashMap", + "java.util.HashMap$KeyIterator", + "java.util.LinkedHashMap", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.TreeMap", + "java.util.TreeSet", + "java.security.KeyPair", + "java.security.KeyPairGenerator", + "java.security.KeyPairGenerator$*", + "java.security.PrivateKey", + "java.security.PublicKey", + "java.security.spec.InvalidKeySpecException", + "java.security.spec.X509EncodedKeySpec", + "java.security.spec.MGF1ParameterSpec", + "javax.crypto.SecretKeyFactory", + "javax.crypto.spec.OAEPParameterSpec", + "javax.crypto.spec.PBEKeySpec", + "javax.crypto.spec.PSource", + "javax.crypto.spec.PSource$*", + "javax.security.auth.callback.NameCallback", + "javax.security.auth.callback.PasswordCallback", + "javax.security.auth.callback.ChoiceCallback", + "javax.security.auth.callback.ConfirmationCallback", + "javax.security.auth.callback.LanguageCallback", + "javax.security.auth.callback.TextInputCallback", + "javax.security.auth.callback.TextOutputCallback", + "com.sun.crypto.provider.PBKDF2KeyImpl", + "com.sun.identity.authentication.callbacks.HiddenValueCallback", + "com.sun.identity.authentication.callbacks.ScriptTextOutputCallback", + "com.sun.identity.authentication.spi.HttpCallback", + "com.sun.identity.authentication.spi.MetadataCallback", + "com.sun.identity.authentication.spi.RedirectCallback", + "com.sun.identity.authentication.spi.X509CertificateCallback", + "com.sun.identity.shared.debug.Debug", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.http.client.*", + "org.forgerock.http.Client", + "org.forgerock.http.Handler", + "org.forgerock.http.Context", + "org.forgerock.http.context.RootContext", + "org.forgerock.http.protocol.Cookie", + "org.forgerock.http.header.*", + "org.forgerock.http.header.authorization.*", + "org.forgerock.http.protocol.Entity", + "org.forgerock.http.protocol.Form", + "org.forgerock.http.protocol.Header", + "org.forgerock.http.protocol.Headers", + "org.forgerock.http.protocol.Message", + "org.forgerock.http.protocol.Request", + "org.forgerock.http.protocol.RequestCookies", + "org.forgerock.http.protocol.Response", + "org.forgerock.http.protocol.ResponseException", + "org.forgerock.http.protocol.Responses", + "org.forgerock.http.protocol.Status", + "org.forgerock.json.JsonValue", + "org.forgerock.util.promise.NeverThrowsException", + "org.forgerock.util.promise.Promise", + "org.forgerock.util.promise.PromiseImpl", + "org.forgerock.openam.auth.node.api.Action", + "org.forgerock.openam.auth.node.api.Action$ActionBuilder", + "org.forgerock.openam.authentication.callbacks.IdPCallback", + "org.forgerock.openam.authentication.callbacks.PollingWaitCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedPasswordCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedUsernameCallback", + "org.forgerock.openam.core.rest.authn.callbackhandlers.*", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "org.forgerock.openam.scripting.api.ScriptedSession", + "groovy.json.JsonSlurper", + "org.forgerock.openam.core.rest.devices.profile.DeviceProfilesDao", + "org.forgerock.openam.scripting.idrepo.ScriptIdentityRepository", + "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "org.forgerock.openam.scripting.api.secrets.Secret", + "org.forgerock.openam.shared.security.crypto.CertificateService", + "org.forgerock.openam.auth.node.api.NodeState", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "java.util.List", + "java.util.Map", + "org.mozilla.javascript.ConsString", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "org.mozilla.javascript.JavaScriptException", + "sun.security.ec.ECPrivateKeyImpl", + "org.forgerock.openam.authentication.callbacks.BooleanAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.NumberAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.StringAttributeInputCallback", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.opendj.ldap.Dn" + ], + "bindings": [], + "evaluatorVersions": { + "GROOVY": [ + "1.0" + ], + "JAVASCRIPT": [ + "1.0" + ] + } + }, + "defaultScript": "5e854779-6ec1-4c39-aeba-0477e0986646", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.lang.Thread", + "java.lang.invoke.*", + "java.lang.reflect.*", + "java.security.AccessController" + ], + "coreThreads": { + "$int": "&{config.provider.node.script.context.core.threads|10}" + }, + "idleTimeout": 60, + "maxThreads": { + "$int": "&{config.provider.node.script.context.max.threads|100}" + }, + "propertyNamePrefix": "esv.", + "queueSize": { + "$int": "&{config.provider.node.script.context.queue.size|50}" + }, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "com.google.common.collect.ImmutableList", + "com.google.common.collect.Sets$1", + "com.iplanet.am.sdk.AMHashMap", + "com.iplanet.sso.providers.dpro.SSOTokenIDImpl", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.identity.authentication.callbacks.HiddenValueCallback", + "com.sun.identity.authentication.callbacks.ReCaptchaCallback", + "com.sun.identity.authentication.callbacks.ScriptTextOutputCallback", + "com.sun.identity.authentication.spi.HttpCallback", + "com.sun.identity.authentication.spi.IdentifiableCallback", + "com.sun.identity.authentication.spi.MetadataCallback", + "com.sun.identity.authentication.spi.PagePropertiesCallback", + "com.sun.identity.authentication.spi.RedirectCallback", + "com.sun.identity.authentication.spi.X509CertificateCallback", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.common.CaseInsensitiveHashMap$Entry", + "com.sun.identity.idm.AMIdentity", + "com.sun.identity.idm.IdType", + "com.sun.identity.saml2.assertion.impl.AttributeImpl", + "com.sun.identity.saml2.common.SAML2Exception", + "com.sun.identity.saml2.plugins.scripted.IdpAttributeMapperScriptHelper", + "com.sun.identity.shared.debug.Debug", + "groovy.json.JsonSlurper", + "groovy.json.StringEscapeUtils", + "groovy.json.internal.LazyMap", + "java.io.ByteArrayInputStream", + "java.io.ByteArrayOutputStream", + "java.io.UnsupportedEncodingException", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.NullPointerException", + "java.lang.Number", + "java.lang.Object", + "java.lang.RuntimeException", + "java.lang.SecurityException", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.math.BigDecimal", + "java.math.BigInteger", + "java.net.URI", + "java.security.KeyFactory", + "java.security.KeyPair", + "java.security.KeyPairGenerator", + "java.security.KeyPairGenerator$*", + "java.security.MessageDigest", + "java.security.MessageDigest$Delegate", + "java.security.MessageDigest$Delegate$CloneableDelegate", + "java.security.NoSuchAlgorithmException", + "java.security.PrivateKey", + "java.security.PublicKey", + "java.security.cert.CertificateFactory", + "java.security.cert.X509Certificate", + "java.security.spec.MGF1ParameterSpec", + "java.security.spec.PKCS8EncodedKeySpec", + "java.security.spec.X509EncodedKeySpec", + "java.text.SimpleDateFormat", + "java.time.Clock", + "java.time.Clock$FixedClock", + "java.time.Clock$OffsetClock", + "java.time.Clock$SystemClock", + "java.time.Clock$TickClock", + "java.time.temporal.ChronoUnit", + "java.util.AbstractMap$*", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Arrays", + "java.util.Collections", + "java.util.Collections$*", + "java.util.Date", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashMap$LinkedKeySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.List", + "java.util.Locale", + "java.util.Map", + "java.util.TreeMap", + "java.util.TreeSet", + "java.util.UUID", + "javax.crypto.Cipher", + "javax.crypto.Mac", + "javax.crypto.spec.IvParameterSpec", + "javax.crypto.spec.OAEPParameterSpec", + "javax.crypto.spec.PSource", + "javax.crypto.spec.PSource$*", + "javax.crypto.spec.SecretKeySpec", + "javax.security.auth.callback.ChoiceCallback", + "javax.security.auth.callback.ConfirmationCallback", + "javax.security.auth.callback.LanguageCallback", + "javax.security.auth.callback.NameCallback", + "javax.security.auth.callback.PasswordCallback", + "javax.security.auth.callback.TextInputCallback", + "javax.security.auth.callback.TextOutputCallback", + "org.apache.groovy.json.internal.LazyMap", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.guice.core.IdentityProvider", + "org.forgerock.guice.core.InjectorHolder", + "org.forgerock.http.Client", + "org.forgerock.http.Context", + "org.forgerock.http.Handler", + "org.forgerock.http.client.*", + "org.forgerock.http.context.RootContext", + "org.forgerock.http.header.*", + "org.forgerock.http.header.authorization.*", + "org.forgerock.http.protocol.*", + "org.forgerock.json.JsonValue", + "org.forgerock.json.jose.builders.EncryptedJwtBuilder", + "org.forgerock.json.jose.builders.EncryptedThenSignedJwtBuilder", + "org.forgerock.json.jose.builders.JweHeaderBuilder", + "org.forgerock.json.jose.builders.JwsHeaderBuilder", + "org.forgerock.json.jose.builders.JwtBuilderFactory", + "org.forgerock.json.jose.builders.SignedJwtBuilderImpl", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtBuilder", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtHeaderBuilder", + "org.forgerock.json.jose.jwe.EncryptedJwt", + "org.forgerock.json.jose.jwe.EncryptionMethod", + "org.forgerock.json.jose.jwe.JweAlgorithm", + "org.forgerock.json.jose.jwe.JweHeader", + "org.forgerock.json.jose.jwe.SignedThenEncryptedJwt", + "org.forgerock.json.jose.jwk.JWKSet", + "org.forgerock.json.jose.jwk.RsaJWK", + "org.forgerock.json.jose.jws.EncryptedThenSignedJwt", + "org.forgerock.json.jose.jws.JwsAlgorithm", + "org.forgerock.json.jose.jws.JwsHeader", + "org.forgerock.json.jose.jws.SignedEncryptedJwt", + "org.forgerock.json.jose.jws.SignedJwt", + "org.forgerock.json.jose.jws.SigningManager", + "org.forgerock.json.jose.jws.handlers.HmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.RSASigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretHmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretRSASigningHandler", + "org.forgerock.json.jose.jwt.JwtClaimsSet", + "org.forgerock.macaroons.Macaroon", + "org.forgerock.oauth.clients.oidc.Claim", + "org.forgerock.oauth2.core.GrantType", + "org.forgerock.oauth2.core.StatefulAccessToken", + "org.forgerock.oauth2.core.UserInfoClaims", + "org.forgerock.oauth2.core.exceptions.InvalidRequestException", + "org.forgerock.oauth2.core.tokenexchange.ExchangeableToken", + "org.forgerock.openam.auth.node.api.Action", + "org.forgerock.openam.auth.node.api.Action$ActionBuilder", + "org.forgerock.openam.auth.node.api.NodeState", + "org.forgerock.openam.auth.node.api.SuspendedTextOutputCallback", + "org.forgerock.openam.auth.nodes.IdentityProvider", + "org.forgerock.openam.auth.nodes.InjectorHolder", + "org.forgerock.openam.authentication.callbacks.AbstractValidatedCallback", + "org.forgerock.openam.authentication.callbacks.AttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.BooleanAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.ConsentMappingCallback", + "org.forgerock.openam.authentication.callbacks.DeviceProfileCallback", + "org.forgerock.openam.authentication.callbacks.IdPCallback", + "org.forgerock.openam.authentication.callbacks.KbaCreateCallback", + "org.forgerock.openam.authentication.callbacks.NumberAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.PollingWaitCallback", + "org.forgerock.openam.authentication.callbacks.SelectIdPCallback", + "org.forgerock.openam.authentication.callbacks.StringAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.TermsAndConditionsCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedPasswordCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedUsernameCallback", + "org.forgerock.openam.authentication.modules.scripted.*", + "org.forgerock.openam.core.rest.authn.callbackhandlers.*", + "org.forgerock.openam.core.rest.devices.deviceprint.DeviceIdDao", + "org.forgerock.openam.core.rest.devices.profile.DeviceProfilesDao", + "org.forgerock.openam.oauth2.OpenAMAccessToken", + "org.forgerock.openam.oauth2.token.grantset.Authorization$ModifiedAccessToken", + "org.forgerock.openam.oauth2.token.macaroon.MacaroonAccessToken", + "org.forgerock.openam.oauth2.token.stateless.StatelessAccessToken", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "org.forgerock.openam.scripting.api.ScriptedIdentity", + "org.forgerock.openam.scripting.api.ScriptedSession", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentityRepository", + "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "org.forgerock.openam.scripting.api.secrets.Secret", + "org.forgerock.openam.scripting.idrepo.ScriptIdentityRepository", + "org.forgerock.openam.shared.security.ThreadLocalSecureRandom", + "org.forgerock.openidconnect.Claim", + "org.forgerock.openidconnect.OpenIdConnectToken", + "org.forgerock.openidconnect.ssoprovider.OpenIdConnectSSOToken", + "org.forgerock.secrets.SecretBuilder", + "org.forgerock.secrets.keys.SigningKey", + "org.forgerock.secrets.keys.VerificationKey", + "org.forgerock.util.encode.Base64", + "org.forgerock.util.encode.Base64url", + "org.forgerock.util.encode.Hex", + "org.forgerock.util.promise.NeverThrowsException", + "org.forgerock.util.promise.Promise", + "org.forgerock.util.promise.PromiseImpl", + "org.mozilla.javascript.ConsString", + "org.mozilla.javascript.JavaScriptException", + "org.mozilla.javascript.WrappedException", + "sun.security.ec.ECPrivateKeyImpl", + "sun.security.rsa.RSAPrivateCrtKeyImpl", + "sun.security.rsa.RSAPublicKeyImpl", + "sun.security.x509.X500Name", + "sun.security.x509.X509CertImpl", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "javax.crypto.SecretKeyFactory", + "javax.crypto.spec.PBEKeySpec", + "com.sun.crypto.provider.PBKDF2KeyImpl", + "java.util.concurrent.TimeUnit", + "java.util.concurrent.ExecutionException", + "java.util.concurrent.TimeoutException", + "java.security.spec.InvalidKeySpecException", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.opendj.ldap.Dn", + "org.forgerock.openam.auth.nodes.VerifyTransactionsHelper" + ] + }, + "isHidden": false, + "languages": [ + "JAVASCRIPT", + "GROOVY" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/CONFIG_PROVIDER_NODE_NEXT_GEN.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/CONFIG_PROVIDER_NODE_NEXT_GEN.scripttype.json new file mode 100644 index 000000000..0670333b9 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/CONFIG_PROVIDER_NODE_NEXT_GEN.scripttype.json @@ -0,0 +1,1631 @@ +{ + "scripttype": { + "CONFIG_PROVIDER_NODE_NEXT_GEN": { + "_id": "CONFIG_PROVIDER_NODE_NEXT_GEN", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "CONFIG_PROVIDER_NODE_NEXT_GEN", + "allowLists": [ + "org.forgerock.util.promise.PromiseImpl", + "org.forgerock.util.promise.Promises$*", + "java.lang.Object" + ], + "bindings": [ + { + "elements": [ + { + "elementType": "method", + "name": "send", + "parameters": [ + { + "javaScriptType": "string", + "name": "uri" + }, + { + "javaScriptType": "object", + "name": "requestOptions" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "send", + "parameters": [ + { + "javaScriptType": "string", + "name": "uri" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.wrappers.HttpClientScriptWrapper", + "javaScriptType": "object", + "name": "httpClient" + }, + { + "elements": [ + { + "elementType": "method", + "name": "innerJourney", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "name", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "identityResource", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "mustRun", + "parameters": [], + "returnType": "boolean" + } + ], + "javaClass": "org.forgerock.openam.auth.nodes.script.ScriptedTreeWrapper", + "javaScriptType": "object", + "name": "journey" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getName", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "isTraceEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isDebugEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isErrorEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isInfoEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isWarnEnabled", + "parameters": [], + "returnType": "boolean" + } + ], + "javaClass": "org.forgerock.openam.scripting.logging.ScriptedLoggerWrapper", + "javaScriptType": "object", + "name": "logger" + }, + { + "elements": [], + "javaScriptType": "object", + "name": "requestParameters" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getGenericSecret", + "parameters": [ + { + "javaScriptType": "string", + "name": "secretId" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "javaScriptType": "object", + "name": "secrets" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getIdentity", + "parameters": [ + { + "javaScriptType": "string", + "name": "userName" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.api.identity.ScriptedIdentityRepositoryScriptWrapper", + "javaScriptType": "object", + "name": "idRepository" + }, + { + "elements": [], + "javaScriptType": "object", + "name": "requestHeaders" + }, + { + "elements": [ + { + "elementType": "method", + "name": "remove", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "get", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "keys", + "parameters": [], + "returnType": "object" + }, + { + "elementType": "method", + "name": "getObject", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "isDefined", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "putShared", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + }, + { + "javaScriptType": "object", + "name": "value" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "putTransient", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + }, + { + "javaScriptType": "object", + "name": "value" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "mergeShared", + "parameters": [ + { + "javaScriptType": "object", + "name": "object" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "mergeTransient", + "parameters": [ + { + "javaScriptType": "object", + "name": "object" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.auth.node.api.NodeStateScriptWrapper", + "javaScriptType": "object", + "name": "nodeState" + }, + { + "elements": [ + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "randomUUID", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "getRandomValues", + "parameters": [ + { + "javaScriptType": "array", + "name": "array" + } + ], + "returnType": "array" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "sign", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "sign", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "digest", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "verify", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + }, + { + "javaScriptType": "array", + "name": "signature" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "verify", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + }, + { + "javaScriptType": "array", + "name": "signature" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "encrypt", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "encrypt", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "decrypt", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "decrypt", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "generateKey", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithm" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "generateKey", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.crypto.subtle.ScriptSubtleService", + "javaScriptType": "object", + "name": "subtle" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.crypto.ScriptCryptoService", + "javaScriptType": "object", + "name": "crypto" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "decode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "array", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "decodeToBytes", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "btoa", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "atob", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptBase64Service", + "javaScriptType": "object", + "name": "base64" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "decode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "btoa", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "atob", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptBase64UrlService", + "javaScriptType": "object", + "name": "base64url" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "bytesToString", + "parameters": [ + { + "javaScriptType": "array", + "name": "bytes" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "stringToBytes", + "parameters": [ + { + "javaScriptType": "string", + "name": "string" + } + ], + "returnType": "array" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptTypesService", + "javaScriptType": "object", + "name": "types" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptUtilityService", + "javaScriptType": "object", + "name": "utils" + }, + { + "elements": [], + "javaScriptType": "object", + "name": "existingSession" + }, + { + "javaScriptType": "string", + "name": "scriptName" + }, + { + "javaScriptType": "string", + "name": "realm" + }, + { + "elements": [ + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "query", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "query", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.wrappers.IdmIntegrationServiceScriptWrapper", + "javaScriptType": "object", + "name": "openidm" + }, + { + "javaScriptType": "string", + "name": "cookieName" + }, + { + "elements": [ + { + "elementType": "method", + "name": "evaluate", + "parameters": [ + { + "javaScriptType": "object", + "name": "subject" + }, + { + "javaScriptType": "string", + "name": "application" + }, + { + "javaScriptType": "array", + "name": "resourceNames" + }, + { + "javaScriptType": "object", + "name": "environment" + } + ], + "returnType": "array" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptPolicyService", + "javaScriptType": "object", + "name": "policy" + } + ], + "evaluatorVersions": { + "JAVASCRIPT": [ + "2.0" + ] + } + }, + "defaultScript": "[Empty]", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.security.AccessController", + "java.lang.reflect.*" + ], + "coreThreads": { + "$int": "&{config.provider.node.next.gen.script.context.core.threads|10}" + }, + "idleTimeout": 60, + "maxThreads": { + "$int": "&{config.provider.node.next.gen.script.context.max.threads|100}" + }, + "propertyNamePrefix": "esv.", + "queueSize": { + "$int": "&{config.provider.node.next.gen.script.context.queue.size|50}" + }, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "java.lang.Float", + "org.forgerock.http.protocol.Header", + "java.lang.Integer", + "org.forgerock.http.Client", + "java.lang.Character$UnicodeBlock", + "java.lang.Character", + "java.lang.Long", + "java.lang.Short", + "java.util.Map", + "org.forgerock.http.client.*", + "java.lang.Math", + "org.forgerock.opendj.ldap.Dn", + "java.lang.Byte", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "java.lang.StrictMath", + "org.forgerock.util.promise.PromiseImpl", + "org.forgerock.http.Context", + "java.lang.Void", + "org.codehaus.groovy.runtime.GStringImpl", + "groovy.json.JsonSlurper", + "org.forgerock.http.protocol.Request", + "org.forgerock.http.protocol.Entity", + "org.forgerock.http.context.RootContext", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "java.util.List", + "org.forgerock.http.protocol.RequestCookies", + "org.forgerock.http.protocol.Responses", + "org.forgerock.util.promise.Promise", + "java.util.HashMap$KeyIterator", + "com.sun.identity.shared.debug.Debug", + "java.lang.Double", + "org.forgerock.http.protocol.Headers", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.http.protocol.Status", + "java.util.HashMap", + "java.lang.Character$Subset", + "java.util.TreeSet", + "java.util.ArrayList", + "java.util.HashSet", + "java.util.LinkedHashMap", + "org.forgerock.http.protocol.ResponseException", + "java.util.Collections$UnmodifiableRandomAccessList", + "org.forgerock.http.protocol.Message", + "java.lang.Boolean", + "java.lang.String", + "java.lang.Number", + "java.util.LinkedList", + "java.util.LinkedHashSet", + "org.forgerock.http.protocol.Response", + "org.forgerock.util.promise.NeverThrowsException", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "java.util.TreeMap", + "java.util.Collections$EmptyList", + "org.forgerock.openam.scripting.api.ScriptedSession", + "java.util.Collections$UnmodifiableCollection$1", + "org.forgerock.http.Handler", + "java.lang.Object", + "org.forgerock.http.protocol.Form" + ] + }, + "isHidden": false, + "languages": [ + "JAVASCRIPT" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/DEVICE_MATCH_NODE.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/DEVICE_MATCH_NODE.scripttype.json new file mode 100644 index 000000000..553e1c293 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/DEVICE_MATCH_NODE.scripttype.json @@ -0,0 +1,3152 @@ +{ + "scripttype": { + "DEVICE_MATCH_NODE": { + "_id": "DEVICE_MATCH_NODE", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "DEVICE_MATCH_NODE", + "allowLists": [ + "org.forgerock.util.promise.PromiseImpl", + "org.forgerock.util.promise.Promises$*", + "java.lang.Object", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Float", + "java.lang.Long", + "java.lang.Math", + "java.lang.Number", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.Void", + "java.util.AbstractMap$*", + "java.util.ArrayList", + "java.util.Collections", + "java.util.concurrent.TimeUnit", + "java.util.Collections$*", + "java.util.HashSet", + "java.util.HashMap$KeyIterator", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.TreeSet", + "java.security.KeyPair", + "java.security.KeyPairGenerator", + "java.security.KeyPairGenerator$*", + "java.security.PrivateKey", + "java.security.PublicKey", + "java.security.spec.X509EncodedKeySpec", + "java.security.spec.MGF1ParameterSpec", + "javax.crypto.SecretKeyFactory", + "javax.crypto.spec.OAEPParameterSpec", + "javax.crypto.spec.PBEKeySpec", + "javax.crypto.spec.PSource", + "javax.crypto.spec.PSource$*", + "org.forgerock.json.JsonValue", + "org.forgerock.util.promise.NeverThrowsException", + "java.util.concurrent.ExecutionException", + "java.util.concurrent.TimeoutException", + "org.forgerock.openam.core.rest.authn.callbackhandlers.*", + "com.sun.crypto.provider.PBKDF2KeyImpl", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "sun.security.ec.ECPrivateKeyImpl", + "org.slf4j.Logger", + "com.sun.proxy.$*", + "java.util.Date", + "java.security.spec.InvalidKeySpecException", + "org.forgerock.openam.auth.nodes.VerifyTransactionsHelper" + ], + "bindings": [ + { + "elements": [ + { + "elementType": "method", + "name": "getDeviceProfiles", + "parameters": [ + { + "javaScriptType": "string", + "name": "username" + }, + { + "javaScriptType": "string", + "name": "realm" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "saveDeviceProfiles", + "parameters": [ + { + "javaScriptType": "string", + "name": "username" + }, + { + "javaScriptType": "string", + "name": "realm" + }, + { + "javaScriptType": "array", + "name": "deviceProfiles" + } + ], + "returnType": "void" + } + ], + "javaClass": "org.forgerock.openam.auth.nodes.script.DeviceProfilesDaoScriptWrapper", + "javaScriptType": "object", + "name": "deviceProfilesDao" + }, + { + "elements": [ + { + "elementType": "method", + "name": "send", + "parameters": [ + { + "javaScriptType": "string", + "name": "uri" + }, + { + "javaScriptType": "object", + "name": "requestOptions" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "send", + "parameters": [ + { + "javaScriptType": "string", + "name": "uri" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.wrappers.HttpClientScriptWrapper", + "javaScriptType": "object", + "name": "httpClient" + }, + { + "elements": [ + { + "elementType": "method", + "name": "innerJourney", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "name", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "identityResource", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "mustRun", + "parameters": [], + "returnType": "boolean" + } + ], + "javaClass": "org.forgerock.openam.auth.nodes.script.ScriptedTreeWrapper", + "javaScriptType": "object", + "name": "journey" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getName", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "isTraceEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isDebugEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isErrorEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isInfoEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isWarnEnabled", + "parameters": [], + "returnType": "boolean" + } + ], + "javaClass": "org.forgerock.openam.scripting.logging.ScriptedLoggerWrapper", + "javaScriptType": "object", + "name": "logger" + }, + { + "elements": [], + "javaScriptType": "object", + "name": "requestParameters" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getChoiceCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getNameCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getPasswordCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getHiddenValueCallbacks", + "parameters": [], + "returnType": "object" + }, + { + "elementType": "method", + "name": "getTextInputCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getStringAttributeInputCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getNumberAttributeInputCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getBooleanAttributeInputCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getConfirmationCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getLanguageCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getIdpCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getValidatedPasswordCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getValidatedUsernameCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getHttpCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getX509CertificateCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getConsentMappingCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getDeviceProfileCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getKbaCreateCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getSelectIdPCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getTermsAndConditionsCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "isEmpty", + "parameters": [], + "returnType": "boolean" + } + ], + "javaClass": "org.forgerock.openam.auth.nodes.script.ScriptedCallbacksWrapper", + "javaScriptType": "object", + "name": "callbacks" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getGenericSecret", + "parameters": [ + { + "javaScriptType": "string", + "name": "secretId" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "javaScriptType": "object", + "name": "secrets" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getIdentity", + "parameters": [ + { + "javaScriptType": "string", + "name": "userName" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.api.identity.ScriptedIdentityRepositoryScriptWrapper", + "javaScriptType": "object", + "name": "idRepository" + }, + { + "elements": [], + "javaScriptType": "object", + "name": "requestHeaders" + }, + { + "elements": [ + { + "elementType": "method", + "name": "generateJwt", + "parameters": [ + { + "javaScriptType": "object", + "name": "jwtData" + } + ], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.auth.nodes.script.JwtAssertionScriptWrapper", + "javaScriptType": "object", + "name": "jwtAssertion" + }, + { + "elements": [ + { + "elementType": "method", + "name": "remove", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "get", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "keys", + "parameters": [], + "returnType": "object" + }, + { + "elementType": "method", + "name": "getObject", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "isDefined", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "putShared", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + }, + { + "javaScriptType": "object", + "name": "value" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "putTransient", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + }, + { + "javaScriptType": "object", + "name": "value" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "mergeShared", + "parameters": [ + { + "javaScriptType": "object", + "name": "object" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "mergeTransient", + "parameters": [ + { + "javaScriptType": "object", + "name": "object" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.auth.node.api.NodeStateScriptWrapper", + "javaScriptType": "object", + "name": "nodeState" + }, + { + "javaScriptType": "boolean", + "name": "resumedFromSuspend" + }, + { + "elements": [ + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "randomUUID", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "getRandomValues", + "parameters": [ + { + "javaScriptType": "array", + "name": "array" + } + ], + "returnType": "array" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "sign", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "sign", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "digest", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "verify", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + }, + { + "javaScriptType": "array", + "name": "signature" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "verify", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + }, + { + "javaScriptType": "array", + "name": "signature" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "encrypt", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "encrypt", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "decrypt", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "decrypt", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "generateKey", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithm" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "generateKey", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.crypto.subtle.ScriptSubtleService", + "javaScriptType": "object", + "name": "subtle" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.crypto.ScriptCryptoService", + "javaScriptType": "object", + "name": "crypto" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "decode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "array", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "decodeToBytes", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "btoa", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "atob", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptBase64Service", + "javaScriptType": "object", + "name": "base64" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "decode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "btoa", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "atob", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptBase64UrlService", + "javaScriptType": "object", + "name": "base64url" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "bytesToString", + "parameters": [ + { + "javaScriptType": "array", + "name": "bytes" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "stringToBytes", + "parameters": [ + { + "javaScriptType": "string", + "name": "string" + } + ], + "returnType": "array" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptTypesService", + "javaScriptType": "object", + "name": "types" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptUtilityService", + "javaScriptType": "object", + "name": "utils" + }, + { + "elements": [ + { + "elementType": "method", + "name": "withIdentifiedUser", + "parameters": [ + { + "javaScriptType": "string", + "name": "username" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withIdentifiedAgent", + "parameters": [ + { + "javaScriptType": "string", + "name": "agentName" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "suspend", + "parameters": [ + { + "javaScriptType": "string", + "name": "callbackTextFormat" + }, + { + "javaScriptType": "object", + "name": "additionalLogic" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "suspend", + "parameters": [ + { + "javaScriptType": "string", + "name": "callbackTextFormat" + }, + { + "javaScriptType": "object", + "name": "additionalLogic" + }, + { + "javaScriptType": "number", + "name": "maximumSuspendDuration" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "suspend", + "parameters": [ + { + "javaScriptType": "string", + "name": "callbackTextFormat" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "goTo", + "parameters": [ + { + "javaScriptType": "string", + "name": "outcome" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withHeader", + "parameters": [ + { + "javaScriptType": "string", + "name": "header" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withDescription", + "parameters": [ + { + "javaScriptType": "string", + "name": "description" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withStage", + "parameters": [ + { + "javaScriptType": "string", + "name": "stage" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withErrorMessage", + "parameters": [ + { + "javaScriptType": "string", + "name": "errorMessage" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withLockoutMessage", + "parameters": [ + { + "javaScriptType": "string", + "name": "lockoutMessage" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "removeSessionProperty", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withMaxSessionTime", + "parameters": [ + { + "javaScriptType": "number", + "name": "maxSessionTime" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withMaxIdleTime", + "parameters": [ + { + "javaScriptType": "number", + "name": "maxIdleTime" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "putSessionProperty", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + }, + { + "javaScriptType": "string", + "name": "value" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.auth.nodes.script.ActionWrapper", + "javaScriptType": "object", + "name": "action" + }, + { + "javaScriptType": "string", + "name": "scriptName" + }, + { + "javaScriptType": "string", + "name": "realm" + }, + { + "elements": [ + { + "elementType": "method", + "name": "validateJwtClaims", + "parameters": [ + { + "javaScriptType": "object", + "name": "jwtData" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.auth.nodes.script.JwtValidatorScriptWrapper", + "javaScriptType": "object", + "name": "jwtValidator" + }, + { + "elements": [ + { + "elementType": "method", + "name": "languageCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "language" + }, + { + "javaScriptType": "string", + "name": "country" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "idPCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "provider" + }, + { + "javaScriptType": "string", + "name": "clientId" + }, + { + "javaScriptType": "string", + "name": "redirectUri" + }, + { + "javaScriptType": "array", + "name": "scope" + }, + { + "javaScriptType": "string", + "name": "nonce" + }, + { + "javaScriptType": "string", + "name": "request" + }, + { + "javaScriptType": "string", + "name": "requestUri" + }, + { + "javaScriptType": "array", + "name": "acrValues" + }, + { + "javaScriptType": "boolean", + "name": "requestNativeAppForUserInfo" + }, + { + "javaScriptType": "string", + "name": "token" + }, + { + "javaScriptType": "string", + "name": "tokenType" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "idPCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "provider" + }, + { + "javaScriptType": "string", + "name": "clientId" + }, + { + "javaScriptType": "string", + "name": "redirectUri" + }, + { + "javaScriptType": "array", + "name": "scope" + }, + { + "javaScriptType": "string", + "name": "nonce" + }, + { + "javaScriptType": "string", + "name": "request" + }, + { + "javaScriptType": "string", + "name": "requestUri" + }, + { + "javaScriptType": "array", + "name": "acrValues" + }, + { + "javaScriptType": "boolean", + "name": "requestNativeAppForUserInfo" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "httpCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "authRHeader" + }, + { + "javaScriptType": "string", + "name": "negoName" + }, + { + "javaScriptType": "string", + "name": "negoValue" + }, + { + "javaScriptType": "number", + "name": "errorCode" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "httpCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "authorizationHeader" + }, + { + "javaScriptType": "string", + "name": "negotiationHeader" + }, + { + "javaScriptType": "string", + "name": "errorCode" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "x509CertificateCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "x509CertificateCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "object", + "name": "certificate" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "x509CertificateCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "object", + "name": "certificate" + }, + { + "javaScriptType": "boolean", + "name": "requestSignature" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "consentMappingCallback", + "parameters": [ + { + "javaScriptType": "object", + "name": "config" + }, + { + "javaScriptType": "string", + "name": "message" + }, + { + "javaScriptType": "boolean", + "name": "isRequired" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "consentMappingCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "displayName" + }, + { + "javaScriptType": "string", + "name": "icon" + }, + { + "javaScriptType": "string", + "name": "accessLevel" + }, + { + "javaScriptType": "array", + "name": "titles" + }, + { + "javaScriptType": "string", + "name": "message" + }, + { + "javaScriptType": "boolean", + "name": "isRequired" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "deviceProfileCallback", + "parameters": [ + { + "javaScriptType": "boolean", + "name": "metadata" + }, + { + "javaScriptType": "boolean", + "name": "location" + }, + { + "javaScriptType": "string", + "name": "message" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "kbaCreateCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "array", + "name": "predefinedQuestions" + }, + { + "javaScriptType": "boolean", + "name": "allowUserDefinedQuestions" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "selectIdPCallback", + "parameters": [ + { + "javaScriptType": "object", + "name": "providers" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "termsAndConditionsCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "version" + }, + { + "javaScriptType": "string", + "name": "terms" + }, + { + "javaScriptType": "string", + "name": "createDate" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "suspendedTextOutputCallback", + "parameters": [ + { + "javaScriptType": "number", + "name": "messageType" + }, + { + "javaScriptType": "string", + "name": "message" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "textInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "textInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "string", + "name": "defaultText" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "scriptTextOutputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "message" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "metadataCallback", + "parameters": [ + { + "javaScriptType": "object", + "name": "outputValue" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "stringAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "string", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + }, + { + "javaScriptType": "array", + "name": "failedPolicies" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "stringAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "string", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "stringAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "string", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "array", + "name": "failedPolicies" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "stringAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "string", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "numberAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "number", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + }, + { + "javaScriptType": "array", + "name": "failedPolicies" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "numberAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "number", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "numberAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "number", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "array", + "name": "failedPolicies" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "numberAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "number", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "booleanAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "boolean", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + }, + { + "javaScriptType": "array", + "name": "failedPolicies" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "booleanAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "boolean", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "array", + "name": "failedPolicies" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "booleanAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "boolean", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "booleanAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "boolean", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "textOutputCallback", + "parameters": [ + { + "javaScriptType": "number", + "name": "messageType" + }, + { + "javaScriptType": "string", + "name": "message" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "confirmationCallback", + "parameters": [ + { + "javaScriptType": "number", + "name": "messageType" + }, + { + "javaScriptType": "number", + "name": "optionType" + }, + { + "javaScriptType": "number", + "name": "defaultOption" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "confirmationCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "number", + "name": "messageType" + }, + { + "javaScriptType": "array", + "name": "options" + }, + { + "javaScriptType": "number", + "name": "defaultOption" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "confirmationCallback", + "parameters": [ + { + "javaScriptType": "number", + "name": "messageType" + }, + { + "javaScriptType": "array", + "name": "options" + }, + { + "javaScriptType": "number", + "name": "defaultOption" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "confirmationCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "number", + "name": "messageType" + }, + { + "javaScriptType": "number", + "name": "optionType" + }, + { + "javaScriptType": "number", + "name": "defaultOption" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "choiceCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "array", + "name": "choices" + }, + { + "javaScriptType": "number", + "name": "defaultChoice" + }, + { + "javaScriptType": "boolean", + "name": "multipleSelectionsAllowed" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "redirectCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "redirectUrl" + }, + { + "javaScriptType": "object", + "name": "redirectData" + }, + { + "javaScriptType": "string", + "name": "method" + }, + { + "javaScriptType": "boolean", + "name": "setTrackingCookie" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "redirectCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "redirectUrl" + }, + { + "javaScriptType": "object", + "name": "redirectData" + }, + { + "javaScriptType": "string", + "name": "method" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "redirectCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "redirectUrl" + }, + { + "javaScriptType": "object", + "name": "redirectData" + }, + { + "javaScriptType": "string", + "name": "method" + }, + { + "javaScriptType": "string", + "name": "statusParameter" + }, + { + "javaScriptType": "string", + "name": "redirectBackUrlCookie" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "redirectCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "redirectUrl" + }, + { + "javaScriptType": "object", + "name": "redirectData" + }, + { + "javaScriptType": "string", + "name": "method" + }, + { + "javaScriptType": "string", + "name": "statusParameter" + }, + { + "javaScriptType": "string", + "name": "redirectBackUrlCookie" + }, + { + "javaScriptType": "boolean", + "name": "setTrackingCookie" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "pollingWaitCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "waitTime" + }, + { + "javaScriptType": "string", + "name": "message" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "hiddenValueCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "value" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "nameCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "nameCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "string", + "name": "defaultName" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "passwordCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "boolean", + "name": "echoOn" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "validatedUsernameCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "validatedUsernameCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + }, + { + "javaScriptType": "array", + "name": "failedPolicies" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "validatedPasswordCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "boolean", + "name": "echoOn" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + }, + { + "javaScriptType": "array", + "name": "failedPolicies" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "validatedPasswordCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "boolean", + "name": "echoOn" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + } + ], + "returnType": "void" + } + ], + "javaClass": "org.forgerock.openam.auth.nodes.script.ScriptedCallbacksBuilder", + "javaScriptType": "object", + "name": "callbacksBuilder" + }, + { + "elements": [ + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "query", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "query", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.wrappers.IdmIntegrationServiceScriptWrapper", + "javaScriptType": "object", + "name": "openidm" + }, + { + "elements": [], + "javaScriptType": "object", + "name": "requestCookies" + }, + { + "javaScriptType": "string", + "name": "cookieName" + }, + { + "elements": [ + { + "elementType": "method", + "name": "evaluate", + "parameters": [ + { + "javaScriptType": "object", + "name": "subject" + }, + { + "javaScriptType": "string", + "name": "application" + }, + { + "javaScriptType": "array", + "name": "resourceNames" + }, + { + "javaScriptType": "object", + "name": "environment" + } + ], + "returnType": "array" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptPolicyService", + "javaScriptType": "object", + "name": "policy" + } + ], + "evaluatorVersions": { + "JAVASCRIPT": [ + "2.0" + ] + } + }, + "defaultScript": "11e1a3c0-038b-4c16-956a-6c9d89328d00", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.lang.Thread", + "java.lang.invoke.*", + "java.lang.reflect.*", + "java.security.AccessController" + ], + "coreThreads": { + "$int": "&{device.match.node.script.context.core.threads|10}" + }, + "idleTimeout": 60, + "maxThreads": { + "$int": "&{device.match.node.script.context.max.threads|100}" + }, + "propertyNamePrefix": "esv.", + "queueSize": { + "$int": "&{device.match.node.script.context.queue.size|50}" + }, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "jdk.proxy*", + "org.mozilla.javascript.WrappedException", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "java.util.List", + "java.util.Map", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "org.mozilla.javascript.JavaScriptException" + ] + }, + "isHidden": false, + "languages": [ + "JAVASCRIPT" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/LIBRARY.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/LIBRARY.scripttype.json new file mode 100644 index 000000000..34bf5c7b1 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/LIBRARY.scripttype.json @@ -0,0 +1,1452 @@ +{ + "scripttype": { + "LIBRARY": { + "_id": "LIBRARY", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "LIBRARY", + "allowLists": [ + "org.forgerock.util.promise.PromiseImpl", + "org.forgerock.util.promise.Promises$*", + "java.lang.Object" + ], + "bindings": [ + { + "elements": [ + { + "elementType": "method", + "name": "send", + "parameters": [ + { + "javaScriptType": "string", + "name": "uri" + }, + { + "javaScriptType": "object", + "name": "requestOptions" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "send", + "parameters": [ + { + "javaScriptType": "string", + "name": "uri" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.wrappers.HttpClientScriptWrapper", + "javaScriptType": "object", + "name": "httpClient" + }, + { + "elements": [ + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "randomUUID", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "getRandomValues", + "parameters": [ + { + "javaScriptType": "array", + "name": "array" + } + ], + "returnType": "array" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "sign", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "sign", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "digest", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "verify", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + }, + { + "javaScriptType": "array", + "name": "signature" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "verify", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + }, + { + "javaScriptType": "array", + "name": "signature" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "encrypt", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "encrypt", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "decrypt", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "decrypt", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "generateKey", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithm" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "generateKey", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.crypto.subtle.ScriptSubtleService", + "javaScriptType": "object", + "name": "subtle" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.crypto.ScriptCryptoService", + "javaScriptType": "object", + "name": "crypto" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "decode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "array", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "decodeToBytes", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "btoa", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "atob", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptBase64Service", + "javaScriptType": "object", + "name": "base64" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "decode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "btoa", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "atob", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptBase64UrlService", + "javaScriptType": "object", + "name": "base64url" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "bytesToString", + "parameters": [ + { + "javaScriptType": "array", + "name": "bytes" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "stringToBytes", + "parameters": [ + { + "javaScriptType": "string", + "name": "string" + } + ], + "returnType": "array" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptTypesService", + "javaScriptType": "object", + "name": "types" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptUtilityService", + "javaScriptType": "object", + "name": "utils" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getName", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "isTraceEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isDebugEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isErrorEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isInfoEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isWarnEnabled", + "parameters": [], + "returnType": "boolean" + } + ], + "javaClass": "org.forgerock.openam.scripting.logging.ScriptedLoggerWrapper", + "javaScriptType": "object", + "name": "logger" + }, + { + "javaScriptType": "string", + "name": "scriptName" + }, + { + "javaScriptType": "string", + "name": "realm" + }, + { + "elements": [ + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "query", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "query", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.wrappers.IdmIntegrationServiceScriptWrapper", + "javaScriptType": "object", + "name": "openidm" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getGenericSecret", + "parameters": [ + { + "javaScriptType": "string", + "name": "secretId" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "javaScriptType": "object", + "name": "secrets" + }, + { + "javaScriptType": "string", + "name": "cookieName" + }, + { + "elements": [ + { + "elementType": "method", + "name": "evaluate", + "parameters": [ + { + "javaScriptType": "object", + "name": "subject" + }, + { + "javaScriptType": "string", + "name": "application" + }, + { + "javaScriptType": "array", + "name": "resourceNames" + }, + { + "javaScriptType": "object", + "name": "environment" + } + ], + "returnType": "array" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptPolicyService", + "javaScriptType": "object", + "name": "policy" + } + ], + "evaluatorVersions": { + "JAVASCRIPT": [ + "2.0" + ] + } + }, + "defaultScript": "[Empty]", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.security.AccessController", + "java.lang.reflect.*" + ], + "coreThreads": 10, + "idleTimeout": 60, + "maxThreads": 50, + "propertyNamePrefix": "script", + "queueSize": 10, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "java.lang.Float", + "org.forgerock.http.protocol.Header", + "java.lang.Integer", + "org.forgerock.http.Client", + "java.lang.Character$UnicodeBlock", + "java.lang.Character", + "java.lang.Long", + "java.lang.Short", + "java.util.Map", + "org.forgerock.http.client.*", + "java.lang.Math", + "org.forgerock.opendj.ldap.Dn", + "java.lang.Byte", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "java.lang.StrictMath", + "org.forgerock.util.promise.PromiseImpl", + "org.forgerock.http.Context", + "java.lang.Void", + "org.codehaus.groovy.runtime.GStringImpl", + "groovy.json.JsonSlurper", + "org.forgerock.http.protocol.Request", + "org.forgerock.http.protocol.Entity", + "org.forgerock.http.context.RootContext", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "java.util.List", + "org.forgerock.http.protocol.RequestCookies", + "org.forgerock.http.protocol.Responses", + "org.forgerock.util.promise.Promise", + "java.util.HashMap$KeyIterator", + "com.sun.identity.shared.debug.Debug", + "java.lang.Double", + "org.forgerock.http.protocol.Headers", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.http.protocol.Status", + "java.util.HashMap", + "java.lang.Character$Subset", + "java.util.TreeSet", + "java.util.ArrayList", + "java.util.HashSet", + "java.util.LinkedHashMap", + "org.forgerock.http.protocol.ResponseException", + "java.util.Collections$UnmodifiableRandomAccessList", + "org.forgerock.http.protocol.Message", + "java.lang.Boolean", + "java.lang.String", + "java.lang.Number", + "java.util.LinkedList", + "java.util.LinkedHashSet", + "org.forgerock.http.protocol.Response", + "org.forgerock.util.promise.NeverThrowsException", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "java.util.TreeMap", + "java.util.Collections$EmptyList", + "org.forgerock.openam.scripting.api.ScriptedSession", + "java.util.Collections$UnmodifiableCollection$1", + "org.forgerock.http.Handler", + "java.lang.Object", + "org.forgerock.http.protocol.Form" + ] + }, + "isHidden": false, + "languages": [ + "JAVASCRIPT" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/NODE_DESIGNER.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/NODE_DESIGNER.scripttype.json new file mode 100644 index 000000000..0b18986fe --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/NODE_DESIGNER.scripttype.json @@ -0,0 +1,3170 @@ +{ + "scripttype": { + "NODE_DESIGNER": { + "_id": "NODE_DESIGNER", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "NODE_DESIGNER", + "allowLists": [ + "org.forgerock.util.promise.PromiseImpl", + "org.forgerock.util.promise.Promises$*", + "java.lang.Object", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Float", + "java.lang.Long", + "java.lang.Math", + "java.lang.Number", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.Void", + "java.util.AbstractMap$*", + "java.util.ArrayList", + "java.util.Collections", + "java.util.concurrent.TimeUnit", + "java.util.Collections$*", + "java.util.HashSet", + "java.util.HashMap$KeyIterator", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.TreeSet", + "java.security.KeyPair", + "java.security.KeyPairGenerator", + "java.security.KeyPairGenerator$*", + "java.security.PrivateKey", + "java.security.PublicKey", + "java.security.spec.X509EncodedKeySpec", + "java.security.spec.MGF1ParameterSpec", + "javax.crypto.SecretKeyFactory", + "javax.crypto.spec.OAEPParameterSpec", + "javax.crypto.spec.PBEKeySpec", + "javax.crypto.spec.PSource", + "javax.crypto.spec.PSource$*", + "org.forgerock.json.JsonValue", + "org.forgerock.util.promise.NeverThrowsException", + "java.util.concurrent.ExecutionException", + "java.util.concurrent.TimeoutException", + "org.forgerock.openam.core.rest.authn.callbackhandlers.*", + "com.sun.crypto.provider.PBKDF2KeyImpl", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "sun.security.ec.ECPrivateKeyImpl", + "ch.qos.logback.classic.Logger", + "com.sun.proxy.$*", + "java.util.Date", + "java.security.spec.InvalidKeySpecException" + ], + "bindings": [ + { + "elements": [ + { + "elementType": "method", + "name": "send", + "parameters": [ + { + "javaScriptType": "string", + "name": "uri" + }, + { + "javaScriptType": "object", + "name": "requestOptions" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "send", + "parameters": [ + { + "javaScriptType": "string", + "name": "uri" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.wrappers.HttpClientScriptWrapper", + "javaScriptType": "object", + "name": "httpClient" + }, + { + "elements": [ + { + "elementType": "method", + "name": "innerJourney", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "name", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "identityResource", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "mustRun", + "parameters": [], + "returnType": "boolean" + } + ], + "javaClass": "org.forgerock.openam.auth.nodes.script.ScriptedTreeWrapper", + "javaScriptType": "object", + "name": "journey" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getName", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "isTraceEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isDebugEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isErrorEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isInfoEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isWarnEnabled", + "parameters": [], + "returnType": "boolean" + } + ], + "javaClass": "org.forgerock.openam.scripting.logging.ScriptedLoggerWrapper", + "javaScriptType": "object", + "name": "logger" + }, + { + "elements": [], + "javaScriptType": "object", + "name": "requestParameters" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getChoiceCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getNameCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getPasswordCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getHiddenValueCallbacks", + "parameters": [], + "returnType": "object" + }, + { + "elementType": "method", + "name": "getTextInputCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getStringAttributeInputCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getNumberAttributeInputCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getBooleanAttributeInputCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getConfirmationCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getLanguageCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getIdpCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getValidatedPasswordCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getValidatedUsernameCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getHttpCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getX509CertificateCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getConsentMappingCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getDeviceProfileCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getKbaCreateCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getSelectIdPCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getTermsAndConditionsCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "isEmpty", + "parameters": [], + "returnType": "boolean" + } + ], + "javaClass": "org.forgerock.openam.auth.nodes.script.ScriptedCallbacksWrapper", + "javaScriptType": "object", + "name": "callbacks" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getGenericSecret", + "parameters": [ + { + "javaScriptType": "string", + "name": "secretId" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "javaScriptType": "object", + "name": "secrets" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getIdentity", + "parameters": [ + { + "javaScriptType": "string", + "name": "userName" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.api.identity.ScriptedIdentityRepositoryScriptWrapper", + "javaScriptType": "object", + "name": "idRepository" + }, + { + "elements": [], + "javaScriptType": "object", + "name": "requestHeaders" + }, + { + "elements": [ + { + "elementType": "method", + "name": "generateJwt", + "parameters": [ + { + "javaScriptType": "object", + "name": "jwtData" + } + ], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.auth.nodes.script.JwtAssertionScriptWrapper", + "javaScriptType": "object", + "name": "jwtAssertion" + }, + { + "elements": [ + { + "elementType": "method", + "name": "remove", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "get", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "keys", + "parameters": [], + "returnType": "object" + }, + { + "elementType": "method", + "name": "getObject", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "isDefined", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "putShared", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + }, + { + "javaScriptType": "object", + "name": "value" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "putTransient", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + }, + { + "javaScriptType": "object", + "name": "value" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "mergeShared", + "parameters": [ + { + "javaScriptType": "object", + "name": "object" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "mergeTransient", + "parameters": [ + { + "javaScriptType": "object", + "name": "object" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.auth.node.api.NodeStateScriptWrapper", + "javaScriptType": "object", + "name": "nodeState" + }, + { + "javaScriptType": "boolean", + "name": "resumedFromSuspend" + }, + { + "elements": [ + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "randomUUID", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "getRandomValues", + "parameters": [ + { + "javaScriptType": "array", + "name": "array" + } + ], + "returnType": "array" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "sign", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "sign", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "digest", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "verify", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + }, + { + "javaScriptType": "array", + "name": "signature" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "verify", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + }, + { + "javaScriptType": "array", + "name": "signature" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "encrypt", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "encrypt", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "decrypt", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "decrypt", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "generateKey", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithm" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "generateKey", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.crypto.subtle.ScriptSubtleService", + "javaScriptType": "object", + "name": "subtle" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.crypto.ScriptCryptoService", + "javaScriptType": "object", + "name": "crypto" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "decode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "array", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "decodeToBytes", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "btoa", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "atob", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptBase64Service", + "javaScriptType": "object", + "name": "base64" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "decode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "btoa", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "atob", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptBase64UrlService", + "javaScriptType": "object", + "name": "base64url" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "bytesToString", + "parameters": [ + { + "javaScriptType": "array", + "name": "bytes" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "stringToBytes", + "parameters": [ + { + "javaScriptType": "string", + "name": "string" + } + ], + "returnType": "array" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptTypesService", + "javaScriptType": "object", + "name": "types" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptUtilityService", + "javaScriptType": "object", + "name": "utils" + }, + { + "elements": [], + "javaScriptType": "object", + "name": "existingSession" + }, + { + "elements": [ + { + "elementType": "method", + "name": "withIdentifiedUser", + "parameters": [ + { + "javaScriptType": "string", + "name": "username" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withIdentifiedAgent", + "parameters": [ + { + "javaScriptType": "string", + "name": "agentName" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "suspend", + "parameters": [ + { + "javaScriptType": "string", + "name": "callbackTextFormat" + }, + { + "javaScriptType": "object", + "name": "additionalLogic" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "suspend", + "parameters": [ + { + "javaScriptType": "string", + "name": "callbackTextFormat" + }, + { + "javaScriptType": "object", + "name": "additionalLogic" + }, + { + "javaScriptType": "number", + "name": "maximumSuspendDuration" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "suspend", + "parameters": [ + { + "javaScriptType": "string", + "name": "callbackTextFormat" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "goTo", + "parameters": [ + { + "javaScriptType": "string", + "name": "outcome" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withHeader", + "parameters": [ + { + "javaScriptType": "string", + "name": "header" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withDescription", + "parameters": [ + { + "javaScriptType": "string", + "name": "description" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withStage", + "parameters": [ + { + "javaScriptType": "string", + "name": "stage" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withErrorMessage", + "parameters": [ + { + "javaScriptType": "string", + "name": "errorMessage" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withLockoutMessage", + "parameters": [ + { + "javaScriptType": "string", + "name": "lockoutMessage" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "removeSessionProperty", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withMaxSessionTime", + "parameters": [ + { + "javaScriptType": "number", + "name": "maxSessionTime" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withMaxIdleTime", + "parameters": [ + { + "javaScriptType": "number", + "name": "maxIdleTime" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "putSessionProperty", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + }, + { + "javaScriptType": "string", + "name": "value" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.auth.nodes.script.ActionWrapper", + "javaScriptType": "object", + "name": "action" + }, + { + "javaScriptType": "string", + "name": "scriptName" + }, + { + "javaScriptType": "string", + "name": "realm" + }, + { + "elements": [ + { + "elementType": "method", + "name": "validateJwtClaims", + "parameters": [ + { + "javaScriptType": "object", + "name": "jwtData" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.auth.nodes.script.JwtValidatorScriptWrapper", + "javaScriptType": "object", + "name": "jwtValidator" + }, + { + "elements": [ + { + "elementType": "method", + "name": "languageCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "language" + }, + { + "javaScriptType": "string", + "name": "country" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "idPCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "provider" + }, + { + "javaScriptType": "string", + "name": "clientId" + }, + { + "javaScriptType": "string", + "name": "redirectUri" + }, + { + "javaScriptType": "array", + "name": "scope" + }, + { + "javaScriptType": "string", + "name": "nonce" + }, + { + "javaScriptType": "string", + "name": "request" + }, + { + "javaScriptType": "string", + "name": "requestUri" + }, + { + "javaScriptType": "array", + "name": "acrValues" + }, + { + "javaScriptType": "boolean", + "name": "requestNativeAppForUserInfo" + }, + { + "javaScriptType": "string", + "name": "token" + }, + { + "javaScriptType": "string", + "name": "tokenType" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "idPCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "provider" + }, + { + "javaScriptType": "string", + "name": "clientId" + }, + { + "javaScriptType": "string", + "name": "redirectUri" + }, + { + "javaScriptType": "array", + "name": "scope" + }, + { + "javaScriptType": "string", + "name": "nonce" + }, + { + "javaScriptType": "string", + "name": "request" + }, + { + "javaScriptType": "string", + "name": "requestUri" + }, + { + "javaScriptType": "array", + "name": "acrValues" + }, + { + "javaScriptType": "boolean", + "name": "requestNativeAppForUserInfo" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "httpCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "authRHeader" + }, + { + "javaScriptType": "string", + "name": "negoName" + }, + { + "javaScriptType": "string", + "name": "negoValue" + }, + { + "javaScriptType": "number", + "name": "errorCode" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "httpCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "authorizationHeader" + }, + { + "javaScriptType": "string", + "name": "negotiationHeader" + }, + { + "javaScriptType": "string", + "name": "errorCode" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "x509CertificateCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "x509CertificateCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "object", + "name": "certificate" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "x509CertificateCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "object", + "name": "certificate" + }, + { + "javaScriptType": "boolean", + "name": "requestSignature" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "consentMappingCallback", + "parameters": [ + { + "javaScriptType": "object", + "name": "config" + }, + { + "javaScriptType": "string", + "name": "message" + }, + { + "javaScriptType": "boolean", + "name": "isRequired" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "consentMappingCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "displayName" + }, + { + "javaScriptType": "string", + "name": "icon" + }, + { + "javaScriptType": "string", + "name": "accessLevel" + }, + { + "javaScriptType": "array", + "name": "titles" + }, + { + "javaScriptType": "string", + "name": "message" + }, + { + "javaScriptType": "boolean", + "name": "isRequired" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "deviceProfileCallback", + "parameters": [ + { + "javaScriptType": "boolean", + "name": "metadata" + }, + { + "javaScriptType": "boolean", + "name": "location" + }, + { + "javaScriptType": "string", + "name": "message" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "kbaCreateCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "array", + "name": "predefinedQuestions" + }, + { + "javaScriptType": "boolean", + "name": "allowUserDefinedQuestions" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "selectIdPCallback", + "parameters": [ + { + "javaScriptType": "object", + "name": "providers" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "termsAndConditionsCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "version" + }, + { + "javaScriptType": "string", + "name": "terms" + }, + { + "javaScriptType": "string", + "name": "createDate" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "suspendedTextOutputCallback", + "parameters": [ + { + "javaScriptType": "number", + "name": "messageType" + }, + { + "javaScriptType": "string", + "name": "message" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "textInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "textInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "string", + "name": "defaultText" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "scriptTextOutputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "message" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "metadataCallback", + "parameters": [ + { + "javaScriptType": "object", + "name": "outputValue" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "stringAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "string", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + }, + { + "javaScriptType": "array", + "name": "failedPolicies" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "stringAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "string", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "stringAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "string", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "array", + "name": "failedPolicies" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "stringAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "string", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "numberAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "number", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + }, + { + "javaScriptType": "array", + "name": "failedPolicies" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "numberAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "number", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "numberAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "number", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "array", + "name": "failedPolicies" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "numberAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "number", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "booleanAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "boolean", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + }, + { + "javaScriptType": "array", + "name": "failedPolicies" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "booleanAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "boolean", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "array", + "name": "failedPolicies" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "booleanAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "boolean", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "booleanAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "boolean", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "textOutputCallback", + "parameters": [ + { + "javaScriptType": "number", + "name": "messageType" + }, + { + "javaScriptType": "string", + "name": "message" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "confirmationCallback", + "parameters": [ + { + "javaScriptType": "number", + "name": "messageType" + }, + { + "javaScriptType": "number", + "name": "optionType" + }, + { + "javaScriptType": "number", + "name": "defaultOption" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "confirmationCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "number", + "name": "messageType" + }, + { + "javaScriptType": "array", + "name": "options" + }, + { + "javaScriptType": "number", + "name": "defaultOption" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "confirmationCallback", + "parameters": [ + { + "javaScriptType": "number", + "name": "messageType" + }, + { + "javaScriptType": "array", + "name": "options" + }, + { + "javaScriptType": "number", + "name": "defaultOption" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "confirmationCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "number", + "name": "messageType" + }, + { + "javaScriptType": "number", + "name": "optionType" + }, + { + "javaScriptType": "number", + "name": "defaultOption" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "choiceCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "array", + "name": "choices" + }, + { + "javaScriptType": "number", + "name": "defaultChoice" + }, + { + "javaScriptType": "boolean", + "name": "multipleSelectionsAllowed" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "redirectCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "redirectUrl" + }, + { + "javaScriptType": "object", + "name": "redirectData" + }, + { + "javaScriptType": "string", + "name": "method" + }, + { + "javaScriptType": "boolean", + "name": "setTrackingCookie" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "redirectCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "redirectUrl" + }, + { + "javaScriptType": "object", + "name": "redirectData" + }, + { + "javaScriptType": "string", + "name": "method" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "redirectCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "redirectUrl" + }, + { + "javaScriptType": "object", + "name": "redirectData" + }, + { + "javaScriptType": "string", + "name": "method" + }, + { + "javaScriptType": "string", + "name": "statusParameter" + }, + { + "javaScriptType": "string", + "name": "redirectBackUrlCookie" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "redirectCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "redirectUrl" + }, + { + "javaScriptType": "object", + "name": "redirectData" + }, + { + "javaScriptType": "string", + "name": "method" + }, + { + "javaScriptType": "string", + "name": "statusParameter" + }, + { + "javaScriptType": "string", + "name": "redirectBackUrlCookie" + }, + { + "javaScriptType": "boolean", + "name": "setTrackingCookie" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "pollingWaitCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "waitTime" + }, + { + "javaScriptType": "string", + "name": "message" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "hiddenValueCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "value" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "nameCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "nameCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "string", + "name": "defaultName" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "passwordCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "boolean", + "name": "echoOn" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "validatedUsernameCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "validatedUsernameCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + }, + { + "javaScriptType": "array", + "name": "failedPolicies" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "validatedPasswordCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "boolean", + "name": "echoOn" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + }, + { + "javaScriptType": "array", + "name": "failedPolicies" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "validatedPasswordCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "boolean", + "name": "echoOn" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + } + ], + "returnType": "void" + } + ], + "javaClass": "org.forgerock.openam.auth.nodes.script.ScriptedCallbacksBuilder", + "javaScriptType": "object", + "name": "callbacksBuilder" + }, + { + "elements": [ + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "query", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "query", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.wrappers.IdmIntegrationServiceScriptWrapper", + "javaScriptType": "object", + "name": "openidm" + }, + { + "elements": [], + "javaScriptType": "object", + "name": "requestCookies" + }, + { + "elements": [], + "javaScriptType": "object", + "name": "properties" + }, + { + "javaScriptType": "string", + "name": "cookieName" + }, + { + "elements": [ + { + "elementType": "method", + "name": "evaluate", + "parameters": [ + { + "javaScriptType": "object", + "name": "subject" + }, + { + "javaScriptType": "string", + "name": "application" + }, + { + "javaScriptType": "array", + "name": "resourceNames" + }, + { + "javaScriptType": "object", + "name": "environment" + } + ], + "returnType": "array" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptPolicyService", + "javaScriptType": "object", + "name": "policy" + } + ], + "evaluatorVersions": { + "JAVASCRIPT": [ + "2.0" + ] + } + }, + "defaultScript": "[Empty]", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.security.AccessController", + "java.lang.reflect.*" + ], + "coreThreads": { + "$int": "&{node.designer.script.context.core.threads|10}" + }, + "idleTimeout": 60, + "maxThreads": { + "$int": "&{node.designer.script.context.max.threads|100}" + }, + "propertyNamePrefix": "esv.", + "queueSize": { + "$int": "&{node.designer.script.context.queue.size|50}" + }, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "java.lang.Float", + "org.forgerock.http.protocol.Header", + "java.lang.Integer", + "org.forgerock.http.Client", + "java.lang.Character$UnicodeBlock", + "java.lang.Character", + "java.lang.Long", + "java.lang.Short", + "java.util.Map", + "org.forgerock.http.client.*", + "java.lang.Math", + "org.forgerock.opendj.ldap.Dn", + "java.lang.Byte", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "java.lang.StrictMath", + "org.forgerock.util.promise.PromiseImpl", + "org.forgerock.http.Context", + "java.lang.Void", + "org.codehaus.groovy.runtime.GStringImpl", + "groovy.json.JsonSlurper", + "org.forgerock.http.protocol.Request", + "org.forgerock.http.protocol.Entity", + "org.forgerock.http.context.RootContext", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "java.util.List", + "org.forgerock.http.protocol.RequestCookies", + "org.forgerock.http.protocol.Responses", + "org.forgerock.util.promise.Promise", + "java.util.HashMap$KeyIterator", + "com.sun.identity.shared.debug.Debug", + "java.lang.Double", + "org.forgerock.http.protocol.Headers", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.http.protocol.Status", + "java.util.HashMap", + "java.lang.Character$Subset", + "java.util.TreeSet", + "java.util.ArrayList", + "java.util.HashSet", + "java.util.LinkedHashMap", + "org.forgerock.http.protocol.ResponseException", + "java.util.Collections$UnmodifiableRandomAccessList", + "org.forgerock.http.protocol.Message", + "java.lang.Boolean", + "java.lang.String", + "java.lang.Number", + "java.util.LinkedList", + "java.util.LinkedHashSet", + "org.forgerock.http.protocol.Response", + "org.forgerock.util.promise.NeverThrowsException", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "java.util.TreeMap", + "java.util.Collections$EmptyList", + "org.forgerock.openam.scripting.api.ScriptedSession", + "java.util.Collections$UnmodifiableCollection$1", + "org.forgerock.http.Handler", + "java.lang.Object", + "org.forgerock.http.protocol.Form" + ] + }, + "isHidden": true, + "languages": [ + "JAVASCRIPT" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_ACCESS_TOKEN_MODIFICATION.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_ACCESS_TOKEN_MODIFICATION.scripttype.json new file mode 100644 index 000000000..891eb795c --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_ACCESS_TOKEN_MODIFICATION.scripttype.json @@ -0,0 +1,377 @@ +{ + "scripttype": { + "OAUTH2_ACCESS_TOKEN_MODIFICATION": { + "_id": "OAUTH2_ACCESS_TOKEN_MODIFICATION", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "OAUTH2_ACCESS_TOKEN_MODIFICATION", + "allowLists": [ + "com.google.common.collect.Sets$1", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.idm.AMIdentity", + "com.sun.identity.shared.debug.Debug", + "groovy.json.JsonSlurper", + "groovy.json.internal.LazyMap", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.Number", + "java.lang.Object", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.net.URI", + "java.util.AbstractMap$SimpleImmutableEntry", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Collections$1", + "java.util.Collections$EmptyList", + "java.util.Collections$SingletonList", + "java.util.Collections$UnmodifiableCollection$1", + "java.util.Collections$UnmodifiableMap", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableSet", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.List", + "java.util.Locale", + "java.util.Map", + "java.util.TreeMap", + "java.util.TreeSet", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.http.Client", + "org.forgerock.http.client.*", + "org.forgerock.http.protocol.*", + "org.forgerock.json.JsonValue", + "org.forgerock.macaroons.Macaroon", + "org.forgerock.oauth.clients.oidc.Claim", + "org.forgerock.oauth2.core.GrantType", + "org.forgerock.oauth2.core.StatefulAccessToken", + "org.forgerock.oauth2.core.UserInfoClaims", + "org.forgerock.oauth2.core.exceptions.InvalidRequestException", + "org.forgerock.openam.oauth2.OpenAMAccessToken", + "org.forgerock.openam.oauth2.token.grantset.Authorization$ModifiedAccessToken", + "org.forgerock.openam.oauth2.token.macaroon.MacaroonAccessToken", + "org.forgerock.openam.oauth2.token.stateless.StatelessAccessToken", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentityRepository", + "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "org.forgerock.openam.shared.security.crypto.CertificateService", + "org.forgerock.opendj.ldap.Dn", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.openidconnect.Claim", + "org.forgerock.openidconnect.ssoprovider.OpenIdConnectSSOToken", + "org.forgerock.util.promise.PromiseImpl", + "org.mozilla.javascript.JavaScriptException", + "sun.security.ec.ECPrivateKeyImpl" + ], + "bindings": [], + "evaluatorVersions": { + "GROOVY": [ + "1.0" + ], + "JAVASCRIPT": [ + "1.0" + ] + } + }, + "defaultScript": "d22f9a0c-426a-4466-b95e-d0f125b0d5fa", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.lang.Thread", + "java.lang.invoke.*", + "java.lang.reflect.*", + "java.security.AccessController" + ], + "coreThreads": { + "$int": "&{oauth2.access.token.modification.script.context.core.threads|10}" + }, + "idleTimeout": 60, + "maxThreads": { + "$int": "&{oauth2.access.token.modification.script.context.max.threads|50}" + }, + "propertyNamePrefix": "esv.", + "queueSize": { + "$int": "&{oauth2.access.token.modification.script.context.queue.size|10}" + }, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "com.google.common.collect.ImmutableList", + "com.google.common.collect.Sets$1", + "com.iplanet.am.sdk.AMHashMap", + "com.iplanet.sso.providers.dpro.SSOTokenIDImpl", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.crypto.provider.PBKDF2KeyImpl", + "com.sun.identity.authentication.callbacks.HiddenValueCallback", + "com.sun.identity.authentication.callbacks.ReCaptchaCallback", + "com.sun.identity.authentication.callbacks.ScriptTextOutputCallback", + "com.sun.identity.authentication.spi.HttpCallback", + "com.sun.identity.authentication.spi.IdentifiableCallback", + "com.sun.identity.authentication.spi.MetadataCallback", + "com.sun.identity.authentication.spi.PagePropertiesCallback", + "com.sun.identity.authentication.spi.RedirectCallback", + "com.sun.identity.authentication.spi.X509CertificateCallback", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.common.CaseInsensitiveHashMap$Entry", + "com.sun.identity.idm.AMIdentity", + "com.sun.identity.idm.IdType", + "com.sun.identity.saml2.assertion.impl.AttributeImpl", + "com.sun.identity.saml2.common.SAML2Exception", + "com.sun.identity.saml2.plugins.scripted.IdpAttributeMapperScriptHelper", + "com.sun.identity.shared.debug.Debug", + "groovy.json.JsonSlurper", + "groovy.json.StringEscapeUtils", + "groovy.json.internal.LazyMap", + "java.io.ByteArrayInputStream", + "java.io.ByteArrayOutputStream", + "java.io.UnsupportedEncodingException", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.NullPointerException", + "java.lang.Number", + "java.lang.Object", + "java.lang.RuntimeException", + "java.lang.SecurityException", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.math.BigDecimal", + "java.math.BigInteger", + "java.net.URI", + "java.security.KeyFactory", + "java.security.KeyPair", + "java.security.KeyPairGenerator", + "java.security.KeyPairGenerator$*", + "java.security.MessageDigest", + "java.security.MessageDigest$Delegate", + "java.security.MessageDigest$Delegate$CloneableDelegate", + "java.security.NoSuchAlgorithmException", + "java.security.PrivateKey", + "java.security.PublicKey", + "java.security.cert.CertificateFactory", + "java.security.cert.X509Certificate", + "java.security.spec.MGF1ParameterSpec", + "java.security.spec.PKCS8EncodedKeySpec", + "java.security.spec.X509EncodedKeySpec", + "java.text.SimpleDateFormat", + "java.time.Clock", + "java.time.Clock$FixedClock", + "java.time.Clock$OffsetClock", + "java.time.Clock$SystemClock", + "java.time.Clock$TickClock", + "java.time.temporal.ChronoUnit", + "java.util.AbstractMap$*", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Arrays", + "java.util.Collections", + "java.util.Collections$*", + "java.util.Date", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashMap$LinkedKeySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.List", + "java.util.Locale", + "java.util.Map", + "java.util.TreeMap", + "java.util.TreeSet", + "java.util.UUID", + "javax.crypto.Cipher", + "javax.crypto.Mac", + "javax.crypto.SecretKeyFactory", + "javax.crypto.spec.IvParameterSpec", + "javax.crypto.spec.OAEPParameterSpec", + "javax.crypto.spec.PBEKeySpec", + "javax.crypto.spec.PSource", + "javax.crypto.spec.PSource$*", + "javax.crypto.spec.SecretKeySpec", + "javax.security.auth.callback.ChoiceCallback", + "javax.security.auth.callback.ConfirmationCallback", + "javax.security.auth.callback.LanguageCallback", + "javax.security.auth.callback.NameCallback", + "javax.security.auth.callback.PasswordCallback", + "javax.security.auth.callback.TextInputCallback", + "javax.security.auth.callback.TextOutputCallback", + "org.apache.groovy.json.internal.LazyMap", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.guice.core.IdentityProvider", + "org.forgerock.guice.core.InjectorHolder", + "org.forgerock.http.Client", + "org.forgerock.http.Context", + "org.forgerock.http.Handler", + "org.forgerock.http.client.*", + "org.forgerock.http.context.RootContext", + "org.forgerock.http.header.*", + "org.forgerock.http.header.authorization.*", + "org.forgerock.http.protocol.*", + "org.forgerock.json.JsonValue", + "org.forgerock.json.jose.builders.EncryptedJwtBuilder", + "org.forgerock.json.jose.builders.EncryptedThenSignedJwtBuilder", + "org.forgerock.json.jose.builders.JweHeaderBuilder", + "org.forgerock.json.jose.builders.JwsHeaderBuilder", + "org.forgerock.json.jose.builders.JwtBuilderFactory", + "org.forgerock.json.jose.builders.SignedJwtBuilderImpl", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtBuilder", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtHeaderBuilder", + "org.forgerock.json.jose.jwe.EncryptedJwt", + "org.forgerock.json.jose.jwe.EncryptionMethod", + "org.forgerock.json.jose.jwe.JweAlgorithm", + "org.forgerock.json.jose.jwe.SignedThenEncryptedJwt", + "org.forgerock.json.jose.jwk.EcJWK", + "org.forgerock.json.jose.jwk.JWKSet", + "org.forgerock.json.jose.jwk.RsaJWK", + "org.forgerock.json.jose.jws.EncryptedThenSignedJwt", + "org.forgerock.json.jose.jws.JwsAlgorithm", + "org.forgerock.json.jose.jws.JwsHeader", + "org.forgerock.json.jose.jws.SignedEncryptedJwt", + "org.forgerock.json.jose.jws.SignedJwt", + "org.forgerock.json.jose.jws.SigningManager", + "org.forgerock.json.jose.jws.SupportedEllipticCurve", + "org.forgerock.json.jose.jws.handlers.HmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.RSASigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretECDSASigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretHmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretRSASigningHandler", + "org.forgerock.json.jose.jwt.JwtClaimsSet", + "org.forgerock.macaroons.Macaroon", + "org.forgerock.oauth.clients.oidc.Claim", + "org.forgerock.oauth2.core.GrantType", + "org.forgerock.oauth2.core.StatefulAccessToken", + "org.forgerock.oauth2.core.UserInfoClaims", + "org.forgerock.oauth2.core.exceptions.InvalidRequestException", + "org.forgerock.oauth2.core.tokenexchange.ExchangeableToken", + "org.forgerock.openam.auth.node.api.Action", + "org.forgerock.openam.auth.node.api.Action$ActionBuilder", + "org.forgerock.openam.auth.node.api.NodeState", + "org.forgerock.openam.auth.node.api.SuspendedTextOutputCallback", + "org.forgerock.openam.auth.nodes.IdentityProvider", + "org.forgerock.openam.auth.nodes.InjectorHolder", + "org.forgerock.openam.authentication.callbacks.AbstractValidatedCallback", + "org.forgerock.openam.authentication.callbacks.AttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.BooleanAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.ConsentMappingCallback", + "org.forgerock.openam.authentication.callbacks.DeviceProfileCallback", + "org.forgerock.openam.authentication.callbacks.IdPCallback", + "org.forgerock.openam.authentication.callbacks.KbaCreateCallback", + "org.forgerock.openam.authentication.callbacks.NumberAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.PollingWaitCallback", + "org.forgerock.openam.authentication.callbacks.SelectIdPCallback", + "org.forgerock.openam.authentication.callbacks.StringAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.TermsAndConditionsCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedPasswordCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedUsernameCallback", + "org.forgerock.openam.authentication.modules.scripted.*", + "org.forgerock.openam.core.rest.authn.callbackhandlers.*", + "org.forgerock.openam.core.rest.devices.deviceprint.DeviceIdDao", + "org.forgerock.openam.core.rest.devices.profile.DeviceProfilesDao", + "org.forgerock.openam.oauth2.OpenAMAccessToken", + "org.forgerock.openam.oauth2.token.grantset.Authorization$ModifiedAccessToken", + "org.forgerock.openam.oauth2.token.macaroon.MacaroonAccessToken", + "org.forgerock.openam.oauth2.token.stateless.StatelessAccessToken", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "org.forgerock.openam.scripting.api.ScriptedIdentity", + "org.forgerock.openam.scripting.api.ScriptedSession", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentityRepository", + "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "org.forgerock.openam.scripting.api.secrets.Secret", + "org.forgerock.openam.scripting.idrepo.ScriptIdentityRepository", + "org.forgerock.openam.shared.security.ThreadLocalSecureRandom", + "org.forgerock.openidconnect.Claim", + "org.forgerock.openidconnect.OpenIdConnectToken", + "org.forgerock.openidconnect.ssoprovider.OpenIdConnectSSOToken", + "org.forgerock.secrets.SecretBuilder", + "org.forgerock.secrets.keys.SigningKey", + "org.forgerock.secrets.keys.VerificationKey", + "org.forgerock.util.encode.Base64", + "org.forgerock.util.encode.Base64url", + "org.forgerock.util.encode.Hex", + "org.forgerock.util.promise.NeverThrowsException", + "org.forgerock.util.promise.Promise", + "org.forgerock.util.promise.PromiseImpl", + "org.mozilla.javascript.ConsString", + "org.mozilla.javascript.JavaScriptException", + "org.mozilla.javascript.WrappedException", + "sun.security.ec.ECPrivateKeyImpl", + "sun.security.rsa.RSAPrivateCrtKeyImpl", + "sun.security.rsa.RSAPublicKeyImpl", + "sun.security.x509.X500Name", + "sun.security.x509.X509CertImpl", + "java.util.AbstractMap$SimpleImmutableEntry", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "java.util.Collections$1", + "java.util.Collections$EmptyList", + "java.util.Collections$SingletonList", + "java.util.Collections$UnmodifiableMap", + "java.util.Collections$UnmodifiableSet", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.opendj.ldap.Dn", + "org.forgerock.openam.auth.nodes.VerifyTransactionsHelper" + ] + }, + "isHidden": false, + "languages": [ + "JAVASCRIPT", + "GROOVY" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_ACCESS_TOKEN_MODIFICATION_NEXT_GEN.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_ACCESS_TOKEN_MODIFICATION_NEXT_GEN.scripttype.json new file mode 100644 index 000000000..8228517b1 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_ACCESS_TOKEN_MODIFICATION_NEXT_GEN.scripttype.json @@ -0,0 +1,2055 @@ +{ + "scripttype": { + "OAUTH2_ACCESS_TOKEN_MODIFICATION_NEXT_GEN": { + "_id": "OAUTH2_ACCESS_TOKEN_MODIFICATION_NEXT_GEN", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "OAUTH2_ACCESS_TOKEN_MODIFICATION_NEXT_GEN", + "allowLists": [ + "org.forgerock.util.promise.PromiseImpl", + "org.forgerock.util.promise.Promises$*", + "java.lang.Object" + ], + "bindings": [ + { + "elements": [ + { + "elementType": "method", + "name": "send", + "parameters": [ + { + "javaScriptType": "string", + "name": "uri" + }, + { + "javaScriptType": "object", + "name": "requestOptions" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "send", + "parameters": [ + { + "javaScriptType": "string", + "name": "uri" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.wrappers.HttpClientScriptWrapper", + "javaScriptType": "object", + "name": "httpClient" + }, + { + "elements": [], + "javaScriptType": "object", + "name": "requestProperties" + }, + { + "elements": [], + "javaScriptType": "object", + "name": "clientProperties" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getName", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "isTraceEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isDebugEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isErrorEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isInfoEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isWarnEnabled", + "parameters": [], + "returnType": "boolean" + } + ], + "javaClass": "org.forgerock.openam.scripting.logging.ScriptedLoggerWrapper", + "javaScriptType": "object", + "name": "logger" + }, + { + "elements": [ + { + "elementType": "method", + "name": "setNonce", + "parameters": [ + { + "javaScriptType": "string", + "name": "nonce" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "getNonce", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "getField", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "toMap", + "parameters": [], + "returnType": "object" + }, + { + "elementType": "method", + "name": "getPermissions", + "parameters": [], + "returnType": "object" + }, + { + "elementType": "method", + "name": "setPermissions", + "parameters": [ + { + "javaScriptType": "object", + "name": "permissions" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "setFields", + "parameters": [ + { + "javaScriptType": "object", + "name": "fields" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "setField", + "parameters": [ + { + "javaScriptType": "string", + "name": "field" + }, + { + "javaScriptType": "object", + "name": "value" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "getRealm", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "setRealm", + "parameters": [ + { + "javaScriptType": "string", + "name": "realm" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "getScope", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "setScope", + "parameters": [ + { + "javaScriptType": "array", + "name": "scopes" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "removeRealm", + "parameters": [], + "returnType": "void" + }, + { + "elementType": "method", + "name": "getAuthLevel", + "parameters": [], + "returnType": "number" + }, + { + "elementType": "method", + "name": "setId", + "parameters": [ + { + "javaScriptType": "string", + "name": "tokenId" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "isExpired", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "getTokenId", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "getExpiryTime", + "parameters": [], + "returnType": "number" + }, + { + "elementType": "method", + "name": "setClaims", + "parameters": [ + { + "javaScriptType": "string", + "name": "claims" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "getClientId", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "getClaims", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "getTokenType", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "getGrantType", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "getAuditTrackingId", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "getAct", + "parameters": [], + "returnType": "object" + }, + { + "elementType": "method", + "name": "setAct", + "parameters": [ + { + "javaScriptType": "object", + "name": "value" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "getMayAct", + "parameters": [], + "returnType": "object" + }, + { + "elementType": "method", + "name": "setMayAct", + "parameters": [ + { + "javaScriptType": "object", + "name": "value" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "getResourceOwnerId", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "getAuthTimeSeconds", + "parameters": [], + "returnType": "number" + }, + { + "elementType": "method", + "name": "getResourceOwner", + "parameters": [], + "returnType": "object" + }, + { + "elementType": "method", + "name": "getCustomFields", + "parameters": [], + "returnType": "object" + }, + { + "elementType": "method", + "name": "getTokenName", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "getTokenInfo", + "parameters": [], + "returnType": "object" + }, + { + "elementType": "method", + "name": "addExtraData", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + }, + { + "javaScriptType": "string", + "name": "value" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "getAuthGrantId", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "removeNonce", + "parameters": [], + "returnType": "void" + }, + { + "elementType": "method", + "name": "removeClaims", + "parameters": [], + "returnType": "void" + }, + { + "elementType": "method", + "name": "setTokenType", + "parameters": [ + { + "javaScriptType": "string", + "name": "tokenType" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "removeTokenType", + "parameters": [], + "returnType": "void" + }, + { + "elementType": "method", + "name": "setGrantType", + "parameters": [ + { + "javaScriptType": "string", + "name": "grantType" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "removeGrantType", + "parameters": [], + "returnType": "void" + }, + { + "elementType": "method", + "name": "getConfirmationKey", + "parameters": [], + "returnType": "object" + }, + { + "elementType": "method", + "name": "setConfirmationKey", + "parameters": [ + { + "javaScriptType": "object", + "name": "confirmationKey" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "removeConfirmationKey", + "parameters": [], + "returnType": "void" + }, + { + "elementType": "method", + "name": "addExtraJsonData", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + }, + { + "javaScriptType": "object", + "name": "value" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "setAuditTrackingId", + "parameters": [ + { + "javaScriptType": "string", + "name": "auditTrackingId" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "removeAuditTrackingId", + "parameters": [], + "returnType": "void" + }, + { + "elementType": "method", + "name": "removePermissions", + "parameters": [], + "returnType": "void" + }, + { + "elementType": "method", + "name": "setAuthGrantId", + "parameters": [ + { + "javaScriptType": "string", + "name": "authGrantId" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "removeAuthGrantId", + "parameters": [], + "returnType": "void" + }, + { + "elementType": "method", + "name": "setExpiryTime", + "parameters": [ + { + "javaScriptType": "number", + "name": "expiryTime" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "setClientId", + "parameters": [ + { + "javaScriptType": "string", + "name": "clientId" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "removeClientId", + "parameters": [], + "returnType": "void" + }, + { + "elementType": "method", + "name": "setResourceOwnerId", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceOwnerId" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "removeResourceOwnerId", + "parameters": [], + "returnType": "void" + }, + { + "elementType": "method", + "name": "removeScopes", + "parameters": [], + "returnType": "void" + }, + { + "elementType": "method", + "name": "setAuthTime", + "parameters": [ + { + "javaScriptType": "number", + "name": "authTime" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "removeAuthTime", + "parameters": [], + "returnType": "void" + }, + { + "elementType": "method", + "name": "setAuthLevel", + "parameters": [ + { + "javaScriptType": "number", + "name": "authLevel" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "removeAuthLevel", + "parameters": [], + "returnType": "void" + }, + { + "elementType": "method", + "name": "setTokenName", + "parameters": [ + { + "javaScriptType": "string", + "name": "tokenName" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "removeTokenName", + "parameters": [], + "returnType": "void" + } + ], + "javaClass": "org.forgerock.oauth2.core.scripting.AccessTokenScriptWrapper", + "javaScriptType": "object", + "name": "accessToken" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getGenericSecret", + "parameters": [ + { + "javaScriptType": "string", + "name": "secretId" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "javaScriptType": "object", + "name": "secrets" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getName", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "store", + "parameters": [], + "returnType": "void" + }, + { + "elementType": "method", + "name": "setAttribute", + "parameters": [ + { + "javaScriptType": "string", + "name": "attributeName" + }, + { + "javaScriptType": "array", + "name": "attributeValues" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "addAttribute", + "parameters": [ + { + "javaScriptType": "string", + "name": "attributeName" + }, + { + "javaScriptType": "string", + "name": "attributeValue" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "getAttributeValues", + "parameters": [ + { + "javaScriptType": "string", + "name": "attributeName" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getUniversalId", + "parameters": [], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.api.identity.ScriptedIdentityScriptWrapper", + "javaScriptType": "object", + "name": "identity" + }, + { + "elements": [ + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "randomUUID", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "getRandomValues", + "parameters": [ + { + "javaScriptType": "array", + "name": "array" + } + ], + "returnType": "array" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "sign", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "sign", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "digest", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "verify", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + }, + { + "javaScriptType": "array", + "name": "signature" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "verify", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + }, + { + "javaScriptType": "array", + "name": "signature" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "encrypt", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "encrypt", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "decrypt", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "decrypt", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "generateKey", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithm" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "generateKey", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.crypto.subtle.ScriptSubtleService", + "javaScriptType": "object", + "name": "subtle" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.crypto.ScriptCryptoService", + "javaScriptType": "object", + "name": "crypto" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "decode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "array", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "decodeToBytes", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "btoa", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "atob", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptBase64Service", + "javaScriptType": "object", + "name": "base64" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "decode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "btoa", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "atob", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptBase64UrlService", + "javaScriptType": "object", + "name": "base64url" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "bytesToString", + "parameters": [ + { + "javaScriptType": "array", + "name": "bytes" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "stringToBytes", + "parameters": [ + { + "javaScriptType": "string", + "name": "string" + } + ], + "returnType": "array" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptTypesService", + "javaScriptType": "object", + "name": "types" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptUtilityService", + "javaScriptType": "object", + "name": "utils" + }, + { + "javaScriptType": "string", + "name": "scriptName" + }, + { + "javaScriptType": "string", + "name": "realm" + }, + { + "javaScriptType": "array", + "name": "scopes" + }, + { + "elements": [ + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "query", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "query", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.wrappers.IdmIntegrationServiceScriptWrapper", + "javaScriptType": "object", + "name": "openidm" + }, + { + "javaScriptType": "string", + "name": "cookieName" + }, + { + "elements": [ + { + "elementType": "method", + "name": "evaluate", + "parameters": [ + { + "javaScriptType": "object", + "name": "subject" + }, + { + "javaScriptType": "string", + "name": "application" + }, + { + "javaScriptType": "array", + "name": "resourceNames" + }, + { + "javaScriptType": "object", + "name": "environment" + } + ], + "returnType": "array" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptPolicyService", + "javaScriptType": "object", + "name": "policy" + } + ], + "evaluatorVersions": { + "JAVASCRIPT": [ + "2.0" + ] + } + }, + "defaultScript": "[Empty]", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.security.AccessController", + "java.lang.reflect.*" + ], + "coreThreads": { + "$int": "&{oauth2.access.token.modification.next.gen.script.context.core.threads|50}" + }, + "idleTimeout": 60, + "maxThreads": { + "$int": "&{oauth2.access.token.modification.next.gen.script.context.max.threads|100}" + }, + "propertyNamePrefix": "esv.", + "queueSize": { + "$int": "&{oauth2.access.token.modification.next.gen.script.context.queue.size|50}" + }, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "java.lang.Float", + "org.forgerock.http.protocol.Header", + "java.lang.Integer", + "org.forgerock.http.Client", + "java.lang.Character$UnicodeBlock", + "java.lang.Character", + "java.lang.Long", + "java.lang.Short", + "java.util.Map", + "org.forgerock.http.client.*", + "java.lang.Math", + "org.forgerock.opendj.ldap.Dn", + "java.lang.Byte", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "java.lang.StrictMath", + "org.forgerock.util.promise.PromiseImpl", + "org.forgerock.http.Context", + "java.lang.Void", + "org.codehaus.groovy.runtime.GStringImpl", + "groovy.json.JsonSlurper", + "org.forgerock.http.protocol.Request", + "org.forgerock.http.protocol.Entity", + "org.forgerock.http.context.RootContext", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "java.util.List", + "org.forgerock.http.protocol.RequestCookies", + "org.forgerock.http.protocol.Responses", + "org.forgerock.util.promise.Promise", + "java.util.HashMap$KeyIterator", + "com.sun.identity.shared.debug.Debug", + "java.lang.Double", + "org.forgerock.http.protocol.Headers", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.http.protocol.Status", + "java.util.HashMap", + "java.lang.Character$Subset", + "java.util.TreeSet", + "java.util.ArrayList", + "java.util.HashSet", + "java.util.LinkedHashMap", + "org.forgerock.http.protocol.ResponseException", + "java.util.Collections$UnmodifiableRandomAccessList", + "org.forgerock.http.protocol.Message", + "java.lang.Boolean", + "java.lang.String", + "java.lang.Number", + "java.util.LinkedList", + "java.util.LinkedHashSet", + "org.forgerock.http.protocol.Response", + "org.forgerock.util.promise.NeverThrowsException", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "java.util.TreeMap", + "java.util.Collections$EmptyList", + "org.forgerock.openam.scripting.api.ScriptedSession", + "java.util.Collections$UnmodifiableCollection$1", + "org.forgerock.http.Handler", + "java.lang.Object", + "org.forgerock.http.protocol.Form" + ] + }, + "isHidden": false, + "languages": [ + "JAVASCRIPT" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_AUTHORIZE_ENDPOINT_DATA_PROVIDER.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_AUTHORIZE_ENDPOINT_DATA_PROVIDER.scripttype.json new file mode 100644 index 000000000..d52b226be --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_AUTHORIZE_ENDPOINT_DATA_PROVIDER.scripttype.json @@ -0,0 +1,361 @@ +{ + "scripttype": { + "OAUTH2_AUTHORIZE_ENDPOINT_DATA_PROVIDER": { + "_id": "OAUTH2_AUTHORIZE_ENDPOINT_DATA_PROVIDER", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "OAUTH2_AUTHORIZE_ENDPOINT_DATA_PROVIDER", + "allowLists": [ + "com.google.common.collect.Sets$1", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.idm.AMIdentity", + "com.sun.identity.shared.debug.Debug", + "groovy.json.JsonSlurper", + "groovy.json.internal.LazyMap", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.Number", + "java.lang.Object", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.net.URI", + "java.util.AbstractMap$SimpleImmutableEntry", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Collections$1", + "java.util.Collections$EmptyList", + "java.util.Collections$SingletonList", + "java.util.Collections$UnmodifiableCollection$1", + "java.util.Collections$UnmodifiableMap", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableSet", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.List", + "java.util.Locale", + "java.util.Map", + "java.util.TreeMap", + "java.util.TreeSet", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.http.Client", + "org.forgerock.http.client.*", + "org.forgerock.http.protocol.*", + "org.forgerock.json.JsonValue", + "org.forgerock.oauth.clients.oidc.Claim", + "org.forgerock.oauth2.core.exceptions.ServerException", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentityRepository", + "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "org.forgerock.openam.shared.security.crypto.CertificateService", + "org.forgerock.opendj.ldap.Dn", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.util.promise.PromiseImpl", + "org.mozilla.javascript.JavaScriptException", + "sun.security.ec.ECPrivateKeyImpl" + ], + "bindings": [], + "evaluatorVersions": { + "GROOVY": [ + "1.0" + ], + "JAVASCRIPT": [ + "1.0" + ] + } + }, + "defaultScript": "[Empty]", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.lang.Thread", + "java.lang.invoke.*", + "java.lang.reflect.*", + "java.security.AccessController" + ], + "coreThreads": { + "$int": "&{oauth2.authorize.endpoint.data.provider.script.context.core.threads|10}" + }, + "idleTimeout": 60, + "maxThreads": { + "$int": "&{oauth2.authorize.endpoint.data.provider.script.context.max.threads|100}" + }, + "propertyNamePrefix": "esv.", + "queueSize": { + "$int": "&{oauth2.authorize.endpoint.data.provider.script.context.queue.size|50}" + }, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "com.google.common.collect.ImmutableList", + "com.google.common.collect.Sets$1", + "com.iplanet.am.sdk.AMHashMap", + "com.iplanet.sso.providers.dpro.SSOTokenIDImpl", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.identity.authentication.callbacks.HiddenValueCallback", + "com.sun.identity.authentication.callbacks.ReCaptchaCallback", + "com.sun.identity.authentication.callbacks.ScriptTextOutputCallback", + "com.sun.identity.authentication.spi.HttpCallback", + "com.sun.identity.authentication.spi.IdentifiableCallback", + "com.sun.identity.authentication.spi.MetadataCallback", + "com.sun.identity.authentication.spi.PagePropertiesCallback", + "com.sun.identity.authentication.spi.RedirectCallback", + "com.sun.identity.authentication.spi.X509CertificateCallback", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.common.CaseInsensitiveHashMap$Entry", + "com.sun.identity.idm.AMIdentity", + "com.sun.identity.idm.IdType", + "com.sun.identity.saml2.assertion.impl.AttributeImpl", + "com.sun.identity.saml2.common.SAML2Exception", + "com.sun.identity.saml2.plugins.scripted.IdpAttributeMapperScriptHelper", + "com.sun.identity.shared.debug.Debug", + "groovy.json.JsonSlurper", + "groovy.json.StringEscapeUtils", + "groovy.json.internal.LazyMap", + "java.io.ByteArrayInputStream", + "java.io.ByteArrayOutputStream", + "java.io.UnsupportedEncodingException", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.NullPointerException", + "java.lang.Number", + "java.lang.Object", + "java.lang.RuntimeException", + "java.lang.SecurityException", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.math.BigDecimal", + "java.math.BigInteger", + "java.net.URI", + "java.security.KeyFactory", + "java.security.KeyPair", + "java.security.KeyPairGenerator", + "java.security.KeyPairGenerator$*", + "java.security.MessageDigest", + "java.security.MessageDigest$Delegate", + "java.security.MessageDigest$Delegate$CloneableDelegate", + "java.security.NoSuchAlgorithmException", + "java.security.PrivateKey", + "java.security.PublicKey", + "java.security.cert.CertificateFactory", + "java.security.cert.X509Certificate", + "java.security.spec.MGF1ParameterSpec", + "java.security.spec.PKCS8EncodedKeySpec", + "java.security.spec.X509EncodedKeySpec", + "java.text.SimpleDateFormat", + "java.time.Clock", + "java.time.Clock$FixedClock", + "java.time.Clock$OffsetClock", + "java.time.Clock$SystemClock", + "java.time.Clock$TickClock", + "java.time.temporal.ChronoUnit", + "java.util.AbstractMap$*", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Arrays", + "java.util.Collections", + "java.util.Collections$*", + "java.util.Date", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashMap$LinkedKeySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.List", + "java.util.Locale", + "java.util.Map", + "java.util.TreeMap", + "java.util.TreeSet", + "java.util.UUID", + "javax.crypto.Cipher", + "javax.crypto.Mac", + "javax.crypto.spec.IvParameterSpec", + "javax.crypto.spec.OAEPParameterSpec", + "javax.crypto.spec.PSource", + "javax.crypto.spec.PSource$*", + "javax.crypto.spec.SecretKeySpec", + "javax.security.auth.callback.ChoiceCallback", + "javax.security.auth.callback.ConfirmationCallback", + "javax.security.auth.callback.LanguageCallback", + "javax.security.auth.callback.NameCallback", + "javax.security.auth.callback.PasswordCallback", + "javax.security.auth.callback.TextInputCallback", + "javax.security.auth.callback.TextOutputCallback", + "org.apache.groovy.json.internal.LazyMap", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.guice.core.IdentityProvider", + "org.forgerock.guice.core.InjectorHolder", + "org.forgerock.http.Client", + "org.forgerock.http.Context", + "org.forgerock.http.Handler", + "org.forgerock.http.client.*", + "org.forgerock.http.context.RootContext", + "org.forgerock.http.header.*", + "org.forgerock.http.header.authorization.*", + "org.forgerock.http.protocol.*", + "org.forgerock.json.JsonValue", + "org.forgerock.json.jose.builders.EncryptedJwtBuilder", + "org.forgerock.json.jose.builders.EncryptedThenSignedJwtBuilder", + "org.forgerock.json.jose.builders.JweHeaderBuilder", + "org.forgerock.json.jose.builders.JwsHeaderBuilder", + "org.forgerock.json.jose.builders.JwtBuilderFactory", + "org.forgerock.json.jose.builders.SignedJwtBuilderImpl", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtBuilder", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtHeaderBuilder", + "org.forgerock.json.jose.jwe.EncryptedJwt", + "org.forgerock.json.jose.jwe.EncryptionMethod", + "org.forgerock.json.jose.jwe.JweAlgorithm", + "org.forgerock.json.jose.jwe.SignedThenEncryptedJwt", + "org.forgerock.json.jose.jwk.JWKSet", + "org.forgerock.json.jose.jwk.RsaJWK", + "org.forgerock.json.jose.jws.EncryptedThenSignedJwt", + "org.forgerock.json.jose.jws.JwsAlgorithm", + "org.forgerock.json.jose.jws.JwsHeader", + "org.forgerock.json.jose.jws.SignedEncryptedJwt", + "org.forgerock.json.jose.jws.SignedJwt", + "org.forgerock.json.jose.jws.SigningManager", + "org.forgerock.json.jose.jws.handlers.HmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.RSASigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretHmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretRSASigningHandler", + "org.forgerock.json.jose.jwt.JwtClaimsSet", + "org.forgerock.macaroons.Macaroon", + "org.forgerock.oauth.clients.oidc.Claim", + "org.forgerock.oauth2.core.GrantType", + "org.forgerock.oauth2.core.StatefulAccessToken", + "org.forgerock.oauth2.core.UserInfoClaims", + "org.forgerock.oauth2.core.exceptions.InvalidRequestException", + "org.forgerock.oauth2.core.tokenexchange.ExchangeableToken", + "org.forgerock.openam.auth.node.api.Action", + "org.forgerock.openam.auth.node.api.Action$ActionBuilder", + "org.forgerock.openam.auth.node.api.NodeState", + "org.forgerock.openam.auth.node.api.SuspendedTextOutputCallback", + "org.forgerock.openam.auth.nodes.IdentityProvider", + "org.forgerock.openam.auth.nodes.InjectorHolder", + "org.forgerock.openam.authentication.callbacks.AbstractValidatedCallback", + "org.forgerock.openam.authentication.callbacks.AttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.BooleanAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.ConsentMappingCallback", + "org.forgerock.openam.authentication.callbacks.DeviceProfileCallback", + "org.forgerock.openam.authentication.callbacks.IdPCallback", + "org.forgerock.openam.authentication.callbacks.KbaCreateCallback", + "org.forgerock.openam.authentication.callbacks.NumberAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.PollingWaitCallback", + "org.forgerock.openam.authentication.callbacks.SelectIdPCallback", + "org.forgerock.openam.authentication.callbacks.StringAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.TermsAndConditionsCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedPasswordCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedUsernameCallback", + "org.forgerock.openam.authentication.modules.scripted.*", + "org.forgerock.openam.core.rest.authn.callbackhandlers.*", + "org.forgerock.openam.core.rest.devices.deviceprint.DeviceIdDao", + "org.forgerock.openam.core.rest.devices.profile.DeviceProfilesDao", + "org.forgerock.openam.oauth2.OpenAMAccessToken", + "org.forgerock.openam.oauth2.token.grantset.Authorization$ModifiedAccessToken", + "org.forgerock.openam.oauth2.token.macaroon.MacaroonAccessToken", + "org.forgerock.openam.oauth2.token.stateless.StatelessAccessToken", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "org.forgerock.openam.scripting.api.ScriptedIdentity", + "org.forgerock.openam.scripting.api.ScriptedSession", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentityRepository", + "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "org.forgerock.openam.scripting.api.secrets.Secret", + "org.forgerock.openam.scripting.idrepo.ScriptIdentityRepository", + "org.forgerock.openam.shared.security.ThreadLocalSecureRandom", + "org.forgerock.openidconnect.Claim", + "org.forgerock.openidconnect.OpenIdConnectToken", + "org.forgerock.openidconnect.ssoprovider.OpenIdConnectSSOToken", + "org.forgerock.secrets.SecretBuilder", + "org.forgerock.secrets.keys.SigningKey", + "org.forgerock.secrets.keys.VerificationKey", + "org.forgerock.util.encode.Base64", + "org.forgerock.util.encode.Base64url", + "org.forgerock.util.encode.Hex", + "org.forgerock.util.promise.NeverThrowsException", + "org.forgerock.util.promise.Promise", + "org.forgerock.util.promise.PromiseImpl", + "org.mozilla.javascript.ConsString", + "org.mozilla.javascript.JavaScriptException", + "org.mozilla.javascript.WrappedException", + "sun.security.ec.ECPrivateKeyImpl", + "sun.security.rsa.RSAPrivateCrtKeyImpl", + "sun.security.rsa.RSAPublicKeyImpl", + "sun.security.x509.X500Name", + "sun.security.x509.X509CertImpl", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "java.util.AbstractMap$SimpleImmutableEntry", + "java.util.Collections$1", + "java.util.Collections$EmptyList", + "java.util.Collections$SingletonList", + "java.util.Collections$UnmodifiableMap", + "java.util.Collections$UnmodifiableSet", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.opendj.ldap.Dn", + "org.forgerock.openam.auth.nodes.VerifyTransactionsHelper" + ] + }, + "isHidden": false, + "languages": [ + "JAVASCRIPT", + "GROOVY" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_DYNAMIC_CLIENT_REGISTRATION.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_DYNAMIC_CLIENT_REGISTRATION.scripttype.json new file mode 100644 index 000000000..e2e46b59f --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_DYNAMIC_CLIENT_REGISTRATION.scripttype.json @@ -0,0 +1,1538 @@ +{ + "scripttype": { + "OAUTH2_DYNAMIC_CLIENT_REGISTRATION": { + "_id": "OAUTH2_DYNAMIC_CLIENT_REGISTRATION", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "OAUTH2_DYNAMIC_CLIENT_REGISTRATION", + "allowLists": [ + "org.forgerock.util.promise.PromiseImpl", + "org.forgerock.util.promise.Promises$*", + "java.lang.Object" + ], + "bindings": [ + { + "elements": [ + { + "elementType": "method", + "name": "send", + "parameters": [ + { + "javaScriptType": "string", + "name": "uri" + }, + { + "javaScriptType": "object", + "name": "requestOptions" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "send", + "parameters": [ + { + "javaScriptType": "string", + "name": "uri" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.wrappers.HttpClientScriptWrapper", + "javaScriptType": "object", + "name": "httpClient" + }, + { + "elements": [], + "javaScriptType": "object", + "name": "softwareStatement" + }, + { + "elements": [], + "javaScriptType": "object", + "name": "requestProperties" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getName", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "isTraceEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isDebugEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isErrorEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isInfoEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isWarnEnabled", + "parameters": [], + "returnType": "boolean" + } + ], + "javaClass": "org.forgerock.openam.scripting.logging.ScriptedLoggerWrapper", + "javaScriptType": "object", + "name": "logger" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getGenericSecret", + "parameters": [ + { + "javaScriptType": "string", + "name": "secretId" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "javaScriptType": "object", + "name": "secrets" + }, + { + "elements": [ + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "randomUUID", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "getRandomValues", + "parameters": [ + { + "javaScriptType": "array", + "name": "array" + } + ], + "returnType": "array" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "sign", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "sign", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "digest", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "verify", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + }, + { + "javaScriptType": "array", + "name": "signature" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "verify", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + }, + { + "javaScriptType": "array", + "name": "signature" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "encrypt", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "encrypt", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "decrypt", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "decrypt", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "generateKey", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithm" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "generateKey", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.crypto.subtle.ScriptSubtleService", + "javaScriptType": "object", + "name": "subtle" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.crypto.ScriptCryptoService", + "javaScriptType": "object", + "name": "crypto" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "decode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "array", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "decodeToBytes", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "btoa", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "atob", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptBase64Service", + "javaScriptType": "object", + "name": "base64" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "decode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "btoa", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "atob", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptBase64UrlService", + "javaScriptType": "object", + "name": "base64url" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "bytesToString", + "parameters": [ + { + "javaScriptType": "array", + "name": "bytes" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "stringToBytes", + "parameters": [ + { + "javaScriptType": "string", + "name": "string" + } + ], + "returnType": "array" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptTypesService", + "javaScriptType": "object", + "name": "types" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptUtilityService", + "javaScriptType": "object", + "name": "utils" + }, + { + "javaScriptType": "string", + "name": "scriptName" + }, + { + "javaScriptType": "string", + "name": "realm" + }, + { + "javaScriptType": "string", + "name": "operation" + }, + { + "elements": [ + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "query", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "query", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.wrappers.IdmIntegrationServiceScriptWrapper", + "javaScriptType": "object", + "name": "openidm" + }, + { + "javaScriptType": "string", + "name": "cookieName" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getName", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "store", + "parameters": [], + "returnType": "void" + }, + { + "elementType": "method", + "name": "setAttribute", + "parameters": [ + { + "javaScriptType": "string", + "name": "attributeName" + }, + { + "javaScriptType": "array", + "name": "attributeValues" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "addAttribute", + "parameters": [ + { + "javaScriptType": "string", + "name": "attributeName" + }, + { + "javaScriptType": "string", + "name": "attributeValue" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "getAttributeValues", + "parameters": [ + { + "javaScriptType": "string", + "name": "attributeName" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getUniversalId", + "parameters": [], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.api.identity.ScriptedIdentityScriptWrapper", + "javaScriptType": "object", + "name": "clientIdentity" + }, + { + "elements": [ + { + "elementType": "method", + "name": "evaluate", + "parameters": [ + { + "javaScriptType": "object", + "name": "subject" + }, + { + "javaScriptType": "string", + "name": "application" + }, + { + "javaScriptType": "array", + "name": "resourceNames" + }, + { + "javaScriptType": "object", + "name": "environment" + } + ], + "returnType": "array" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptPolicyService", + "javaScriptType": "object", + "name": "policy" + } + ], + "evaluatorVersions": { + "JAVASCRIPT": [ + "2.0" + ] + } + }, + "defaultScript": "4b6b7e8e-cf03-46c8-949f-c5742dbd6bc5", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.security.AccessController", + "java.lang.reflect.*" + ], + "coreThreads": { + "$int": "&{dynamic.client.registration.script.context.core.threads|10}" + }, + "idleTimeout": 60, + "maxThreads": { + "$int": "&{dynamic.client.registration.script.context.max.threads|100}" + }, + "propertyNamePrefix": "esv.", + "queueSize": { + "$int": "&{dynamic.client.registration.script.context.queue.size|50}" + }, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "java.lang.Float", + "org.forgerock.http.protocol.Header", + "java.lang.Integer", + "org.forgerock.http.Client", + "java.lang.Character$UnicodeBlock", + "java.lang.Character", + "java.lang.Long", + "java.lang.Short", + "java.util.Map", + "org.forgerock.http.client.*", + "java.lang.Math", + "org.forgerock.opendj.ldap.Dn", + "java.lang.Byte", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "java.lang.StrictMath", + "org.forgerock.util.promise.PromiseImpl", + "org.forgerock.http.Context", + "java.lang.Void", + "org.codehaus.groovy.runtime.GStringImpl", + "groovy.json.JsonSlurper", + "org.forgerock.http.protocol.Request", + "org.forgerock.http.protocol.Entity", + "org.forgerock.http.context.RootContext", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "java.util.List", + "org.forgerock.http.protocol.RequestCookies", + "org.forgerock.http.protocol.Responses", + "org.forgerock.util.promise.Promise", + "java.util.HashMap$KeyIterator", + "com.sun.identity.shared.debug.Debug", + "java.lang.Double", + "org.forgerock.http.protocol.Headers", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.http.protocol.Status", + "java.util.HashMap", + "java.lang.Character$Subset", + "java.util.TreeSet", + "java.util.ArrayList", + "java.util.HashSet", + "java.util.LinkedHashMap", + "org.forgerock.http.protocol.ResponseException", + "java.util.Collections$UnmodifiableRandomAccessList", + "org.forgerock.http.protocol.Message", + "java.lang.Boolean", + "java.lang.String", + "java.lang.Number", + "java.util.LinkedList", + "java.util.LinkedHashSet", + "org.forgerock.http.protocol.Response", + "org.forgerock.util.promise.NeverThrowsException", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "java.util.TreeMap", + "java.util.Collections$EmptyList", + "org.forgerock.openam.scripting.api.ScriptedSession", + "java.util.Collections$UnmodifiableCollection$1", + "org.forgerock.http.Handler", + "java.lang.Object", + "org.forgerock.http.protocol.Form" + ] + }, + "isHidden": false, + "languages": [ + "JAVASCRIPT" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_EVALUATE_SCOPE.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_EVALUATE_SCOPE.scripttype.json new file mode 100644 index 000000000..82f51bc79 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_EVALUATE_SCOPE.scripttype.json @@ -0,0 +1,371 @@ +{ + "scripttype": { + "OAUTH2_EVALUATE_SCOPE": { + "_id": "OAUTH2_EVALUATE_SCOPE", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "OAUTH2_EVALUATE_SCOPE", + "allowLists": [ + "com.google.common.collect.Sets$1", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.idm.AMIdentity", + "com.sun.identity.shared.debug.Debug", + "groovy.json.JsonSlurper", + "groovy.json.internal.LazyMap", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.Number", + "java.lang.Object", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.net.URI", + "java.util.AbstractMap$SimpleImmutableEntry", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Collections$1", + "java.util.Collections$EmptyList", + "java.util.Collections$SingletonList", + "java.util.Collections$UnmodifiableCollection$1", + "java.util.Collections$UnmodifiableMap", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableSet", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.List", + "java.util.Locale", + "java.util.Map", + "java.util.TreeMap", + "java.util.TreeSet", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.http.Client", + "org.forgerock.http.client.*", + "org.forgerock.http.protocol.*", + "org.forgerock.json.JsonValue", + "org.forgerock.macaroons.Macaroon", + "org.forgerock.oauth.clients.oidc.Claim", + "org.forgerock.oauth2.core.GrantType", + "org.forgerock.oauth2.core.StatefulAccessToken", + "org.forgerock.oauth2.core.UserInfoClaims", + "org.forgerock.oauth2.core.exceptions.InvalidRequestException", + "org.forgerock.openam.oauth2.OpenAMAccessToken", + "org.forgerock.openam.oauth2.token.grantset.Authorization$ModifiedAccessToken", + "org.forgerock.openam.oauth2.token.macaroon.MacaroonAccessToken", + "org.forgerock.openam.oauth2.token.stateless.StatelessAccessToken", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentityRepository", + "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "org.forgerock.openam.shared.security.crypto.CertificateService", + "org.forgerock.opendj.ldap.Dn", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.openidconnect.Claim", + "org.forgerock.openidconnect.ssoprovider.OpenIdConnectSSOToken", + "org.forgerock.util.promise.PromiseImpl", + "org.mozilla.javascript.JavaScriptException", + "sun.security.ec.ECPrivateKeyImpl" + ], + "bindings": [], + "evaluatorVersions": { + "GROOVY": [ + "1.0" + ], + "JAVASCRIPT": [ + "1.0" + ] + } + }, + "defaultScript": "[Empty]", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.lang.Thread", + "java.lang.invoke.*", + "java.lang.reflect.*", + "java.security.AccessController" + ], + "coreThreads": { + "$int": "&{oauth2.evaluate.scope.script.context.core.threads|10}" + }, + "idleTimeout": 60, + "maxThreads": { + "$int": "&{oauth2.evaluate.scope.script.context.max.threads|100}" + }, + "propertyNamePrefix": "esv.", + "queueSize": { + "$int": "&{oauth2.evaluate.scope.script.context.queue.size|50}" + }, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "com.google.common.collect.ImmutableList", + "com.google.common.collect.Sets$1", + "com.iplanet.am.sdk.AMHashMap", + "com.iplanet.sso.providers.dpro.SSOTokenIDImpl", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.identity.authentication.callbacks.HiddenValueCallback", + "com.sun.identity.authentication.callbacks.ReCaptchaCallback", + "com.sun.identity.authentication.callbacks.ScriptTextOutputCallback", + "com.sun.identity.authentication.spi.HttpCallback", + "com.sun.identity.authentication.spi.IdentifiableCallback", + "com.sun.identity.authentication.spi.MetadataCallback", + "com.sun.identity.authentication.spi.PagePropertiesCallback", + "com.sun.identity.authentication.spi.RedirectCallback", + "com.sun.identity.authentication.spi.X509CertificateCallback", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.common.CaseInsensitiveHashMap$Entry", + "com.sun.identity.idm.AMIdentity", + "com.sun.identity.idm.IdType", + "com.sun.identity.saml2.assertion.impl.AttributeImpl", + "com.sun.identity.saml2.common.SAML2Exception", + "com.sun.identity.saml2.plugins.scripted.IdpAttributeMapperScriptHelper", + "com.sun.identity.shared.debug.Debug", + "groovy.json.JsonSlurper", + "groovy.json.StringEscapeUtils", + "groovy.json.internal.LazyMap", + "java.io.ByteArrayInputStream", + "java.io.ByteArrayOutputStream", + "java.io.UnsupportedEncodingException", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.NullPointerException", + "java.lang.Number", + "java.lang.Object", + "java.lang.RuntimeException", + "java.lang.SecurityException", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.math.BigDecimal", + "java.math.BigInteger", + "java.net.URI", + "java.security.KeyFactory", + "java.security.KeyPair", + "java.security.KeyPairGenerator", + "java.security.KeyPairGenerator$*", + "java.security.MessageDigest", + "java.security.MessageDigest$Delegate", + "java.security.MessageDigest$Delegate$CloneableDelegate", + "java.security.NoSuchAlgorithmException", + "java.security.PrivateKey", + "java.security.PublicKey", + "java.security.cert.CertificateFactory", + "java.security.cert.X509Certificate", + "java.security.spec.MGF1ParameterSpec", + "java.security.spec.PKCS8EncodedKeySpec", + "java.security.spec.X509EncodedKeySpec", + "java.text.SimpleDateFormat", + "java.time.Clock", + "java.time.Clock$FixedClock", + "java.time.Clock$OffsetClock", + "java.time.Clock$SystemClock", + "java.time.Clock$TickClock", + "java.time.temporal.ChronoUnit", + "java.util.AbstractMap$*", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Arrays", + "java.util.Collections", + "java.util.Collections$*", + "java.util.Date", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashMap$LinkedKeySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.List", + "java.util.Locale", + "java.util.Map", + "java.util.TreeMap", + "java.util.TreeSet", + "java.util.UUID", + "javax.crypto.Cipher", + "javax.crypto.Mac", + "javax.crypto.spec.IvParameterSpec", + "javax.crypto.spec.OAEPParameterSpec", + "javax.crypto.spec.PSource", + "javax.crypto.spec.PSource$*", + "javax.crypto.spec.SecretKeySpec", + "javax.security.auth.callback.ChoiceCallback", + "javax.security.auth.callback.ConfirmationCallback", + "javax.security.auth.callback.LanguageCallback", + "javax.security.auth.callback.NameCallback", + "javax.security.auth.callback.PasswordCallback", + "javax.security.auth.callback.TextInputCallback", + "javax.security.auth.callback.TextOutputCallback", + "org.apache.groovy.json.internal.LazyMap", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.guice.core.IdentityProvider", + "org.forgerock.guice.core.InjectorHolder", + "org.forgerock.http.Client", + "org.forgerock.http.Context", + "org.forgerock.http.Handler", + "org.forgerock.http.client.*", + "org.forgerock.http.context.RootContext", + "org.forgerock.http.header.*", + "org.forgerock.http.header.authorization.*", + "org.forgerock.http.protocol.*", + "org.forgerock.json.JsonValue", + "org.forgerock.json.jose.builders.EncryptedJwtBuilder", + "org.forgerock.json.jose.builders.EncryptedThenSignedJwtBuilder", + "org.forgerock.json.jose.builders.JweHeaderBuilder", + "org.forgerock.json.jose.builders.JwsHeaderBuilder", + "org.forgerock.json.jose.builders.JwtBuilderFactory", + "org.forgerock.json.jose.builders.SignedJwtBuilderImpl", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtBuilder", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtHeaderBuilder", + "org.forgerock.json.jose.jwe.EncryptedJwt", + "org.forgerock.json.jose.jwe.EncryptionMethod", + "org.forgerock.json.jose.jwe.JweAlgorithm", + "org.forgerock.json.jose.jwe.SignedThenEncryptedJwt", + "org.forgerock.json.jose.jwk.JWKSet", + "org.forgerock.json.jose.jwk.RsaJWK", + "org.forgerock.json.jose.jws.EncryptedThenSignedJwt", + "org.forgerock.json.jose.jws.JwsAlgorithm", + "org.forgerock.json.jose.jws.JwsHeader", + "org.forgerock.json.jose.jws.SignedEncryptedJwt", + "org.forgerock.json.jose.jws.SignedJwt", + "org.forgerock.json.jose.jws.SigningManager", + "org.forgerock.json.jose.jws.handlers.HmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.RSASigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretHmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretRSASigningHandler", + "org.forgerock.json.jose.jwt.JwtClaimsSet", + "org.forgerock.macaroons.Macaroon", + "org.forgerock.oauth.clients.oidc.Claim", + "org.forgerock.oauth2.core.GrantType", + "org.forgerock.oauth2.core.StatefulAccessToken", + "org.forgerock.oauth2.core.UserInfoClaims", + "org.forgerock.oauth2.core.exceptions.InvalidRequestException", + "org.forgerock.oauth2.core.tokenexchange.ExchangeableToken", + "org.forgerock.openam.auth.node.api.Action", + "org.forgerock.openam.auth.node.api.Action$ActionBuilder", + "org.forgerock.openam.auth.node.api.NodeState", + "org.forgerock.openam.auth.node.api.SuspendedTextOutputCallback", + "org.forgerock.openam.auth.nodes.IdentityProvider", + "org.forgerock.openam.auth.nodes.InjectorHolder", + "org.forgerock.openam.authentication.callbacks.AbstractValidatedCallback", + "org.forgerock.openam.authentication.callbacks.AttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.BooleanAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.ConsentMappingCallback", + "org.forgerock.openam.authentication.callbacks.DeviceProfileCallback", + "org.forgerock.openam.authentication.callbacks.IdPCallback", + "org.forgerock.openam.authentication.callbacks.KbaCreateCallback", + "org.forgerock.openam.authentication.callbacks.NumberAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.PollingWaitCallback", + "org.forgerock.openam.authentication.callbacks.SelectIdPCallback", + "org.forgerock.openam.authentication.callbacks.StringAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.TermsAndConditionsCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedPasswordCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedUsernameCallback", + "org.forgerock.openam.authentication.modules.scripted.*", + "org.forgerock.openam.core.rest.authn.callbackhandlers.*", + "org.forgerock.openam.core.rest.devices.deviceprint.DeviceIdDao", + "org.forgerock.openam.core.rest.devices.profile.DeviceProfilesDao", + "org.forgerock.openam.oauth2.OpenAMAccessToken", + "org.forgerock.openam.oauth2.token.grantset.Authorization$ModifiedAccessToken", + "org.forgerock.openam.oauth2.token.macaroon.MacaroonAccessToken", + "org.forgerock.openam.oauth2.token.stateless.StatelessAccessToken", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "org.forgerock.openam.scripting.api.ScriptedIdentity", + "org.forgerock.openam.scripting.api.ScriptedSession", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentityRepository", + "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "org.forgerock.openam.scripting.api.secrets.Secret", + "org.forgerock.openam.scripting.idrepo.ScriptIdentityRepository", + "org.forgerock.openam.shared.security.ThreadLocalSecureRandom", + "org.forgerock.openidconnect.Claim", + "org.forgerock.openidconnect.OpenIdConnectToken", + "org.forgerock.openidconnect.ssoprovider.OpenIdConnectSSOToken", + "org.forgerock.secrets.SecretBuilder", + "org.forgerock.secrets.keys.SigningKey", + "org.forgerock.secrets.keys.VerificationKey", + "org.forgerock.util.encode.Base64", + "org.forgerock.util.encode.Base64url", + "org.forgerock.util.encode.Hex", + "org.forgerock.util.promise.NeverThrowsException", + "org.forgerock.util.promise.Promise", + "org.forgerock.util.promise.PromiseImpl", + "org.mozilla.javascript.ConsString", + "org.mozilla.javascript.JavaScriptException", + "org.mozilla.javascript.WrappedException", + "sun.security.ec.ECPrivateKeyImpl", + "sun.security.rsa.RSAPrivateCrtKeyImpl", + "sun.security.rsa.RSAPublicKeyImpl", + "sun.security.x509.X500Name", + "sun.security.x509.X509CertImpl", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "java.util.AbstractMap$SimpleImmutableEntry", + "java.util.Collections$1", + "java.util.Collections$EmptyList", + "java.util.Collections$SingletonList", + "java.util.Collections$UnmodifiableMap", + "java.util.Collections$UnmodifiableSet", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.opendj.ldap.Dn", + "org.forgerock.openam.auth.nodes.VerifyTransactionsHelper" + ] + }, + "isHidden": false, + "languages": [ + "JAVASCRIPT", + "GROOVY" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_MAY_ACT.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_MAY_ACT.scripttype.json new file mode 100644 index 000000000..0e56ada20 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_MAY_ACT.scripttype.json @@ -0,0 +1,373 @@ +{ + "scripttype": { + "OAUTH2_MAY_ACT": { + "_id": "OAUTH2_MAY_ACT", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "OAUTH2_MAY_ACT", + "allowLists": [ + "com.google.common.collect.Sets$1", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.idm.AMIdentity", + "com.sun.identity.shared.debug.Debug", + "groovy.json.JsonSlurper", + "groovy.json.internal.LazyMap", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.Number", + "java.lang.Object", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.net.URI", + "java.util.AbstractMap$SimpleImmutableEntry", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Collections$1", + "java.util.Collections$EmptyList", + "java.util.Collections$SingletonList", + "java.util.Collections$UnmodifiableCollection$1", + "java.util.Collections$UnmodifiableMap", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableSet", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.List", + "java.util.Locale", + "java.util.Map", + "java.util.TreeMap", + "java.util.TreeSet", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.http.Client", + "org.forgerock.http.client.*", + "org.forgerock.http.protocol.*", + "org.forgerock.json.JsonValue", + "org.forgerock.macaroons.Macaroon", + "org.forgerock.oauth.clients.oidc.Claim", + "org.forgerock.oauth2.core.GrantType", + "org.forgerock.oauth2.core.StatefulAccessToken", + "org.forgerock.oauth2.core.UserInfoClaims", + "org.forgerock.oauth2.core.exceptions.InvalidRequestException", + "org.forgerock.oauth2.core.tokenexchange.ExchangeableToken", + "org.forgerock.openam.oauth2.OpenAMAccessToken", + "org.forgerock.openam.oauth2.token.grantset.Authorization$ModifiedAccessToken", + "org.forgerock.openam.oauth2.token.macaroon.MacaroonAccessToken", + "org.forgerock.openam.oauth2.token.stateless.StatelessAccessToken", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentityRepository", + "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "org.forgerock.openam.shared.security.crypto.CertificateService", + "org.forgerock.opendj.ldap.Dn", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.openidconnect.Claim", + "org.forgerock.openidconnect.OpenIdConnectToken", + "org.forgerock.openidconnect.ssoprovider.OpenIdConnectSSOToken", + "org.forgerock.util.promise.PromiseImpl", + "org.mozilla.javascript.JavaScriptException", + "sun.security.ec.ECPrivateKeyImpl" + ], + "bindings": [], + "evaluatorVersions": { + "GROOVY": [ + "1.0" + ], + "JAVASCRIPT": [ + "1.0" + ] + } + }, + "defaultScript": "[Empty]", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.lang.Thread", + "java.lang.invoke.*", + "java.lang.reflect.*", + "java.security.AccessController" + ], + "coreThreads": { + "$int": "&{oauth2.may.act.script.context.core.threads|10}" + }, + "idleTimeout": 60, + "maxThreads": { + "$int": "&{oauth2.may.act.script.context.max.threads|100}" + }, + "propertyNamePrefix": "esv.", + "queueSize": { + "$int": "&{oauth2.may.act.script.context.queue.size|50}" + }, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "com.google.common.collect.ImmutableList", + "com.google.common.collect.Sets$1", + "com.iplanet.am.sdk.AMHashMap", + "com.iplanet.sso.providers.dpro.SSOTokenIDImpl", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.identity.authentication.callbacks.HiddenValueCallback", + "com.sun.identity.authentication.callbacks.ReCaptchaCallback", + "com.sun.identity.authentication.callbacks.ScriptTextOutputCallback", + "com.sun.identity.authentication.spi.HttpCallback", + "com.sun.identity.authentication.spi.IdentifiableCallback", + "com.sun.identity.authentication.spi.MetadataCallback", + "com.sun.identity.authentication.spi.PagePropertiesCallback", + "com.sun.identity.authentication.spi.RedirectCallback", + "com.sun.identity.authentication.spi.X509CertificateCallback", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.common.CaseInsensitiveHashMap$Entry", + "com.sun.identity.idm.AMIdentity", + "com.sun.identity.idm.IdType", + "com.sun.identity.saml2.assertion.impl.AttributeImpl", + "com.sun.identity.saml2.common.SAML2Exception", + "com.sun.identity.saml2.plugins.scripted.IdpAttributeMapperScriptHelper", + "com.sun.identity.shared.debug.Debug", + "groovy.json.JsonSlurper", + "groovy.json.StringEscapeUtils", + "groovy.json.internal.LazyMap", + "java.io.ByteArrayInputStream", + "java.io.ByteArrayOutputStream", + "java.io.UnsupportedEncodingException", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.NullPointerException", + "java.lang.Number", + "java.lang.Object", + "java.lang.RuntimeException", + "java.lang.SecurityException", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.math.BigDecimal", + "java.math.BigInteger", + "java.net.URI", + "java.security.KeyFactory", + "java.security.KeyPair", + "java.security.KeyPairGenerator", + "java.security.KeyPairGenerator$*", + "java.security.MessageDigest", + "java.security.MessageDigest$Delegate", + "java.security.MessageDigest$Delegate$CloneableDelegate", + "java.security.NoSuchAlgorithmException", + "java.security.PrivateKey", + "java.security.PublicKey", + "java.security.cert.CertificateFactory", + "java.security.cert.X509Certificate", + "java.security.spec.MGF1ParameterSpec", + "java.security.spec.PKCS8EncodedKeySpec", + "java.security.spec.X509EncodedKeySpec", + "java.text.SimpleDateFormat", + "java.time.Clock", + "java.time.Clock$FixedClock", + "java.time.Clock$OffsetClock", + "java.time.Clock$SystemClock", + "java.time.Clock$TickClock", + "java.time.temporal.ChronoUnit", + "java.util.AbstractMap$*", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Arrays", + "java.util.Collections", + "java.util.Collections$*", + "java.util.Date", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashMap$LinkedKeySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.List", + "java.util.Locale", + "java.util.Map", + "java.util.TreeMap", + "java.util.TreeSet", + "java.util.UUID", + "javax.crypto.Cipher", + "javax.crypto.Mac", + "javax.crypto.spec.IvParameterSpec", + "javax.crypto.spec.OAEPParameterSpec", + "javax.crypto.spec.PSource", + "javax.crypto.spec.PSource$*", + "javax.crypto.spec.SecretKeySpec", + "javax.security.auth.callback.ChoiceCallback", + "javax.security.auth.callback.ConfirmationCallback", + "javax.security.auth.callback.LanguageCallback", + "javax.security.auth.callback.NameCallback", + "javax.security.auth.callback.PasswordCallback", + "javax.security.auth.callback.TextInputCallback", + "javax.security.auth.callback.TextOutputCallback", + "org.apache.groovy.json.internal.LazyMap", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.guice.core.IdentityProvider", + "org.forgerock.guice.core.InjectorHolder", + "org.forgerock.http.Client", + "org.forgerock.http.Context", + "org.forgerock.http.Handler", + "org.forgerock.http.client.*", + "org.forgerock.http.context.RootContext", + "org.forgerock.http.header.*", + "org.forgerock.http.header.authorization.*", + "org.forgerock.http.protocol.*", + "org.forgerock.json.JsonValue", + "org.forgerock.json.jose.builders.EncryptedJwtBuilder", + "org.forgerock.json.jose.builders.EncryptedThenSignedJwtBuilder", + "org.forgerock.json.jose.builders.JweHeaderBuilder", + "org.forgerock.json.jose.builders.JwsHeaderBuilder", + "org.forgerock.json.jose.builders.JwtBuilderFactory", + "org.forgerock.json.jose.builders.SignedJwtBuilderImpl", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtBuilder", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtHeaderBuilder", + "org.forgerock.json.jose.jwe.EncryptedJwt", + "org.forgerock.json.jose.jwe.EncryptionMethod", + "org.forgerock.json.jose.jwe.JweAlgorithm", + "org.forgerock.json.jose.jwe.SignedThenEncryptedJwt", + "org.forgerock.json.jose.jwk.JWKSet", + "org.forgerock.json.jose.jwk.RsaJWK", + "org.forgerock.json.jose.jws.EncryptedThenSignedJwt", + "org.forgerock.json.jose.jws.JwsAlgorithm", + "org.forgerock.json.jose.jws.JwsHeader", + "org.forgerock.json.jose.jws.SignedEncryptedJwt", + "org.forgerock.json.jose.jws.SignedJwt", + "org.forgerock.json.jose.jws.SigningManager", + "org.forgerock.json.jose.jws.handlers.HmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.RSASigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretHmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretRSASigningHandler", + "org.forgerock.json.jose.jwt.JwtClaimsSet", + "org.forgerock.macaroons.Macaroon", + "org.forgerock.oauth.clients.oidc.Claim", + "org.forgerock.oauth2.core.GrantType", + "org.forgerock.oauth2.core.StatefulAccessToken", + "org.forgerock.oauth2.core.UserInfoClaims", + "org.forgerock.oauth2.core.exceptions.InvalidRequestException", + "org.forgerock.oauth2.core.tokenexchange.ExchangeableToken", + "org.forgerock.openam.auth.node.api.Action", + "org.forgerock.openam.auth.node.api.Action$ActionBuilder", + "org.forgerock.openam.auth.node.api.NodeState", + "org.forgerock.openam.auth.node.api.SuspendedTextOutputCallback", + "org.forgerock.openam.auth.nodes.IdentityProvider", + "org.forgerock.openam.auth.nodes.InjectorHolder", + "org.forgerock.openam.authentication.callbacks.AbstractValidatedCallback", + "org.forgerock.openam.authentication.callbacks.AttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.BooleanAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.ConsentMappingCallback", + "org.forgerock.openam.authentication.callbacks.DeviceProfileCallback", + "org.forgerock.openam.authentication.callbacks.IdPCallback", + "org.forgerock.openam.authentication.callbacks.KbaCreateCallback", + "org.forgerock.openam.authentication.callbacks.NumberAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.PollingWaitCallback", + "org.forgerock.openam.authentication.callbacks.SelectIdPCallback", + "org.forgerock.openam.authentication.callbacks.StringAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.TermsAndConditionsCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedPasswordCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedUsernameCallback", + "org.forgerock.openam.authentication.modules.scripted.*", + "org.forgerock.openam.core.rest.authn.callbackhandlers.*", + "org.forgerock.openam.core.rest.devices.deviceprint.DeviceIdDao", + "org.forgerock.openam.core.rest.devices.profile.DeviceProfilesDao", + "org.forgerock.openam.oauth2.OpenAMAccessToken", + "org.forgerock.openam.oauth2.token.grantset.Authorization$ModifiedAccessToken", + "org.forgerock.openam.oauth2.token.macaroon.MacaroonAccessToken", + "org.forgerock.openam.oauth2.token.stateless.StatelessAccessToken", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "org.forgerock.openam.scripting.api.ScriptedIdentity", + "org.forgerock.openam.scripting.api.ScriptedSession", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentityRepository", + "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "org.forgerock.openam.scripting.api.secrets.Secret", + "org.forgerock.openam.scripting.idrepo.ScriptIdentityRepository", + "org.forgerock.openam.shared.security.ThreadLocalSecureRandom", + "org.forgerock.openidconnect.Claim", + "org.forgerock.openidconnect.OpenIdConnectToken", + "org.forgerock.openidconnect.ssoprovider.OpenIdConnectSSOToken", + "org.forgerock.secrets.SecretBuilder", + "org.forgerock.secrets.keys.SigningKey", + "org.forgerock.secrets.keys.VerificationKey", + "org.forgerock.util.encode.Base64", + "org.forgerock.util.encode.Base64url", + "org.forgerock.util.encode.Hex", + "org.forgerock.util.promise.NeverThrowsException", + "org.forgerock.util.promise.Promise", + "org.forgerock.util.promise.PromiseImpl", + "org.mozilla.javascript.ConsString", + "org.mozilla.javascript.JavaScriptException", + "org.mozilla.javascript.WrappedException", + "sun.security.ec.ECPrivateKeyImpl", + "sun.security.rsa.RSAPrivateCrtKeyImpl", + "sun.security.rsa.RSAPublicKeyImpl", + "sun.security.x509.X500Name", + "sun.security.x509.X509CertImpl", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "java.util.AbstractMap$SimpleImmutableEntry", + "java.util.Collections$1", + "java.util.Collections$EmptyList", + "java.util.Collections$SingletonList", + "java.util.Collections$UnmodifiableMap", + "java.util.Collections$UnmodifiableSet", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.opendj.ldap.Dn", + "org.forgerock.openam.auth.nodes.VerifyTransactionsHelper" + ] + }, + "isHidden": false, + "languages": [ + "JAVASCRIPT", + "GROOVY" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_SCRIPTED_JWT_ISSUER.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_SCRIPTED_JWT_ISSUER.scripttype.json new file mode 100644 index 000000000..1bf198fdd --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_SCRIPTED_JWT_ISSUER.scripttype.json @@ -0,0 +1,207 @@ +{ + "scripttype": { + "OAUTH2_SCRIPTED_JWT_ISSUER": { + "_id": "OAUTH2_SCRIPTED_JWT_ISSUER", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "OAUTH2_SCRIPTED_JWT_ISSUER", + "allowLists": [ + "com.google.common.collect.Sets$1", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.idm.AMIdentity", + "com.sun.identity.shared.debug.Debug", + "groovy.json.JsonSlurper", + "groovy.json.internal.LazyMap", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.Number", + "java.lang.Object", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.net.URI", + "java.util.AbstractMap$SimpleImmutableEntry", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Collections$1", + "java.util.Collections$EmptyList", + "java.util.Collections$SingletonList", + "java.util.Collections$UnmodifiableCollection$1", + "java.util.Collections$UnmodifiableMap", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableSet", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.List", + "java.util.Locale", + "java.util.Map", + "java.util.TreeMap", + "java.util.TreeSet", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.http.Client", + "org.forgerock.http.client.*", + "org.forgerock.http.protocol.*", + "org.forgerock.json.JsonValue", + "org.forgerock.oauth.clients.oidc.Claim", + "org.forgerock.oauth2.core.TrustedJwtIssuerConfig", + "org.forgerock.oauth2.core.exceptions.ServerException", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentityRepository", + "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "org.forgerock.openam.shared.security.crypto.CertificateService", + "org.forgerock.opendj.ldap.Dn", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.util.promise.PromiseImpl", + "org.mozilla.javascript.JavaScriptException", + "sun.security.ec.ECPrivateKeyImpl" + ], + "bindings": [], + "evaluatorVersions": { + "GROOVY": [ + "1.0" + ], + "JAVASCRIPT": [ + "1.0" + ] + } + }, + "defaultScript": "400e48ba-3f13-4144-ac7b-f824ea8e98c5", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.lang.Thread", + "java.lang.invoke.*", + "java.lang.reflect.*", + "java.security.AccessController" + ], + "coreThreads": { + "$int": "&{oauth2.scripted.jwt.issuer.script.context.core.threads|10}" + }, + "idleTimeout": 60, + "maxThreads": { + "$int": "&{oauth2.scripted.jwt.issuer.script.context.max.threads|100}" + }, + "propertyNamePrefix": "esv.", + "queueSize": { + "$int": "&{oauth2.scripted.jwt.issuer.script.context.queue.size|50}" + }, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "com.google.common.collect.Sets$1", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.idm.AMIdentity", + "com.sun.identity.shared.debug.Debug", + "groovy.json.JsonSlurper", + "groovy.json.internal.LazyMap", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.Number", + "java.lang.Object", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.net.URI", + "java.util.AbstractMap$SimpleImmutableEntry", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Collections$1", + "java.util.Collections$EmptyList", + "java.util.Collections$SingletonList", + "java.util.Collections$UnmodifiableCollection$1", + "java.util.Collections$UnmodifiableMap", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableSet", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.List", + "java.util.Locale", + "java.util.Map", + "java.util.TreeMap", + "java.util.TreeSet", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.http.Client", + "org.forgerock.http.client.*", + "org.forgerock.http.protocol.*", + "org.forgerock.json.JsonValue", + "org.forgerock.oauth.clients.oidc.Claim", + "org.forgerock.oauth2.core.TrustedJwtIssuerConfig", + "org.forgerock.oauth2.core.exceptions.ServerException", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentityRepository", + "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "org.forgerock.openam.shared.security.crypto.CertificateService", + "org.forgerock.util.promise.PromiseImpl", + "org.mozilla.javascript.JavaScriptException", + "sun.security.ec.ECPrivateKeyImpl", + "org.forgerock.openam.scripting.api.ScriptedIdentity", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.opendj.ldap.Dn" + ] + }, + "isHidden": false, + "languages": [ + "JAVASCRIPT", + "GROOVY" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_VALIDATE_SCOPE.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_VALIDATE_SCOPE.scripttype.json new file mode 100644 index 000000000..823e8d9be --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OAUTH2_VALIDATE_SCOPE.scripttype.json @@ -0,0 +1,361 @@ +{ + "scripttype": { + "OAUTH2_VALIDATE_SCOPE": { + "_id": "OAUTH2_VALIDATE_SCOPE", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "OAUTH2_VALIDATE_SCOPE", + "allowLists": [ + "com.google.common.collect.Sets$1", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.shared.debug.Debug", + "groovy.json.JsonSlurper", + "groovy.json.internal.LazyMap", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.Number", + "java.lang.Object", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.net.URI", + "java.util.AbstractMap$SimpleImmutableEntry", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Collections$1", + "java.util.Collections$EmptyList", + "java.util.Collections$SingletonList", + "java.util.Collections$UnmodifiableCollection$1", + "java.util.Collections$UnmodifiableMap", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableSet", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.List", + "java.util.Locale", + "java.util.Map", + "java.util.TreeMap", + "java.util.TreeSet", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.http.Client", + "org.forgerock.http.client.*", + "org.forgerock.http.protocol.*", + "org.forgerock.json.JsonValue", + "org.forgerock.oauth.clients.oidc.Claim", + "org.forgerock.oauth2.core.exceptions.InvalidScopeException", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentityRepository", + "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "org.forgerock.openam.shared.security.crypto.CertificateService", + "org.forgerock.opendj.ldap.Dn", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.util.promise.PromiseImpl", + "org.mozilla.javascript.JavaScriptException", + "sun.security.ec.ECPrivateKeyImpl" + ], + "bindings": [], + "evaluatorVersions": { + "GROOVY": [ + "1.0" + ], + "JAVASCRIPT": [ + "1.0" + ] + } + }, + "defaultScript": "[Empty]", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.lang.Thread", + "java.lang.invoke.*", + "java.lang.reflect.*", + "java.security.AccessController" + ], + "coreThreads": { + "$int": "&{oauth2.validate.scope.script.context.core.threads|10}" + }, + "idleTimeout": 60, + "maxThreads": { + "$int": "&{oauth2.validate.scope.script.context.max.threads|100}" + }, + "propertyNamePrefix": "esv.", + "queueSize": { + "$int": "&{oauth2.validate.scope.script.context.queue.size|50}" + }, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "com.google.common.collect.ImmutableList", + "com.google.common.collect.Sets$1", + "com.iplanet.am.sdk.AMHashMap", + "com.iplanet.sso.providers.dpro.SSOTokenIDImpl", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.identity.authentication.callbacks.HiddenValueCallback", + "com.sun.identity.authentication.callbacks.ReCaptchaCallback", + "com.sun.identity.authentication.callbacks.ScriptTextOutputCallback", + "com.sun.identity.authentication.spi.HttpCallback", + "com.sun.identity.authentication.spi.IdentifiableCallback", + "com.sun.identity.authentication.spi.MetadataCallback", + "com.sun.identity.authentication.spi.PagePropertiesCallback", + "com.sun.identity.authentication.spi.RedirectCallback", + "com.sun.identity.authentication.spi.X509CertificateCallback", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.common.CaseInsensitiveHashMap$Entry", + "com.sun.identity.idm.AMIdentity", + "com.sun.identity.idm.IdType", + "com.sun.identity.saml2.assertion.impl.AttributeImpl", + "com.sun.identity.saml2.common.SAML2Exception", + "com.sun.identity.saml2.plugins.scripted.IdpAttributeMapperScriptHelper", + "com.sun.identity.shared.debug.Debug", + "groovy.json.JsonSlurper", + "groovy.json.StringEscapeUtils", + "groovy.json.internal.LazyMap", + "java.io.ByteArrayInputStream", + "java.io.ByteArrayOutputStream", + "java.io.UnsupportedEncodingException", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.NullPointerException", + "java.lang.Number", + "java.lang.Object", + "java.lang.RuntimeException", + "java.lang.SecurityException", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.math.BigDecimal", + "java.math.BigInteger", + "java.net.URI", + "java.security.KeyFactory", + "java.security.KeyPair", + "java.security.KeyPairGenerator", + "java.security.KeyPairGenerator$*", + "java.security.MessageDigest", + "java.security.MessageDigest$Delegate", + "java.security.MessageDigest$Delegate$CloneableDelegate", + "java.security.NoSuchAlgorithmException", + "java.security.PrivateKey", + "java.security.PublicKey", + "java.security.cert.CertificateFactory", + "java.security.cert.X509Certificate", + "java.security.spec.MGF1ParameterSpec", + "java.security.spec.PKCS8EncodedKeySpec", + "java.security.spec.X509EncodedKeySpec", + "java.text.SimpleDateFormat", + "java.time.Clock", + "java.time.Clock$FixedClock", + "java.time.Clock$OffsetClock", + "java.time.Clock$SystemClock", + "java.time.Clock$TickClock", + "java.time.temporal.ChronoUnit", + "java.util.AbstractMap$*", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Arrays", + "java.util.Collections", + "java.util.Collections$*", + "java.util.Date", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashMap$LinkedKeySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.List", + "java.util.Locale", + "java.util.Map", + "java.util.TreeMap", + "java.util.TreeSet", + "java.util.UUID", + "javax.crypto.Cipher", + "javax.crypto.Mac", + "javax.crypto.spec.IvParameterSpec", + "javax.crypto.spec.OAEPParameterSpec", + "javax.crypto.spec.PSource", + "javax.crypto.spec.PSource$*", + "javax.crypto.spec.SecretKeySpec", + "javax.security.auth.callback.ChoiceCallback", + "javax.security.auth.callback.ConfirmationCallback", + "javax.security.auth.callback.LanguageCallback", + "javax.security.auth.callback.NameCallback", + "javax.security.auth.callback.PasswordCallback", + "javax.security.auth.callback.TextInputCallback", + "javax.security.auth.callback.TextOutputCallback", + "org.apache.groovy.json.internal.LazyMap", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.guice.core.IdentityProvider", + "org.forgerock.guice.core.InjectorHolder", + "org.forgerock.http.Client", + "org.forgerock.http.Context", + "org.forgerock.http.Handler", + "org.forgerock.http.client.*", + "org.forgerock.http.context.RootContext", + "org.forgerock.http.header.*", + "org.forgerock.http.header.authorization.*", + "org.forgerock.http.protocol.*", + "org.forgerock.json.JsonValue", + "org.forgerock.json.jose.builders.EncryptedJwtBuilder", + "org.forgerock.json.jose.builders.EncryptedThenSignedJwtBuilder", + "org.forgerock.json.jose.builders.JweHeaderBuilder", + "org.forgerock.json.jose.builders.JwsHeaderBuilder", + "org.forgerock.json.jose.builders.JwtBuilderFactory", + "org.forgerock.json.jose.builders.SignedJwtBuilderImpl", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtBuilder", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtHeaderBuilder", + "org.forgerock.json.jose.jwe.EncryptedJwt", + "org.forgerock.json.jose.jwe.EncryptionMethod", + "org.forgerock.json.jose.jwe.JweAlgorithm", + "org.forgerock.json.jose.jwe.SignedThenEncryptedJwt", + "org.forgerock.json.jose.jwk.JWKSet", + "org.forgerock.json.jose.jwk.RsaJWK", + "org.forgerock.json.jose.jws.EncryptedThenSignedJwt", + "org.forgerock.json.jose.jws.JwsAlgorithm", + "org.forgerock.json.jose.jws.JwsHeader", + "org.forgerock.json.jose.jws.SignedEncryptedJwt", + "org.forgerock.json.jose.jws.SignedJwt", + "org.forgerock.json.jose.jws.SigningManager", + "org.forgerock.json.jose.jws.handlers.HmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.RSASigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretHmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretRSASigningHandler", + "org.forgerock.json.jose.jwt.JwtClaimsSet", + "org.forgerock.macaroons.Macaroon", + "org.forgerock.oauth.clients.oidc.Claim", + "org.forgerock.oauth2.core.GrantType", + "org.forgerock.oauth2.core.StatefulAccessToken", + "org.forgerock.oauth2.core.UserInfoClaims", + "org.forgerock.oauth2.core.exceptions.InvalidRequestException", + "org.forgerock.oauth2.core.exceptions.InvalidScopeException", + "org.forgerock.oauth2.core.tokenexchange.ExchangeableToken", + "org.forgerock.openam.auth.node.api.Action", + "org.forgerock.openam.auth.node.api.Action$ActionBuilder", + "org.forgerock.openam.auth.node.api.NodeState", + "org.forgerock.openam.auth.node.api.SuspendedTextOutputCallback", + "org.forgerock.openam.auth.nodes.IdentityProvider", + "org.forgerock.openam.auth.nodes.InjectorHolder", + "org.forgerock.openam.authentication.callbacks.AbstractValidatedCallback", + "org.forgerock.openam.authentication.callbacks.AttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.BooleanAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.ConsentMappingCallback", + "org.forgerock.openam.authentication.callbacks.DeviceProfileCallback", + "org.forgerock.openam.authentication.callbacks.IdPCallback", + "org.forgerock.openam.authentication.callbacks.KbaCreateCallback", + "org.forgerock.openam.authentication.callbacks.NumberAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.PollingWaitCallback", + "org.forgerock.openam.authentication.callbacks.SelectIdPCallback", + "org.forgerock.openam.authentication.callbacks.StringAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.TermsAndConditionsCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedPasswordCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedUsernameCallback", + "org.forgerock.openam.authentication.modules.scripted.*", + "org.forgerock.openam.core.rest.authn.callbackhandlers.*", + "org.forgerock.openam.core.rest.devices.deviceprint.DeviceIdDao", + "org.forgerock.openam.core.rest.devices.profile.DeviceProfilesDao", + "org.forgerock.openam.oauth2.OpenAMAccessToken", + "org.forgerock.openam.oauth2.token.grantset.Authorization$ModifiedAccessToken", + "org.forgerock.openam.oauth2.token.macaroon.MacaroonAccessToken", + "org.forgerock.openam.oauth2.token.stateless.StatelessAccessToken", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "org.forgerock.openam.scripting.api.ScriptedIdentity", + "org.forgerock.openam.scripting.api.ScriptedSession", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentityRepository", + "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "org.forgerock.openam.scripting.api.secrets.Secret", + "org.forgerock.openam.scripting.idrepo.ScriptIdentityRepository", + "org.forgerock.openam.shared.security.ThreadLocalSecureRandom", + "org.forgerock.openidconnect.Claim", + "org.forgerock.openidconnect.OpenIdConnectToken", + "org.forgerock.openidconnect.ssoprovider.OpenIdConnectSSOToken", + "org.forgerock.secrets.SecretBuilder", + "org.forgerock.secrets.keys.SigningKey", + "org.forgerock.secrets.keys.VerificationKey", + "org.forgerock.util.encode.Base64", + "org.forgerock.util.encode.Base64url", + "org.forgerock.util.encode.Hex", + "org.forgerock.util.promise.NeverThrowsException", + "org.forgerock.util.promise.Promise", + "org.forgerock.util.promise.PromiseImpl", + "org.mozilla.javascript.ConsString", + "org.mozilla.javascript.JavaScriptException", + "org.mozilla.javascript.WrappedException", + "sun.security.ec.ECPrivateKeyImpl", + "sun.security.rsa.RSAPrivateCrtKeyImpl", + "sun.security.rsa.RSAPublicKeyImpl", + "sun.security.x509.X500Name", + "sun.security.x509.X509CertImpl", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "java.util.AbstractMap$SimpleImmutableEntry", + "java.util.Collections$1", + "java.util.Collections$EmptyList", + "java.util.Collections$SingletonList", + "java.util.Collections$UnmodifiableMap", + "java.util.Collections$UnmodifiableSet", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.opendj.ldap.Dn", + "org.forgerock.openam.auth.nodes.VerifyTransactionsHelper" + ] + }, + "isHidden": false, + "languages": [ + "JAVASCRIPT", + "GROOVY" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OIDC_CLAIMS.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OIDC_CLAIMS.scripttype.json new file mode 100644 index 000000000..37ef75c6e --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/OIDC_CLAIMS.scripttype.json @@ -0,0 +1,368 @@ +{ + "scripttype": { + "OIDC_CLAIMS": { + "_id": "OIDC_CLAIMS", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "OIDC_CLAIMS", + "allowLists": [ + "com.google.common.collect.Sets$1", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.idm.AMIdentity", + "com.sun.identity.shared.debug.Debug", + "groovy.json.JsonSlurper", + "groovy.json.internal.LazyMap", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.Number", + "java.lang.Object", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.net.URI", + "java.util.AbstractMap$SimpleImmutableEntry", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Collections$1", + "java.util.Collections$EmptyList", + "java.util.Collections$SingletonList", + "java.util.Collections$UnmodifiableCollection$1", + "java.util.Collections$UnmodifiableMap", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableSet", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.List", + "java.util.Locale", + "java.util.Map", + "java.util.TreeMap", + "java.util.TreeSet", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.http.Client", + "org.forgerock.http.client.*", + "org.forgerock.http.protocol.*", + "org.forgerock.json.JsonValue", + "org.forgerock.macaroons.Macaroon", + "org.forgerock.oauth.clients.oidc.Claim", + "org.forgerock.oauth2.core.GrantType", + "org.forgerock.oauth2.core.UserInfoClaims", + "org.forgerock.oauth2.core.exceptions.InvalidRequestException", + "org.forgerock.openam.oauth2.OpenAMAccessToken", + "org.forgerock.openam.oauth2.token.macaroon.MacaroonAccessToken", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentityRepository", + "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "org.forgerock.openam.shared.security.crypto.CertificateService", + "org.forgerock.opendj.ldap.Dn", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.openidconnect.Claim", + "org.forgerock.openidconnect.ssoprovider.OpenIdConnectSSOToken", + "org.forgerock.util.promise.PromiseImpl", + "org.mozilla.javascript.JavaScriptException", + "sun.security.ec.ECPrivateKeyImpl" + ], + "bindings": [], + "evaluatorVersions": { + "GROOVY": [ + "1.0" + ], + "JAVASCRIPT": [ + "1.0" + ] + } + }, + "defaultScript": "36863ffb-40ec-48b9-94b1-9a99f71cc3b5", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.lang.Thread", + "java.lang.invoke.*", + "java.lang.reflect.*", + "java.security.AccessController" + ], + "coreThreads": { + "$int": "&{oidc.claims.script.context.core.threads|50}" + }, + "idleTimeout": 60, + "maxThreads": { + "$int": "&{oidc.claims.script.context.max.threads|100}" + }, + "propertyNamePrefix": "esv.", + "queueSize": { + "$int": "&{oidc.claims.script.context.queue.size|50}" + }, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "com.google.common.collect.ImmutableList", + "com.google.common.collect.Sets$1", + "com.iplanet.am.sdk.AMHashMap", + "com.iplanet.sso.providers.dpro.SSOTokenIDImpl", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.identity.authentication.callbacks.HiddenValueCallback", + "com.sun.identity.authentication.callbacks.ReCaptchaCallback", + "com.sun.identity.authentication.callbacks.ScriptTextOutputCallback", + "com.sun.identity.authentication.spi.HttpCallback", + "com.sun.identity.authentication.spi.IdentifiableCallback", + "com.sun.identity.authentication.spi.MetadataCallback", + "com.sun.identity.authentication.spi.PagePropertiesCallback", + "com.sun.identity.authentication.spi.RedirectCallback", + "com.sun.identity.authentication.spi.X509CertificateCallback", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.common.CaseInsensitiveHashMap$Entry", + "com.sun.identity.idm.AMIdentity", + "com.sun.identity.idm.IdType", + "com.sun.identity.saml2.assertion.impl.AttributeImpl", + "com.sun.identity.saml2.common.SAML2Exception", + "com.sun.identity.saml2.plugins.scripted.IdpAttributeMapperScriptHelper", + "com.sun.identity.shared.debug.Debug", + "groovy.json.JsonSlurper", + "groovy.json.StringEscapeUtils", + "groovy.json.internal.LazyMap", + "java.io.ByteArrayInputStream", + "java.io.ByteArrayOutputStream", + "java.io.UnsupportedEncodingException", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.NullPointerException", + "java.lang.Number", + "java.lang.Object", + "java.lang.RuntimeException", + "java.lang.SecurityException", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.math.BigDecimal", + "java.math.BigInteger", + "java.net.URI", + "java.security.KeyFactory", + "java.security.KeyPair", + "java.security.KeyPairGenerator", + "java.security.KeyPairGenerator$*", + "java.security.MessageDigest", + "java.security.MessageDigest$Delegate", + "java.security.MessageDigest$Delegate$CloneableDelegate", + "java.security.NoSuchAlgorithmException", + "java.security.PrivateKey", + "java.security.PublicKey", + "java.security.cert.CertificateFactory", + "java.security.cert.X509Certificate", + "java.security.spec.MGF1ParameterSpec", + "java.security.spec.PKCS8EncodedKeySpec", + "java.security.spec.X509EncodedKeySpec", + "java.text.SimpleDateFormat", + "java.time.Clock", + "java.time.Clock$FixedClock", + "java.time.Clock$OffsetClock", + "java.time.Clock$SystemClock", + "java.time.Clock$TickClock", + "java.time.temporal.ChronoUnit", + "java.util.AbstractMap$*", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Arrays", + "java.util.Collections", + "java.util.Collections$*", + "java.util.Date", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashMap$LinkedKeySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.List", + "java.util.Locale", + "java.util.Map", + "java.util.TreeMap", + "java.util.TreeSet", + "java.util.UUID", + "javax.crypto.Cipher", + "javax.crypto.Mac", + "javax.crypto.spec.IvParameterSpec", + "javax.crypto.spec.OAEPParameterSpec", + "javax.crypto.spec.PSource", + "javax.crypto.spec.PSource$*", + "javax.crypto.spec.SecretKeySpec", + "javax.security.auth.callback.ChoiceCallback", + "javax.security.auth.callback.ConfirmationCallback", + "javax.security.auth.callback.LanguageCallback", + "javax.security.auth.callback.NameCallback", + "javax.security.auth.callback.PasswordCallback", + "javax.security.auth.callback.TextInputCallback", + "javax.security.auth.callback.TextOutputCallback", + "org.apache.groovy.json.internal.LazyMap", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.guice.core.IdentityProvider", + "org.forgerock.guice.core.InjectorHolder", + "org.forgerock.http.Client", + "org.forgerock.http.Context", + "org.forgerock.http.Handler", + "org.forgerock.http.client.*", + "org.forgerock.http.context.RootContext", + "org.forgerock.http.header.*", + "org.forgerock.http.header.authorization.*", + "org.forgerock.http.protocol.*", + "org.forgerock.json.JsonValue", + "org.forgerock.json.jose.builders.EncryptedJwtBuilder", + "org.forgerock.json.jose.builders.EncryptedThenSignedJwtBuilder", + "org.forgerock.json.jose.builders.JweHeaderBuilder", + "org.forgerock.json.jose.builders.JwsHeaderBuilder", + "org.forgerock.json.jose.builders.JwtBuilderFactory", + "org.forgerock.json.jose.builders.SignedJwtBuilderImpl", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtBuilder", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtHeaderBuilder", + "org.forgerock.json.jose.jwe.EncryptedJwt", + "org.forgerock.json.jose.jwe.EncryptionMethod", + "org.forgerock.json.jose.jwe.JweAlgorithm", + "org.forgerock.json.jose.jwe.SignedThenEncryptedJwt", + "org.forgerock.json.jose.jwk.JWKSet", + "org.forgerock.json.jose.jwk.RsaJWK", + "org.forgerock.json.jose.jws.EncryptedThenSignedJwt", + "org.forgerock.json.jose.jws.JwsAlgorithm", + "org.forgerock.json.jose.jws.JwsHeader", + "org.forgerock.json.jose.jws.SignedEncryptedJwt", + "org.forgerock.json.jose.jws.SignedJwt", + "org.forgerock.json.jose.jws.SigningManager", + "org.forgerock.json.jose.jws.handlers.HmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.RSASigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretHmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretRSASigningHandler", + "org.forgerock.json.jose.jwt.JwtClaimsSet", + "org.forgerock.macaroons.Macaroon", + "org.forgerock.oauth.clients.oidc.Claim", + "org.forgerock.oauth2.core.GrantType", + "org.forgerock.oauth2.core.StatefulAccessToken", + "org.forgerock.oauth2.core.UserInfoClaims", + "org.forgerock.oauth2.core.exceptions.InvalidRequestException", + "org.forgerock.oauth2.core.tokenexchange.ExchangeableToken", + "org.forgerock.openam.auth.node.api.Action", + "org.forgerock.openam.auth.node.api.Action$ActionBuilder", + "org.forgerock.openam.auth.node.api.NodeState", + "org.forgerock.openam.auth.node.api.SuspendedTextOutputCallback", + "org.forgerock.openam.auth.nodes.IdentityProvider", + "org.forgerock.openam.auth.nodes.InjectorHolder", + "org.forgerock.openam.authentication.callbacks.AbstractValidatedCallback", + "org.forgerock.openam.authentication.callbacks.AttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.BooleanAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.ConsentMappingCallback", + "org.forgerock.openam.authentication.callbacks.DeviceProfileCallback", + "org.forgerock.openam.authentication.callbacks.IdPCallback", + "org.forgerock.openam.authentication.callbacks.KbaCreateCallback", + "org.forgerock.openam.authentication.callbacks.NumberAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.PollingWaitCallback", + "org.forgerock.openam.authentication.callbacks.SelectIdPCallback", + "org.forgerock.openam.authentication.callbacks.StringAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.TermsAndConditionsCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedPasswordCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedUsernameCallback", + "org.forgerock.openam.authentication.modules.scripted.*", + "org.forgerock.openam.core.rest.authn.callbackhandlers.*", + "org.forgerock.openam.core.rest.devices.deviceprint.DeviceIdDao", + "org.forgerock.openam.core.rest.devices.profile.DeviceProfilesDao", + "org.forgerock.openam.oauth2.OpenAMAccessToken", + "org.forgerock.openam.oauth2.token.grantset.Authorization$ModifiedAccessToken", + "org.forgerock.openam.oauth2.token.macaroon.MacaroonAccessToken", + "org.forgerock.openam.oauth2.token.stateless.StatelessAccessToken", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "org.forgerock.openam.scripting.api.ScriptedIdentity", + "org.forgerock.openam.scripting.api.ScriptedSession", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentityRepository", + "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "org.forgerock.openam.scripting.api.secrets.Secret", + "org.forgerock.openam.scripting.idrepo.ScriptIdentityRepository", + "org.forgerock.openam.shared.security.ThreadLocalSecureRandom", + "org.forgerock.openidconnect.Claim", + "org.forgerock.openidconnect.OpenIdConnectToken", + "org.forgerock.openidconnect.ssoprovider.OpenIdConnectSSOToken", + "org.forgerock.secrets.SecretBuilder", + "org.forgerock.secrets.keys.SigningKey", + "org.forgerock.secrets.keys.VerificationKey", + "org.forgerock.util.encode.Base64", + "org.forgerock.util.encode.Base64url", + "org.forgerock.util.encode.Hex", + "org.forgerock.util.promise.NeverThrowsException", + "org.forgerock.util.promise.Promise", + "org.forgerock.util.promise.PromiseImpl", + "org.mozilla.javascript.ConsString", + "org.mozilla.javascript.JavaScriptException", + "org.mozilla.javascript.WrappedException", + "sun.security.ec.ECPrivateKeyImpl", + "sun.security.rsa.RSAPrivateCrtKeyImpl", + "sun.security.rsa.RSAPublicKeyImpl", + "sun.security.x509.X500Name", + "sun.security.x509.X509CertImpl", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "java.util.AbstractMap$SimpleImmutableEntry", + "java.util.Collections$1", + "java.util.Collections$EmptyList", + "java.util.Collections$SingletonList", + "java.util.Collections$UnmodifiableMap", + "java.util.Collections$UnmodifiableSet", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.opendj.ldap.Dn", + "org.forgerock.openam.auth.nodes.VerifyTransactionsHelper" + ] + }, + "isHidden": false, + "languages": [ + "JAVASCRIPT", + "GROOVY" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/PINGONE_VERIFY_COMPLETION_DECISION_NODE.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/PINGONE_VERIFY_COMPLETION_DECISION_NODE.scripttype.json new file mode 100644 index 000000000..4a761662f --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/PINGONE_VERIFY_COMPLETION_DECISION_NODE.scripttype.json @@ -0,0 +1,1759 @@ +{ + "scripttype": { + "PINGONE_VERIFY_COMPLETION_DECISION_NODE": { + "_id": "PINGONE_VERIFY_COMPLETION_DECISION_NODE", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "PINGONE_VERIFY_COMPLETION_DECISION_NODE", + "allowLists": [ + "org.forgerock.util.promise.PromiseImpl", + "org.forgerock.util.promise.Promises$*", + "java.lang.Object" + ], + "bindings": [ + { + "elements": [ + { + "elementType": "method", + "name": "send", + "parameters": [ + { + "javaScriptType": "string", + "name": "uri" + }, + { + "javaScriptType": "object", + "name": "requestOptions" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "send", + "parameters": [ + { + "javaScriptType": "string", + "name": "uri" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.wrappers.HttpClientScriptWrapper", + "javaScriptType": "object", + "name": "httpClient" + }, + { + "elements": [ + { + "elementType": "method", + "name": "remove", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "get", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "keys", + "parameters": [], + "returnType": "object" + }, + { + "elementType": "method", + "name": "getObject", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "isDefined", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "putShared", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + }, + { + "javaScriptType": "object", + "name": "value" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "putTransient", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + }, + { + "javaScriptType": "object", + "name": "value" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "mergeShared", + "parameters": [ + { + "javaScriptType": "object", + "name": "object" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "mergeTransient", + "parameters": [ + { + "javaScriptType": "object", + "name": "object" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.auth.node.api.NodeStateScriptWrapper", + "javaScriptType": "object", + "name": "nodeState" + }, + { + "javaScriptType": "unknown", + "name": "verifyTransactionsHelper" + }, + { + "elements": [ + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "randomUUID", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "getRandomValues", + "parameters": [ + { + "javaScriptType": "array", + "name": "array" + } + ], + "returnType": "array" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "sign", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "sign", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "digest", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "verify", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + }, + { + "javaScriptType": "array", + "name": "signature" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "verify", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + }, + { + "javaScriptType": "array", + "name": "signature" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "encrypt", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "encrypt", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "decrypt", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "decrypt", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "generateKey", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithm" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "generateKey", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.crypto.subtle.ScriptSubtleService", + "javaScriptType": "object", + "name": "subtle" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.crypto.ScriptCryptoService", + "javaScriptType": "object", + "name": "crypto" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "decode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "array", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "decodeToBytes", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "btoa", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "atob", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptBase64Service", + "javaScriptType": "object", + "name": "base64" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "decode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "btoa", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "atob", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptBase64UrlService", + "javaScriptType": "object", + "name": "base64url" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "bytesToString", + "parameters": [ + { + "javaScriptType": "array", + "name": "bytes" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "stringToBytes", + "parameters": [ + { + "javaScriptType": "string", + "name": "string" + } + ], + "returnType": "array" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptTypesService", + "javaScriptType": "object", + "name": "types" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptUtilityService", + "javaScriptType": "object", + "name": "utils" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getName", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "isTraceEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isDebugEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isErrorEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isInfoEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isWarnEnabled", + "parameters": [], + "returnType": "boolean" + } + ], + "javaClass": "org.forgerock.openam.scripting.logging.ScriptedLoggerWrapper", + "javaScriptType": "object", + "name": "logger" + }, + { + "elements": [ + { + "elementType": "method", + "name": "withIdentifiedUser", + "parameters": [ + { + "javaScriptType": "string", + "name": "username" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withIdentifiedAgent", + "parameters": [ + { + "javaScriptType": "string", + "name": "agentName" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "suspend", + "parameters": [ + { + "javaScriptType": "string", + "name": "callbackTextFormat" + }, + { + "javaScriptType": "object", + "name": "additionalLogic" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "suspend", + "parameters": [ + { + "javaScriptType": "string", + "name": "callbackTextFormat" + }, + { + "javaScriptType": "object", + "name": "additionalLogic" + }, + { + "javaScriptType": "number", + "name": "maximumSuspendDuration" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "suspend", + "parameters": [ + { + "javaScriptType": "string", + "name": "callbackTextFormat" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "goTo", + "parameters": [ + { + "javaScriptType": "string", + "name": "outcome" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withHeader", + "parameters": [ + { + "javaScriptType": "string", + "name": "header" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withDescription", + "parameters": [ + { + "javaScriptType": "string", + "name": "description" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withStage", + "parameters": [ + { + "javaScriptType": "string", + "name": "stage" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withErrorMessage", + "parameters": [ + { + "javaScriptType": "string", + "name": "errorMessage" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withLockoutMessage", + "parameters": [ + { + "javaScriptType": "string", + "name": "lockoutMessage" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "removeSessionProperty", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withMaxSessionTime", + "parameters": [ + { + "javaScriptType": "number", + "name": "maxSessionTime" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withMaxIdleTime", + "parameters": [ + { + "javaScriptType": "number", + "name": "maxIdleTime" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "putSessionProperty", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + }, + { + "javaScriptType": "string", + "name": "value" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.auth.nodes.script.ActionWrapper", + "javaScriptType": "object", + "name": "action" + }, + { + "javaScriptType": "string", + "name": "scriptName" + }, + { + "javaScriptType": "string", + "name": "realm" + }, + { + "elements": [ + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "query", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "query", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.wrappers.IdmIntegrationServiceScriptWrapper", + "javaScriptType": "object", + "name": "openidm" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getGenericSecret", + "parameters": [ + { + "javaScriptType": "string", + "name": "secretId" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "javaScriptType": "object", + "name": "secrets" + }, + { + "javaScriptType": "string", + "name": "cookieName" + }, + { + "elements": [ + { + "elementType": "method", + "name": "evaluate", + "parameters": [ + { + "javaScriptType": "object", + "name": "subject" + }, + { + "javaScriptType": "string", + "name": "application" + }, + { + "javaScriptType": "array", + "name": "resourceNames" + }, + { + "javaScriptType": "object", + "name": "environment" + } + ], + "returnType": "array" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptPolicyService", + "javaScriptType": "object", + "name": "policy" + } + ], + "evaluatorVersions": { + "JAVASCRIPT": [ + "2.0" + ] + } + }, + "defaultScript": "[Empty]", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.security.AccessController", + "java.lang.reflect.*" + ], + "coreThreads": { + "$int": "&{pingone.verify.completion.decision.node.script.context.core.threads|10}" + }, + "idleTimeout": 60, + "maxThreads": { + "$int": "&{pingone.verify.completion.decision.node.script.context.max.threads|100}" + }, + "propertyNamePrefix": "esv.", + "queueSize": { + "$int": "&{pingone.verify.completion.decision.node.script.context.queue.size|50}" + }, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "java.lang.Float", + "org.forgerock.http.protocol.Header", + "java.lang.Integer", + "org.forgerock.http.Client", + "java.lang.Character$UnicodeBlock", + "java.lang.Character", + "java.lang.Long", + "java.lang.Short", + "java.util.Map", + "org.forgerock.http.client.*", + "java.lang.Math", + "org.forgerock.opendj.ldap.Dn", + "java.lang.Byte", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "java.lang.StrictMath", + "org.forgerock.util.promise.PromiseImpl", + "org.forgerock.http.Context", + "java.lang.Void", + "org.codehaus.groovy.runtime.GStringImpl", + "groovy.json.JsonSlurper", + "org.forgerock.http.protocol.Request", + "org.forgerock.http.protocol.Entity", + "org.forgerock.http.context.RootContext", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "java.util.List", + "org.forgerock.http.protocol.RequestCookies", + "org.forgerock.http.protocol.Responses", + "org.forgerock.util.promise.Promise", + "java.util.HashMap$KeyIterator", + "com.sun.identity.shared.debug.Debug", + "java.lang.Double", + "org.forgerock.http.protocol.Headers", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.http.protocol.Status", + "java.util.HashMap", + "java.lang.Character$Subset", + "java.util.TreeSet", + "java.util.ArrayList", + "java.util.HashSet", + "java.util.LinkedHashMap", + "org.forgerock.http.protocol.ResponseException", + "java.util.Collections$UnmodifiableRandomAccessList", + "org.forgerock.http.protocol.Message", + "java.lang.Boolean", + "java.lang.String", + "java.lang.Number", + "java.util.LinkedList", + "java.util.LinkedHashSet", + "org.forgerock.http.protocol.Response", + "org.forgerock.util.promise.NeverThrowsException", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "java.util.TreeMap", + "java.util.Collections$EmptyList", + "org.forgerock.openam.scripting.api.ScriptedSession", + "java.util.Collections$UnmodifiableCollection$1", + "org.forgerock.http.Handler", + "java.lang.Object", + "org.forgerock.http.protocol.Form" + ] + }, + "isHidden": false, + "languages": [ + "JAVASCRIPT" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/POLICY_CONDITION.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/POLICY_CONDITION.scripttype.json new file mode 100644 index 000000000..05b1586f8 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/POLICY_CONDITION.scripttype.json @@ -0,0 +1,283 @@ +{ + "scripttype": { + "POLICY_CONDITION": { + "_id": "POLICY_CONDITION", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "POLICY_CONDITION", + "allowLists": [], + "bindings": [], + "evaluatorVersions": { + "GROOVY": [ + "1.0" + ], + "JAVASCRIPT": [ + "1.0" + ] + } + }, + "defaultScript": "9de3eb62-f131-4fac-a294-7bd170fd4acb", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.lang.Thread", + "java.lang.invoke.*", + "java.lang.reflect.*", + "java.security.AccessController" + ], + "coreThreads": { + "$int": "&{policy.condition.script.context.core.threads|10}" + }, + "idleTimeout": 60, + "maxThreads": { + "$int": "&{policy.condition.script.context.max.threads|100}" + }, + "propertyNamePrefix": "esv.", + "queueSize": { + "$int": "&{policy.condition.script.context.queue.size|50}" + }, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "com.google.common.collect.ImmutableList", + "com.google.common.collect.Sets$1", + "com.iplanet.am.sdk.AMHashMap", + "com.iplanet.sso.providers.dpro.SSOTokenIDImpl", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.identity.authentication.callbacks.HiddenValueCallback", + "com.sun.identity.authentication.callbacks.ReCaptchaCallback", + "com.sun.identity.authentication.callbacks.ScriptTextOutputCallback", + "com.sun.identity.authentication.spi.HttpCallback", + "com.sun.identity.authentication.spi.IdentifiableCallback", + "com.sun.identity.authentication.spi.MetadataCallback", + "com.sun.identity.authentication.spi.PagePropertiesCallback", + "com.sun.identity.authentication.spi.RedirectCallback", + "com.sun.identity.authentication.spi.X509CertificateCallback", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.common.CaseInsensitiveHashMap$Entry", + "com.sun.identity.idm.AMIdentity", + "com.sun.identity.idm.IdType", + "com.sun.identity.saml2.assertion.impl.AttributeImpl", + "com.sun.identity.saml2.common.SAML2Exception", + "com.sun.identity.saml2.plugins.scripted.IdpAttributeMapperScriptHelper", + "com.sun.identity.shared.debug.Debug", + "groovy.json.JsonSlurper", + "groovy.json.StringEscapeUtils", + "groovy.json.internal.LazyMap", + "java.io.ByteArrayInputStream", + "java.io.ByteArrayOutputStream", + "java.io.UnsupportedEncodingException", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.NullPointerException", + "java.lang.Number", + "java.lang.Object", + "java.lang.RuntimeException", + "java.lang.SecurityException", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.math.BigDecimal", + "java.math.BigInteger", + "java.net.URI", + "java.security.KeyFactory", + "java.security.KeyPair", + "java.security.KeyPairGenerator", + "java.security.KeyPairGenerator$*", + "java.security.MessageDigest", + "java.security.MessageDigest$Delegate", + "java.security.MessageDigest$Delegate$CloneableDelegate", + "java.security.NoSuchAlgorithmException", + "java.security.PrivateKey", + "java.security.PublicKey", + "java.security.cert.CertificateFactory", + "java.security.cert.X509Certificate", + "java.security.spec.MGF1ParameterSpec", + "java.security.spec.PKCS8EncodedKeySpec", + "java.security.spec.X509EncodedKeySpec", + "java.text.SimpleDateFormat", + "java.time.Clock", + "java.time.Clock$FixedClock", + "java.time.Clock$OffsetClock", + "java.time.Clock$SystemClock", + "java.time.Clock$TickClock", + "java.time.temporal.ChronoUnit", + "java.util.AbstractMap$*", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Arrays", + "java.util.Collections", + "java.util.Collections$*", + "java.util.Date", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashMap$LinkedKeySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.List", + "java.util.Locale", + "java.util.Map", + "java.util.TreeMap", + "java.util.TreeSet", + "java.util.UUID", + "javax.crypto.Cipher", + "javax.crypto.Mac", + "javax.crypto.spec.IvParameterSpec", + "javax.crypto.spec.OAEPParameterSpec", + "javax.crypto.spec.PSource", + "javax.crypto.spec.PSource$*", + "javax.crypto.spec.SecretKeySpec", + "javax.security.auth.callback.ChoiceCallback", + "javax.security.auth.callback.ConfirmationCallback", + "javax.security.auth.callback.LanguageCallback", + "javax.security.auth.callback.NameCallback", + "javax.security.auth.callback.PasswordCallback", + "javax.security.auth.callback.TextInputCallback", + "javax.security.auth.callback.TextOutputCallback", + "org.apache.groovy.json.internal.LazyMap", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.guice.core.IdentityProvider", + "org.forgerock.guice.core.InjectorHolder", + "org.forgerock.http.Client", + "org.forgerock.http.Context", + "org.forgerock.http.Handler", + "org.forgerock.http.client.*", + "org.forgerock.http.context.RootContext", + "org.forgerock.http.header.*", + "org.forgerock.http.header.authorization.*", + "org.forgerock.http.protocol.*", + "org.forgerock.json.JsonValue", + "org.forgerock.json.jose.builders.EncryptedJwtBuilder", + "org.forgerock.json.jose.builders.EncryptedThenSignedJwtBuilder", + "org.forgerock.json.jose.builders.JweHeaderBuilder", + "org.forgerock.json.jose.builders.JwsHeaderBuilder", + "org.forgerock.json.jose.builders.JwtBuilderFactory", + "org.forgerock.json.jose.builders.SignedJwtBuilderImpl", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtBuilder", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtHeaderBuilder", + "org.forgerock.json.jose.jwe.EncryptedJwt", + "org.forgerock.json.jose.jwe.EncryptionMethod", + "org.forgerock.json.jose.jwe.JweAlgorithm", + "org.forgerock.json.jose.jwe.SignedThenEncryptedJwt", + "org.forgerock.json.jose.jwk.JWKSet", + "org.forgerock.json.jose.jwk.RsaJWK", + "org.forgerock.json.jose.jws.EncryptedThenSignedJwt", + "org.forgerock.json.jose.jws.JwsAlgorithm", + "org.forgerock.json.jose.jws.JwsHeader", + "org.forgerock.json.jose.jws.SignedEncryptedJwt", + "org.forgerock.json.jose.jws.SignedJwt", + "org.forgerock.json.jose.jws.SigningManager", + "org.forgerock.json.jose.jws.handlers.HmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.RSASigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretHmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretRSASigningHandler", + "org.forgerock.json.jose.jwt.JwtClaimsSet", + "org.forgerock.macaroons.Macaroon", + "org.forgerock.oauth.clients.oidc.Claim", + "org.forgerock.oauth2.core.GrantType", + "org.forgerock.oauth2.core.StatefulAccessToken", + "org.forgerock.oauth2.core.UserInfoClaims", + "org.forgerock.oauth2.core.exceptions.InvalidRequestException", + "org.forgerock.oauth2.core.tokenexchange.ExchangeableToken", + "org.forgerock.openam.auth.node.api.Action", + "org.forgerock.openam.auth.node.api.Action$ActionBuilder", + "org.forgerock.openam.auth.node.api.NodeState", + "org.forgerock.openam.auth.node.api.SuspendedTextOutputCallback", + "org.forgerock.openam.auth.nodes.IdentityProvider", + "org.forgerock.openam.auth.nodes.InjectorHolder", + "org.forgerock.openam.authentication.callbacks.AbstractValidatedCallback", + "org.forgerock.openam.authentication.callbacks.AttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.BooleanAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.ConsentMappingCallback", + "org.forgerock.openam.authentication.callbacks.DeviceProfileCallback", + "org.forgerock.openam.authentication.callbacks.IdPCallback", + "org.forgerock.openam.authentication.callbacks.KbaCreateCallback", + "org.forgerock.openam.authentication.callbacks.NumberAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.PollingWaitCallback", + "org.forgerock.openam.authentication.callbacks.SelectIdPCallback", + "org.forgerock.openam.authentication.callbacks.StringAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.TermsAndConditionsCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedPasswordCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedUsernameCallback", + "org.forgerock.openam.authentication.modules.scripted.*", + "org.forgerock.openam.core.rest.authn.callbackhandlers.*", + "org.forgerock.openam.core.rest.devices.deviceprint.DeviceIdDao", + "org.forgerock.openam.core.rest.devices.profile.DeviceProfilesDao", + "org.forgerock.openam.oauth2.OpenAMAccessToken", + "org.forgerock.openam.oauth2.token.grantset.Authorization$ModifiedAccessToken", + "org.forgerock.openam.oauth2.token.macaroon.MacaroonAccessToken", + "org.forgerock.openam.oauth2.token.stateless.StatelessAccessToken", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "org.forgerock.openam.scripting.api.ScriptedIdentity", + "org.forgerock.openam.scripting.api.ScriptedSession", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentityRepository", + "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "org.forgerock.openam.scripting.api.secrets.Secret", + "org.forgerock.openam.scripting.idrepo.ScriptIdentityRepository", + "org.forgerock.openam.shared.security.ThreadLocalSecureRandom", + "org.forgerock.openidconnect.Claim", + "org.forgerock.openidconnect.OpenIdConnectToken", + "org.forgerock.openidconnect.ssoprovider.OpenIdConnectSSOToken", + "org.forgerock.secrets.SecretBuilder", + "org.forgerock.secrets.keys.SigningKey", + "org.forgerock.secrets.keys.VerificationKey", + "org.forgerock.util.encode.Base64", + "org.forgerock.util.encode.Base64url", + "org.forgerock.util.encode.Hex", + "org.forgerock.util.promise.NeverThrowsException", + "org.forgerock.util.promise.Promise", + "org.forgerock.util.promise.PromiseImpl", + "org.mozilla.javascript.ConsString", + "org.mozilla.javascript.JavaScriptException", + "org.mozilla.javascript.WrappedException", + "sun.security.ec.ECPrivateKeyImpl", + "sun.security.rsa.RSAPrivateCrtKeyImpl", + "sun.security.rsa.RSAPublicKeyImpl", + "sun.security.x509.X500Name", + "sun.security.x509.X509CertImpl", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.opendj.ldap.Dn", + "org.forgerock.openam.auth.nodes.VerifyTransactionsHelper" + ] + }, + "isHidden": false, + "languages": [ + "JAVASCRIPT", + "GROOVY" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/POLICY_CONDITION_NEXT_GEN.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/POLICY_CONDITION_NEXT_GEN.scripttype.json new file mode 100644 index 000000000..fa5b24426 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/POLICY_CONDITION_NEXT_GEN.scripttype.json @@ -0,0 +1,1573 @@ +{ + "scripttype": { + "POLICY_CONDITION_NEXT_GEN": { + "_id": "POLICY_CONDITION_NEXT_GEN", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "POLICY_CONDITION_NEXT_GEN", + "allowLists": [ + "org.forgerock.util.promise.PromiseImpl", + "org.forgerock.util.promise.Promises$*", + "java.lang.Object" + ], + "bindings": [ + { + "elements": [ + { + "elementType": "method", + "name": "send", + "parameters": [ + { + "javaScriptType": "string", + "name": "uri" + }, + { + "javaScriptType": "object", + "name": "requestOptions" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "send", + "parameters": [ + { + "javaScriptType": "string", + "name": "uri" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.wrappers.HttpClientScriptWrapper", + "javaScriptType": "object", + "name": "httpClient" + }, + { + "elements": [], + "javaScriptType": "object", + "name": "advice" + }, + { + "elements": [], + "javaScriptType": "object", + "name": "responseAttributes" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getProperty", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + } + ], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.api.ScriptedSession", + "javaScriptType": "object", + "name": "session" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getName", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "isTraceEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isDebugEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isErrorEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isInfoEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isWarnEnabled", + "parameters": [], + "returnType": "boolean" + } + ], + "javaClass": "org.forgerock.openam.scripting.logging.ScriptedLoggerWrapper", + "javaScriptType": "object", + "name": "logger" + }, + { + "javaScriptType": "string", + "name": "resourceURI" + }, + { + "javaScriptType": "number", + "name": "ttl" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getGenericSecret", + "parameters": [ + { + "javaScriptType": "string", + "name": "secretId" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "javaScriptType": "object", + "name": "secrets" + }, + { + "elements": [], + "javaScriptType": "object", + "name": "environment" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getName", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "store", + "parameters": [], + "returnType": "void" + }, + { + "elementType": "method", + "name": "setAttribute", + "parameters": [ + { + "javaScriptType": "string", + "name": "attributeName" + }, + { + "javaScriptType": "array", + "name": "attributeValues" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "addAttribute", + "parameters": [ + { + "javaScriptType": "string", + "name": "attributeName" + }, + { + "javaScriptType": "string", + "name": "attributeValue" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "getAttributeValues", + "parameters": [ + { + "javaScriptType": "string", + "name": "attributeName" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getUniversalId", + "parameters": [], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.api.identity.ScriptedIdentityScriptWrapper", + "javaScriptType": "object", + "name": "identity" + }, + { + "elements": [ + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "randomUUID", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "getRandomValues", + "parameters": [ + { + "javaScriptType": "array", + "name": "array" + } + ], + "returnType": "array" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "sign", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "sign", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "digest", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "verify", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + }, + { + "javaScriptType": "array", + "name": "signature" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "verify", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + }, + { + "javaScriptType": "array", + "name": "signature" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "encrypt", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "encrypt", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "decrypt", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "decrypt", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "generateKey", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithm" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "generateKey", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.crypto.subtle.ScriptSubtleService", + "javaScriptType": "object", + "name": "subtle" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.crypto.ScriptCryptoService", + "javaScriptType": "object", + "name": "crypto" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "decode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "array", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "decodeToBytes", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "btoa", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "atob", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptBase64Service", + "javaScriptType": "object", + "name": "base64" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "decode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "btoa", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "atob", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptBase64UrlService", + "javaScriptType": "object", + "name": "base64url" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "bytesToString", + "parameters": [ + { + "javaScriptType": "array", + "name": "bytes" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "stringToBytes", + "parameters": [ + { + "javaScriptType": "string", + "name": "string" + } + ], + "returnType": "array" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptTypesService", + "javaScriptType": "object", + "name": "types" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptUtilityService", + "javaScriptType": "object", + "name": "utils" + }, + { + "javaScriptType": "boolean", + "name": "authorized" + }, + { + "javaScriptType": "string", + "name": "scriptName" + }, + { + "javaScriptType": "string", + "name": "realm" + }, + { + "elements": [ + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "query", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "query", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.wrappers.IdmIntegrationServiceScriptWrapper", + "javaScriptType": "object", + "name": "openidm" + }, + { + "javaScriptType": "string", + "name": "cookieName" + }, + { + "javaScriptType": "string", + "name": "username" + }, + { + "elements": [ + { + "elementType": "method", + "name": "evaluate", + "parameters": [ + { + "javaScriptType": "object", + "name": "subject" + }, + { + "javaScriptType": "string", + "name": "application" + }, + { + "javaScriptType": "array", + "name": "resourceNames" + }, + { + "javaScriptType": "object", + "name": "environment" + } + ], + "returnType": "array" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptPolicyService", + "javaScriptType": "object", + "name": "policy" + } + ], + "evaluatorVersions": { + "JAVASCRIPT": [ + "2.0" + ] + } + }, + "defaultScript": "[Empty]", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.security.AccessController", + "java.lang.reflect.*" + ], + "coreThreads": { + "$int": "&{policy.condition.next.gen.script.context.core.threads|10}" + }, + "idleTimeout": 60, + "maxThreads": { + "$int": "&{policy.condition.next.gen.script.context.max.threads|100}" + }, + "propertyNamePrefix": "esv.", + "queueSize": { + "$int": "&{policy.condition.next.gen.script.context.queue.size|50}" + }, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "java.lang.Float", + "org.forgerock.http.protocol.Header", + "java.lang.Integer", + "org.forgerock.http.Client", + "java.lang.Character$UnicodeBlock", + "java.lang.Character", + "java.lang.Long", + "java.lang.Short", + "java.util.Map", + "org.forgerock.http.client.*", + "java.lang.Math", + "org.forgerock.opendj.ldap.Dn", + "java.lang.Byte", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "java.lang.StrictMath", + "org.forgerock.util.promise.PromiseImpl", + "org.forgerock.http.Context", + "java.lang.Void", + "org.codehaus.groovy.runtime.GStringImpl", + "groovy.json.JsonSlurper", + "org.forgerock.http.protocol.Request", + "org.forgerock.http.protocol.Entity", + "org.forgerock.http.context.RootContext", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "java.util.List", + "org.forgerock.http.protocol.RequestCookies", + "org.forgerock.http.protocol.Responses", + "org.forgerock.util.promise.Promise", + "java.util.HashMap$KeyIterator", + "com.sun.identity.shared.debug.Debug", + "java.lang.Double", + "org.forgerock.http.protocol.Headers", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.http.protocol.Status", + "java.util.HashMap", + "java.lang.Character$Subset", + "java.util.TreeSet", + "java.util.ArrayList", + "java.util.HashSet", + "java.util.LinkedHashMap", + "org.forgerock.http.protocol.ResponseException", + "java.util.Collections$UnmodifiableRandomAccessList", + "org.forgerock.http.protocol.Message", + "java.lang.Boolean", + "java.lang.String", + "java.lang.Number", + "java.util.LinkedList", + "java.util.LinkedHashSet", + "org.forgerock.http.protocol.Response", + "org.forgerock.util.promise.NeverThrowsException", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "java.util.TreeMap", + "java.util.Collections$EmptyList", + "org.forgerock.openam.scripting.api.ScriptedSession", + "java.util.Collections$UnmodifiableCollection$1", + "org.forgerock.http.Handler", + "java.lang.Object", + "org.forgerock.http.protocol.Form" + ] + }, + "isHidden": false, + "languages": [ + "JAVASCRIPT" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/SAML2_IDP_ADAPTER.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/SAML2_IDP_ADAPTER.scripttype.json new file mode 100644 index 000000000..5a49df8b2 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/SAML2_IDP_ADAPTER.scripttype.json @@ -0,0 +1,214 @@ +{ + "scripttype": { + "SAML2_IDP_ADAPTER": { + "_id": "SAML2_IDP_ADAPTER", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "SAML2_IDP_ADAPTER", + "allowLists": [ + "com.iplanet.am.sdk.AMHashMap", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.saml2.assertion.*", + "com.sun.identity.saml2.assertion.impl.*", + "com.sun.identity.saml2.common.SAML2Exception", + "com.sun.identity.saml2.plugins.scripted.ScriptEntitlementInfo", + "com.sun.identity.saml2.protocol.*", + "com.sun.identity.saml2.protocol.impl.*", + "com.sun.identity.shared.debug.Debug", + "java.io.PrintWriter", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.util.Collections$EmptyMap", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.Number", + "java.lang.Object", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.util.AbstractMap$SimpleImmutableEntry", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Collections$1", + "java.util.Collections$EmptyList", + "java.util.Collections$SingletonList", + "java.util.Collections$SingletonSet", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.TreeMap", + "java.util.TreeSet", + "java.net.URI", + "javax.security.auth.Subject", + "jakarta.servlet.http.HttpServletRequestWrapper", + "jakarta.servlet.http.HttpServletResponseWrapper", + "groovy.json.internal.LazyMap", + "groovy.json.JsonSlurper", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.http.Client", + "org.forgerock.http.client.*", + "org.forgerock.http.protocol.*", + "org.forgerock.json.JsonValue", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "org.forgerock.util.promise.PromiseImpl", + "org.mozilla.javascript.JavaScriptException", + "sun.security.ec.ECPrivateKeyImpl", + "com.sun.identity.saml2.plugins.scripted.IdpAdapterScriptHelper" + ], + "bindings": [], + "evaluatorVersions": { + "GROOVY": [ + "1.0" + ], + "JAVASCRIPT": [ + "1.0" + ] + } + }, + "defaultScript": "[Empty]", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.lang.Thread", + "java.lang.invoke.*", + "java.lang.reflect.*", + "java.security.AccessController" + ], + "coreThreads": { + "$int": "&{saml2.idp.adapter.script.context.core.threads|10}" + }, + "idleTimeout": 60, + "maxThreads": { + "$int": "&{saml2.idp.adapter.script.context.max.threads|50}" + }, + "propertyNamePrefix": "esv.", + "queueSize": { + "$int": "&{saml2.idp.adapter.script.context.queue.size|10}" + }, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "com.iplanet.am.sdk.AMHashMap", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.saml2.assertion.*", + "com.sun.identity.saml2.assertion.impl.*", + "com.sun.identity.saml2.common.SAML2Exception", + "com.sun.identity.saml2.plugins.scripted.ScriptEntitlementInfo", + "com.sun.identity.saml2.protocol.*", + "com.sun.identity.saml2.protocol.impl.*", + "com.sun.identity.shared.debug.Debug", + "java.io.PrintWriter", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.util.Collections$EmptyMap", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.Number", + "java.lang.Object", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.util.AbstractMap$SimpleImmutableEntry", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Collections$1", + "java.util.Collections$EmptyList", + "java.util.Collections$SingletonList", + "java.util.Collections$SingletonSet", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.TreeMap", + "java.util.TreeSet", + "java.net.URI", + "javax.security.auth.Subject", + "javax.servlet.http.HttpServletRequestWrapper", + "javax.servlet.http.HttpServletResponseWrapper", + "jakarta.servlet.http.HttpServletRequestWrapper", + "jakarta.servlet.http.HttpServletResponseWrapper", + "groovy.json.internal.LazyMap", + "groovy.json.JsonSlurper", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.http.Client", + "org.forgerock.http.client.*", + "org.forgerock.http.protocol.*", + "org.forgerock.json.JsonValue", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "org.forgerock.util.promise.PromiseImpl", + "org.mozilla.javascript.JavaScriptException", + "sun.security.ec.ECPrivateKeyImpl", + "com.sun.identity.saml2.plugins.scripted.IdpAdapterScriptHelper", + "java.util.List", + "java.util.Map", + "javax.servlet.http.Cookie", + "javax.xml.parsers.DocumentBuilder", + "javax.xml.parsers.DocumentBuilderFactory", + "org.w3c.dom.Document", + "org.w3c.dom.Element", + "org.xml.sax.InputSource", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.opendj.ldap.Dn" + ] + }, + "isHidden": false, + "languages": [ + "JAVASCRIPT", + "GROOVY" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/SAML2_IDP_ATTRIBUTE_MAPPER.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/SAML2_IDP_ATTRIBUTE_MAPPER.scripttype.json new file mode 100644 index 000000000..00681428b --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/SAML2_IDP_ATTRIBUTE_MAPPER.scripttype.json @@ -0,0 +1,350 @@ +{ + "scripttype": { + "SAML2_IDP_ATTRIBUTE_MAPPER": { + "_id": "SAML2_IDP_ATTRIBUTE_MAPPER", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "SAML2_IDP_ATTRIBUTE_MAPPER", + "allowLists": [ + "com.iplanet.am.sdk.AMHashMap", + "com.sun.identity.saml2.assertion.impl.AttributeImpl", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.util.Collections$EmptyMap", + "java.lang.Double", + "java.lang.Float", + "com.sun.identity.saml2.plugins.scripted.IdpAttributeMapperScriptHelper", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.Number", + "java.lang.Object", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.util.AbstractMap$SimpleImmutableEntry", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Collections$1", + "java.util.Collections$EmptyList", + "java.util.Collections$SingletonList", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.TreeMap", + "java.util.TreeSet", + "java.net.URI", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.shared.debug.Debug", + "groovy.json.JsonSlurper", + "groovy.json.internal.LazyMap", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.http.Client", + "org.forgerock.http.client.*", + "org.forgerock.http.protocol.*", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.shared.security.crypto.CertificateService", + "org.forgerock.util.promise.PromiseImpl", + "org.forgerock.json.JsonValue", + "com.sun.identity.saml2.common.SAML2Exception", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "org.mozilla.javascript.JavaScriptException", + "javax.servlet.http.Cookie", + "javax.xml.parsers.DocumentBuilder", + "javax.xml.parsers.DocumentBuilderFactory", + "org.w3c.dom.Document", + "org.w3c.dom.Element", + "org.xml.sax.InputSource" + ], + "bindings": [], + "evaluatorVersions": { + "GROOVY": [ + "1.0" + ], + "JAVASCRIPT": [ + "1.0" + ] + } + }, + "defaultScript": "[Empty]", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.lang.Thread", + "java.lang.invoke.*", + "java.lang.reflect.*", + "java.security.AccessController" + ], + "coreThreads": { + "$int": "&{saml2.idp.attribute.mapper.script.context.core.threads|10}" + }, + "idleTimeout": 60, + "maxThreads": { + "$int": "&{saml2.idp.attribute.mapper.script.context.max.threads|100}" + }, + "propertyNamePrefix": "esv.", + "queueSize": { + "$int": "&{saml2.idp.attribute.mapper.script.context.queue.size|50}" + }, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "com.google.common.collect.ImmutableList", + "com.google.common.collect.Sets$1", + "com.iplanet.am.sdk.AMHashMap", + "com.iplanet.sso.providers.dpro.SSOTokenIDImpl", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.identity.authentication.callbacks.HiddenValueCallback", + "com.sun.identity.authentication.callbacks.ReCaptchaCallback", + "com.sun.identity.authentication.callbacks.ScriptTextOutputCallback", + "com.sun.identity.authentication.spi.HttpCallback", + "com.sun.identity.authentication.spi.IdentifiableCallback", + "com.sun.identity.authentication.spi.MetadataCallback", + "com.sun.identity.authentication.spi.PagePropertiesCallback", + "com.sun.identity.authentication.spi.RedirectCallback", + "com.sun.identity.authentication.spi.X509CertificateCallback", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.common.CaseInsensitiveHashMap$Entry", + "com.sun.identity.idm.AMIdentity", + "com.sun.identity.idm.IdType", + "com.sun.identity.saml2.assertion.impl.AttributeImpl", + "com.sun.identity.saml2.common.SAML2Exception", + "com.sun.identity.saml2.plugins.scripted.IdpAttributeMapperScriptHelper", + "com.sun.identity.shared.debug.Debug", + "groovy.json.JsonSlurper", + "groovy.json.StringEscapeUtils", + "groovy.json.internal.LazyMap", + "java.io.ByteArrayInputStream", + "java.io.ByteArrayOutputStream", + "java.io.UnsupportedEncodingException", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.NullPointerException", + "java.lang.Number", + "java.lang.Object", + "java.lang.RuntimeException", + "java.lang.SecurityException", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.math.BigDecimal", + "java.math.BigInteger", + "java.net.URI", + "java.security.KeyFactory", + "java.security.KeyPair", + "java.security.KeyPairGenerator", + "java.security.KeyPairGenerator$*", + "java.security.MessageDigest", + "java.security.MessageDigest$Delegate", + "java.security.MessageDigest$Delegate$CloneableDelegate", + "java.security.NoSuchAlgorithmException", + "java.security.PrivateKey", + "java.security.PublicKey", + "java.security.cert.CertificateFactory", + "java.security.cert.X509Certificate", + "java.security.spec.MGF1ParameterSpec", + "java.security.spec.PKCS8EncodedKeySpec", + "java.security.spec.X509EncodedKeySpec", + "java.text.SimpleDateFormat", + "java.time.Clock", + "java.time.Clock$FixedClock", + "java.time.Clock$OffsetClock", + "java.time.Clock$SystemClock", + "java.time.Clock$TickClock", + "java.time.temporal.ChronoUnit", + "java.util.AbstractMap$*", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Arrays", + "java.util.Collections", + "java.util.Collections$*", + "java.util.Date", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashMap$LinkedKeySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.List", + "java.util.Locale", + "java.util.Map", + "java.util.TreeMap", + "java.util.TreeSet", + "java.util.UUID", + "javax.crypto.Cipher", + "javax.crypto.Mac", + "javax.crypto.spec.IvParameterSpec", + "javax.crypto.spec.OAEPParameterSpec", + "javax.crypto.spec.PSource", + "javax.crypto.spec.PSource$*", + "javax.crypto.spec.SecretKeySpec", + "javax.security.auth.callback.ChoiceCallback", + "javax.security.auth.callback.ConfirmationCallback", + "javax.security.auth.callback.LanguageCallback", + "javax.security.auth.callback.NameCallback", + "javax.security.auth.callback.PasswordCallback", + "javax.security.auth.callback.TextInputCallback", + "javax.security.auth.callback.TextOutputCallback", + "org.apache.groovy.json.internal.LazyMap", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.guice.core.IdentityProvider", + "org.forgerock.guice.core.InjectorHolder", + "org.forgerock.http.Client", + "org.forgerock.http.Context", + "org.forgerock.http.Handler", + "org.forgerock.http.client.*", + "org.forgerock.http.context.RootContext", + "org.forgerock.http.header.*", + "org.forgerock.http.header.authorization.*", + "org.forgerock.http.protocol.*", + "org.forgerock.json.JsonValue", + "org.forgerock.json.jose.builders.EncryptedJwtBuilder", + "org.forgerock.json.jose.builders.EncryptedThenSignedJwtBuilder", + "org.forgerock.json.jose.builders.JweHeaderBuilder", + "org.forgerock.json.jose.builders.JwsHeaderBuilder", + "org.forgerock.json.jose.builders.JwtBuilderFactory", + "org.forgerock.json.jose.builders.SignedJwtBuilderImpl", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtBuilder", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtHeaderBuilder", + "org.forgerock.json.jose.jwe.EncryptedJwt", + "org.forgerock.json.jose.jwe.EncryptionMethod", + "org.forgerock.json.jose.jwe.JweAlgorithm", + "org.forgerock.json.jose.jwe.SignedThenEncryptedJwt", + "org.forgerock.json.jose.jwk.JWKSet", + "org.forgerock.json.jose.jwk.RsaJWK", + "org.forgerock.json.jose.jws.EncryptedThenSignedJwt", + "org.forgerock.json.jose.jws.JwsAlgorithm", + "org.forgerock.json.jose.jws.JwsHeader", + "org.forgerock.json.jose.jws.SignedEncryptedJwt", + "org.forgerock.json.jose.jws.SignedJwt", + "org.forgerock.json.jose.jws.SigningManager", + "org.forgerock.json.jose.jws.handlers.HmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.RSASigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretHmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretRSASigningHandler", + "org.forgerock.json.jose.jwt.JwtClaimsSet", + "org.forgerock.macaroons.Macaroon", + "org.forgerock.oauth.clients.oidc.Claim", + "org.forgerock.oauth2.core.GrantType", + "org.forgerock.oauth2.core.StatefulAccessToken", + "org.forgerock.oauth2.core.UserInfoClaims", + "org.forgerock.oauth2.core.exceptions.InvalidRequestException", + "org.forgerock.oauth2.core.tokenexchange.ExchangeableToken", + "org.forgerock.openam.auth.node.api.Action", + "org.forgerock.openam.auth.node.api.Action$ActionBuilder", + "org.forgerock.openam.auth.node.api.NodeState", + "org.forgerock.openam.auth.node.api.SuspendedTextOutputCallback", + "org.forgerock.openam.auth.nodes.IdentityProvider", + "org.forgerock.openam.auth.nodes.InjectorHolder", + "org.forgerock.openam.authentication.callbacks.AbstractValidatedCallback", + "org.forgerock.openam.authentication.callbacks.AttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.BooleanAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.ConsentMappingCallback", + "org.forgerock.openam.authentication.callbacks.DeviceProfileCallback", + "org.forgerock.openam.authentication.callbacks.IdPCallback", + "org.forgerock.openam.authentication.callbacks.KbaCreateCallback", + "org.forgerock.openam.authentication.callbacks.NumberAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.PollingWaitCallback", + "org.forgerock.openam.authentication.callbacks.SelectIdPCallback", + "org.forgerock.openam.authentication.callbacks.StringAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.TermsAndConditionsCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedPasswordCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedUsernameCallback", + "org.forgerock.openam.authentication.modules.scripted.*", + "org.forgerock.openam.core.rest.authn.callbackhandlers.*", + "org.forgerock.openam.core.rest.devices.deviceprint.DeviceIdDao", + "org.forgerock.openam.core.rest.devices.profile.DeviceProfilesDao", + "org.forgerock.openam.oauth2.OpenAMAccessToken", + "org.forgerock.openam.oauth2.token.grantset.Authorization$ModifiedAccessToken", + "org.forgerock.openam.oauth2.token.macaroon.MacaroonAccessToken", + "org.forgerock.openam.oauth2.token.stateless.StatelessAccessToken", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "org.forgerock.openam.scripting.api.ScriptedIdentity", + "org.forgerock.openam.scripting.api.ScriptedSession", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentityRepository", + "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "org.forgerock.openam.scripting.api.secrets.Secret", + "org.forgerock.openam.scripting.idrepo.ScriptIdentityRepository", + "org.forgerock.openam.shared.security.ThreadLocalSecureRandom", + "org.forgerock.openidconnect.Claim", + "org.forgerock.openidconnect.OpenIdConnectToken", + "org.forgerock.openidconnect.ssoprovider.OpenIdConnectSSOToken", + "org.forgerock.secrets.SecretBuilder", + "org.forgerock.secrets.keys.SigningKey", + "org.forgerock.secrets.keys.VerificationKey", + "org.forgerock.util.encode.Base64", + "org.forgerock.util.encode.Base64url", + "org.forgerock.util.encode.Hex", + "org.forgerock.util.promise.NeverThrowsException", + "org.forgerock.util.promise.Promise", + "org.forgerock.util.promise.PromiseImpl", + "org.mozilla.javascript.ConsString", + "org.mozilla.javascript.JavaScriptException", + "org.mozilla.javascript.WrappedException", + "sun.security.ec.ECPrivateKeyImpl", + "sun.security.rsa.RSAPrivateCrtKeyImpl", + "sun.security.rsa.RSAPublicKeyImpl", + "sun.security.x509.X500Name", + "sun.security.x509.X509CertImpl", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.opendj.ldap.Dn", + "org.forgerock.openam.auth.nodes.VerifyTransactionsHelper" + ] + }, + "isHidden": false, + "languages": [ + "JAVASCRIPT", + "GROOVY" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/SAML2_NAMEID_MAPPER.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/SAML2_NAMEID_MAPPER.scripttype.json new file mode 100644 index 000000000..4ec3c906f --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/SAML2_NAMEID_MAPPER.scripttype.json @@ -0,0 +1,1590 @@ +{ + "scripttype": { + "SAML2_NAMEID_MAPPER": { + "_id": "SAML2_NAMEID_MAPPER", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "SAML2_NAMEID_MAPPER", + "allowLists": [ + "org.forgerock.util.promise.PromiseImpl", + "org.forgerock.util.promise.Promises$*", + "java.lang.Object", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Float", + "java.lang.Long", + "java.lang.Math", + "java.lang.Number", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.Void", + "java.util.AbstractMap$SimpleImmutableEntry", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Collections$Collections$1", + "java.util.Collections$EmptyList", + "java.util.Collections$EmptyMap", + "java.util.Collections$SingletonList", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.TreeMap", + "java.util.TreeSet", + "java.net.URI", + "com.sun.identity.common.CaseInsensitiveHashMap", + "org.forgerock.json.JsonValue", + "org.mozilla.javascript.JavaScriptException", + "javax.servlet.http.Cookie", + "org.xml.sax.InputSource", + "java.security.cert.CertificateFactory", + "com.iplanet.am.sdk.AMHashMap", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "java.io.PrintWriter", + "javax.security.auth.Subject", + "jakarta.servlet.http.HttpServletRequestWrapper", + "jakarta.servlet.http.HttpServletResponseWrapper", + "sun.security.ec.ECPrivateKeyImpl" + ], + "bindings": [ + { + "elements": [ + { + "elementType": "method", + "name": "send", + "parameters": [ + { + "javaScriptType": "string", + "name": "uri" + }, + { + "javaScriptType": "object", + "name": "requestOptions" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "send", + "parameters": [ + { + "javaScriptType": "string", + "name": "uri" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.wrappers.HttpClientScriptWrapper", + "javaScriptType": "object", + "name": "httpClient" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getName", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "isTraceEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isDebugEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isErrorEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isInfoEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isWarnEnabled", + "parameters": [], + "returnType": "boolean" + } + ], + "javaClass": "org.forgerock.openam.scripting.logging.ScriptedLoggerWrapper", + "javaScriptType": "object", + "name": "logger" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getGenericSecret", + "parameters": [ + { + "javaScriptType": "string", + "name": "secretId" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "javaScriptType": "object", + "name": "secrets" + }, + { + "javaScriptType": "unknown", + "name": "nameIDScriptHelper" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getName", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "store", + "parameters": [], + "returnType": "void" + }, + { + "elementType": "method", + "name": "setAttribute", + "parameters": [ + { + "javaScriptType": "string", + "name": "attributeName" + }, + { + "javaScriptType": "array", + "name": "attributeValues" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "addAttribute", + "parameters": [ + { + "javaScriptType": "string", + "name": "attributeName" + }, + { + "javaScriptType": "string", + "name": "attributeValue" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "getAttributeValues", + "parameters": [ + { + "javaScriptType": "string", + "name": "attributeName" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getUniversalId", + "parameters": [], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.api.identity.ScriptedIdentityScriptWrapper", + "javaScriptType": "object", + "name": "identity" + }, + { + "elements": [ + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "randomUUID", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "getRandomValues", + "parameters": [ + { + "javaScriptType": "array", + "name": "array" + } + ], + "returnType": "array" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "sign", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "sign", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "digest", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "verify", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + }, + { + "javaScriptType": "array", + "name": "signature" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "verify", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + }, + { + "javaScriptType": "array", + "name": "signature" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "encrypt", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "encrypt", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "decrypt", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "decrypt", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "generateKey", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithm" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "generateKey", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.crypto.subtle.ScriptSubtleService", + "javaScriptType": "object", + "name": "subtle" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.crypto.ScriptCryptoService", + "javaScriptType": "object", + "name": "crypto" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "decode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "array", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "decodeToBytes", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "btoa", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "atob", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptBase64Service", + "javaScriptType": "object", + "name": "base64" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "decode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "btoa", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "atob", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptBase64UrlService", + "javaScriptType": "object", + "name": "base64url" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "bytesToString", + "parameters": [ + { + "javaScriptType": "array", + "name": "bytes" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "stringToBytes", + "parameters": [ + { + "javaScriptType": "string", + "name": "string" + } + ], + "returnType": "array" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptTypesService", + "javaScriptType": "object", + "name": "types" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptUtilityService", + "javaScriptType": "object", + "name": "utils" + }, + { + "javaScriptType": "string", + "name": "nameIDFormat" + }, + { + "javaScriptType": "string", + "name": "scriptName" + }, + { + "javaScriptType": "string", + "name": "realm" + }, + { + "javaScriptType": "string", + "name": "remoteEntityId" + }, + { + "elements": [ + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "query", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "query", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.wrappers.IdmIntegrationServiceScriptWrapper", + "javaScriptType": "object", + "name": "openidm" + }, + { + "javaScriptType": "string", + "name": "hostedEntityId" + }, + { + "javaScriptType": "string", + "name": "cookieName" + }, + { + "elements": [ + { + "elementType": "method", + "name": "evaluate", + "parameters": [ + { + "javaScriptType": "object", + "name": "subject" + }, + { + "javaScriptType": "string", + "name": "application" + }, + { + "javaScriptType": "array", + "name": "resourceNames" + }, + { + "javaScriptType": "object", + "name": "environment" + } + ], + "returnType": "array" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptPolicyService", + "javaScriptType": "object", + "name": "policy" + } + ], + "evaluatorVersions": { + "JAVASCRIPT": [ + "2.0" + ] + } + }, + "defaultScript": "[Empty]", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.security.AccessController", + "java.lang.reflect.*" + ], + "coreThreads": { + "$int": "&{saml2.nameid.mapper.script.context.core.threads|10}" + }, + "idleTimeout": 60, + "maxThreads": { + "$int": "&{saml2.nameid.mapper.script.context.max.threads|100}" + }, + "propertyNamePrefix": "esv.", + "queueSize": { + "$int": "&{saml2.nameid.mapper.script.context.queue.size|50}" + }, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "java.lang.Float", + "org.forgerock.http.protocol.Header", + "java.lang.Integer", + "org.forgerock.http.Client", + "java.lang.Character$UnicodeBlock", + "java.lang.Character", + "java.lang.Long", + "java.lang.Short", + "java.util.Map", + "org.forgerock.http.client.*", + "java.lang.Math", + "org.forgerock.opendj.ldap.Dn", + "java.lang.Byte", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "java.lang.StrictMath", + "org.forgerock.util.promise.PromiseImpl", + "org.forgerock.http.Context", + "java.lang.Void", + "org.codehaus.groovy.runtime.GStringImpl", + "groovy.json.JsonSlurper", + "org.forgerock.http.protocol.Request", + "org.forgerock.http.protocol.Entity", + "org.forgerock.http.context.RootContext", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "java.util.List", + "org.forgerock.http.protocol.RequestCookies", + "org.forgerock.http.protocol.Responses", + "org.forgerock.util.promise.Promise", + "java.util.HashMap$KeyIterator", + "com.sun.identity.shared.debug.Debug", + "java.lang.Double", + "org.forgerock.http.protocol.Headers", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.http.protocol.Status", + "java.util.HashMap", + "java.lang.Character$Subset", + "java.util.TreeSet", + "java.util.ArrayList", + "java.util.HashSet", + "java.util.LinkedHashMap", + "org.forgerock.http.protocol.ResponseException", + "java.util.Collections$UnmodifiableRandomAccessList", + "org.forgerock.http.protocol.Message", + "java.lang.Boolean", + "java.lang.String", + "java.lang.Number", + "java.util.LinkedList", + "java.util.LinkedHashSet", + "org.forgerock.http.protocol.Response", + "org.forgerock.util.promise.NeverThrowsException", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "java.util.TreeMap", + "java.util.Collections$EmptyList", + "org.forgerock.openam.scripting.api.ScriptedSession", + "java.util.Collections$UnmodifiableCollection$1", + "org.forgerock.http.Handler", + "java.lang.Object", + "org.forgerock.http.protocol.Form" + ] + }, + "isHidden": false, + "languages": [ + "JAVASCRIPT" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/SAML2_SP_ADAPTER.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/SAML2_SP_ADAPTER.scripttype.json new file mode 100644 index 000000000..3a0917f83 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/SAML2_SP_ADAPTER.scripttype.json @@ -0,0 +1,245 @@ +{ + "scripttype": { + "SAML2_SP_ADAPTER": { + "_id": "SAML2_SP_ADAPTER", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "SAML2_SP_ADAPTER", + "allowLists": [ + "com.iplanet.am.sdk.AMHashMap", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.saml2.assertion.*", + "com.sun.identity.saml2.assertion.impl.*", + "com.sun.identity.saml2.common.SAML2Exception", + "com.sun.identity.saml2.plugins.scripted.ScriptEntitlementInfo", + "com.sun.identity.saml2.protocol.*", + "com.sun.identity.saml2.protocol.impl.*", + "com.sun.identity.shared.debug.Debug", + "java.io.PrintWriter", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.util.Collections$EmptyMap", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.Number", + "java.lang.Object", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.util.AbstractMap$SimpleImmutableEntry", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Collections$1", + "java.util.Collections$EmptyList", + "java.util.Collections$SingletonList", + "java.util.Collections$SingletonSet", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.TreeMap", + "java.util.TreeSet", + "java.net.URI", + "javax.security.auth.Subject", + "jakarta.servlet.http.HttpServletRequestWrapper", + "jakarta.servlet.http.HttpServletResponseWrapper", + "groovy.json.internal.LazyMap", + "groovy.json.JsonSlurper", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.http.Client", + "org.forgerock.http.client.*", + "org.forgerock.http.protocol.*", + "org.forgerock.json.JsonValue", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "org.forgerock.util.promise.PromiseImpl", + "org.mozilla.javascript.JavaScriptException", + "sun.security.ec.ECPrivateKeyImpl", + "com.sun.identity.saml2.plugins.scripted.SpAdapterScriptHelper" + ], + "bindings": [], + "evaluatorVersions": { + "GROOVY": [ + "1.0" + ], + "JAVASCRIPT": [ + "1.0" + ] + } + }, + "defaultScript": "[Empty]", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.lang.Thread", + "java.lang.invoke.*", + "java.lang.reflect.*", + "java.security.AccessController" + ], + "coreThreads": { + "$int": "&{saml2.sp.adapter.script.context.core.threads|10}" + }, + "idleTimeout": 60, + "maxThreads": { + "$int": "&{saml2.sp.adapter.script.context.max.threads|50}" + }, + "propertyNamePrefix": "esv.", + "queueSize": { + "$int": "&{saml2.sp.adapter.script.context.queue.size|10}" + }, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "com.iplanet.am.sdk.AMHashMap", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.saml2.assertion.*", + "com.sun.identity.saml2.assertion.impl.*", + "com.sun.identity.saml2.common.SAML2Exception", + "com.sun.identity.saml2.plugins.scripted.ScriptEntitlementInfo", + "com.sun.identity.saml2.protocol.*", + "com.sun.identity.saml2.protocol.impl.*", + "com.sun.identity.shared.debug.Debug", + "java.io.PrintWriter", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.util.Collections$EmptyMap", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.Number", + "java.lang.Object", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.util.AbstractMap$SimpleImmutableEntry", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Collections$1", + "java.util.Collections$EmptyList", + "java.util.Collections$SingletonList", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.TreeMap", + "java.util.TreeSet", + "java.net.URI", + "javax.security.auth.Subject", + "javax.servlet.http.HttpServletRequestWrapper", + "javax.servlet.http.HttpServletResponseWrapper", + "jakarta.servlet.http.HttpServletRequestWrapper", + "jakarta.servlet.http.HttpServletResponseWrapper", + "groovy.json.internal.LazyMap", + "groovy.json.JsonSlurper", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.http.Client", + "org.forgerock.http.client.*", + "org.forgerock.http.protocol.*", + "org.forgerock.json.JsonValue", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "org.forgerock.util.promise.PromiseImpl", + "org.mozilla.javascript.JavaScriptException", + "sun.security.ec.ECPrivateKeyImpl", + "sun.security.rsa.RSAPrivateCrtKeyImpl", + "sun.security.rsa.RSAPublicKeyImpl", + "com.sun.identity.saml2.plugins.scripted.SpAdapterScriptHelper", + "java.util.List", + "java.util.Map", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.opendj.ldap.Dn", + "org.forgerock.json.jose.builders.EncryptedJwtBuilder", + "org.forgerock.json.jose.builders.EncryptedThenSignedJwtBuilder", + "org.forgerock.json.jose.builders.JweHeaderBuilder", + "org.forgerock.json.jose.builders.JwsHeaderBuilder", + "org.forgerock.json.jose.builders.JwtBuilderFactory", + "org.forgerock.json.jose.builders.SignedJwtBuilderImpl", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtBuilder", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtHeaderBuilder", + "org.forgerock.json.jose.jwe.EncryptedJwt", + "org.forgerock.json.jose.jwe.EncryptionMethod", + "org.forgerock.json.jose.jwe.JweAlgorithm", + "org.forgerock.json.jose.jwe.SignedThenEncryptedJwt", + "org.forgerock.json.jose.jwk.JWKSet", + "org.forgerock.json.jose.jwk.RsaJWK", + "org.forgerock.json.jose.jws.EncryptedThenSignedJwt", + "org.forgerock.json.jose.jws.JwsAlgorithm", + "org.forgerock.json.jose.jws.JwsHeader", + "org.forgerock.json.jose.jws.SignedEncryptedJwt", + "org.forgerock.json.jose.jws.SignedJwt", + "org.forgerock.json.jose.jws.SigningManager", + "org.forgerock.json.jose.jws.handlers.HmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.RSASigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretHmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretRSASigningHandler", + "org.forgerock.json.jose.jwt.JwtClaimsSet", + "javax.crypto.spec.SecretKeySpec", + "org.forgerock.secrets.SecretBuilder", + "org.forgerock.secrets.keys.SigningKey", + "java.text.SimpleDateFormat", + "java.time.Clock", + "java.time.Clock$FixedClock", + "java.time.Clock$OffsetClock", + "java.time.Clock$SystemClock", + "java.time.Clock$TickClock", + "java.time.temporal.ChronoUnit", + "java.util.UUID", + "java.util.Date" + ] + }, + "isHidden": false, + "languages": [ + "JAVASCRIPT" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/SCRIPTED_DECISION_NODE.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/SCRIPTED_DECISION_NODE.scripttype.json new file mode 100644 index 000000000..6b7cf1f1f --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/SCRIPTED_DECISION_NODE.scripttype.json @@ -0,0 +1,3173 @@ +{ + "scripttype": { + "SCRIPTED_DECISION_NODE": { + "_id": "SCRIPTED_DECISION_NODE", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "SCRIPTED_DECISION_NODE", + "allowLists": [ + "org.forgerock.util.promise.PromiseImpl", + "org.forgerock.util.promise.Promises$*", + "java.lang.Object", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Float", + "java.lang.Long", + "java.lang.Math", + "java.lang.Number", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.Void", + "java.util.AbstractMap$*", + "java.util.ArrayList", + "java.util.Collections", + "java.util.concurrent.TimeUnit", + "java.util.Collections$*", + "java.util.HashSet", + "java.util.HashMap$KeyIterator", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.TreeSet", + "java.security.KeyPair", + "java.security.KeyPairGenerator", + "java.security.KeyPairGenerator$*", + "java.security.PrivateKey", + "java.security.PublicKey", + "java.security.spec.X509EncodedKeySpec", + "java.security.spec.MGF1ParameterSpec", + "javax.crypto.SecretKeyFactory", + "javax.crypto.spec.OAEPParameterSpec", + "javax.crypto.spec.PBEKeySpec", + "javax.crypto.spec.PSource", + "javax.crypto.spec.PSource$*", + "org.forgerock.json.JsonValue", + "org.forgerock.util.promise.NeverThrowsException", + "java.util.concurrent.ExecutionException", + "java.util.concurrent.TimeoutException", + "org.forgerock.openam.core.rest.authn.callbackhandlers.*", + "com.sun.crypto.provider.PBKDF2KeyImpl", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "sun.security.ec.ECPrivateKeyImpl", + "ch.qos.logback.classic.Logger", + "com.sun.proxy.$*", + "java.util.Date", + "java.security.spec.InvalidKeySpecException", + "org.forgerock.openam.auth.nodes.VerifyTransactionsHelper" + ], + "bindings": [ + { + "elements": [ + { + "elementType": "method", + "name": "getIdpAttributes", + "parameters": [], + "returnType": "object" + }, + { + "elementType": "method", + "name": "getFlowInitiator", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "getSpAttributes", + "parameters": [], + "returnType": "object" + }, + { + "elementType": "method", + "name": "getAuthnRequest", + "parameters": [], + "returnType": "object" + }, + { + "elementType": "method", + "name": "getApplicationId", + "parameters": [], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.saml2.SAMLScriptedBindingObjectImpl", + "javaScriptType": "object", + "name": "samlApplication" + }, + { + "elements": [ + { + "elementType": "method", + "name": "send", + "parameters": [ + { + "javaScriptType": "string", + "name": "uri" + }, + { + "javaScriptType": "object", + "name": "requestOptions" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "send", + "parameters": [ + { + "javaScriptType": "string", + "name": "uri" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.wrappers.HttpClientScriptWrapper", + "javaScriptType": "object", + "name": "httpClient" + }, + { + "elements": [ + { + "elementType": "method", + "name": "innerJourney", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "name", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "identityResource", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "mustRun", + "parameters": [], + "returnType": "boolean" + } + ], + "javaClass": "org.forgerock.openam.auth.nodes.script.ScriptedTreeWrapper", + "javaScriptType": "object", + "name": "journey" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getName", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "info", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "trace", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "debug", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "error", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "array", + "name": "arguments" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + }, + { + "javaScriptType": "object", + "name": "t" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "msg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg1" + }, + { + "javaScriptType": "object", + "name": "arg2" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "warn", + "parameters": [ + { + "javaScriptType": "string", + "name": "format" + }, + { + "javaScriptType": "object", + "name": "arg" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "isTraceEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isDebugEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isErrorEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isInfoEnabled", + "parameters": [], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "isWarnEnabled", + "parameters": [], + "returnType": "boolean" + } + ], + "javaClass": "org.forgerock.openam.scripting.logging.ScriptedLoggerWrapper", + "javaScriptType": "object", + "name": "logger" + }, + { + "elements": [], + "javaScriptType": "object", + "name": "requestParameters" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getChoiceCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getNameCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getPasswordCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getHiddenValueCallbacks", + "parameters": [], + "returnType": "object" + }, + { + "elementType": "method", + "name": "getTextInputCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getStringAttributeInputCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getNumberAttributeInputCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getBooleanAttributeInputCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getConfirmationCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getLanguageCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getIdpCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getValidatedPasswordCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getValidatedUsernameCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getHttpCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getX509CertificateCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getConsentMappingCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getDeviceProfileCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getKbaCreateCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getSelectIdPCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "getTermsAndConditionsCallbacks", + "parameters": [], + "returnType": "array" + }, + { + "elementType": "method", + "name": "isEmpty", + "parameters": [], + "returnType": "boolean" + } + ], + "javaClass": "org.forgerock.openam.auth.nodes.script.ScriptedCallbacksWrapper", + "javaScriptType": "object", + "name": "callbacks" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getGenericSecret", + "parameters": [ + { + "javaScriptType": "string", + "name": "secretId" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "javaScriptType": "object", + "name": "secrets" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getIdentity", + "parameters": [ + { + "javaScriptType": "string", + "name": "userName" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.api.identity.ScriptedIdentityRepositoryScriptWrapper", + "javaScriptType": "object", + "name": "idRepository" + }, + { + "elements": [ + { + "elementType": "method", + "name": "getRequestProperties", + "parameters": [], + "returnType": "object" + }, + { + "elementType": "method", + "name": "getApplicationId", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "getClientProperties", + "parameters": [], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.oauth2.core.application.tree.OAuthScriptedBindingObjectImpl", + "javaScriptType": "object", + "name": "oauthApplication" + }, + { + "elements": [], + "javaScriptType": "object", + "name": "requestHeaders" + }, + { + "elements": [ + { + "elementType": "method", + "name": "generateJwt", + "parameters": [ + { + "javaScriptType": "object", + "name": "jwtData" + } + ], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.auth.nodes.script.JwtAssertionScriptWrapper", + "javaScriptType": "object", + "name": "jwtAssertion" + }, + { + "elements": [ + { + "elementType": "method", + "name": "remove", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "get", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "keys", + "parameters": [], + "returnType": "object" + }, + { + "elementType": "method", + "name": "getObject", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "isDefined", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "putShared", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + }, + { + "javaScriptType": "object", + "name": "value" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "putTransient", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + }, + { + "javaScriptType": "object", + "name": "value" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "mergeShared", + "parameters": [ + { + "javaScriptType": "object", + "name": "object" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "mergeTransient", + "parameters": [ + { + "javaScriptType": "object", + "name": "object" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.auth.node.api.NodeStateScriptWrapper", + "javaScriptType": "object", + "name": "nodeState" + }, + { + "javaScriptType": "boolean", + "name": "resumedFromSuspend" + }, + { + "elements": [ + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "randomUUID", + "parameters": [], + "returnType": "string" + }, + { + "elementType": "method", + "name": "getRandomValues", + "parameters": [ + { + "javaScriptType": "array", + "name": "array" + } + ], + "returnType": "array" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "sign", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "sign", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "digest", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "verify", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + }, + { + "javaScriptType": "array", + "name": "signature" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "verify", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + }, + { + "javaScriptType": "array", + "name": "signature" + } + ], + "returnType": "boolean" + }, + { + "elementType": "method", + "name": "encrypt", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "encrypt", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "decrypt", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "decrypt", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithmOptions" + }, + { + "javaScriptType": "array", + "name": "key" + }, + { + "javaScriptType": "array", + "name": "data" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "generateKey", + "parameters": [ + { + "javaScriptType": "object", + "name": "algorithm" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "generateKey", + "parameters": [ + { + "javaScriptType": "string", + "name": "algorithm" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.crypto.subtle.ScriptSubtleService", + "javaScriptType": "object", + "name": "subtle" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.crypto.ScriptCryptoService", + "javaScriptType": "object", + "name": "crypto" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "decode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "array", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "decodeToBytes", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "array" + }, + { + "elementType": "method", + "name": "btoa", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "atob", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptBase64Service", + "javaScriptType": "object", + "name": "base64" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "decode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "encode", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "btoa", + "parameters": [ + { + "javaScriptType": "string", + "name": "toEncode" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "atob", + "parameters": [ + { + "javaScriptType": "string", + "name": "toDecode" + } + ], + "returnType": "string" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptBase64UrlService", + "javaScriptType": "object", + "name": "base64url" + }, + { + "elementType": "field", + "elements": [ + { + "elementType": "method", + "name": "bytesToString", + "parameters": [ + { + "javaScriptType": "array", + "name": "bytes" + } + ], + "returnType": "string" + }, + { + "elementType": "method", + "name": "stringToBytes", + "parameters": [ + { + "javaScriptType": "string", + "name": "string" + } + ], + "returnType": "array" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptTypesService", + "javaScriptType": "object", + "name": "types" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptUtilityService", + "javaScriptType": "object", + "name": "utils" + }, + { + "elements": [ + { + "elementType": "method", + "name": "withIdentifiedUser", + "parameters": [ + { + "javaScriptType": "string", + "name": "username" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withIdentifiedAgent", + "parameters": [ + { + "javaScriptType": "string", + "name": "agentName" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "suspend", + "parameters": [ + { + "javaScriptType": "string", + "name": "callbackTextFormat" + }, + { + "javaScriptType": "object", + "name": "additionalLogic" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "suspend", + "parameters": [ + { + "javaScriptType": "string", + "name": "callbackTextFormat" + }, + { + "javaScriptType": "object", + "name": "additionalLogic" + }, + { + "javaScriptType": "number", + "name": "maximumSuspendDuration" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "suspend", + "parameters": [ + { + "javaScriptType": "string", + "name": "callbackTextFormat" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "goTo", + "parameters": [ + { + "javaScriptType": "string", + "name": "outcome" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withHeader", + "parameters": [ + { + "javaScriptType": "string", + "name": "header" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withDescription", + "parameters": [ + { + "javaScriptType": "string", + "name": "description" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withStage", + "parameters": [ + { + "javaScriptType": "string", + "name": "stage" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withErrorMessage", + "parameters": [ + { + "javaScriptType": "string", + "name": "errorMessage" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withLockoutMessage", + "parameters": [ + { + "javaScriptType": "string", + "name": "lockoutMessage" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "removeSessionProperty", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withMaxSessionTime", + "parameters": [ + { + "javaScriptType": "number", + "name": "maxSessionTime" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "withMaxIdleTime", + "parameters": [ + { + "javaScriptType": "number", + "name": "maxIdleTime" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "putSessionProperty", + "parameters": [ + { + "javaScriptType": "string", + "name": "key" + }, + { + "javaScriptType": "string", + "name": "value" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.auth.nodes.script.ActionWrapper", + "javaScriptType": "object", + "name": "action" + }, + { + "javaScriptType": "string", + "name": "scriptName" + }, + { + "javaScriptType": "string", + "name": "realm" + }, + { + "elements": [ + { + "elementType": "method", + "name": "validateJwtClaims", + "parameters": [ + { + "javaScriptType": "object", + "name": "jwtData" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.auth.nodes.script.JwtValidatorScriptWrapper", + "javaScriptType": "object", + "name": "jwtValidator" + }, + { + "elements": [ + { + "elementType": "method", + "name": "languageCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "language" + }, + { + "javaScriptType": "string", + "name": "country" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "idPCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "provider" + }, + { + "javaScriptType": "string", + "name": "clientId" + }, + { + "javaScriptType": "string", + "name": "redirectUri" + }, + { + "javaScriptType": "array", + "name": "scope" + }, + { + "javaScriptType": "string", + "name": "nonce" + }, + { + "javaScriptType": "string", + "name": "request" + }, + { + "javaScriptType": "string", + "name": "requestUri" + }, + { + "javaScriptType": "array", + "name": "acrValues" + }, + { + "javaScriptType": "boolean", + "name": "requestNativeAppForUserInfo" + }, + { + "javaScriptType": "string", + "name": "token" + }, + { + "javaScriptType": "string", + "name": "tokenType" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "idPCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "provider" + }, + { + "javaScriptType": "string", + "name": "clientId" + }, + { + "javaScriptType": "string", + "name": "redirectUri" + }, + { + "javaScriptType": "array", + "name": "scope" + }, + { + "javaScriptType": "string", + "name": "nonce" + }, + { + "javaScriptType": "string", + "name": "request" + }, + { + "javaScriptType": "string", + "name": "requestUri" + }, + { + "javaScriptType": "array", + "name": "acrValues" + }, + { + "javaScriptType": "boolean", + "name": "requestNativeAppForUserInfo" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "httpCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "authRHeader" + }, + { + "javaScriptType": "string", + "name": "negoName" + }, + { + "javaScriptType": "string", + "name": "negoValue" + }, + { + "javaScriptType": "number", + "name": "errorCode" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "httpCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "authorizationHeader" + }, + { + "javaScriptType": "string", + "name": "negotiationHeader" + }, + { + "javaScriptType": "string", + "name": "errorCode" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "x509CertificateCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "x509CertificateCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "object", + "name": "certificate" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "x509CertificateCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "object", + "name": "certificate" + }, + { + "javaScriptType": "boolean", + "name": "requestSignature" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "consentMappingCallback", + "parameters": [ + { + "javaScriptType": "object", + "name": "config" + }, + { + "javaScriptType": "string", + "name": "message" + }, + { + "javaScriptType": "boolean", + "name": "isRequired" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "consentMappingCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "displayName" + }, + { + "javaScriptType": "string", + "name": "icon" + }, + { + "javaScriptType": "string", + "name": "accessLevel" + }, + { + "javaScriptType": "array", + "name": "titles" + }, + { + "javaScriptType": "string", + "name": "message" + }, + { + "javaScriptType": "boolean", + "name": "isRequired" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "deviceProfileCallback", + "parameters": [ + { + "javaScriptType": "boolean", + "name": "metadata" + }, + { + "javaScriptType": "boolean", + "name": "location" + }, + { + "javaScriptType": "string", + "name": "message" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "kbaCreateCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "array", + "name": "predefinedQuestions" + }, + { + "javaScriptType": "boolean", + "name": "allowUserDefinedQuestions" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "selectIdPCallback", + "parameters": [ + { + "javaScriptType": "object", + "name": "providers" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "termsAndConditionsCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "version" + }, + { + "javaScriptType": "string", + "name": "terms" + }, + { + "javaScriptType": "string", + "name": "createDate" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "suspendedTextOutputCallback", + "parameters": [ + { + "javaScriptType": "number", + "name": "messageType" + }, + { + "javaScriptType": "string", + "name": "message" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "textInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "textInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "string", + "name": "defaultText" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "scriptTextOutputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "message" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "metadataCallback", + "parameters": [ + { + "javaScriptType": "object", + "name": "outputValue" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "stringAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "string", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + }, + { + "javaScriptType": "array", + "name": "failedPolicies" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "stringAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "string", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "stringAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "string", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "array", + "name": "failedPolicies" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "stringAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "string", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "numberAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "number", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + }, + { + "javaScriptType": "array", + "name": "failedPolicies" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "numberAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "number", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "numberAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "number", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "array", + "name": "failedPolicies" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "numberAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "number", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "booleanAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "boolean", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + }, + { + "javaScriptType": "array", + "name": "failedPolicies" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "booleanAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "boolean", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "array", + "name": "failedPolicies" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "booleanAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "boolean", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "booleanAttributeInputCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "name" + }, + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "boolean", + "name": "value" + }, + { + "javaScriptType": "boolean", + "name": "required" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "textOutputCallback", + "parameters": [ + { + "javaScriptType": "number", + "name": "messageType" + }, + { + "javaScriptType": "string", + "name": "message" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "confirmationCallback", + "parameters": [ + { + "javaScriptType": "number", + "name": "messageType" + }, + { + "javaScriptType": "number", + "name": "optionType" + }, + { + "javaScriptType": "number", + "name": "defaultOption" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "confirmationCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "number", + "name": "messageType" + }, + { + "javaScriptType": "array", + "name": "options" + }, + { + "javaScriptType": "number", + "name": "defaultOption" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "confirmationCallback", + "parameters": [ + { + "javaScriptType": "number", + "name": "messageType" + }, + { + "javaScriptType": "array", + "name": "options" + }, + { + "javaScriptType": "number", + "name": "defaultOption" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "confirmationCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "number", + "name": "messageType" + }, + { + "javaScriptType": "number", + "name": "optionType" + }, + { + "javaScriptType": "number", + "name": "defaultOption" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "choiceCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "array", + "name": "choices" + }, + { + "javaScriptType": "number", + "name": "defaultChoice" + }, + { + "javaScriptType": "boolean", + "name": "multipleSelectionsAllowed" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "redirectCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "redirectUrl" + }, + { + "javaScriptType": "object", + "name": "redirectData" + }, + { + "javaScriptType": "string", + "name": "method" + }, + { + "javaScriptType": "boolean", + "name": "setTrackingCookie" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "redirectCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "redirectUrl" + }, + { + "javaScriptType": "object", + "name": "redirectData" + }, + { + "javaScriptType": "string", + "name": "method" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "redirectCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "redirectUrl" + }, + { + "javaScriptType": "object", + "name": "redirectData" + }, + { + "javaScriptType": "string", + "name": "method" + }, + { + "javaScriptType": "string", + "name": "statusParameter" + }, + { + "javaScriptType": "string", + "name": "redirectBackUrlCookie" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "redirectCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "redirectUrl" + }, + { + "javaScriptType": "object", + "name": "redirectData" + }, + { + "javaScriptType": "string", + "name": "method" + }, + { + "javaScriptType": "string", + "name": "statusParameter" + }, + { + "javaScriptType": "string", + "name": "redirectBackUrlCookie" + }, + { + "javaScriptType": "boolean", + "name": "setTrackingCookie" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "pollingWaitCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "waitTime" + }, + { + "javaScriptType": "string", + "name": "message" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "hiddenValueCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "value" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "nameCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "nameCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "string", + "name": "defaultName" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "passwordCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "boolean", + "name": "echoOn" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "validatedUsernameCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "validatedUsernameCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + }, + { + "javaScriptType": "array", + "name": "failedPolicies" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "validatedPasswordCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "boolean", + "name": "echoOn" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + }, + { + "javaScriptType": "array", + "name": "failedPolicies" + } + ], + "returnType": "void" + }, + { + "elementType": "method", + "name": "validatedPasswordCallback", + "parameters": [ + { + "javaScriptType": "string", + "name": "prompt" + }, + { + "javaScriptType": "boolean", + "name": "echoOn" + }, + { + "javaScriptType": "object", + "name": "policies" + }, + { + "javaScriptType": "boolean", + "name": "validateOnly" + } + ], + "returnType": "void" + } + ], + "javaClass": "org.forgerock.openam.auth.nodes.script.ScriptedCallbacksBuilder", + "javaScriptType": "object", + "name": "callbacksBuilder" + }, + { + "elements": [ + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "update", + "parameters": [ + { + "javaScriptType": "string", + "name": "id" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "value" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "read", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "delete", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "action", + "parameters": [ + { + "javaScriptType": "string", + "name": "resource" + }, + { + "javaScriptType": "string", + "name": "actionName" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "query", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "query", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "create", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "newResourceId" + }, + { + "javaScriptType": "object", + "name": "content" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + }, + { + "javaScriptType": "object", + "name": "params" + }, + { + "javaScriptType": "array", + "name": "fields" + } + ], + "returnType": "object" + }, + { + "elementType": "method", + "name": "patch", + "parameters": [ + { + "javaScriptType": "string", + "name": "resourceName" + }, + { + "javaScriptType": "string", + "name": "rev" + }, + { + "javaScriptType": "array", + "name": "patch" + }, + { + "javaScriptType": "object", + "name": "params" + } + ], + "returnType": "object" + } + ], + "javaClass": "org.forgerock.openam.scripting.wrappers.IdmIntegrationServiceScriptWrapper", + "javaScriptType": "object", + "name": "openidm" + }, + { + "elements": [], + "javaScriptType": "object", + "name": "requestCookies" + }, + { + "javaScriptType": "string", + "name": "cookieName" + }, + { + "elements": [ + { + "elementType": "method", + "name": "evaluate", + "parameters": [ + { + "javaScriptType": "object", + "name": "subject" + }, + { + "javaScriptType": "string", + "name": "application" + }, + { + "javaScriptType": "array", + "name": "resourceNames" + }, + { + "javaScriptType": "object", + "name": "environment" + } + ], + "returnType": "array" + } + ], + "javaClass": "org.forgerock.openam.scripting.bindings.ScriptPolicyService", + "javaScriptType": "object", + "name": "policy" + } + ], + "evaluatorVersions": { + "JAVASCRIPT": [ + "2.0" + ] + } + }, + "defaultScript": "11e1a3c0-038b-4c16-956a-6c9d89328cff", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.lang.Thread", + "java.lang.invoke.*", + "java.lang.reflect.*", + "java.security.AccessController" + ], + "coreThreads": { + "$int": "&{scripted.decision.node.script.context.core.threads|&{authentication.tree.decision.node.script.context.core.threads|50}}" + }, + "idleTimeout": 60, + "maxThreads": { + "$int": "&{scripted.decision.node.script.context.max.threads|&{authentication.tree.decision.node.script.context.max.threads|100}}" + }, + "propertyNamePrefix": "esv.", + "queueSize": { + "$int": "&{scripted.decision.node.script.context.queue.size|&{authentication.tree.decision.node.script.context.queue.size|50}}" + }, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "jdk.proxy*", + "org.mozilla.javascript.WrappedException", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "java.util.List", + "java.util.Map", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "org.mozilla.javascript.JavaScriptException" + ] + }, + "isHidden": false, + "languages": [ + "JAVASCRIPT" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/SOCIAL_IDP_PROFILE_TRANSFORMATION.scripttype.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/SOCIAL_IDP_PROFILE_TRANSFORMATION.scripttype.json new file mode 100644 index 000000000..88021dcb4 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/scripttype/SOCIAL_IDP_PROFILE_TRANSFORMATION.scripttype.json @@ -0,0 +1,346 @@ +{ + "scripttype": { + "SOCIAL_IDP_PROFILE_TRANSFORMATION": { + "_id": "SOCIAL_IDP_PROFILE_TRANSFORMATION", + "_type": { + "_id": "contexts", + "collection": true, + "name": "scriptContext" + }, + "context": { + "_id": "SOCIAL_IDP_PROFILE_TRANSFORMATION", + "allowLists": [ + "com.sun.identity.idm.AMIdentity", + "com.sun.identity.shared.debug.Debug", + "groovy.json.JsonSlurper", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Character", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.Number", + "java.lang.Object", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.util.AbstractMap$SimpleImmutableEntry", + "java.util.ArrayList$Itr", + "java.util.ArrayList", + "java.util.Collections$1", + "java.util.Collections$EmptyList", + "java.util.Collections$SingletonList", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$Node", + "java.util.HashMap", + "java.util.HashSet", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashMap", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.TreeMap", + "java.util.TreeSet", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.http.client.*", + "org.forgerock.http.protocol.Entity", + "org.forgerock.http.protocol.Request", + "org.forgerock.http.protocol.Response", + "org.forgerock.json.JsonValue", + "org.forgerock.oauth2.core.UserInfoClaims", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.shared.security.crypto.CertificateService", + "org.forgerock.openidconnect.ssoprovider.OpenIdConnectSSOToken", + "org.forgerock.util.promise.PromiseImpl", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "java.util.List", + "java.util.Map", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "org.forgerock.oauth.clients.oidc.Claim", + "java.util.Locale", + "org.mozilla.javascript.JavaScriptException", + "sun.security.ec.ECPrivateKeyImpl", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.opendj.ldap.Dn" + ], + "bindings": [], + "evaluatorVersions": { + "GROOVY": [ + "1.0" + ], + "JAVASCRIPT": [ + "1.0" + ] + } + }, + "defaultScript": "1d475815-72cb-42eb-aafd-4026989d28a7", + "engineConfiguration": { + "_id": "engineConfiguration", + "_type": { + "_id": "engineConfiguration", + "collection": false, + "name": "Scripting engine configuration" + }, + "blackList": [ + "java.lang.Class", + "java.lang.Thread", + "java.lang.invoke.*", + "java.lang.reflect.*", + "java.security.AccessController" + ], + "coreThreads": { + "$int": "&{social.idp.profile.transformation.script.context.core.threads|10}" + }, + "idleTimeout": 60, + "maxThreads": { + "$int": "&{social.idp.profile.transformation.script.context.max.threads|100}" + }, + "propertyNamePrefix": "esv.", + "queueSize": { + "$int": "&{social.idp.profile.transformation.script.context.queue.size|50}" + }, + "serverTimeout": 0, + "useSecurityManager": true, + "whiteList": [ + "com.google.common.collect.ImmutableList", + "com.google.common.collect.Sets$1", + "com.iplanet.am.sdk.AMHashMap", + "com.iplanet.sso.providers.dpro.SSOTokenIDImpl", + "com.iplanet.sso.providers.dpro.SessionSsoToken", + "com.sun.identity.authentication.callbacks.HiddenValueCallback", + "com.sun.identity.authentication.callbacks.ReCaptchaCallback", + "com.sun.identity.authentication.callbacks.ScriptTextOutputCallback", + "com.sun.identity.authentication.spi.HttpCallback", + "com.sun.identity.authentication.spi.IdentifiableCallback", + "com.sun.identity.authentication.spi.MetadataCallback", + "com.sun.identity.authentication.spi.PagePropertiesCallback", + "com.sun.identity.authentication.spi.RedirectCallback", + "com.sun.identity.authentication.spi.X509CertificateCallback", + "com.sun.identity.common.CaseInsensitiveHashMap", + "com.sun.identity.common.CaseInsensitiveHashMap$Entry", + "com.sun.identity.idm.AMIdentity", + "com.sun.identity.idm.IdType", + "com.sun.identity.saml2.assertion.impl.AttributeImpl", + "com.sun.identity.saml2.common.SAML2Exception", + "com.sun.identity.saml2.plugins.scripted.IdpAttributeMapperScriptHelper", + "com.sun.identity.shared.debug.Debug", + "groovy.json.JsonSlurper", + "groovy.json.StringEscapeUtils", + "groovy.json.internal.LazyMap", + "java.io.ByteArrayInputStream", + "java.io.ByteArrayOutputStream", + "java.io.UnsupportedEncodingException", + "java.lang.Boolean", + "java.lang.Byte", + "java.lang.Character", + "java.lang.Character$Subset", + "java.lang.Character$UnicodeBlock", + "java.lang.Double", + "java.lang.Float", + "java.lang.Integer", + "java.lang.Long", + "java.lang.Math", + "java.lang.NullPointerException", + "java.lang.Number", + "java.lang.Object", + "java.lang.RuntimeException", + "java.lang.SecurityException", + "java.lang.Short", + "java.lang.StrictMath", + "java.lang.String", + "java.lang.Void", + "java.math.BigDecimal", + "java.math.BigInteger", + "java.net.URI", + "java.security.KeyFactory", + "java.security.KeyPair", + "java.security.KeyPairGenerator", + "java.security.KeyPairGenerator$*", + "java.security.MessageDigest", + "java.security.MessageDigest$Delegate", + "java.security.MessageDigest$Delegate$CloneableDelegate", + "java.security.NoSuchAlgorithmException", + "java.security.PrivateKey", + "java.security.PublicKey", + "java.security.cert.CertificateFactory", + "java.security.cert.X509Certificate", + "java.security.spec.MGF1ParameterSpec", + "java.security.spec.PKCS8EncodedKeySpec", + "java.security.spec.X509EncodedKeySpec", + "java.text.SimpleDateFormat", + "java.time.Clock", + "java.time.Clock$FixedClock", + "java.time.Clock$OffsetClock", + "java.time.Clock$SystemClock", + "java.time.Clock$TickClock", + "java.time.temporal.ChronoUnit", + "java.util.AbstractMap$*", + "java.util.ArrayList", + "java.util.ArrayList$Itr", + "java.util.Arrays", + "java.util.Collections", + "java.util.Collections$*", + "java.util.Date", + "java.util.HashMap", + "java.util.HashMap$Entry", + "java.util.HashMap$KeyIterator", + "java.util.HashMap$KeySet", + "java.util.HashMap$Node", + "java.util.HashSet", + "java.util.LinkedHashMap", + "java.util.LinkedHashMap$Entry", + "java.util.LinkedHashMap$LinkedEntryIterator", + "java.util.LinkedHashMap$LinkedEntrySet", + "java.util.LinkedHashMap$LinkedKeySet", + "java.util.LinkedHashSet", + "java.util.LinkedList", + "java.util.List", + "java.util.Locale", + "java.util.Map", + "java.util.TreeMap", + "java.util.TreeSet", + "java.util.UUID", + "javax.crypto.Cipher", + "javax.crypto.Mac", + "javax.crypto.spec.IvParameterSpec", + "javax.crypto.spec.OAEPParameterSpec", + "javax.crypto.spec.PSource", + "javax.crypto.spec.PSource$*", + "javax.crypto.spec.SecretKeySpec", + "javax.security.auth.callback.ChoiceCallback", + "javax.security.auth.callback.ConfirmationCallback", + "javax.security.auth.callback.LanguageCallback", + "javax.security.auth.callback.NameCallback", + "javax.security.auth.callback.PasswordCallback", + "javax.security.auth.callback.TextInputCallback", + "javax.security.auth.callback.TextOutputCallback", + "org.apache.groovy.json.internal.LazyMap", + "org.codehaus.groovy.runtime.GStringImpl", + "org.codehaus.groovy.runtime.ScriptBytecodeAdapter", + "org.forgerock.guice.core.IdentityProvider", + "org.forgerock.guice.core.InjectorHolder", + "org.forgerock.http.Client", + "org.forgerock.http.Context", + "org.forgerock.http.Handler", + "org.forgerock.http.client.*", + "org.forgerock.http.context.RootContext", + "org.forgerock.http.header.*", + "org.forgerock.http.header.authorization.*", + "org.forgerock.http.protocol.*", + "org.forgerock.json.JsonValue", + "org.forgerock.json.jose.builders.EncryptedJwtBuilder", + "org.forgerock.json.jose.builders.EncryptedThenSignedJwtBuilder", + "org.forgerock.json.jose.builders.JweHeaderBuilder", + "org.forgerock.json.jose.builders.JwsHeaderBuilder", + "org.forgerock.json.jose.builders.JwtBuilderFactory", + "org.forgerock.json.jose.builders.SignedJwtBuilderImpl", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtBuilder", + "org.forgerock.json.jose.builders.SignedThenEncryptedJwtHeaderBuilder", + "org.forgerock.json.jose.jwe.EncryptedJwt", + "org.forgerock.json.jose.jwe.EncryptionMethod", + "org.forgerock.json.jose.jwe.JweAlgorithm", + "org.forgerock.json.jose.jwe.SignedThenEncryptedJwt", + "org.forgerock.json.jose.jwk.JWKSet", + "org.forgerock.json.jose.jwk.RsaJWK", + "org.forgerock.json.jose.jws.EncryptedThenSignedJwt", + "org.forgerock.json.jose.jws.JwsAlgorithm", + "org.forgerock.json.jose.jws.JwsHeader", + "org.forgerock.json.jose.jws.SignedEncryptedJwt", + "org.forgerock.json.jose.jws.SignedJwt", + "org.forgerock.json.jose.jws.SigningManager", + "org.forgerock.json.jose.jws.handlers.HmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.RSASigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretHmacSigningHandler", + "org.forgerock.json.jose.jws.handlers.SecretRSASigningHandler", + "org.forgerock.json.jose.jwt.JwtClaimsSet", + "org.forgerock.macaroons.Macaroon", + "org.forgerock.oauth.clients.oidc.Claim", + "org.forgerock.oauth2.core.GrantType", + "org.forgerock.oauth2.core.StatefulAccessToken", + "org.forgerock.oauth2.core.UserInfoClaims", + "org.forgerock.oauth2.core.exceptions.InvalidRequestException", + "org.forgerock.oauth2.core.tokenexchange.ExchangeableToken", + "org.forgerock.openam.auth.node.api.Action", + "org.forgerock.openam.auth.node.api.Action$ActionBuilder", + "org.forgerock.openam.auth.node.api.NodeState", + "org.forgerock.openam.auth.node.api.SuspendedTextOutputCallback", + "org.forgerock.openam.auth.nodes.IdentityProvider", + "org.forgerock.openam.auth.nodes.InjectorHolder", + "org.forgerock.openam.authentication.callbacks.AbstractValidatedCallback", + "org.forgerock.openam.authentication.callbacks.AttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.BooleanAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.ConsentMappingCallback", + "org.forgerock.openam.authentication.callbacks.DeviceProfileCallback", + "org.forgerock.openam.authentication.callbacks.IdPCallback", + "org.forgerock.openam.authentication.callbacks.KbaCreateCallback", + "org.forgerock.openam.authentication.callbacks.NumberAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.PollingWaitCallback", + "org.forgerock.openam.authentication.callbacks.SelectIdPCallback", + "org.forgerock.openam.authentication.callbacks.StringAttributeInputCallback", + "org.forgerock.openam.authentication.callbacks.TermsAndConditionsCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedPasswordCallback", + "org.forgerock.openam.authentication.callbacks.ValidatedUsernameCallback", + "org.forgerock.openam.authentication.modules.scripted.*", + "org.forgerock.openam.core.rest.authn.callbackhandlers.*", + "org.forgerock.openam.core.rest.devices.deviceprint.DeviceIdDao", + "org.forgerock.openam.core.rest.devices.profile.DeviceProfilesDao", + "org.forgerock.openam.oauth2.OpenAMAccessToken", + "org.forgerock.openam.oauth2.token.grantset.Authorization$ModifiedAccessToken", + "org.forgerock.openam.oauth2.token.macaroon.MacaroonAccessToken", + "org.forgerock.openam.oauth2.token.stateless.StatelessAccessToken", + "org.forgerock.openam.scripting.api.PrefixedScriptPropertyResolver", + "org.forgerock.openam.scripting.api.ScriptedIdentity", + "org.forgerock.openam.scripting.api.ScriptedSession", + "org.forgerock.openam.scripting.api.http.GroovyHttpClient", + "org.forgerock.openam.scripting.api.http.JavaScriptHttpClient", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentity", + "org.forgerock.openam.scripting.api.identity.ScriptedIdentityRepository", + "org.forgerock.openam.scripting.api.secrets.ScriptedSecrets", + "org.forgerock.openam.scripting.api.secrets.Secret", + "org.forgerock.openam.scripting.idrepo.ScriptIdentityRepository", + "org.forgerock.openam.shared.security.ThreadLocalSecureRandom", + "org.forgerock.openidconnect.Claim", + "org.forgerock.openidconnect.OpenIdConnectToken", + "org.forgerock.openidconnect.ssoprovider.OpenIdConnectSSOToken", + "org.forgerock.secrets.SecretBuilder", + "org.forgerock.secrets.keys.SigningKey", + "org.forgerock.secrets.keys.VerificationKey", + "org.forgerock.util.encode.Base64", + "org.forgerock.util.encode.Base64url", + "org.forgerock.util.encode.Hex", + "org.forgerock.util.promise.NeverThrowsException", + "org.forgerock.util.promise.Promise", + "org.forgerock.util.promise.PromiseImpl", + "org.mozilla.javascript.ConsString", + "org.mozilla.javascript.JavaScriptException", + "org.mozilla.javascript.WrappedException", + "sun.security.ec.ECPrivateKeyImpl", + "sun.security.rsa.RSAPrivateCrtKeyImpl", + "sun.security.rsa.RSAPublicKeyImpl", + "sun.security.x509.X500Name", + "sun.security.x509.X509CertImpl", + "java.util.Collections$UnmodifiableRandomAccessList", + "java.util.Collections$UnmodifiableCollection$1", + "org.forgerock.opendj.ldap.Rdn", + "org.forgerock.opendj.ldap.Dn", + "org.forgerock.openam.auth.nodes.VerifyTransactionsHelper" + ] + }, + "isHidden": false, + "languages": [ + "JAVASCRIPT", + "GROOVY" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/serverInformation/information.serverInformation.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/serverInformation/information.serverInformation.json new file mode 100644 index 000000000..32647486f --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/serverInformation/information.serverInformation.json @@ -0,0 +1,36 @@ +{ + "serverInformation": { + "*": { + "_id": "*", + "cloudOnlyFeaturesEnabled": true, + "cookieName": "6ac6499e9da2071", + "domains": [ + "openam-frodo-dev.forgeblocks.com" + ], + "fileBasedConfiguration": true, + "forgotPassword": "false", + "forgotUsername": "false", + "kbaEnabled": "false", + "lang": "en-US", + "protectedUserAttributes": [ + "telephoneNumber", + "mail" + ], + "realm": "/", + "referralsEnabled": "false", + "secureCookie": true, + "selfRegistration": "false", + "socialImplementations": [], + "successfulUserRegistrationDestination": "default", + "userIdAttributes": [ + "fr-idm-uuid" + ], + "xuiUserSessionValidationEnabled": true, + "zeroPageLogin": { + "allowedWithoutReferer": true, + "enabled": false, + "refererWhitelist": [] + } + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/serverVersion/version.serverVersion.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/serverVersion/version.serverVersion.json new file mode 100644 index 000000000..b28f4789a --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/serverVersion/version.serverVersion.json @@ -0,0 +1,11 @@ +{ + "serverVersion": { + "version": { + "_id": "version", + "date": "2025-October-17 10:30", + "fullVersion": "ForgeRock Access Management 8.1.0-SNAPSHOT Build a810c4bdfeb5ac15d4a1cabcb6767429314609f6 (2025-October-17 10:30)", + "revision": "a810c4bdfeb5ac15d4a1cabcb6767429314609f6", + "version": "8.1.0-SNAPSHOT" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/service/CorsService.service.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/service/CorsService.service.json new file mode 100644 index 000000000..d81cc9a43 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/service/CorsService.service.json @@ -0,0 +1,15 @@ +{ + "service": { + "CorsService": { + "_id": "", + "_type": { + "_id": "CorsService", + "collection": false, + "name": "CORS Service" + }, + "enabled": true, + "location": "global", + "nextDescendents": [] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/service/dashboard.service.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/service/dashboard.service.json new file mode 100644 index 000000000..3ad929306 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/service/dashboard.service.json @@ -0,0 +1,60 @@ +{ + "service": { + "dashboard": { + "_id": "", + "_type": { + "_id": "dashboard", + "collection": false, + "name": "Dashboard" + }, + "defaults": { + "assignedDashboard": [] + }, + "location": "global", + "nextDescendents": [ + { + "_id": "Google", + "_type": { + "_id": "instances", + "collection": true, + "name": "instance" + }, + "className": "SAML2ApplicationClass", + "displayName": "Google", + "icfIdentifier": "idm magic 34", + "icon": "images/logos/googleplus.png", + "login": "http://www.google.com", + "name": "Google" + }, + { + "_id": "SalesForce", + "_type": { + "_id": "instances", + "collection": true, + "name": "instance" + }, + "className": "SAML2ApplicationClass", + "displayName": "SalesForce", + "icfIdentifier": "idm magic 12", + "icon": "images/logos/salesforce.png", + "login": "http://www.salesforce.com", + "name": "SalesForce" + }, + { + "_id": "ZenDesk", + "_type": { + "_id": "instances", + "collection": true, + "name": "instance" + }, + "className": "SAML2ApplicationClass", + "displayName": "ZenDesk", + "icfIdentifier": "idm magic 56", + "icon": "images/logos/zendesk.png", + "login": "http://www.ZenDesk.com", + "name": "ZenDesk" + } + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/sync/extract_script_test.sync.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/sync/extract_script_test.sync.json new file mode 100644 index 000000000..0ffa7d44e --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/sync/extract_script_test.sync.json @@ -0,0 +1,95 @@ +{ + "_id": "sync/extract_script_test", + "consentRequired": false, + "correlationScript": { + "globals": {}, + "source": "file://extract_script_test.sync.scripts/correlationScript.script.js", + "type": "text/javascript" + }, + "displayName": "extract_script_test", + "icon": null, + "name": "extract_script_test", + "onCreate": { + "globals": {}, + "source": "file://extract_script_test.sync.scripts/onCreate.script.js", + "type": "text/javascript" + }, + "policies": [ + { + "action": "ASYNC", + "situation": "ABSENT" + }, + { + "action": "ASYNC", + "situation": "ALL_GONE" + }, + { + "action": "ASYNC", + "situation": "AMBIGUOUS" + }, + { + "action": "ASYNC", + "situation": "CONFIRMED" + }, + { + "action": "ASYNC", + "situation": "FOUND" + }, + { + "action": "ASYNC", + "situation": "FOUND_ALREADY_LINKED" + }, + { + "action": "ASYNC", + "situation": "LINK_ONLY" + }, + { + "action": "ASYNC", + "situation": "MISSING" + }, + { + "action": "ASYNC", + "situation": "SOURCE_IGNORED" + }, + { + "action": "ASYNC", + "situation": "SOURCE_MISSING" + }, + { + "action": "ASYNC", + "situation": "TARGET_IGNORED" + }, + { + "action": "ASYNC", + "situation": "UNASSIGNED" + }, + { + "action": "ASYNC", + "situation": "UNQUALIFIED" + } + ], + "properties": [ + { + "source": "", + "target": "name", + "transform": { + "globals": {}, + "source": "file://extract_script_test.sync.scripts/properties.SOURCE.name.transform.script.groovy", + "type": "groovy" + } + } + ], + "result": { + "globals": {}, + "source": "file://extract_script_test.sync.scripts/result.script.js", + "type": "text/javascript" + }, + "source": "managed/alpha_user", + "syncAfter": [], + "target": "managed/alpha_group", + "validSource": { + "globals": {}, + "source": "file://extract_script_test.sync.scripts/validSource.script.js", + "type": "text/javascript" + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/sync/extract_script_test.sync.scripts/correlationScript.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/global/sync/extract_script_test.sync.scripts/correlationScript.script.js new file mode 100644 index 000000000..b6152bc88 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/sync/extract_script_test.sync.scripts/correlationScript.script.js @@ -0,0 +1 @@ +//extract script test UPDATED CORRELATION QUERY diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/sync/extract_script_test.sync.scripts/onCreate.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/global/sync/extract_script_test.sync.scripts/onCreate.script.js new file mode 100644 index 000000000..60da68e48 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/sync/extract_script_test.sync.scripts/onCreate.script.js @@ -0,0 +1 @@ +//test UPDATED ONCREATED diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/sync/extract_script_test.sync.scripts/properties.SOURCE.name.transform.script.groovy b/test/e2e/exports/all-separate-extracted-script/cloud/global/sync/extract_script_test.sync.scripts/properties.SOURCE.name.transform.script.groovy new file mode 100644 index 000000000..b4f832f8c --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/sync/extract_script_test.sync.scripts/properties.SOURCE.name.transform.script.groovy @@ -0,0 +1 @@ +//groovy EXTRACT SCRIPT test UPDATED diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/sync/extract_script_test.sync.scripts/result.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/global/sync/extract_script_test.sync.scripts/result.script.js new file mode 100644 index 000000000..3ce191e0f --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/sync/extract_script_test.sync.scripts/result.script.js @@ -0,0 +1 @@ +//tests UPDATED RESULT SCRIPT diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/sync/extract_script_test.sync.scripts/validSource.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/global/sync/extract_script_test.sync.scripts/validSource.script.js new file mode 100644 index 000000000..84a29b036 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/sync/extract_script_test.sync.scripts/validSource.script.js @@ -0,0 +1 @@ +//extract script test UPDATED VALIDSOURCE diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/global/sync/sync.idm.json b/test/e2e/exports/all-separate-extracted-script/cloud/global/sync/sync.idm.json new file mode 100644 index 000000000..727c06fca --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/global/sync/sync.idm.json @@ -0,0 +1,10 @@ +{ + "idm": { + "sync": { + "_id": "sync", + "mappings": [ + "file://extract_script_test.sync.json" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/applicationTypes/iPlanetAMWebAgentService.applicationTypes.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/applicationTypes/iPlanetAMWebAgentService.applicationTypes.json new file mode 100644 index 000000000..4cfb431a6 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/applicationTypes/iPlanetAMWebAgentService.applicationTypes.json @@ -0,0 +1,21 @@ +{ + "applicationTypes": { + "iPlanetAMWebAgentService": { + "_id": "iPlanetAMWebAgentService", + "actions": { + "DELETE": true, + "GET": true, + "HEAD": true, + "OPTIONS": true, + "PATCH": true, + "POST": true, + "PUT": true + }, + "applicationClassName": "com.sun.identity.entitlement.Application", + "name": "iPlanetAMWebAgentService", + "resourceComparator": "com.sun.identity.entitlement.URLResourceName", + "saveIndex": "org.forgerock.openam.entitlement.indextree.TreeSaveIndex", + "searchIndex": "org.forgerock.openam.entitlement.indextree.TreeSearchIndex" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/applicationTypes/sunAMDelegationService.applicationTypes.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/applicationTypes/sunAMDelegationService.applicationTypes.json new file mode 100644 index 000000000..81983ac8d --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/applicationTypes/sunAMDelegationService.applicationTypes.json @@ -0,0 +1,17 @@ +{ + "applicationTypes": { + "sunAMDelegationService": { + "_id": "sunAMDelegationService", + "actions": { + "DELEGATE": true, + "MODIFY": true, + "READ": true + }, + "applicationClassName": "com.sun.identity.entitlement.Application", + "name": "sunAMDelegationService", + "resourceComparator": "com.sun.identity.entitlement.RegExResourceName", + "saveIndex": "com.sun.identity.entitlement.opensso.DelegationResourceNameIndexGenerator", + "searchIndex": "com.sun.identity.entitlement.opensso.DelegationResourceNameSplitter" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/applicationTypes/umaApplicationType.applicationTypes.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/applicationTypes/umaApplicationType.applicationTypes.json new file mode 100644 index 000000000..fc804fd08 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/applicationTypes/umaApplicationType.applicationTypes.json @@ -0,0 +1,13 @@ +{ + "applicationTypes": { + "umaApplicationType": { + "_id": "umaApplicationType", + "actions": {}, + "applicationClassName": "com.sun.identity.entitlement.Application", + "name": "umaApplicationType", + "resourceComparator": "org.forgerock.openam.uma.UmaPolicyResourceMatcher", + "saveIndex": "org.forgerock.openam.uma.UmaPolicySaveIndex", + "searchIndex": "org.forgerock.openam.uma.UmaPolicySearchIndex" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authentication/root-alpha.authentication.settings.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authentication/root-alpha.authentication.settings.json new file mode 100644 index 000000000..b41693a04 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authentication/root-alpha.authentication.settings.json @@ -0,0 +1,69 @@ +{ + "authentication": { + "_id": "", + "_type": { + "_id": "EMPTY", + "collection": false, + "name": "Core" + }, + "accountlockout": { + "lockoutDuration": 0, + "lockoutDurationMultiplier": 1, + "lockoutWarnUserCount": 0, + "loginFailureCount": 5, + "loginFailureDuration": 300, + "loginFailureLockoutMode": false, + "storeInvalidAttemptsInDataStore": true + }, + "core": { + "adminAuthModule": "Login", + "orgConfig": "Login" + }, + "general": { + "defaultAuthLevel": 0, + "identityType": [ + "agent", + "user" + ], + "locale": "en_US", + "statelessSessionsEnabled": false, + "twoFactorRequired": false, + "userStatusCallbackPlugins": [] + }, + "postauthprocess": { + "loginFailureUrl": [], + "loginPostProcessClass": [], + "loginSuccessUrl": [ + "/enduser/?realm=/alpha" + ], + "userAttributeSessionMapping": [], + "usernameGeneratorClass": "com.sun.identity.authentication.spi.DefaultUserIDGenerator", + "usernameGeneratorEnabled": true + }, + "security": { + "addClearSiteDataHeader": true, + "keyAlias": "test", + "moduleBasedAuthEnabled": false, + "sharedSecret": { + "$string": "&{am.authentication.shared.secret}" + }, + "zeroPageLoginAllowedWithoutReferrer": true, + "zeroPageLoginEnabled": false, + "zeroPageLoginReferrerWhiteList": [] + }, + "trees": { + "authenticationSessionsMaxDuration": 5, + "authenticationSessionsStateManagement": "JWT", + "authenticationSessionsWhitelist": true, + "authenticationTreeCookieHttpOnly": true, + "suspendedAuthenticationTimeout": 5 + }, + "userprofile": { + "aliasAttributeName": [ + "uid" + ], + "defaultRole": [], + "dynamicProfileCreation": "false" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/Federation.authenticationModules.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/Federation.authenticationModules.json new file mode 100644 index 000000000..9ffd5c9d5 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/Federation.authenticationModules.json @@ -0,0 +1,13 @@ +{ + "authenticationModules": { + "Federation": { + "_id": "Federation", + "_type": { + "_id": "federation", + "collection": true, + "name": "Federation" + }, + "authenticationLevel": 0 + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/amster.authenticationModules.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/amster.authenticationModules.json new file mode 100644 index 000000000..1ad59cb90 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/amster.authenticationModules.json @@ -0,0 +1,15 @@ +{ + "authenticationModules": { + "amster": { + "_id": "amster", + "_type": { + "_id": "amster", + "collection": true, + "name": "ForgeRock Amster" + }, + "authenticationLevel": 0, + "authorizedKeys": "/home/forgerock/openam/security/keys/amster/authorized_keys", + "enabled": true + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/datastore.authenticationModules.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/datastore.authenticationModules.json new file mode 100644 index 000000000..d7e97d61f --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/datastore.authenticationModules.json @@ -0,0 +1,13 @@ +{ + "authenticationModules": { + "datastore": { + "_id": "datastore", + "_type": { + "_id": "datastore", + "collection": true, + "name": "Data Store" + }, + "authenticationLevel": 0 + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/federation.authenticationModules.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/federation.authenticationModules.json new file mode 100644 index 000000000..57bce1d99 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/federation.authenticationModules.json @@ -0,0 +1,13 @@ +{ + "authenticationModules": { + "federation": { + "_id": "federation", + "_type": { + "_id": "federation", + "collection": true, + "name": "Federation" + }, + "authenticationLevel": 0 + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/hotp.authenticationModules.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/hotp.authenticationModules.json new file mode 100644 index 000000000..f432ebff2 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/hotp.authenticationModules.json @@ -0,0 +1,27 @@ +{ + "authenticationModules": { + "hotp": { + "_id": "hotp", + "_type": { + "_id": "hotp", + "collection": true, + "name": "HOTP" + }, + "authenticationLevel": 0, + "autoSendOTP": false, + "otpDeliveryMethod": "SMS and E-mail", + "otpLength": "8", + "otpMaxRetry": 3, + "otpValidityDuration": 5, + "smsGatewayClass": "com.sun.identity.authentication.modules.hotp.DefaultSMSGatewayImpl", + "smtpFromAddress": "no-reply@openam.org", + "smtpHostPort": 465, + "smtpHostname": "smtp.gmail.com", + "smtpSslEnabled": "SSL", + "smtpUserPassword": null, + "smtpUsername": "opensso.sun", + "userProfileEmailAttribute": "mail", + "userProfileTelephoneAttribute": "telephoneNumber" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/ldap.authenticationModules.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/ldap.authenticationModules.json new file mode 100644 index 000000000..884d40267 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/ldap.authenticationModules.json @@ -0,0 +1,39 @@ +{ + "authenticationModules": { + "ldap": { + "_id": "ldap", + "_type": { + "_id": "ldap", + "collection": true, + "name": "LDAP" + }, + "authenticationLevel": 0, + "beheraPasswordPolicySupportEnabled": true, + "connectionHeartbeatInterval": 10, + "connectionHeartbeatTimeUnit": "SECONDS", + "minimumPasswordLength": "8", + "openam-auth-ldap-connection-mode": "LDAP", + "operationTimeout": 0, + "primaryLdapServer": [ + "userstore-1.userstore.fr-platform.svc.cluster.local:1389", + "userstore-2.userstore.fr-platform.svc.cluster.local:1389", + "userstore-0.userstore.fr-platform.svc.cluster.local:1389" + ], + "profileAttributeMappings": [], + "returnUserDN": true, + "searchScope": "SUBTREE", + "secondaryLdapServer": [], + "stopLdapbindAfterInmemoryLockedEnabled": false, + "trustAllServerCertificates": false, + "userBindDN": "uid=admin", + "userBindPassword": null, + "userProfileRetrievalAttribute": "uid", + "userSearchAttributes": [ + "uid" + ], + "userSearchStartDN": [ + "ou=identities" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/oath.authenticationModules.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/oath.authenticationModules.json new file mode 100644 index 000000000..e12d27857 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/oath.authenticationModules.json @@ -0,0 +1,24 @@ +{ + "authenticationModules": { + "oath": { + "_id": "oath", + "_type": { + "_id": "oath", + "collection": true, + "name": "OATH" + }, + "addChecksum": "False", + "authenticationLevel": 0, + "forgerock-oath-maximum-clock-drift": 0, + "forgerock-oath-sharedsecret-implementation-class": "org.forgerock.openam.authentication.modules.oath.plugins.DefaultSharedSecretProvider", + "hotpWindowSize": 100, + "minimumSecretKeyLength": "32", + "oathAlgorithm": "HOTP", + "oathOtpMaxRetry": 3, + "passwordLength": "6", + "stepsInWindow": 2, + "timeStepSize": 30, + "truncationOffset": -1 + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/sae.authenticationModules.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/sae.authenticationModules.json new file mode 100644 index 000000000..fe57fd499 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/authenticationModules/sae.authenticationModules.json @@ -0,0 +1,13 @@ +{ + "authenticationModules": { + "sae": { + "_id": "sae", + "_type": { + "_id": "sae", + "collection": true, + "name": "SAE" + }, + "authenticationLevel": 0 + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/AMIdentityMembership.conditionTypes.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/AMIdentityMembership.conditionTypes.json new file mode 100644 index 000000000..42eea5a6a --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/AMIdentityMembership.conditionTypes.json @@ -0,0 +1,20 @@ +{ + "conditionTypes": { + "AMIdentityMembership": { + "_id": "AMIdentityMembership", + "config": { + "properties": { + "amIdentityName": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "logical": false, + "title": "AMIdentityMembership" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/AND.conditionTypes.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/AND.conditionTypes.json new file mode 100644 index 000000000..21b4be2bd --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/AND.conditionTypes.json @@ -0,0 +1,17 @@ +{ + "conditionTypes": { + "AND": { + "_id": "AND", + "config": { + "properties": { + "conditions": { + "type": "array" + } + }, + "type": "object" + }, + "logical": true, + "title": "AND" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/AuthLevel.conditionTypes.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/AuthLevel.conditionTypes.json new file mode 100644 index 000000000..adfe33c7b --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/AuthLevel.conditionTypes.json @@ -0,0 +1,17 @@ +{ + "conditionTypes": { + "AuthLevel": { + "_id": "AuthLevel", + "config": { + "properties": { + "authLevel": { + "type": "integer" + } + }, + "type": "object" + }, + "logical": false, + "title": "AuthLevel" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/AuthScheme.conditionTypes.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/AuthScheme.conditionTypes.json new file mode 100644 index 000000000..95ac511fa --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/AuthScheme.conditionTypes.json @@ -0,0 +1,26 @@ +{ + "conditionTypes": { + "AuthScheme": { + "_id": "AuthScheme", + "config": { + "properties": { + "applicationIdleTimeout": { + "type": "integer" + }, + "applicationName": { + "type": "string" + }, + "authScheme": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "logical": false, + "title": "AuthScheme" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/AuthenticateToRealm.conditionTypes.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/AuthenticateToRealm.conditionTypes.json new file mode 100644 index 000000000..ebf57539b --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/AuthenticateToRealm.conditionTypes.json @@ -0,0 +1,17 @@ +{ + "conditionTypes": { + "AuthenticateToRealm": { + "_id": "AuthenticateToRealm", + "config": { + "properties": { + "authenticateToRealm": { + "type": "string" + } + }, + "type": "object" + }, + "logical": false, + "title": "AuthenticateToRealm" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/AuthenticateToService.conditionTypes.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/AuthenticateToService.conditionTypes.json new file mode 100644 index 000000000..3b090d061 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/AuthenticateToService.conditionTypes.json @@ -0,0 +1,17 @@ +{ + "conditionTypes": { + "AuthenticateToService": { + "_id": "AuthenticateToService", + "config": { + "properties": { + "authenticateToService": { + "type": "string" + } + }, + "type": "object" + }, + "logical": false, + "title": "AuthenticateToService" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/IPv4.conditionTypes.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/IPv4.conditionTypes.json new file mode 100644 index 000000000..390432856 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/IPv4.conditionTypes.json @@ -0,0 +1,26 @@ +{ + "conditionTypes": { + "IPv4": { + "_id": "IPv4", + "config": { + "properties": { + "dnsName": { + "items": { + "type": "string" + }, + "type": "array" + }, + "endIp": { + "type": "string" + }, + "startIp": { + "type": "string" + } + }, + "type": "object" + }, + "logical": false, + "title": "IPv4" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/IPv6.conditionTypes.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/IPv6.conditionTypes.json new file mode 100644 index 000000000..a2d115225 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/IPv6.conditionTypes.json @@ -0,0 +1,26 @@ +{ + "conditionTypes": { + "IPv6": { + "_id": "IPv6", + "config": { + "properties": { + "dnsName": { + "items": { + "type": "string" + }, + "type": "array" + }, + "endIp": { + "type": "string" + }, + "startIp": { + "type": "string" + } + }, + "type": "object" + }, + "logical": false, + "title": "IPv6" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/IdmUser.conditionTypes.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/IdmUser.conditionTypes.json new file mode 100644 index 000000000..a340c64d1 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/IdmUser.conditionTypes.json @@ -0,0 +1,36 @@ +{ + "conditionTypes": { + "IdmUser": { + "_id": "IdmUser", + "config": { + "properties": { + "comparator": { + "enum": [ + "EQUALS", + "CONTAINS", + "STARTS_WITH", + "ENDS_WITH", + "REGEX" + ], + "type": "string" + }, + "decisionField": { + "type": "string" + }, + "identityResource": { + "type": "string" + }, + "queryField": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object" + }, + "logical": false, + "title": "IdmUser" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/LDAPFilter.conditionTypes.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/LDAPFilter.conditionTypes.json new file mode 100644 index 000000000..3e4927c34 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/LDAPFilter.conditionTypes.json @@ -0,0 +1,17 @@ +{ + "conditionTypes": { + "LDAPFilter": { + "_id": "LDAPFilter", + "config": { + "properties": { + "ldapFilter": { + "type": "string" + } + }, + "type": "object" + }, + "logical": false, + "title": "LDAPFilter" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/LEAuthLevel.conditionTypes.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/LEAuthLevel.conditionTypes.json new file mode 100644 index 000000000..0ecb0a436 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/LEAuthLevel.conditionTypes.json @@ -0,0 +1,17 @@ +{ + "conditionTypes": { + "LEAuthLevel": { + "_id": "LEAuthLevel", + "config": { + "properties": { + "authLevel": { + "type": "integer" + } + }, + "type": "object" + }, + "logical": false, + "title": "LEAuthLevel" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/NOT.conditionTypes.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/NOT.conditionTypes.json new file mode 100644 index 000000000..b590ce0fd --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/NOT.conditionTypes.json @@ -0,0 +1,18 @@ +{ + "conditionTypes": { + "NOT": { + "_id": "NOT", + "config": { + "properties": { + "condition": { + "properties": {}, + "type": "object" + } + }, + "type": "object" + }, + "logical": true, + "title": "NOT" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/OAuth2Scope.conditionTypes.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/OAuth2Scope.conditionTypes.json new file mode 100644 index 000000000..3ca68fdef --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/OAuth2Scope.conditionTypes.json @@ -0,0 +1,20 @@ +{ + "conditionTypes": { + "OAuth2Scope": { + "_id": "OAuth2Scope", + "config": { + "properties": { + "requiredScopes": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "logical": false, + "title": "OAuth2Scope" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/OR.conditionTypes.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/OR.conditionTypes.json new file mode 100644 index 000000000..e695c3884 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/OR.conditionTypes.json @@ -0,0 +1,17 @@ +{ + "conditionTypes": { + "OR": { + "_id": "OR", + "config": { + "properties": { + "conditions": { + "type": "array" + } + }, + "type": "object" + }, + "logical": true, + "title": "OR" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/Policy.conditionTypes.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/Policy.conditionTypes.json new file mode 100644 index 000000000..abae26163 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/Policy.conditionTypes.json @@ -0,0 +1,20 @@ +{ + "conditionTypes": { + "Policy": { + "_id": "Policy", + "config": { + "properties": { + "className": { + "type": "string" + }, + "properties": { + "type": "object" + } + }, + "type": "object" + }, + "logical": false, + "title": "Policy" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/ResourceEnvIP.conditionTypes.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/ResourceEnvIP.conditionTypes.json new file mode 100644 index 000000000..cf397d375 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/ResourceEnvIP.conditionTypes.json @@ -0,0 +1,20 @@ +{ + "conditionTypes": { + "ResourceEnvIP": { + "_id": "ResourceEnvIP", + "config": { + "properties": { + "resourceEnvIPConditionValue": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "logical": false, + "title": "ResourceEnvIP" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/Script.conditionTypes.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/Script.conditionTypes.json new file mode 100644 index 000000000..a761e9268 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/Script.conditionTypes.json @@ -0,0 +1,17 @@ +{ + "conditionTypes": { + "Script": { + "_id": "Script", + "config": { + "properties": { + "scriptId": { + "type": "string" + } + }, + "type": "object" + }, + "logical": false, + "title": "Script" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/Session.conditionTypes.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/Session.conditionTypes.json new file mode 100644 index 000000000..e252719d8 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/Session.conditionTypes.json @@ -0,0 +1,21 @@ +{ + "conditionTypes": { + "Session": { + "_id": "Session", + "config": { + "properties": { + "maxSessionTime": { + "type": "integer" + }, + "terminateSession": { + "required": true, + "type": "boolean" + } + }, + "type": "object" + }, + "logical": false, + "title": "Session" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/SessionProperty.conditionTypes.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/SessionProperty.conditionTypes.json new file mode 100644 index 000000000..21751a42e --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/SessionProperty.conditionTypes.json @@ -0,0 +1,21 @@ +{ + "conditionTypes": { + "SessionProperty": { + "_id": "SessionProperty", + "config": { + "properties": { + "ignoreValueCase": { + "required": true, + "type": "boolean" + }, + "properties": { + "type": "object" + } + }, + "type": "object" + }, + "logical": false, + "title": "SessionProperty" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/SimpleTime.conditionTypes.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/SimpleTime.conditionTypes.json new file mode 100644 index 000000000..6290d3337 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/SimpleTime.conditionTypes.json @@ -0,0 +1,35 @@ +{ + "conditionTypes": { + "SimpleTime": { + "_id": "SimpleTime", + "config": { + "properties": { + "endDate": { + "type": "string" + }, + "endDay": { + "type": "string" + }, + "endTime": { + "type": "string" + }, + "enforcementTimeZone": { + "type": "string" + }, + "startDate": { + "type": "string" + }, + "startDay": { + "type": "string" + }, + "startTime": { + "type": "string" + } + }, + "type": "object" + }, + "logical": false, + "title": "SimpleTime" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/Transaction.conditionTypes.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/Transaction.conditionTypes.json new file mode 100644 index 000000000..4a269b680 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/conditionTypes/Transaction.conditionTypes.json @@ -0,0 +1,27 @@ +{ + "conditionTypes": { + "Transaction": { + "_id": "Transaction", + "config": { + "properties": { + "authenticationStrategy": { + "enum": [ + "AuthenticateToServiceConditionAdvice", + "AuthenticateToRealmConditionAdvice", + "AuthenticateToTreeConditionAdvice", + "AuthSchemeConditionAdvice", + "AuthLevelConditionAdvice" + ], + "type": "string" + }, + "strategySpecifier": { + "type": "string" + } + }, + "type": "object" + }, + "logical": false, + "title": "Transaction" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/decisionCombiners/DenyOverride.decisionCombiners.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/decisionCombiners/DenyOverride.decisionCombiners.json new file mode 100644 index 000000000..a83167550 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/decisionCombiners/DenyOverride.decisionCombiners.json @@ -0,0 +1,8 @@ +{ + "decisionCombiners": { + "DenyOverride": { + "_id": "DenyOverride", + "title": "DenyOverride" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/Agent.journey.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/Agent.journey.json new file mode 100644 index 000000000..d0b506055 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/Agent.journey.json @@ -0,0 +1,181 @@ +{ + "trees": { + "Agent": { + "circlesOfTrust": {}, + "emailTemplates": {}, + "innerNodes": { + "2eaad2f9-5c4b-405f-bf3f-1e99bdc0d018": { + "_id": "2eaad2f9-5c4b-405f-bf3f-1e99bdc0d018", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "ValidatedUsernameNode", + "collection": true, + "name": "Platform Username", + "version": "1.0" + }, + "usernameAttribute": "userName", + "validateInput": false + }, + "6072842f-5f7c-4b62-8ae2-4f18a5701ba4": { + "_id": "6072842f-5f7c-4b62-8ae2-4f18a5701ba4", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "ValidatedPasswordNode", + "collection": true, + "name": "Platform Password", + "version": "1.0" + }, + "passwordAttribute": "password", + "validateInput": false + } + }, + "nodes": { + "51e2cd24-cf1f-4313-8af0-35ea9e04d2fe": { + "_id": "51e2cd24-cf1f-4313-8af0-35ea9e04d2fe", + "_outcomes": [ + { + "displayName": "Has Credentials", + "id": "true" + }, + { + "displayName": "No Credentials", + "id": "false" + } + ], + "_type": { + "_id": "ZeroPageLoginNode", + "collection": true, + "name": "Zero Page Login Collector", + "version": "1.0" + }, + "allowWithoutReferer": true, + "passwordHeader": "X-OpenAM-Password", + "referrerWhiteList": [], + "usernameHeader": "X-OpenAM-Username" + }, + "6736a00a-fc65-438e-b4ea-23f66b4a8739": { + "_id": "6736a00a-fc65-438e-b4ea-23f66b4a8739", + "_outcomes": [ + { + "displayName": "True", + "id": "true" + }, + { + "displayName": "False", + "id": "false" + } + ], + "_type": { + "_id": "AgentDataStoreDecisionNode", + "collection": true, + "name": "Agent Data Store Decision", + "version": "1.0" + } + }, + "cbd1f1af-eb0a-4274-a762-adacf04c7080": { + "_id": "cbd1f1af-eb0a-4274-a762-adacf04c7080", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "PageNode", + "collection": true, + "name": "Page Node", + "version": "1.0" + }, + "nodes": [ + { + "_id": "2eaad2f9-5c4b-405f-bf3f-1e99bdc0d018", + "displayName": "Platform Username", + "nodeType": "ValidatedUsernameNode" + }, + { + "_id": "6072842f-5f7c-4b62-8ae2-4f18a5701ba4", + "displayName": "Platform Password", + "nodeType": "ValidatedPasswordNode" + } + ], + "pageDescription": {}, + "pageHeader": {} + } + }, + "saml2Entities": {}, + "scripts": {}, + "socialIdentityProviders": {}, + "themes": [], + "tree": { + "_id": "Agent", + "description": "CAUTION: PingAM Agent and PingGateway profiles require an Agent journey. Don't change this configuration.", + "enabled": true, + "entryNodeId": "51e2cd24-cf1f-4313-8af0-35ea9e04d2fe", + "identityResource": "managed/alpha_user", + "innerTreeOnly": false, + "mustRun": false, + "noSession": false, + "nodes": { + "51e2cd24-cf1f-4313-8af0-35ea9e04d2fe": { + "connections": { + "false": "cbd1f1af-eb0a-4274-a762-adacf04c7080", + "true": "6736a00a-fc65-438e-b4ea-23f66b4a8739" + }, + "displayName": "Zero Page Login Collector", + "nodeType": "ZeroPageLoginNode", + "x": 163, + "y": 225 + }, + "6736a00a-fc65-438e-b4ea-23f66b4a8739": { + "connections": { + "false": "e301438c-0bd0-429c-ab0c-66126501069a", + "true": "70e691a5-1e33-4ac3-a356-e7b6d60d92e0" + }, + "displayName": "Agent Data Store Decision", + "nodeType": "AgentDataStoreDecisionNode", + "x": 762, + "y": 243 + }, + "cbd1f1af-eb0a-4274-a762-adacf04c7080": { + "connections": { + "outcome": "6736a00a-fc65-438e-b4ea-23f66b4a8739" + }, + "displayName": "Page Node", + "nodeType": "PageNode", + "x": 477, + "y": 324 + } + }, + "staticNodes": { + "70e691a5-1e33-4ac3-a356-e7b6d60d92e0": { + "x": 1065, + "y": 206 + }, + "e301438c-0bd0-429c-ab0c-66126501069a": { + "x": 1064, + "y": 394 + }, + "startNode": { + "x": 50, + "y": 250 + } + }, + "transactionalOnly": false, + "uiConfig": { + "categories": "[\"Authentication\"]" + } + }, + "variable": {} + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/ForgottenUsername.journey.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/ForgottenUsername.journey.json new file mode 100644 index 000000000..2510d389e --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/ForgottenUsername.journey.json @@ -0,0 +1,198 @@ +{ + "trees": { + "ForgottenUsername": { + "circlesOfTrust": {}, + "emailTemplates": {}, + "innerNodes": { + "9f1e8d94-4922-481b-9e14-212b66548900": { + "_id": "9f1e8d94-4922-481b-9e14-212b66548900", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "AttributeCollectorNode", + "collection": true, + "name": "Attribute Collector", + "version": "1.0" + }, + "attributesToCollect": [ + "mail" + ], + "identityAttribute": "mail", + "required": true, + "validateInputs": false + } + }, + "nodes": { + "5e2a7c95-94af-4b23-8724-deb13853726a": { + "_id": "5e2a7c95-94af-4b23-8724-deb13853726a", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "PageNode", + "collection": true, + "name": "Page Node", + "version": "1.0" + }, + "nodes": [ + { + "_id": "9f1e8d94-4922-481b-9e14-212b66548900", + "displayName": "Attribute Collector", + "nodeType": "AttributeCollectorNode" + } + ], + "pageDescription": { + "en": "Enter your email address or Sign in" + }, + "pageHeader": { + "en": "Forgotten Username" + } + }, + "b93ce36e-1976-4610-b24f-8d6760b5463b": { + "_id": "b93ce36e-1976-4610-b24f-8d6760b5463b", + "_outcomes": [ + { + "displayName": "True", + "id": "true" + }, + { + "displayName": "False", + "id": "false" + } + ], + "_type": { + "_id": "InnerTreeEvaluatorNode", + "collection": true, + "name": "Inner Tree Evaluator", + "version": "1.0" + }, + "displayErrorOutcome": false, + "tree": "Login" + }, + "bf9ea8d5-9802-4f26-9664-a21840faac23": { + "_id": "bf9ea8d5-9802-4f26-9664-a21840faac23", + "_outcomes": [ + { + "displayName": "True", + "id": "true" + }, + { + "displayName": "False", + "id": "false" + } + ], + "_type": { + "_id": "IdentifyExistingUserNode", + "collection": true, + "name": "Identify Existing User", + "version": "1.0" + }, + "identifier": "userName", + "identityAttribute": "mail" + }, + "d9a79f01-2ce3-4be2-a28a-975f35c3c8ca": { + "_id": "d9a79f01-2ce3-4be2-a28a-975f35c3c8ca", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "EmailSuspendNode", + "collection": true, + "name": "Email Suspend Node", + "version": "1.0" + }, + "emailAttribute": "mail", + "emailSuspendMessage": { + "en": "An email has been sent to the address you entered. Click the link in that email to proceed." + }, + "emailTemplateName": "forgottenUsername", + "identityAttribute": "mail", + "objectLookup": true + } + }, + "saml2Entities": {}, + "scripts": {}, + "socialIdentityProviders": {}, + "themes": [], + "tree": { + "_id": "ForgottenUsername", + "description": "Forgotten Username Tree", + "enabled": true, + "entryNodeId": "5e2a7c95-94af-4b23-8724-deb13853726a", + "identityResource": "managed/alpha_user", + "innerTreeOnly": false, + "mustRun": false, + "noSession": false, + "nodes": { + "5e2a7c95-94af-4b23-8724-deb13853726a": { + "connections": { + "outcome": "bf9ea8d5-9802-4f26-9664-a21840faac23" + }, + "displayName": "Page Node", + "nodeType": "PageNode", + "x": 139, + "y": 146 + }, + "b93ce36e-1976-4610-b24f-8d6760b5463b": { + "connections": { + "false": "e301438c-0bd0-429c-ab0c-66126501069a", + "true": "70e691a5-1e33-4ac3-a356-e7b6d60d92e0" + }, + "displayName": "Inner Tree Evaluator", + "nodeType": "InnerTreeEvaluatorNode", + "x": 767, + "y": 188 + }, + "bf9ea8d5-9802-4f26-9664-a21840faac23": { + "connections": { + "false": "d9a79f01-2ce3-4be2-a28a-975f35c3c8ca", + "true": "d9a79f01-2ce3-4be2-a28a-975f35c3c8ca" + }, + "displayName": "Identify Existing User", + "nodeType": "IdentifyExistingUserNode", + "x": 324, + "y": 152 + }, + "d9a79f01-2ce3-4be2-a28a-975f35c3c8ca": { + "connections": { + "outcome": "b93ce36e-1976-4610-b24f-8d6760b5463b" + }, + "displayName": "Email Suspend Node", + "nodeType": "EmailSuspendNode", + "x": 563, + "y": 193 + } + }, + "staticNodes": { + "70e691a5-1e33-4ac3-a356-e7b6d60d92e0": { + "x": 970, + "y": 149 + }, + "e301438c-0bd0-429c-ab0c-66126501069a": { + "x": 982, + "y": 252 + }, + "startNode": { + "x": 50, + "y": 25 + } + }, + "transactionalOnly": false, + "uiConfig": { + "categories": "[\"Username Reset\"]" + } + }, + "variable": {} + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/Login.journey.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/Login.journey.json new file mode 100644 index 000000000..b091456b1 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/Login.journey.json @@ -0,0 +1,282 @@ +{ + "trees": { + "Login": { + "circlesOfTrust": {}, + "emailTemplates": {}, + "innerNodes": { + "0c80c39b-4813-4e67-b4fb-5a0bba85f994": { + "_id": "0c80c39b-4813-4e67-b4fb-5a0bba85f994", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "ValidatedPasswordNode", + "collection": true, + "name": "Platform Password", + "version": "1.0" + }, + "passwordAttribute": "password", + "validateInput": false + }, + "7354982f-57b6-4b04-9ddc-f1dd1e1e07d0": { + "_id": "7354982f-57b6-4b04-9ddc-f1dd1e1e07d0", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "ValidatedUsernameNode", + "collection": true, + "name": "Platform Username", + "version": "1.0" + }, + "usernameAttribute": "userName", + "validateInput": false + } + }, + "nodes": { + "2119f332-0f69-4088-a7a1-6582bf0f2001": { + "_id": "2119f332-0f69-4088-a7a1-6582bf0f2001", + "_outcomes": [ + { + "displayName": "Retry", + "id": "Retry" + }, + { + "displayName": "Reject", + "id": "Reject" + } + ], + "_type": { + "_id": "RetryLimitDecisionNode", + "collection": true, + "name": "Retry Limit Decision", + "version": "1.0" + }, + "incrementUserAttributeOnFailure": true, + "retryLimit": 5 + }, + "33b24514-3e50-4180-8f08-ab6f4e51b07e": { + "_id": "33b24514-3e50-4180-8f08-ab6f4e51b07e", + "_outcomes": [ + { + "displayName": "True", + "id": "true" + }, + { + "displayName": "False", + "id": "false" + } + ], + "_type": { + "_id": "InnerTreeEvaluatorNode", + "collection": true, + "name": "Inner Tree Evaluator", + "version": "1.0" + }, + "displayErrorOutcome": false, + "tree": "ProgressiveProfile" + }, + "51e8c4c1-3509-4635-90e6-d2cc31c4a6a5": { + "_id": "51e8c4c1-3509-4635-90e6-d2cc31c4a6a5", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "AccountLockoutNode", + "collection": true, + "name": "Account Lockout", + "version": "1.0" + }, + "lockAction": "LOCK" + }, + "7f0c2aee-8c74-4d02-82a6-9d4ed9d11708": { + "_id": "7f0c2aee-8c74-4d02-82a6-9d4ed9d11708", + "_outcomes": [ + { + "displayName": "True", + "id": "TRUE" + }, + { + "displayName": "False", + "id": "FALSE" + }, + { + "displayName": "Locked", + "id": "LOCKED" + }, + { + "displayName": "Cancelled", + "id": "CANCELLED" + }, + { + "displayName": "Expired", + "id": "EXPIRED" + } + ], + "_type": { + "_id": "IdentityStoreDecisionNode", + "collection": true, + "name": "Identity Store Decision", + "version": "1.0" + }, + "minimumPasswordLength": 8, + "mixedCaseForPasswordChangeMessages": false, + "useUniversalIdForUsername": false + }, + "a12bc72f-ad97-4f1e-a789-a1fa3dd566c8": { + "_id": "a12bc72f-ad97-4f1e-a789-a1fa3dd566c8", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "PageNode", + "collection": true, + "name": "Page Node", + "version": "1.0" + }, + "nodes": [ + { + "_id": "7354982f-57b6-4b04-9ddc-f1dd1e1e07d0", + "displayName": "Platform Username", + "nodeType": "ValidatedUsernameNode" + }, + { + "_id": "0c80c39b-4813-4e67-b4fb-5a0bba85f994", + "displayName": "Platform Password", + "nodeType": "ValidatedPasswordNode" + } + ], + "pageDescription": { + "en": "New here? Create an account
Forgot username? Forgot password?" + }, + "pageHeader": { + "en": "Sign In" + } + }, + "bba3e0d8-8525-4e82-bf48-ac17f7988917": { + "_id": "bba3e0d8-8525-4e82-bf48-ac17f7988917", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "IncrementLoginCountNode", + "collection": true, + "name": "Increment Login Count", + "version": "1.0" + }, + "identityAttribute": "userName" + } + }, + "saml2Entities": {}, + "scripts": {}, + "socialIdentityProviders": {}, + "themes": [], + "tree": { + "_id": "Login", + "description": "Platform Login Tree", + "enabled": true, + "entryNodeId": "a12bc72f-ad97-4f1e-a789-a1fa3dd566c8", + "identityResource": "managed/alpha_user", + "innerTreeOnly": false, + "mustRun": false, + "noSession": false, + "nodes": { + "2119f332-0f69-4088-a7a1-6582bf0f2001": { + "connections": { + "Reject": "51e8c4c1-3509-4635-90e6-d2cc31c4a6a5", + "Retry": "a12bc72f-ad97-4f1e-a789-a1fa3dd566c8" + }, + "displayName": "Retry Limit Decision", + "nodeType": "RetryLimitDecisionNode", + "x": 612, + "y": 105.015625 + }, + "33b24514-3e50-4180-8f08-ab6f4e51b07e": { + "connections": { + "false": "e301438c-0bd0-429c-ab0c-66126501069a", + "true": "70e691a5-1e33-4ac3-a356-e7b6d60d92e0" + }, + "displayName": "Inner Tree Evaluator", + "nodeType": "InnerTreeEvaluatorNode", + "x": 827, + "y": 13 + }, + "51e8c4c1-3509-4635-90e6-d2cc31c4a6a5": { + "connections": { + "outcome": "e301438c-0bd0-429c-ab0c-66126501069a" + }, + "displayName": "Account Lockout", + "nodeType": "AccountLockoutNode", + "x": 836, + "y": 184.015625 + }, + "7f0c2aee-8c74-4d02-82a6-9d4ed9d11708": { + "connections": { + "CANCELLED": "e301438c-0bd0-429c-ab0c-66126501069a", + "EXPIRED": "e301438c-0bd0-429c-ab0c-66126501069a", + "FALSE": "2119f332-0f69-4088-a7a1-6582bf0f2001", + "LOCKED": "e301438c-0bd0-429c-ab0c-66126501069a", + "TRUE": "bba3e0d8-8525-4e82-bf48-ac17f7988917" + }, + "displayName": "Identity Store Decision", + "nodeType": "IdentityStoreDecisionNode", + "x": 352, + "y": 40.015625 + }, + "a12bc72f-ad97-4f1e-a789-a1fa3dd566c8": { + "connections": { + "outcome": "7f0c2aee-8c74-4d02-82a6-9d4ed9d11708" + }, + "displayName": "Page Node", + "nodeType": "PageNode", + "x": 136, + "y": 59 + }, + "bba3e0d8-8525-4e82-bf48-ac17f7988917": { + "connections": { + "outcome": "33b24514-3e50-4180-8f08-ab6f4e51b07e" + }, + "displayName": "Increment Login Count", + "nodeType": "IncrementLoginCountNode", + "x": 579, + "y": 34 + } + }, + "staticNodes": { + "70e691a5-1e33-4ac3-a356-e7b6d60d92e0": { + "x": 1073, + "y": 30 + }, + "e301438c-0bd0-429c-ab0c-66126501069a": { + "x": 761, + "y": 401 + }, + "startNode": { + "x": 50, + "y": 25 + } + }, + "transactionalOnly": false, + "uiConfig": { + "categories": "[\"Authentication\"]" + } + }, + "variable": {} + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/ProgressiveProfile.journey.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/ProgressiveProfile.journey.json new file mode 100644 index 000000000..0b052ecf1 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/ProgressiveProfile.journey.json @@ -0,0 +1,200 @@ +{ + "trees": { + "ProgressiveProfile": { + "circlesOfTrust": {}, + "emailTemplates": {}, + "innerNodes": { + "0a042e10-b22e-4e02-86c4-65e26e775f7a": { + "_id": "0a042e10-b22e-4e02-86c4-65e26e775f7a", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "AttributeCollectorNode", + "collection": true, + "name": "Attribute Collector", + "version": "1.0" + }, + "attributesToCollect": [ + "preferences/updates", + "preferences/marketing" + ], + "identityAttribute": "userName", + "required": false, + "validateInputs": false + } + }, + "nodes": { + "423a959a-a1b9-498a-b0f7-596b6b6e775a": { + "_id": "423a959a-a1b9-498a-b0f7-596b6b6e775a", + "_outcomes": [ + { + "displayName": "Patched", + "id": "PATCHED" + }, + { + "displayName": "Failed", + "id": "FAILURE" + } + ], + "_type": { + "_id": "PatchObjectNode", + "collection": true, + "name": "Patch Object", + "version": "1.0" + }, + "identityAttribute": "userName", + "identityResource": "managed/alpha_user", + "ignoredFields": [], + "patchAsObject": false + }, + "8afdaec3-275e-4301-bb53-34f03e6a4b29": { + "_id": "8afdaec3-275e-4301-bb53-34f03e6a4b29", + "_outcomes": [ + { + "displayName": "True", + "id": "true" + }, + { + "displayName": "False", + "id": "false" + } + ], + "_type": { + "_id": "LoginCountDecisionNode", + "collection": true, + "name": "Login Count Decision", + "version": "1.0" + }, + "amount": 3, + "identityAttribute": "userName", + "interval": "AT" + }, + "a1f45b44-5bf7-4c57-aa3f-75c619c7db8e": { + "_id": "a1f45b44-5bf7-4c57-aa3f-75c619c7db8e", + "_outcomes": [ + { + "displayName": "True", + "id": "true" + }, + { + "displayName": "False", + "id": "false" + } + ], + "_type": { + "_id": "QueryFilterDecisionNode", + "collection": true, + "name": "Query Filter Decision", + "version": "1.0" + }, + "identityAttribute": "userName", + "queryFilter": "!(/preferences pr) or /preferences/marketing eq false or /preferences/updates eq false" + }, + "a5aecad8-854a-4ed5-b719-ff6c90e858c0": { + "_id": "a5aecad8-854a-4ed5-b719-ff6c90e858c0", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "PageNode", + "collection": true, + "name": "Page Node", + "version": "1.0" + }, + "nodes": [ + { + "_id": "0a042e10-b22e-4e02-86c4-65e26e775f7a", + "displayName": "Attribute Collector", + "nodeType": "AttributeCollectorNode" + } + ], + "pageDescription": {}, + "pageHeader": { + "en": "Please select your preferences" + } + } + }, + "saml2Entities": {}, + "scripts": {}, + "socialIdentityProviders": {}, + "themes": [], + "tree": { + "_id": "ProgressiveProfile", + "description": "Prompt for missing preferences on 3rd login", + "enabled": true, + "entryNodeId": "8afdaec3-275e-4301-bb53-34f03e6a4b29", + "identityResource": "managed/alpha_user", + "innerTreeOnly": false, + "mustRun": false, + "noSession": false, + "nodes": { + "423a959a-a1b9-498a-b0f7-596b6b6e775a": { + "connections": { + "FAILURE": "e301438c-0bd0-429c-ab0c-66126501069a", + "PATCHED": "70e691a5-1e33-4ac3-a356-e7b6d60d92e0" + }, + "displayName": "Patch Object", + "nodeType": "PatchObjectNode", + "x": 766, + "y": 36 + }, + "8afdaec3-275e-4301-bb53-34f03e6a4b29": { + "connections": { + "false": "70e691a5-1e33-4ac3-a356-e7b6d60d92e0", + "true": "a1f45b44-5bf7-4c57-aa3f-75c619c7db8e" + }, + "displayName": "Login Count Decision", + "nodeType": "LoginCountDecisionNode", + "x": 152, + "y": 36 + }, + "a1f45b44-5bf7-4c57-aa3f-75c619c7db8e": { + "connections": { + "false": "70e691a5-1e33-4ac3-a356-e7b6d60d92e0", + "true": "a5aecad8-854a-4ed5-b719-ff6c90e858c0" + }, + "displayName": "Query Filter Decision", + "nodeType": "QueryFilterDecisionNode", + "x": 357, + "y": 36 + }, + "a5aecad8-854a-4ed5-b719-ff6c90e858c0": { + "connections": { + "outcome": "423a959a-a1b9-498a-b0f7-596b6b6e775a" + }, + "displayName": "Page Node", + "nodeType": "PageNode", + "x": 555, + "y": 20 + } + }, + "staticNodes": { + "70e691a5-1e33-4ac3-a356-e7b6d60d92e0": { + "x": 802, + "y": 312 + }, + "e301438c-0bd0-429c-ab0c-66126501069a": { + "x": 919, + "y": 171 + }, + "startNode": { + "x": 50, + "y": 58.5 + } + }, + "transactionalOnly": false, + "uiConfig": { + "categories": "[\"Progressive Profile\"]" + } + }, + "variable": {} + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/Registration.journey.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/Registration.journey.json new file mode 100644 index 000000000..c5c31dd33 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/Registration.journey.json @@ -0,0 +1,283 @@ +{ + "trees": { + "Registration": { + "circlesOfTrust": {}, + "emailTemplates": {}, + "innerNodes": { + "120c69d3-90b4-4ad4-b7af-380e8b119340": { + "_id": "120c69d3-90b4-4ad4-b7af-380e8b119340", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "KbaCreateNode", + "collection": true, + "name": "KBA Definition", + "version": "1.0" + }, + "allowUserDefinedQuestions": true, + "message": { + "en": "Select a security question" + } + }, + "3d8709a1-f09f-4d1f-8094-2850e472c1db": { + "_id": "3d8709a1-f09f-4d1f-8094-2850e472c1db", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "ValidatedPasswordNode", + "collection": true, + "name": "Platform Password", + "version": "1.0" + }, + "passwordAttribute": "password", + "validateInput": true + }, + "7fcaf48e-a754-4959-858b-05b2933b825f": { + "_id": "7fcaf48e-a754-4959-858b-05b2933b825f", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "ValidatedUsernameNode", + "collection": true, + "name": "Platform Username", + "version": "1.0" + }, + "usernameAttribute": "userName", + "validateInput": true + }, + "b4a0e915-c15d-4b83-9c9d-18347d645976": { + "_id": "b4a0e915-c15d-4b83-9c9d-18347d645976", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "AcceptTermsAndConditionsNode", + "collection": true, + "name": "Accept Terms and Conditions", + "version": "1.0" + } + }, + "d3ce2036-1523-4ce8-b1a2-895a2a036667": { + "_id": "d3ce2036-1523-4ce8-b1a2-895a2a036667", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "AttributeCollectorNode", + "collection": true, + "name": "Attribute Collector", + "version": "1.0" + }, + "attributesToCollect": [ + "givenName", + "sn", + "mail", + "preferences/marketing", + "preferences/updates" + ], + "identityAttribute": "userName", + "required": true, + "validateInputs": true + } + }, + "nodes": { + "0c091c49-f3af-48fb-ac6f-07fba0499dd6": { + "_id": "0c091c49-f3af-48fb-ac6f-07fba0499dd6", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "PageNode", + "collection": true, + "name": "Page Node", + "version": "1.0" + }, + "nodes": [ + { + "_id": "7fcaf48e-a754-4959-858b-05b2933b825f", + "displayName": "Platform Username", + "nodeType": "ValidatedUsernameNode" + }, + { + "_id": "d3ce2036-1523-4ce8-b1a2-895a2a036667", + "displayName": "Attribute Collector", + "nodeType": "AttributeCollectorNode" + }, + { + "_id": "3d8709a1-f09f-4d1f-8094-2850e472c1db", + "displayName": "Platform Password", + "nodeType": "ValidatedPasswordNode" + }, + { + "_id": "120c69d3-90b4-4ad4-b7af-380e8b119340", + "displayName": "KBA Definition", + "nodeType": "KbaCreateNode" + }, + { + "_id": "b4a0e915-c15d-4b83-9c9d-18347d645976", + "displayName": "Accept Terms and Conditions", + "nodeType": "AcceptTermsAndConditionsNode" + } + ], + "pageDescription": { + "en": "Signing up is fast and easy.
Already have an account? Sign In" + }, + "pageHeader": { + "en": "Sign Up" + } + }, + "466f8b54-07fb-4e31-a11d-a6842618cc37": { + "_id": "466f8b54-07fb-4e31-a11d-a6842618cc37", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "EmailSuspendNode", + "collection": true, + "name": "Email Suspend Node", + "version": "1.0" + }, + "emailAttribute": "mail", + "emailSuspendMessage": { + "en": "An email has been sent to the address you entered. Click the link in that email to proceed." + }, + "emailTemplateName": "registration", + "identityAttribute": "userName", + "objectLookup": false + }, + "97a15eb2-a015-4b6d-81a0-be78c3aa1a3b": { + "_id": "97a15eb2-a015-4b6d-81a0-be78c3aa1a3b", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "IncrementLoginCountNode", + "collection": true, + "name": "Increment Login Count", + "version": "1.0" + }, + "identityAttribute": "userName" + }, + "ad5dcbb3-7335-49b7-b3e7-7d850bb88237": { + "_id": "ad5dcbb3-7335-49b7-b3e7-7d850bb88237", + "_outcomes": [ + { + "displayName": "Created", + "id": "CREATED" + }, + { + "displayName": "Failed", + "id": "FAILURE" + } + ], + "_type": { + "_id": "CreateObjectNode", + "collection": true, + "name": "Create Object", + "version": "1.0" + }, + "identityResource": "managed/alpha_user" + } + }, + "saml2Entities": {}, + "scripts": {}, + "socialIdentityProviders": {}, + "themes": [], + "tree": { + "_id": "Registration", + "description": "Platform Registration Tree", + "enabled": true, + "entryNodeId": "0c091c49-f3af-48fb-ac6f-07fba0499dd6", + "identityResource": "managed/alpha_user", + "innerTreeOnly": false, + "mustRun": false, + "noSession": false, + "nodes": { + "0c091c49-f3af-48fb-ac6f-07fba0499dd6": { + "connections": { + "outcome": "466f8b54-07fb-4e31-a11d-a6842618cc37" + }, + "displayName": "Page Node", + "nodeType": "PageNode", + "x": 261, + "y": 168 + }, + "466f8b54-07fb-4e31-a11d-a6842618cc37": { + "connections": { + "outcome": "ad5dcbb3-7335-49b7-b3e7-7d850bb88237" + }, + "displayName": "Email Suspend Node", + "nodeType": "EmailSuspendNode", + "x": 484, + "y": 267.015625 + }, + "97a15eb2-a015-4b6d-81a0-be78c3aa1a3b": { + "connections": { + "outcome": "70e691a5-1e33-4ac3-a356-e7b6d60d92e0" + }, + "displayName": "Increment Login Count", + "nodeType": "IncrementLoginCountNode", + "x": 861, + "y": 221 + }, + "ad5dcbb3-7335-49b7-b3e7-7d850bb88237": { + "connections": { + "CREATED": "97a15eb2-a015-4b6d-81a0-be78c3aa1a3b", + "FAILURE": "e301438c-0bd0-429c-ab0c-66126501069a" + }, + "displayName": "Create Object", + "nodeType": "CreateObjectNode", + "x": 717, + "y": 283 + } + }, + "staticNodes": { + "70e691a5-1e33-4ac3-a356-e7b6d60d92e0": { + "x": 1085, + "y": 248 + }, + "e301438c-0bd0-429c-ab0c-66126501069a": { + "x": 921, + "y": 370 + }, + "startNode": { + "x": 50, + "y": 25 + } + }, + "transactionalOnly": false, + "uiConfig": { + "categories": "[\"Registration\"]" + } + }, + "variable": {} + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/ResetPassword.journey.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/ResetPassword.journey.json new file mode 100644 index 000000000..16c8a0d28 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/ResetPassword.journey.json @@ -0,0 +1,254 @@ +{ + "trees": { + "ResetPassword": { + "circlesOfTrust": {}, + "emailTemplates": {}, + "innerNodes": { + "009c19c8-9572-47bb-adb2-1f092c559a43": { + "_id": "009c19c8-9572-47bb-adb2-1f092c559a43", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "ValidatedPasswordNode", + "collection": true, + "name": "Platform Password", + "version": "1.0" + }, + "passwordAttribute": "password", + "validateInput": true + }, + "276afa7c-a680-4cf4-a5f6-d6c78191f5c9": { + "_id": "276afa7c-a680-4cf4-a5f6-d6c78191f5c9", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "AttributeCollectorNode", + "collection": true, + "name": "Attribute Collector", + "version": "1.0" + }, + "attributesToCollect": [ + "mail" + ], + "identityAttribute": "mail", + "required": true, + "validateInputs": false + } + }, + "nodes": { + "06c97be5-7fdd-4739-aea1-ecc7fe082865": { + "_id": "06c97be5-7fdd-4739-aea1-ecc7fe082865", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "EmailSuspendNode", + "collection": true, + "name": "Email Suspend Node", + "version": "1.0" + }, + "emailAttribute": "mail", + "emailSuspendMessage": { + "en": "An email has been sent to the address you entered. Click the link in that email to proceed." + }, + "emailTemplateName": "resetPassword", + "identityAttribute": "mail", + "objectLookup": true + }, + "21b8ddf3-0203-4ae1-ab05-51cf3a3a707a": { + "_id": "21b8ddf3-0203-4ae1-ab05-51cf3a3a707a", + "_outcomes": [ + { + "displayName": "True", + "id": "true" + }, + { + "displayName": "False", + "id": "false" + } + ], + "_type": { + "_id": "IdentifyExistingUserNode", + "collection": true, + "name": "Identify Existing User", + "version": "1.0" + }, + "identifier": "userName", + "identityAttribute": "mail" + }, + "989f0bf8-a328-4217-b82b-5275d79ca8bd": { + "_id": "989f0bf8-a328-4217-b82b-5275d79ca8bd", + "_outcomes": [ + { + "displayName": "Patched", + "id": "PATCHED" + }, + { + "displayName": "Failed", + "id": "FAILURE" + } + ], + "_type": { + "_id": "PatchObjectNode", + "collection": true, + "name": "Patch Object", + "version": "1.0" + }, + "identityAttribute": "mail", + "identityResource": "managed/alpha_user", + "ignoredFields": [], + "patchAsObject": false + }, + "cc3e1ed2-25f1-47bf-83c6-17084f8b2b2b": { + "_id": "cc3e1ed2-25f1-47bf-83c6-17084f8b2b2b", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "PageNode", + "collection": true, + "name": "Page Node", + "version": "1.0" + }, + "nodes": [ + { + "_id": "276afa7c-a680-4cf4-a5f6-d6c78191f5c9", + "displayName": "Attribute Collector", + "nodeType": "AttributeCollectorNode" + } + ], + "pageDescription": { + "en": "Enter your email address or Sign in" + }, + "pageHeader": { + "en": "Reset Password" + } + }, + "e4c752f9-c625-48c9-9644-a58802fa9e9c": { + "_id": "e4c752f9-c625-48c9-9644-a58802fa9e9c", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "PageNode", + "collection": true, + "name": "Page Node", + "version": "1.0" + }, + "nodes": [ + { + "_id": "009c19c8-9572-47bb-adb2-1f092c559a43", + "displayName": "Platform Password", + "nodeType": "ValidatedPasswordNode" + } + ], + "pageDescription": { + "en": "Change password" + }, + "pageHeader": { + "en": "Reset Password" + } + } + }, + "saml2Entities": {}, + "scripts": {}, + "socialIdentityProviders": {}, + "themes": [], + "tree": { + "_id": "ResetPassword", + "description": "Reset Password Tree", + "enabled": true, + "entryNodeId": "cc3e1ed2-25f1-47bf-83c6-17084f8b2b2b", + "identityResource": "managed/alpha_user", + "innerTreeOnly": false, + "mustRun": false, + "noSession": false, + "nodes": { + "06c97be5-7fdd-4739-aea1-ecc7fe082865": { + "connections": { + "outcome": "e4c752f9-c625-48c9-9644-a58802fa9e9c" + }, + "displayName": "Email Suspend Node", + "nodeType": "EmailSuspendNode", + "x": 453, + "y": 66 + }, + "21b8ddf3-0203-4ae1-ab05-51cf3a3a707a": { + "connections": { + "false": "06c97be5-7fdd-4739-aea1-ecc7fe082865", + "true": "06c97be5-7fdd-4739-aea1-ecc7fe082865" + }, + "displayName": "Identify Existing User", + "nodeType": "IdentifyExistingUserNode", + "x": 271, + "y": 21 + }, + "989f0bf8-a328-4217-b82b-5275d79ca8bd": { + "connections": { + "FAILURE": "e301438c-0bd0-429c-ab0c-66126501069a", + "PATCHED": "70e691a5-1e33-4ac3-a356-e7b6d60d92e0" + }, + "displayName": "Patch Object", + "nodeType": "PatchObjectNode", + "x": 819, + "y": 61 + }, + "cc3e1ed2-25f1-47bf-83c6-17084f8b2b2b": { + "connections": { + "outcome": "21b8ddf3-0203-4ae1-ab05-51cf3a3a707a" + }, + "displayName": "Page Node", + "nodeType": "PageNode", + "x": 103, + "y": 50 + }, + "e4c752f9-c625-48c9-9644-a58802fa9e9c": { + "connections": { + "outcome": "989f0bf8-a328-4217-b82b-5275d79ca8bd" + }, + "displayName": "Page Node", + "nodeType": "PageNode", + "x": 643, + "y": 50 + } + }, + "staticNodes": { + "70e691a5-1e33-4ac3-a356-e7b6d60d92e0": { + "x": 970, + "y": 79 + }, + "e301438c-0bd0-429c-ab0c-66126501069a": { + "x": 981, + "y": 147 + }, + "startNode": { + "x": 25, + "y": 25 + } + }, + "transactionalOnly": false, + "uiConfig": { + "categories": "[\"Password Reset\"]" + } + }, + "variable": {} + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/UpdatePassword.journey.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/UpdatePassword.journey.json new file mode 100644 index 000000000..4c7d97899 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/journey/UpdatePassword.journey.json @@ -0,0 +1,307 @@ +{ + "trees": { + "UpdatePassword": { + "circlesOfTrust": {}, + "emailTemplates": {}, + "innerNodes": { + "21a99653-a7a7-47ee-b650-f493a84bba09": { + "_id": "21a99653-a7a7-47ee-b650-f493a84bba09", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "ValidatedPasswordNode", + "collection": true, + "name": "Platform Password", + "version": "1.0" + }, + "passwordAttribute": "password", + "validateInput": true + }, + "fe2962fc-4db3-4066-8624-553649afc438": { + "_id": "fe2962fc-4db3-4066-8624-553649afc438", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "ValidatedPasswordNode", + "collection": true, + "name": "Platform Password", + "version": "1.0" + }, + "passwordAttribute": "password", + "validateInput": false + } + }, + "nodes": { + "0f0904e6-1da3-4cdb-9abf-0d2545016fab": { + "_id": "0f0904e6-1da3-4cdb-9abf-0d2545016fab", + "_outcomes": [ + { + "displayName": "True", + "id": "true" + }, + { + "displayName": "False", + "id": "false" + } + ], + "_type": { + "_id": "AttributePresentDecisionNode", + "collection": true, + "name": "Attribute Present Decision", + "version": "1.0" + }, + "identityAttribute": "userName", + "presentAttribute": "password" + }, + "20237b34-26cb-4a0b-958f-abb422290d42": { + "_id": "20237b34-26cb-4a0b-958f-abb422290d42", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "PageNode", + "collection": true, + "name": "Page Node", + "version": "1.0" + }, + "nodes": [ + { + "_id": "fe2962fc-4db3-4066-8624-553649afc438", + "displayName": "Platform Password", + "nodeType": "ValidatedPasswordNode" + } + ], + "pageDescription": { + "en": "Enter current password" + }, + "pageHeader": { + "en": "Verify Existing Password" + } + }, + "3990ce1f-cce6-435b-ae1c-f138e89411c1": { + "_id": "3990ce1f-cce6-435b-ae1c-f138e89411c1", + "_outcomes": [ + { + "displayName": "Patched", + "id": "PATCHED" + }, + { + "displayName": "Failed", + "id": "FAILURE" + } + ], + "_type": { + "_id": "PatchObjectNode", + "collection": true, + "name": "Patch Object", + "version": "1.0" + }, + "identityAttribute": "userName", + "identityResource": "managed/alpha_user", + "ignoredFields": [ + "userName" + ], + "patchAsObject": false + }, + "7d1deabe-cd98-49c8-943f-ca12305775f3": { + "_id": "7d1deabe-cd98-49c8-943f-ca12305775f3", + "_outcomes": [ + { + "displayName": "True", + "id": "true" + }, + { + "displayName": "False", + "id": "false" + } + ], + "_type": { + "_id": "DataStoreDecisionNode", + "collection": true, + "name": "Data Store Decision", + "version": "1.0" + } + }, + "a3d97b53-e38a-4b24-aed0-a021050eb744": { + "_id": "a3d97b53-e38a-4b24-aed0-a021050eb744", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "EmailSuspendNode", + "collection": true, + "name": "Email Suspend Node", + "version": "1.0" + }, + "emailAttribute": "mail", + "emailSuspendMessage": { + "en": "An email has been sent to your address, please verify your email address to update your password. Click the link in that email to proceed." + }, + "emailTemplateName": "updatePassword", + "identityAttribute": "userName", + "objectLookup": true + }, + "d018fcd1-4e22-4160-8c41-63bee51c9cb3": { + "_id": "d018fcd1-4e22-4160-8c41-63bee51c9cb3", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "PageNode", + "collection": true, + "name": "Page Node", + "version": "1.0" + }, + "nodes": [ + { + "_id": "21a99653-a7a7-47ee-b650-f493a84bba09", + "displayName": "Platform Password", + "nodeType": "ValidatedPasswordNode" + } + ], + "pageDescription": { + "en": "Enter new password" + }, + "pageHeader": { + "en": "Update Password" + } + }, + "d1b79744-493a-44fe-bc26-7d324a8caa4e": { + "_id": "d1b79744-493a-44fe-bc26-7d324a8caa4e", + "_outcomes": [ + { + "displayName": "Outcome", + "id": "outcome" + } + ], + "_type": { + "_id": "SessionDataNode", + "collection": true, + "name": "Get Session Data", + "version": "1.0" + }, + "sessionDataKey": "UserToken", + "sharedStateKey": "userName" + } + }, + "saml2Entities": {}, + "scripts": {}, + "socialIdentityProviders": {}, + "themes": [], + "tree": { + "_id": "UpdatePassword", + "description": "Update password using active session", + "enabled": true, + "entryNodeId": "d1b79744-493a-44fe-bc26-7d324a8caa4e", + "identityResource": "managed/alpha_user", + "innerTreeOnly": false, + "mustRun": false, + "noSession": false, + "nodes": { + "0f0904e6-1da3-4cdb-9abf-0d2545016fab": { + "connections": { + "false": "a3d97b53-e38a-4b24-aed0-a021050eb744", + "true": "20237b34-26cb-4a0b-958f-abb422290d42" + }, + "displayName": "Attribute Present Decision", + "nodeType": "AttributePresentDecisionNode", + "x": 288, + "y": 133 + }, + "20237b34-26cb-4a0b-958f-abb422290d42": { + "connections": { + "outcome": "7d1deabe-cd98-49c8-943f-ca12305775f3" + }, + "displayName": "Page Node", + "nodeType": "PageNode", + "x": 526, + "y": 46 + }, + "3990ce1f-cce6-435b-ae1c-f138e89411c1": { + "connections": { + "FAILURE": "e301438c-0bd0-429c-ab0c-66126501069a", + "PATCHED": "70e691a5-1e33-4ac3-a356-e7b6d60d92e0" + }, + "displayName": "Patch Object", + "nodeType": "PatchObjectNode", + "x": 1062, + "y": 189 + }, + "7d1deabe-cd98-49c8-943f-ca12305775f3": { + "connections": { + "false": "e301438c-0bd0-429c-ab0c-66126501069a", + "true": "d018fcd1-4e22-4160-8c41-63bee51c9cb3" + }, + "displayName": "Data Store Decision", + "nodeType": "DataStoreDecisionNode", + "x": 722, + "y": 45 + }, + "a3d97b53-e38a-4b24-aed0-a021050eb744": { + "connections": { + "outcome": "d018fcd1-4e22-4160-8c41-63bee51c9cb3" + }, + "displayName": "Email Suspend Node", + "nodeType": "EmailSuspendNode", + "x": 659, + "y": 223 + }, + "d018fcd1-4e22-4160-8c41-63bee51c9cb3": { + "connections": { + "outcome": "3990ce1f-cce6-435b-ae1c-f138e89411c1" + }, + "displayName": "Page Node", + "nodeType": "PageNode", + "x": 943, + "y": 30 + }, + "d1b79744-493a-44fe-bc26-7d324a8caa4e": { + "connections": { + "outcome": "0f0904e6-1da3-4cdb-9abf-0d2545016fab" + }, + "displayName": "Get Session Data", + "nodeType": "SessionDataNode", + "x": 122, + "y": 129 + } + }, + "staticNodes": { + "70e691a5-1e33-4ac3-a356-e7b6d60d92e0": { + "x": 1212, + "y": 128 + }, + "e301438c-0bd0-429c-ab0c-66126501069a": { + "x": 939, + "y": 290 + }, + "startNode": { + "x": 50, + "y": 25 + } + }, + "transactionalOnly": false, + "uiConfig": { + "categories": "[\"Password Reset\"]" + } + }, + "variable": {} + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/oauth2.app/RCSClient.oauth2.app.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/oauth2.app/RCSClient.oauth2.app.json new file mode 100644 index 000000000..4f783be72 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/oauth2.app/RCSClient.oauth2.app.json @@ -0,0 +1,562 @@ +{ + "application": { + "RCSClient": { + "_id": "RCSClient", + "_provider": { + "_id": "", + "_type": { + "_id": "oauth-oidc", + "collection": false, + "name": "OAuth2 Provider" + }, + "advancedOAuth2Config": { + "allowClientCredentialsInTokenRequestQueryParameters": true, + "allowedAudienceValues": [], + "authenticationAttributes": [ + "uid" + ], + "codeVerifierEnforced": "false", + "defaultScopes": [ + "address", + "phone", + "openid", + "profile", + "email" + ], + "displayNameAttribute": "cn", + "expClaimRequiredInRequestObject": false, + "grantTypes": [ + "implicit", + "urn:ietf:params:oauth:grant-type:saml2-bearer", + "refresh_token", + "password", + "client_credentials", + "urn:ietf:params:oauth:grant-type:device_code", + "authorization_code", + "urn:openid:params:grant-type:ciba", + "urn:ietf:params:oauth:grant-type:uma-ticket", + "urn:ietf:params:oauth:grant-type:jwt-bearer" + ], + "hashSalt": "&{am.oidc.client.subject.identifier.hash.salt}", + "includeClientIdClaimInStatelessTokens": true, + "includeSubnameInTokenClaims": true, + "macaroonTokenFormat": "V2", + "maxAgeOfRequestObjectNbfClaim": 0, + "maxDifferenceBetweenRequestObjectNbfAndExp": 0, + "moduleMessageEnabledInPasswordGrant": false, + "nbfClaimRequiredInRequestObject": false, + "parRequestUriLifetime": 90, + "passwordGrantAuthService": "Login", + "persistentClaims": [], + "refreshTokenGracePeriod": 0, + "requestObjectProcessing": "OIDC", + "requirePushedAuthorizationRequests": false, + "responseTypeClasses": [ + "code|org.forgerock.oauth2.core.AuthorizationCodeResponseTypeHandler", + "device_code|org.forgerock.oauth2.core.TokenResponseTypeHandler", + "token|org.forgerock.oauth2.core.TokenResponseTypeHandler", + "id_token|org.forgerock.openidconnect.IdTokenResponseTypeHandler" + ], + "supportedScopes": [ + "email|Your email address", + "openid|", + "address|Your postal address", + "phone|Your telephone number(s)", + "profile|Your personal information", + "fr:idm:*", + "am-introspect-all-tokens" + ], + "supportedSubjectTypes": [ + "public", + "pairwise" + ], + "tlsCertificateBoundAccessTokensEnabled": true, + "tlsCertificateRevocationCheckingEnabled": false, + "tlsClientCertificateHeaderFormat": "BASE64_ENCODED_CERT", + "tokenCompressionEnabled": false, + "tokenEncryptionEnabled": false, + "tokenExchangeClasses": [ + "urn:ietf:params:oauth:token-type:access_token=>urn:ietf:params:oauth:token-type:access_token|org.forgerock.oauth2.core.tokenexchange.accesstoken.AccessTokenToAccessTokenExchanger", + "urn:ietf:params:oauth:token-type:id_token=>urn:ietf:params:oauth:token-type:id_token|org.forgerock.oauth2.core.tokenexchange.idtoken.IdTokenToIdTokenExchanger", + "urn:ietf:params:oauth:token-type:access_token=>urn:ietf:params:oauth:token-type:id_token|org.forgerock.oauth2.core.tokenexchange.accesstoken.AccessTokenToIdTokenExchanger", + "urn:ietf:params:oauth:token-type:id_token=>urn:ietf:params:oauth:token-type:access_token|org.forgerock.oauth2.core.tokenexchange.idtoken.IdTokenToAccessTokenExchanger" + ], + "tokenSigningAlgorithm": "HS256", + "tokenValidatorClasses": [ + "urn:ietf:params:oauth:token-type:id_token|org.forgerock.oauth2.core.tokenexchange.idtoken.OidcIdTokenValidator", + "urn:ietf:params:oauth:token-type:access_token|org.forgerock.oauth2.core.tokenexchange.accesstoken.OAuth2AccessTokenValidator" + ] + }, + "advancedOIDCConfig": { + "alwaysAddClaimsToToken": true, + "amrMappings": {}, + "authorisedIdmDelegationClients": [], + "authorisedOpenIdConnectSSOClients": [], + "claimsParameterSupported": false, + "defaultACR": [], + "idTokenInfoClientAuthenticationEnabled": true, + "includeAllKtyAlgCombinationsInJwksUri": false, + "jwtSigningKidHeaderMappings": {}, + "loaMapping": {}, + "storeOpsTokens": true, + "supportedAuthorizationResponseEncryptionAlgorithms": [ + "ECDH-ES+A256KW", + "ECDH-ES+A192KW", + "RSA-OAEP", + "ECDH-ES+A128KW", + "RSA-OAEP-256", + "A128KW", + "A256KW", + "ECDH-ES", + "dir", + "A192KW" + ], + "supportedAuthorizationResponseEncryptionEnc": [ + "A256GCM", + "A192GCM", + "A128GCM", + "A128CBC-HS256", + "A192CBC-HS384", + "A256CBC-HS512" + ], + "supportedAuthorizationResponseSigningAlgorithms": [ + "PS384", + "RS384", + "EdDSA", + "ES384", + "HS256", + "HS512", + "ES256", + "RS256", + "HS384", + "ES512", + "PS256", + "PS512", + "RS512" + ], + "supportedRequestParameterEncryptionAlgorithms": [ + "ECDH-ES+A256KW", + "ECDH-ES+A192KW", + "ECDH-ES+A128KW", + "RSA-OAEP", + "RSA-OAEP-256", + "A128KW", + "A256KW", + "ECDH-ES", + "dir", + "A192KW" + ], + "supportedRequestParameterEncryptionEnc": [ + "A256GCM", + "A192GCM", + "A128GCM", + "A128CBC-HS256", + "A192CBC-HS384", + "A256CBC-HS512" + ], + "supportedRequestParameterSigningAlgorithms": [ + "PS384", + "ES384", + "RS384", + "HS256", + "HS512", + "ES256", + "RS256", + "HS384", + "ES512", + "PS256", + "PS512", + "RS512" + ], + "supportedTokenEndpointAuthenticationSigningAlgorithms": [ + "PS384", + "ES384", + "RS384", + "HS256", + "HS512", + "ES256", + "RS256", + "HS384", + "ES512", + "PS256", + "PS512", + "RS512" + ], + "supportedTokenIntrospectionResponseEncryptionAlgorithms": [ + "ECDH-ES+A256KW", + "ECDH-ES+A192KW", + "RSA-OAEP", + "ECDH-ES+A128KW", + "RSA-OAEP-256", + "A128KW", + "A256KW", + "ECDH-ES", + "dir", + "A192KW" + ], + "supportedTokenIntrospectionResponseEncryptionEnc": [ + "A256GCM", + "A192GCM", + "A128GCM", + "A128CBC-HS256", + "A192CBC-HS384", + "A256CBC-HS512" + ], + "supportedTokenIntrospectionResponseSigningAlgorithms": [ + "PS384", + "RS384", + "EdDSA", + "ES384", + "HS256", + "HS512", + "ES256", + "RS256", + "HS384", + "ES512", + "PS256", + "PS512", + "RS512" + ], + "supportedUserInfoEncryptionAlgorithms": [ + "ECDH-ES+A256KW", + "ECDH-ES+A192KW", + "RSA-OAEP", + "ECDH-ES+A128KW", + "RSA-OAEP-256", + "A128KW", + "A256KW", + "ECDH-ES", + "dir", + "A192KW" + ], + "supportedUserInfoEncryptionEnc": [ + "A256GCM", + "A192GCM", + "A128GCM", + "A128CBC-HS256", + "A192CBC-HS384", + "A256CBC-HS512" + ], + "supportedUserInfoSigningAlgorithms": [ + "ES384", + "HS256", + "HS512", + "ES256", + "RS256", + "HS384", + "ES512" + ], + "useForceAuthnForMaxAge": false, + "useForceAuthnForPromptLogin": false + }, + "cibaConfig": { + "cibaAuthReqIdLifetime": 600, + "cibaMinimumPollingInterval": 2, + "supportedCibaSigningAlgorithms": [ + "ES256", + "PS256" + ] + }, + "clientDynamicRegistrationConfig": { + "allowDynamicRegistration": false, + "dynamicClientRegistrationScope": "dynamic_client_registration", + "dynamicClientRegistrationScript": "[Empty]", + "dynamicClientRegistrationSoftwareStatementRequired": false, + "generateRegistrationAccessTokens": true, + "requiredSoftwareStatementAttestedAttributes": [ + "redirect_uris" + ] + }, + "consent": { + "clientsCanSkipConsent": true, + "enableRemoteConsent": false, + "supportedRcsRequestEncryptionAlgorithms": [ + "ECDH-ES+A256KW", + "ECDH-ES+A192KW", + "RSA-OAEP", + "ECDH-ES+A128KW", + "RSA-OAEP-256", + "A128KW", + "A256KW", + "ECDH-ES", + "dir", + "A192KW" + ], + "supportedRcsRequestEncryptionMethods": [ + "A256GCM", + "A192GCM", + "A128GCM", + "A128CBC-HS256", + "A192CBC-HS384", + "A256CBC-HS512" + ], + "supportedRcsRequestSigningAlgorithms": [ + "PS384", + "ES384", + "RS384", + "HS256", + "HS512", + "ES256", + "RS256", + "HS384", + "ES512", + "PS256", + "PS512", + "RS512" + ], + "supportedRcsResponseEncryptionAlgorithms": [ + "ECDH-ES+A256KW", + "ECDH-ES+A192KW", + "ECDH-ES+A128KW", + "RSA-OAEP", + "RSA-OAEP-256", + "A128KW", + "A256KW", + "ECDH-ES", + "dir", + "A192KW" + ], + "supportedRcsResponseEncryptionMethods": [ + "A256GCM", + "A192GCM", + "A128GCM", + "A128CBC-HS256", + "A192CBC-HS384", + "A256CBC-HS512" + ], + "supportedRcsResponseSigningAlgorithms": [ + "PS384", + "ES384", + "RS384", + "HS256", + "HS512", + "ES256", + "RS256", + "HS384", + "ES512", + "PS256", + "PS512", + "RS512" + ] + }, + "coreOAuth2Config": { + "accessTokenLifetime": 3600, + "accessTokenMayActScript": "[Empty]", + "codeLifetime": 120, + "issueRefreshToken": true, + "issueRefreshTokenOnRefreshedToken": true, + "macaroonTokensEnabled": false, + "oidcMayActScript": "[Empty]", + "refreshTokenLifetime": 604800, + "scopesPolicySet": "oauth2Scopes", + "statelessTokensEnabled": true, + "usePolicyEngineForScope": false + }, + "coreOIDCConfig": { + "jwtTokenLifetime": 3600, + "oidcDiscoveryEndpointEnabled": true, + "overrideableOIDCClaims": [], + "supportedClaims": [], + "supportedIDTokenEncryptionAlgorithms": [ + "ECDH-ES+A256KW", + "ECDH-ES+A192KW", + "RSA-OAEP", + "ECDH-ES+A128KW", + "RSA-OAEP-256", + "A128KW", + "A256KW", + "ECDH-ES", + "dir", + "A192KW" + ], + "supportedIDTokenEncryptionMethods": [ + "A256GCM", + "A192GCM", + "A128GCM", + "A128CBC-HS256", + "A192CBC-HS384", + "A256CBC-HS512" + ], + "supportedIDTokenSigningAlgorithms": [ + "PS384", + "ES384", + "RS384", + "HS256", + "HS512", + "ES256", + "RS256", + "HS384", + "ES512", + "PS256", + "PS512", + "RS512" + ] + }, + "deviceCodeConfig": { + "deviceCodeLifetime": 300, + "devicePollInterval": 5, + "deviceUserCodeCharacterSet": "234567ACDEFGHJKLMNPQRSTWXYZabcdefhijkmnopqrstwxyz", + "deviceUserCodeLength": 8, + "realmAllowUnauthorisedAccessToUserCodeForm": false + }, + "pluginsConfig": { + "accessTokenEnricherClass": "org.forgerock.openam.oauth2.OpenAMScopeValidator", + "accessTokenModificationPluginType": "SCRIPTED", + "accessTokenModificationScript": "39c08084-1238-43e8-857f-2e11005eac49", + "accessTokenModifierClass": "org.forgerock.openam.oauth2.OpenAMScopeValidator", + "authorizeEndpointDataProviderClass": "org.forgerock.openam.oauth2.OpenAMScopeValidator", + "authorizeEndpointDataProviderPluginType": "JAVA", + "authorizeEndpointDataProviderScript": "[Empty]", + "evaluateScopeClass": "org.forgerock.openam.oauth2.OpenAMScopeValidator", + "evaluateScopePluginType": "JAVA", + "evaluateScopeScript": "[Empty]", + "oidcClaimsClass": "org.forgerock.openam.oauth2.OpenAMScopeValidator", + "oidcClaimsPluginType": "SCRIPTED", + "oidcClaimsScript": "cf3515f0-8278-4ee3-a530-1bad7424c416", + "userCodeGeneratorClass": "org.forgerock.oauth2.core.plugins.registry.DefaultUserCodeGenerator", + "validateScopeClass": "org.forgerock.openam.oauth2.OpenAMScopeValidator", + "validateScopePluginType": "JAVA", + "validateScopeScript": "[Empty]" + } + }, + "_type": { + "_id": "OAuth2Client", + "collection": true, + "name": "OAuth2 Clients" + }, + "advancedOAuth2ClientConfig": { + "clientUri": [], + "contacts": [], + "customProperties": [], + "descriptions": [], + "grantTypes": [ + "client_credentials" + ], + "introspectionPolicySets": [], + "isConsentImplied": false, + "javascriptOrigins": [], + "logoUri": [], + "mixUpMitigation": false, + "name": [], + "policyUri": [], + "refreshTokenGracePeriod": 0, + "requestUris": [], + "require_pushed_authorization_requests": false, + "responseTypes": [ + "code", + "token", + "id_token", + "code token", + "token id_token", + "code id_token", + "code token id_token", + "device_code", + "device_code id_token" + ], + "sectorIdentifierUri": null, + "softwareIdentity": null, + "softwareVersion": null, + "subjectType": "public", + "tokenEndpointAuthMethod": "client_secret_basic", + "tokenExchangeAuthLevel": 0, + "tosURI": [], + "treeName": "[Empty]", + "updateAccessToken": null + }, + "coreOAuth2ClientConfig": { + "accessTokenLifetime": 0, + "agentgroup": null, + "authorizationCodeLifetime": 0, + "clientName": [], + "clientType": "Confidential", + "defaultScopes": [], + "loopbackInterfaceRedirection": false, + "redirectionUris": [], + "refreshTokenLifetime": 0, + "scopes": [ + "fr:idm:*" + ], + "secretLabelIdentifier": null, + "status": "Active", + "userpassword": null + }, + "coreOpenIDClientConfig": { + "backchannel_logout_session_required": false, + "backchannel_logout_uri": null, + "claims": [], + "clientSessionUri": null, + "defaultAcrValues": [], + "defaultMaxAge": 600, + "defaultMaxAgeEnabled": false, + "jwtTokenLifetime": 0, + "postLogoutRedirectUri": [] + }, + "coreUmaClientConfig": { + "claimsRedirectionUris": [] + }, + "overrideOAuth2ClientConfig": { + "accessTokenMayActScript": "[Empty]", + "accessTokenModificationPluginType": "SCRIPTED", + "accessTokenModificationScript": "c234ba0b-58a1-4cfd-9567-09edde980745", + "accessTokenModifierClass": null, + "authorizeEndpointDataProviderClass": "org.forgerock.oauth2.core.plugins.registry.DefaultEndpointDataProvider", + "authorizeEndpointDataProviderPluginType": "PROVIDER", + "authorizeEndpointDataProviderScript": "[Empty]", + "clientsCanSkipConsent": true, + "customLoginUrlTemplate": null, + "enableRemoteConsent": false, + "evaluateScopeClass": "org.forgerock.oauth2.core.plugins.registry.DefaultScopeEvaluator", + "evaluateScopePluginType": "PROVIDER", + "evaluateScopeScript": "[Empty]", + "issueRefreshToken": true, + "issueRefreshTokenOnRefreshedToken": true, + "oidcClaimsClass": null, + "oidcClaimsPluginType": "SCRIPTED", + "oidcClaimsScript": "1f389a3d-21cf-417c-a6d3-42ea620071f0", + "oidcMayActScript": "[Empty]", + "overrideableOIDCClaims": [], + "providerOverridesEnabled": true, + "remoteConsentServiceId": null, + "scopesPolicySet": "oauth2Scopes", + "statelessTokensEnabled": true, + "tokenEncryptionEnabled": false, + "useForceAuthnForMaxAge": false, + "usePolicyEngineForScope": false, + "validateScopeClass": "org.forgerock.oauth2.core.plugins.registry.DefaultScopeValidator", + "validateScopePluginType": "PROVIDER", + "validateScopeScript": "[Empty]" + }, + "signEncOAuth2ClientConfig": { + "authorizationResponseEncryptionAlgorithm": null, + "authorizationResponseEncryptionMethod": null, + "authorizationResponseSigningAlgorithm": "RS256", + "clientJwtPublicKey": null, + "idTokenEncryptionAlgorithm": "RSA-OAEP-256", + "idTokenEncryptionEnabled": false, + "idTokenEncryptionMethod": "A128CBC-HS256", + "idTokenPublicEncryptionKey": null, + "idTokenSignedResponseAlg": "RS256", + "jwkSet": null, + "jwkStoreCacheMissCacheTime": 60000, + "jwksCacheTimeout": 3600000, + "jwksUri": "http://am.fr-platform:80/am/oauth2/connect/jwk_uri", + "mTLSCertificateBoundAccessTokens": false, + "mTLSSubjectDN": null, + "mTLSTrustedCert": null, + "publicKeyLocation": "jwks_uri", + "requestParameterEncryptedAlg": null, + "requestParameterEncryptedEncryptionAlgorithm": "A128CBC-HS256", + "requestParameterSignedAlg": null, + "tokenEndpointAuthSigningAlgorithm": "RS256", + "tokenIntrospectionEncryptedResponseAlg": "RSA-OAEP-256", + "tokenIntrospectionEncryptedResponseEncryptionAlgorithm": "A128CBC-HS256", + "tokenIntrospectionResponseFormat": "JSON", + "tokenIntrospectionSignedResponseAlg": "RS256", + "userinfoEncryptedResponseAlg": null, + "userinfoEncryptedResponseEncryptionAlgorithm": "A128CBC-HS256", + "userinfoResponseFormat": "JSON", + "userinfoSignedResponseAlg": null + } + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/policyset/oauth2Scopes.policyset.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/policyset/oauth2Scopes.policyset.json new file mode 100644 index 000000000..4a78a05a8 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/policyset/oauth2Scopes.policyset.json @@ -0,0 +1,53 @@ +{ + "policyset": { + "oauth2Scopes": { + "applicationType": "iPlanetAMWebAgentService", + "attributeNames": [], + "conditions": [ + "Script", + "AMIdentityMembership", + "IPv6", + "SimpleTime", + "IPv4", + "LEAuthLevel", + "LDAPFilter", + "AuthScheme", + "Session", + "AND", + "AuthenticateToRealm", + "ResourceEnvIP", + "SessionProperty", + "OAuth2Scope", + "OR", + "Transaction", + "NOT", + "AuthLevel", + "AuthenticateToService" + ], + "createdBy": "id=dsameuser,ou=user,ou=am-config", + "creationDate": 1578580064992, + "description": "The built-in Application used by the OAuth2 scope authorization process.", + "displayName": "Default OAuth2 Scopes Policy Set", + "editable": true, + "entitlementCombiner": "DenyOverride", + "lastModifiedBy": "id=ad62492c-d064-4952-95ed-0a74ed5b2fd1,ou=user,ou=am-config", + "lastModifiedDate": 1761154812786, + "name": "oauth2Scopes", + "resourceComparator": null, + "resourceTypeUuids": [ + "d60b7a71-1dc6-44a5-8e48-e4b9d92dee8b" + ], + "saveIndex": null, + "searchIndex": null, + "subjects": [ + "AuthenticatedUsers", + "NOT", + "Identity", + "OR", + "AND", + "NONE", + "JwtClaim" + ] + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/resourcetype/OAuth2-Scope.resourcetype.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/resourcetype/OAuth2-Scope.resourcetype.json new file mode 100644 index 000000000..9c0913a58 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/resourcetype/OAuth2-Scope.resourcetype.json @@ -0,0 +1,21 @@ +{ + "resourcetype": { + "d60b7a71-1dc6-44a5-8e48-e4b9d92dee8b": { + "actions": { + "GRANT": true + }, + "createdBy": "id=dsameuser,ou=user,ou=am-config", + "creationDate": 1595479030586, + "description": "The built-in OAuth2 Scope Resource Type for OAuth2policy-provided scope.", + "lastModifiedBy": "id=ad62492c-d064-4952-95ed-0a74ed5b2fd1,ou=user,ou=am-config", + "lastModifiedDate": 1761154812166, + "name": "OAuth2 Scope", + "patterns": [ + "*://*:*/*", + "*://*:*/*?*", + "*" + ], + "uuid": "d60b7a71-1dc6-44a5-8e48-e4b9d92dee8b" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/resourcetype/URL.resourcetype.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/resourcetype/URL.resourcetype.json new file mode 100644 index 000000000..cd3145dd3 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/resourcetype/URL.resourcetype.json @@ -0,0 +1,26 @@ +{ + "resourcetype": { + "76656a38-5f8e-401b-83aa-4ccb74ce88d2": { + "actions": { + "DELETE": true, + "GET": true, + "HEAD": true, + "OPTIONS": true, + "PATCH": true, + "POST": true, + "PUT": true + }, + "createdBy": "id=dsameuser,ou=user,ou=am-config", + "creationDate": 1595479030487, + "description": "The built-in URL Resource Type available to OpenAMPolicies.", + "lastModifiedBy": "id=ad62492c-d064-4952-95ed-0a74ed5b2fd1,ou=user,ou=am-config", + "lastModifiedDate": 1761154812387, + "name": "URL", + "patterns": [ + "*://*:*/*", + "*://*:*/*?*" + ], + "uuid": "76656a38-5f8e-401b-83aa-4ccb74ce88d2" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-OAuth2-Access-Token-Modification-Script.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-OAuth2-Access-Token-Modification-Script.script.js new file mode 100644 index 000000000..7b81ba243 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-OAuth2-Access-Token-Modification-Script.script.js @@ -0,0 +1,135 @@ +/* + * Copyright 2019-2021 ForgeRock AS. All Rights Reserved. + * + * Use of this code requires a commercial software license with ForgeRock AS + * or with one of its affiliates. All use shall be exclusively subject + * to such license between the licensee and ForgeRock AS. + */ + +/* + * This script lets you modify information associated with an OAuth2 access token + * with methods provided by the AccessToken (1) interface. + * The changes made to OAuth2 access tokens will directly impact the size of the CTS tokens, + * and, similarly, the size of the JWTs if client-based OAuth2 tokens are utilized. + * When adding/updating fields make sure that the token size remains within client/user-agent limits. + * + * Defined variables: + * accessToken - AccessToken (1). + * The access token to be updated. + * Mutable object, all changes to the access token will be reflected. + * scopes - Set (6). + * Always present, the requested scopes. + * requestProperties - Unmodifiable Map (5). + * Always present, contains a map of request properties: + * requestUri - The request URI. + * realm - The realm that the request relates to. + * requestParams - A map of the request params and/or posted data. + * Each value is a list of one or more properties. + * Please note that these should be handled in accordance with OWASP best practices: + * https://owasp.org/www-community/vulnerabilities/Unsafe_use_of_Reflection. + * clientProperties - Unmodifiable Map (5). + * Present if the client specified in the request was identified, contains a map of client properties: + * clientId - The client's URI for the request locale. + * allowedGrantTypes - List of the allowed grant types (org.forgerock.oauth2.core.GrantType) for the client. + * allowedResponseTypes - List of the allowed response types for the client. + * allowedScopes - List of the allowed scopes for the client. + * customProperties - A map of the custom properties of the client. + * Lists or maps will be included as sub-maps; for example: + * customMap[Key1]=Value1 will be returned as customMap -> Key1 -> Value1. + * To add custom properties to a client, update the Custom Properties field + * in AM Console > Realm Name > Applications > OAuth 2.0 > Clients > Client ID > Advanced. + * identity - AMIdentity (3). + * Always present, the identity of the resource owner. + * session - SSOToken (4). + * Present if the request contains the session cookie, the user's session object. + * scriptName - String (primitive). + * Always present, the display name of the script. + * logger - Always present, the "OAuth2Provider" debug logger instance: + * https://backstage.pingidentity.com/docs/am/7/scripting-guide/scripting-api-global-logger.html#scripting-api-global-logger. + * Corresponding log files will be prefixed with: scripts.OAUTH2_ACCESS_TOKEN_MODIFICATION. + * httpClient - HTTP Client (8). + * Always present, the HTTP Client instance: + * https://backstage.pingidentity.com/docs/am/7/scripting-guide/scripting-api-global-http-client.html#scripting-api-global-http-client. + * + * Return - no value is expected, changes shall be made to the accessToken parameter directly. + * + * Class reference: + * (1) AccessToken - https://backstage.pingidentity.com/docs/am/7/apidocs/org/forgerock/oauth2/core/AccessToken.html. + * (3) AMIdentity - https://backstage.pingidentity.com/docs/am/7/apidocs/com/sun/identity/idm/AMIdentity.html. + * (4) SSOToken - https://backstage.pingidentity.com/docs/am/7/apidocs/com/iplanet/sso/SSOToken.html. + * (5) Map - https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/HashMap.html, + * or https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/LinkedHashMap.html. + * (6) Set - https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/HashSet.html. + * (8) Client - https://backstage.pingidentity.com/docs/am/7/apidocs/org/forgerock/http/Client.html. + */ + +/* EXAMPLE +(function () { + var frJava = JavaImporter( + org.forgerock.http.protocol.Request, + org.forgerock.http.protocol.Response + ); + + // Always includes this field in the token. + accessToken.setField('key1', 'value1'); + + // Receives and adds to the access token additional values by performing a REST call to an external service. + // WARNING: Below, you will find a reference to a third-party site, which is provided only as an example. + var uri = 'https://jsonplaceholder.typicode.com/posts'; + + try { + var request = new frJava.Request(); + + // You can chain methods that return the request object. + request.setUri(uri) + .setMethod('POST') + .setEntity(JSON.stringify({ + updatedFields: { + key2: 'value2', + key3: 'value3' + } + })); + + // You can call a method when chaining is not possible. + request.getHeaders().add('Content-Type', 'application/json; charset=UTF-8'); + + // Sends the request and receives the response. + var response = httpClient.send(request).getOrThrow(); + + // Checks if the response status is as expected. + if (response.getStatus() === org.forgerock.http.protocol.Status.CREATED) { + var result = JSON.parse(response.getEntity().getString()); + + // Set multiple token fields at once. + accessToken.setFields(result.updatedFields); + } else { + logger.error('Unable to obtain access token modifications. Status: ' + response.getStatus() + '. Content: ' + response.getEntity().getString()); + } + } catch (e) { + logger.error('The request processing was interrupted. ' + e); + + // The access token request fails with the HTTP 500 error in this case. + throw ('Unable to obtain response from: ' + uri); + } + + // Adds new fields containing identity attribute values to the access token. + accessToken.setField('mail', identity.getAttribute('mail')); + accessToken.setField('phone', identity.getAttribute('telephoneNumber').toArray()[0]); + + // Adds new fields containing the session property values. + // NOTE: session may not be available for non-interactive authorization grants. + if (session) { + try { + accessToken.setField('ipAddress', session.getProperty('Host')); + } catch (e) { + logger.error('Unable to retrieve session property value. ' + e); + } + } + + // Removes a native field from the token entry, that was set by AM. + // WARNING: removing native fields from the token may result in loss of functionality. + // accessToken.removeTokenName() + + // No return value is expected. Let it be undefined. +}()); +*/ diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-OAuth2-Access-Token-Modification-Script.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-OAuth2-Access-Token-Modification-Script.script.json new file mode 100644 index 000000000..23966ff41 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-OAuth2-Access-Token-Modification-Script.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "39c08084-1238-43e8-857f-2e11005eac49": { + "_id": "39c08084-1238-43e8-857f-2e11005eac49", + "context": "OAUTH2_ACCESS_TOKEN_MODIFICATION", + "createdBy": "null", + "creationDate": 0, + "default": false, + "description": "Default alpha realm script for OAuth2 Access Token Modification", + "evaluatorVersion": "1.0", + "language": "JAVASCRIPT", + "lastModifiedBy": "id=ad62492c-d064-4952-95ed-0a74ed5b2fd1,ou=user,ou=am-config", + "lastModifiedDate": 1761154811282, + "name": "Alpha OAuth2 Access Token Modification Script", + "script": "file://Alpha-OAuth2-Access-Token-Modification-Script.script.js" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-OIDC-Claims-Script.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-OIDC-Claims-Script.script.js new file mode 100644 index 000000000..eabbbe810 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-OIDC-Claims-Script.script.js @@ -0,0 +1,620 @@ +/* + * Copyright 2014-2021 ForgeRock AS. All Rights Reserved + * + * Use of this code requires a commercial software license with ForgeRock AS + * or with one of its affiliates. All use shall be exclusively subject + * to such license between the licensee and ForgeRock AS. + */ + +/* + * This script computes claim values returned in ID tokens and/or at the UserInfo Endpoint. + * The claim values are computed for: + * the claims derived from the requested scopes, + * the claims provided by the authorization server, + * and the claims requested by the client via the claims parameter. + * + * In the CONFIGURATION AND CUSTOMIZATION section, you can + * define the scope-to-claims mapping, and + * assign to each claim a resolver function that will compute the claim value. + * + * Defined variables (class references are provided below): + * scopes - Set (6). + * Always present, the requested scopes. + * claims - Map (5). + * Always present, default server provided claims. + * claimObjects - List (7, 2). + * Always present, the default server provided claims. + * requestedClaims - Map> (5). + * Always present, not empty if the request contains the claims parameter and the server has enabled + * claims_parameter_supported. A map of the requested claims to possible values, otherwise empty; + * requested claims with no requested values will have a key but no value in the map. A key with + * a single value in its Set (6) indicates that this is the only value that should be returned. + * requestedTypedClaims - List (7, 2). + * Always present, the requested claims. + * Requested claims with no requested values will have a claim with no values. + * A claim with a single value indicates this is the only value that should be returned. + * claimsLocales - List (7). + * The values from the 'claims_locales' parameter. + * See https://openid.net/specs/openid-connect-core-1_0.html#ClaimsLanguagesAndScripts for the OIDC specification details. + * requestProperties - Unmodifiable Map (5). + * Always present, contains a map of request properties: + * requestUri - The request URI. + * realm - The realm that the request relates to. + * requestParams - A map of the request params and/or posted data. + * Each value is a list of one or more properties. + * Please note that these should be handled in accordance with OWASP best practices: + * https://owasp.org/www-community/vulnerabilities/Unsafe_use_of_Reflection. + * clientProperties - Unmodifiable Map (5). + * Present if the client specified in the request was identified, contains a map of client properties: + * clientId - The client's URI for the request locale. + * allowedGrantTypes - List of the allowed grant types (org.forgerock.oauth2.core.GrantType) for the client. + * allowedResponseTypes - List of the allowed response types for the client. + * allowedScopes - List of the allowed scopes for the client. + * customProperties - A map of the custom properties of the client. + * Lists or maps will be included as sub-maps; for example: + * customMap[Key1]=Value1 will be returned as customMap -> Key1 -> Value1. + * To add custom properties to a client, update the Custom Properties field + * in AM Console > Realm Name > Applications > OAuth 2.0 > Clients > Client ID > Advanced. + * identity - AMIdentity (3). + * Always present, the identity of the resource owner. + * session - SSOToken (4). + * Present if the request contains the session cookie, the user's session object. + * scriptName - String (primitive). + * Always present, the display name of the script. + * logger - Always present, the "OAuth2Provider" debug logger instance: + * https://backstage.pingidentity.com/docs/am/7/scripting-guide/scripting-api-global-logger.html#scripting-api-global-logger. + * Corresponding files will be prefixed with: scripts.OIDC_CLAIMS. + * httpClient - HTTP Client (8). + * Always present, the HTTP Client instance: + * https://backstage.pingidentity.com/docs/am/7/scripting-guide/scripting-api-global-http-client.html#scripting-api-global-http-client. + * In order to use the client, you may need to add + * org.forgerock.http.Client, + * org.forgerock.http.protocol.*, + * and org.forgerock.util.promise.PromiseImpl + * to the allowed Java classes in the scripting engine configuration, as described in: + * https://backstage.pingidentity.com/docs/am/7/scripting-guide/script-engine-security.html + * + * Return - a new UserInfoClaims(Map values, Map> compositeScopes) (1) object. + * The result of the last statement in the script is returned to the server. + * Currently, the Immediately Invoked Function Expression (also known as Self-Executing Anonymous Function) + * is the last (and only) statement in this script, and its return value will become the script result. + * Do not use "return variable" statement outside of a function definition. + * See RESULTS section for additional details. + * + * Class reference: + * (1) UserInfoClaims - https://backstage.pingidentity.com/docs/am/7/apidocs/org/forgerock/oauth2/core/UserInfoClaims.html. + * (2) Claim - https://backstage.pingidentity.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html). + * An instance of org.forgerock.openidconnect.Claim has methods to access + * the claim name, requested values, locale, and whether the claim is essential. + * (3) AMIdentity - https://backstage.pingidentity.com/docs/am/7/apidocs/com/sun/identity/idm/AMIdentity.html. + * (4) SSOToken - https://backstage.pingidentity.com/docs/am/7/apidocs/com/iplanet/sso/SSOToken.html. + * (5) Map - https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/HashMap.html, + * or https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/LinkedHashMap.html. + * (6) Set - https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/HashSet.html. + * (7) List - https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/ArrayList.html. + * (8) Client - https://backstage.pingidentity.com/docs/am/7/apidocs/org/forgerock/http/Client.html. +*/ + +(function () { + // SETUP + + /** + * Claim processing utilities. + * An object that contains reusable functions for processing claims. + * @see CLAIM PROCESSING UTILITIES section for details. + */ + var utils = getUtils(); + + // CONFIGURATION AND CUSTOMIZATION + + /** + * OAuth 2.0 scope values (scopes) can be used by the Client to request OIDC claims. + * + * Call this configuration method, and pass in as the first argument + * an object that maps a scope value to an array of claim names + * to specify which claims need to be processed and returned for the requested scopes. + * @see {@link https://openid.net/specs/openid-connect-core-1_0.html#ScopeClaims} + * for the scope values that could be used to request claims as defined in the OIDC specification. + * + * Below, find a default configuration that is expected to work in the current environment. + * + * CUSTOMIZATION + * You can choose the claim names returned for a scope. + */ + utils.setScopeClaimsMap({ + profile: [ + 'name', + 'family_name', + 'given_name', + 'zoneinfo', + 'locale' + ], + email: ['email'], + address: ['address'], + phone: ['phone_number'] + }); + + /** + * In this script, each claim + * derived from the requested scopes, + * provided by the authorization server, and + * requested by the client via the claims parameter + * will be processed by a function associated with the claim name. + * + * Call this configuration method, and pass in as the first argument + * an object that maps a claim name to a resolver function, + * which will be automatically executed for each claim processed by the script. + * + * The claim resolver function will receive the requested claim information + * in an instance of org.forgerock.openidconnect.Claim as the first argument. + * @see {@link https://backstage.pingidentity.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} + * for details on the Claim class. + * + * If the claim resolver function returns a value, + * other than undefined or null, + * the claim will be included in the script's results. + * + * The Claim instance provides methods to check + * what the name of the claim is, + * which values the claim request contains, + * whether the claim is essential, and + * which locale the claim is associated with. + * The resolver function can consider this information when computing and returning the claim value. + * + * Below, find a default configuration that is expected to work in the current environment. + * A reusable function, utils.getUserProfileClaimResolver(String attribute-name), + * is called to return a claim resolver function based on a user profile attribute. + * @see CLAIM RESOLVERS section for the implementation details and examples. + * For the address claim, an example of a claim resolver that uses another claim resolver is provided. + * + * CUSTOMIZATION + * You can reuse the predefined utils methods with your custom arguments. + * You can also specify a custom resolver function for a claim name, + * that will compute and return the claim value—as shown in the commented out example below. + */ + utils.setClaimResolvers({ + /* + // An example of a simple claim resolver function that is defined for a claim + // directly in the configuration object: + custom-claim-name: function (requestedClaim) { + // In this case, initially, the claim value comes straight from a user profile attribute value: + var claimValue = identity.getAttribute('custom-attribute-name').toArray()[0] + + // Optionally, provide additional logic for processing (filtering, formatting, etc.) the claim value. + // You can use: + // requestedClaim.getName() + // requestedClaim.getValues() + // requestedClaim.getLocale() + // requestedClaim.isEssential() + + return claimValue + }, + */ + /** + * The use of utils.getUserProfileClaimResolver shows how + * an argument passed to a function that returns a claim resolver + * becomes available to the resolver function (via its lexical context). + */ + name: utils.getUserProfileClaimResolver('cn'), + family_name: utils.getUserProfileClaimResolver('sn'), + given_name: utils.getUserProfileClaimResolver('givenname'), + zoneinfo: utils.getUserProfileClaimResolver('preferredtimezone'), + locale: utils.getUserProfileClaimResolver('preferredlocale'), + email: utils.getUserProfileClaimResolver('mail'), + address: utils.getAddressClaimResolver( + /** + * The passed in user profile claim resolver function + * can be used by the address claim resolver function + * to obtain the claim value to be formatted as per the OIDC specification: + * @see https://openid.net/specs/openid-connect-core-1_0.html#AddressClaim. + */ + utils.getUserProfileClaimResolver('postaladdress') + ), + phone_number: utils.getUserProfileClaimResolver('telephonenumber') + }); + + // CLAIM PROCESSING UTILITIES + + /** + * @returns {object} An object that contains reusable claim processing utilities. + * @see PUBLIC METHODS section and the return statement for the list of exported functions. + */ + function getUtils () { + // IMPORT JAVA + + /** + * Provides Java scripting functionality. + * @see {@link https://developer.mozilla.org/en-US/docs/Mozilla/Projects/Rhino/Scripting_Java#javaimporter_constructor}. + */ + var frJava = JavaImporter( + org.forgerock.oauth2.core.exceptions.InvalidRequestException, + org.forgerock.oauth2.core.UserInfoClaims, + org.forgerock.openidconnect.Claim, + + java.util.LinkedHashMap, + java.util.ArrayList + ); + + // SET UP CONFIGURATION + + /** + * Placeholder for a configuration option that contains + * an object that maps the supported scope values (scopes) + * and the corresponding claim names for each scope value. + */ + var scopeClaimsMap; + + /** + * Placeholder for a configuration option that contains + * an object that maps the supported claim names + * and the resolver functions returning the claim value. + */ + var claimResolvers; + + /** + * A (public) method that accepts an object that maps the supported scopes and the corresponding claim names, + * and assigns it to a (private) variable that serves as a configuration option. + * @param {object} params - An object that maps each supported scope value to an array of claim names, + * in order to specify which claims need to be processed for the requested scopes. + * @see {@link https://openid.net/specs/openid-connect-core-1_0.html#ScopeClaims} for details. + * @param {string[]} [params.profile] - An array of claim names to be returned if the profile scope is requested. + * @param {string[]} [params.email] - An array of claim names to be returned if the email scope is requested. + * @param {string[]} [params.address] - An array of claim names to be returned if the address scope is requested. + * @param {string[]} [params.phone] - An array of claim names to be returned if the phone scope is requested. + * @returns {undefined} + */ + function setScopeClaimsMap(params) { + scopeClaimsMap = params; + } + + /** + * A (public) method that accepts an object that maps the supported claim names + * and the resolver functions returning the claim value, + * and assigns it to a (private) variable that serves as a configuration option. + * @param {object} params - An object that maps + * each supported claim name to a function that computes and returns the claim value. + */ + function setClaimResolvers(params) { + claimResolvers = params; + } + + // CLAIM RESOLVERS + + /** + * Claim resolvers are functions that return a claim value. + * @param {*} + * @returns {*} + */ + + /** + * Defines a claim resolver based on a user profile attribute. + * @param {string} attributeName - Name of the user profile attribute. + * @returns {function} A function that will determine the claim value + * based on the user profile attribute and the (requested) claim properties. + */ + function getUserProfileClaimResolver (attributeName) { + /** + * Resolves a claim with a user profile attribute value. + * Returns undefined if the identity attribute is not populated, + * OR if the claim has requested values that do not contain the identity attribute value. + * ATTENTION: the aforementioned comparison is case-sensitive. + * @param {org.forgerock.openidconnect.Claim} claim + * An object that provides methods to obtain information/requirements associated with a claim. + * @see {@link https://backstage.pingidentity.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for details. + * @returns {string|HashSet|undefined} + */ + function resolveClaim(claim) { + var userProfileValue; + + if (identity) { + userProfileValue = getClaimValueFromSet(claim, identity.getAttribute(attributeName)); + + if (userProfileValue && !userProfileValue.isEmpty()) { + if (!claim.getValues() || claim.getValues().isEmpty() || claim.getValues().contains(userProfileValue)) { + return userProfileValue; + } + } + } + } + + return resolveClaim; + } + + /** + * Returns an address claim resolver based on a claim value obtained with another claim resolver. + * @param {function} resolveClaim - A function that returns a claim value. + * @returns {function} A function that will accept a claim as an argument, + * run the claim resolver function for the claim and obtain the claim value, + * and apply additional formatting to the value before returning it. + */ + function getAddressClaimResolver (resolveClaim) { + /** + * Creates an address claim object from a value returned by a claim resolver, + * and returns the address claim object as the claim value. + * @see {@link https://openid.net/specs/openid-connect-core-1_0.html#AddressClaim}. + * The claim value is obtained with a claim resolving function available from the closure. + * @param {org.forgerock.openidconnect.Claim} claim + * An object that provides methods to obtain information/requirements associated with a claim. + * @see {@link https://backstage.pingidentity.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for details. + * @returns {java.util.LinkedHashMap|undefined} The address claim object created from a claim value. + */ + function resolveAddressClaim(claim) { + var claimValue = resolveClaim(claim); + var addressObject; + + if (isClaimValueValid(claimValue)) { + addressObject = new frJava.LinkedHashMap(); + + addressObject.put('formatted', claimValue); + + return addressObject; + } + } + + return resolveAddressClaim; + } + + /** + * Returns an essential claim resolver based on a claim value obtained with another claim resolver. + * @param {function} resolveClaim - A function that returns a claim value. + * @returns {function} A function that will accept a claim as an argument, + * run the claim resolver function for the claim and obtain the claim value, + * and apply additional logic for essential claims. + */ + function getEssentialClaimResolver (resolveClaim) { + /** + * Returns a claim value or throws an error. + * The claim value is obtained with a claim resolving function available from the closure. + * Throws an exception if the claim is essential and no value is returned for the claim. + * + * Use of this resolver is optional. + * @see {@link https://openid.net/specs/openid-connect-core-1_0.html#IndividualClaimsRequests} stating: + * "Note that even if the Claims are not available because the End-User did not authorize their release or they are not present, + * the Authorization Server MUST NOT generate an error when Claims are not returned, whether they are Essential or Voluntary, + * unless otherwise specified in the description of the specific claim." + * + * @param {org.forgerock.openidconnect.Claim} claim + * An object that provides methods to obtain information/requirements associated with a claim. + * @see {@link https://backstage.pingidentity.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for details. + * @returns {*} + * @throws {org.forgerock.oauth2.core.exceptions.InvalidRequestException} + */ + function resolveEssentialClaim(claim) { + var claimValue = resolveClaim(claim); + + if (claim.isEssential() && !isClaimValueValid(claimValue)) { + throw new frJava.InvalidRequestException('Could not provide value for essential claim: ' + claim.getName()); + } + + return claimValue; + } + + return resolveEssentialClaim; + } + + /** + * Provides default resolution for a claim. + * Use it if a claim-specific resolver is not defined in the configuration. + * @param {org.forgerock.openidconnect.Claim} claim + * An object that provides methods to obtain information/requirements associated with a claim. + * @see {@link https://backstage.pingidentity.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for details. + * @returns {*} A single value associated with this claim. + */ + function resolveAnyClaim (claim) { + if (claim.getValues().size() === 1) { + return claim.getValues().toArray()[0]; + } + } + + // UTILITIES + + /** + * Returns claim value from a set. + * If the set contains a single value, returns the value. + * If the set contains multiple values, returns the set. + * Otherwise, returns undefined. + * + * @param {org.forgerock.openidconnect.Claim} claim + * An object that provides methods to obtain information/requirements associated with a claim. + * @see {@link https://backstage.pingidentity.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for details. + * @param {java.util.HashSet} set The set—for example, a user profile attribute value. + * @returns {string|java.util.HashSet|undefined} + */ + function getClaimValueFromSet (claim, set) { + if (set && set.size()) { + if (set.size() === 1) { + return set.toArray()[0]; + } else { + return set; + } + } else if (logger.warningEnabled()) { + logger.warning('OIDC Claims script. Got an empty set for claim: ' + claim.getName()); + } + } + + function isClaimValueValid (claimValue) { + if (typeof claimValue === 'undefined' || claimValue === null) { + return false; + } + + return true; + } + + // CLAIM PROCESSING + + /** + * Constructs and returns an object populated with the computed claim values + * and the requested scopes mapped to the claim names. + * @returns {org.forgerock.oauth2.core.UserInfoClaims} The object to be returned to the authorization server. + * @see {@link https://backstage.pingidentity.com/docs/am/7/apidocs/org/forgerock/oauth2/core/UserInfoClaims.html}. + * @see RESULTS section for the use of this function. + */ + function getUserInfoClaims () { + return new frJava.UserInfoClaims(getComputedClaims(), getCompositeScopes()); + } + + /** + * Creates a map of (requested) claim names populated with the computed claim values. + * @returns {java.util.LinkedHashMap} + * A map of the requested claim names and the corresponding claim values. + */ + function getComputedClaims () { + /** + * Creates a complete list of claim objects from: + * the claims derived from the scopes, + * the claims provided by the authorization server, + * and the claims requested by the client. + * @returns {java.util.ArrayList} + * Returns a complete list of org.forgerock.openidconnect.Claim objects available to the script. + * @see {@link https://backstage.pingidentity.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for the claim object details. + */ + function getClaims() { + /** + * Returns a list of claim objects for the requested scopes. + * Uses the scopeClaimsMap configuration option to derive the claim names; + * no other properties of a claim derived from a scope are populated. + * @returns {java.util.ArrayList} + * A list of org.forgerock.openidconnect.Claim objects derived from the requested scopes. + * @see {@link https://backstage.pingidentity.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for the claim object details. + */ + function convertScopeToClaims() { + var claims = new frJava.ArrayList(); + + scopes.toArray().forEach(function (scope) { + if (String(scope) !== 'openid' && scopeClaimsMap[scope]) { + scopeClaimsMap[scope].forEach(function (claimName) { + claims.add(new frJava.Claim(claimName)); + }); + } + }); + + return claims; + } + + var claims = new frJava.ArrayList(); + + claims.addAll(convertScopeToClaims()); + claims.addAll(claimObjects); + claims.addAll(requestedTypedClaims); + + return claims; + } + + /** + * Computes and returns a claim value. + * To obtain the claim value, uses the resolver function specified for the claim in the claimResolvers configuration object. + * @see claimResolvers + * If no resolver function is found, uses the default claim resolver function. + * + * @param {org.forgerock.openidconnect.Claim} claim + * An object that provides methods to obtain information/requirements associated with a claim. + * @see {@link https://backstage.pingidentity.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for details. + * @returns {*} Claim value. + * @throws {org.forgerock.oauth2.core.exceptions.InvalidRequestException} + * Rethrows this exception if a claim resolver throws it. + * You can throw org.forgerock.oauth2.core.exceptions.InvalidRequestException from your custom claim resolver + * if you want to terminate the claim processing. + */ + function computeClaim(claim) { + var resolveClaim; + var message; + + try { + resolveClaim = claimResolvers[claim.getName()] || resolveAnyClaim; + + return resolveClaim(claim); + } catch (e) { + message = 'OIDC Claims script exception. Unable to resolve OIDC Claim. ' + e; + + if (String(e).indexOf('org.forgerock.oauth2.core.exceptions.InvalidRequestException') !== -1) { + throw e; + } + + if (logger.warningEnabled()) { + logger.warning(message); + } + } + } + + var computedClaims = new frJava.LinkedHashMap(); + + getClaims().toArray().forEach(function (claim) { + var claimValue = computeClaim(claim); + + if (isClaimValueValid(claimValue)) { + computedClaims.put(claim.getName(), claimValue); + } else { + /** + * If a claim has been processed, but appears in the list again, + * and its value cannot be computed under the new conditions, + * the claim is removed from the final result. + * + * For example, a claim could be mapped to a scope and found in the user profile, + * but also requested by the client with required values that don't match the computed one. + * @see {link https://openid.net/specs/openid-connect-core-1_0.html#IndividualClaimsRequests}. + * for the relevant OIDC specification details. + */ + computedClaims.remove(claim.getName()); + } + }); + + return computedClaims; + } + + /** + * Creates a map of requested scopes and the corresponding claim names. + * @returns {java.util.LinkedHashMap} + */ + function getCompositeScopes () { + var compositeScopes = new frJava.LinkedHashMap(); + + scopes.toArray().forEach(function (scope) { + var scopeClaims = new frJava.ArrayList(); + + if (scopeClaimsMap[scope]) { + scopeClaimsMap[scope].forEach(function (claimName) { + scopeClaims.add(claimName); + }); + } + + if (scopeClaims.size()) { + compositeScopes.put(scope, scopeClaims); + } + }); + + return compositeScopes; + } + + // PUBLIC METHODS + + return { + setScopeClaimsMap: setScopeClaimsMap, + setClaimResolvers: setClaimResolvers, + getUserProfileClaimResolver: getUserProfileClaimResolver, + getAddressClaimResolver: getAddressClaimResolver, + getEssentialClaimResolver: getEssentialClaimResolver, + getUserInfoClaims: getUserInfoClaims + }; + } + + // RESULTS + + /** + * This script returns an instance of the org.forgerock.oauth2.core.UserInfoClaims class + * populated with the computed claim values and + * the requested scopes mapped to the claim names. + * @see {@link https://backstage.pingidentity.com/docs/am/7/apidocs/org/forgerock/oauth2/core/UserInfoClaims.html}. + * + * Assigning it to a variable gives you an opportunity + * to log the content of the returned value during development. + */ + var userInfoClaims = utils.getUserInfoClaims(); + + /* + logger.error(scriptName + ' results:') + logger.error('Values: ' + userInfoClaims.getValues()) + logger.error('Scopes: ' + userInfoClaims.getCompositeScopes()) + */ + + return userInfoClaims; +}()); diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-OIDC-Claims-Script.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-OIDC-Claims-Script.script.json new file mode 100644 index 000000000..57b924d46 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-OIDC-Claims-Script.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "cf3515f0-8278-4ee3-a530-1bad7424c416": { + "_id": "cf3515f0-8278-4ee3-a530-1bad7424c416", + "context": "OIDC_CLAIMS", + "createdBy": "null", + "creationDate": 0, + "default": false, + "description": "Default alpha realm script for OIDC claims", + "evaluatorVersion": "1.0", + "language": "JAVASCRIPT", + "lastModifiedBy": "id=ad62492c-d064-4952-95ed-0a74ed5b2fd1,ou=user,ou=am-config", + "lastModifiedDate": 1761154811397, + "name": "Alpha OIDC Claims Script", + "script": "file://Alpha-OIDC-Claims-Script.script.js" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-endUserUIClient-OAuth2-Access-Token-Modification-Script.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-endUserUIClient-OAuth2-Access-Token-Modification-Script.script.js new file mode 100644 index 000000000..8848fbbc9 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-endUserUIClient-OAuth2-Access-Token-Modification-Script.script.js @@ -0,0 +1,12 @@ +(function () { + if (scopes.contains('fr:autoaccess:*') || scopes.contains('fr:iga:*') || scopes.contains('fr:idc:analytics:*')) { + var fr = JavaImporter( + com.sun.identity.idm.IdType + ); + var groups = []; + identity.getMemberships(fr.IdType.GROUP).toArray().forEach(function (group) { + groups.push(group.getAttribute('cn').toArray()[0]); + }); + accessToken.setField('groups', groups); + } +}()); diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-endUserUIClient-OAuth2-Access-Token-Modification-Script.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-endUserUIClient-OAuth2-Access-Token-Modification-Script.script.json new file mode 100644 index 000000000..bc45d57e4 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-endUserUIClient-OAuth2-Access-Token-Modification-Script.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "e232cff3-2460-47cd-80b2-36c86c0d0f06": { + "_id": "e232cff3-2460-47cd-80b2-36c86c0d0f06", + "context": "OAUTH2_ACCESS_TOKEN_MODIFICATION", + "createdBy": "null", + "creationDate": 0, + "default": false, + "description": "Used by endUserUIClient", + "evaluatorVersion": "1.0", + "language": "JAVASCRIPT", + "lastModifiedBy": "id=ad62492c-d064-4952-95ed-0a74ed5b2fd1,ou=user,ou=am-config", + "lastModifiedDate": 1761154811531, + "name": "Alpha endUserUIClient OAuth2 Access Token Modification Script", + "script": "file://Alpha-endUserUIClient-OAuth2-Access-Token-Modification-Script.script.js" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-endUserUIClient-OIDC-Claims-Script.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-endUserUIClient-OIDC-Claims-Script.script.js new file mode 100644 index 000000000..b2f53ad69 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-endUserUIClient-OIDC-Claims-Script.script.js @@ -0,0 +1,621 @@ +/* + * Copyright 2014-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +/* + * This script computes claim values returned in ID tokens and/or at the UserInfo Endpoint. + * The claim values are computed for: + * the claims derived from the requested scopes, + * the claims provided by the authorization server, + * and the claims requested by the client via the claims parameter. + * + * In the CONFIGURATION AND CUSTOMIZATION section, you can + * define the scope-to-claims mapping, and + * assign to each claim a resolver function that will compute the claim value. + * + * Defined variables (class references are provided below): + * scopes - Set (6). + * Always present, the requested scopes. + * claims - Map (5). + * Always present, default server provided claims. + * claimObjects - List (7, 2). + * Always present, the default server provided claims. + * requestedClaims - Map> (5). + * Always present, not empty if the request contains the claims parameter and the server has enabled + * claims_parameter_supported. A map of the requested claims to possible values, otherwise empty; + * requested claims with no requested values will have a key but no value in the map. A key with + * a single value in its Set (6) indicates that this is the only value that should be returned. + * requestedTypedClaims - List (7, 2). + * Always present, the requested claims. + * Requested claims with no requested values will have a claim with no values. + * A claim with a single value indicates this is the only value that should be returned. + * claimsLocales - List (7). + * The values from the 'claims_locales' parameter. + * See https://openid.net/specs/openid-connect-core-1_0.html#ClaimsLanguagesAndScripts for the OIDC specification details. + * requestProperties - Unmodifiable Map (5). + * Always present, contains a map of request properties: + * requestUri - The request URI. + * realm - The realm that the request relates to. + * requestParams - A map of the request params and/or posted data. + * Each value is a list of one or more properties. + * Please note that these should be handled in accordance with OWASP best practices: + * https://owasp.org/www-community/vulnerabilities/Unsafe_use_of_Reflection. + * clientProperties - Unmodifiable Map (5). + * Present if the client specified in the request was identified, contains a map of client properties: + * clientId - The client's URI for the request locale. + * allowedGrantTypes - List of the allowed grant types (org.forgerock.oauth2.core.GrantType) for the client. + * allowedResponseTypes - List of the allowed response types for the client. + * allowedScopes - List of the allowed scopes for the client. + * customProperties - A map of the custom properties of the client. + * Lists or maps will be included as sub-maps; for example: + * customMap[Key1]=Value1 will be returned as customMap -> Key1 -> Value1. + * To add custom properties to a client, update the Custom Properties field + * in AM Console > Realm Name > Applications > OAuth 2.0 > Clients > Client ID > Advanced. + * identity - AMIdentity (3). + * Always present, the identity of the resource owner. + * session - SSOToken (4). + * Present if the request contains the session cookie, the user's session object. + * scriptName - String (primitive). + * Always present, the display name of the script. + * logger - Always present, the "OAuth2Provider" debug logger instance: + * https://backstage.forgerock.com/docs/am/7/scripting-guide/scripting-api-global-logger.html#scripting-api-global-logger. + * Corresponding files will be prefixed with: scripts.OIDC_CLAIMS. + * httpClient - HTTP Client (8). + * Always present, the HTTP Client instance: + * https://backstage.forgerock.com/docs/am/7/scripting-guide/scripting-api-global-http-client.html#scripting-api-global-http-client. + * In order to use the client, you may need to add + * org.forgerock.http.Client, + * org.forgerock.http.protocol.*, + * and org.forgerock.util.promise.PromiseImpl + * to the allowed Java classes in the scripting engine configuration, as described in: + * https://backstage.forgerock.com/docs/am/7/scripting-guide/script-engine-security.html + * + * Return - a new UserInfoClaims(Map values, Map> compositeScopes) (1) object. + * The result of the last statement in the script is returned to the server. + * Currently, the Immediately Invoked Function Expression (also known as Self-Executing Anonymous Function) + * is the last (and only) statement in this script, and its return value will become the script result. + * Do not use "return variable" statement outside of a function definition. + * See RESULTS section for additional details. + * + * Class reference: + * (1) UserInfoClaims - https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/oauth2/core/UserInfoClaims.html. + * (2) Claim - https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html). + * An instance of org.forgerock.openidconnect.Claim has methods to access + * the claim name, requested values, locale, and whether the claim is essential. + * (3) AMIdentity - https://backstage.forgerock.com/docs/am/7/apidocs/com/sun/identity/idm/AMIdentity.html. + * (4) SSOToken - https://backstage.forgerock.com/docs/am/7/apidocs/com/iplanet/sso/SSOToken.html. + * (5) Map - https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/HashMap.html, + * or https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/LinkedHashMap.html. + * (6) Set - https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/HashSet.html. + * (7) List - https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/ArrayList.html. + * (8) Client - https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/http/Client.html. +*/ + +(function () { + // SETUP + + /** + * Claim processing utilities. + * An object that contains reusable functions for processing claims. + * @see CLAIM PROCESSING UTILITIES section for details. + */ + var utils = getUtils(); + + // CONFIGURATION AND CUSTOMIZATION + + /** + * OAuth 2.0 scope values (scopes) can be used by the Client to request OIDC claims. + * + * Call this configuration method, and pass in as the first argument + * an object that maps a scope value to an array of claim names + * to specify which claims need to be processed and returned for the requested scopes. + * @see {@link https://openid.net/specs/openid-connect-core-1_0.html#ScopeClaims} + * for the scope values that could be used to request claims as defined in the OIDC specification. + * + * Below, find a default configuration that is expected to work in the current environment. + * + * CUSTOMIZATION + * You can choose the claim names returned for a scope. + */ + utils.setScopeClaimsMap({ + profile: [ + 'name', + 'family_name', + 'given_name', + 'zoneinfo', + 'locale' + ], + email: ['email'], + address: ['address'], + phone: ['phone_number'] + }); + + /** + * In this script, each claim + * derived from the requested scopes, + * provided by the authorization server, and + * requested by the client via the claims parameter + * will be processed by a function associated with the claim name. + * + * Call this configuration method, and pass in as the first argument + * an object that maps a claim name to a resolver function, + * which will be automatically executed for each claim processed by the script. + * + * The claim resolver function will receive the requested claim information + * in an instance of org.forgerock.openidconnect.Claim as the first argument. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} + * for details on the Claim class. + * + * If the claim resolver function returns a value, + * other than undefined or null, + * the claim will be included in the script's results. + * + * The Claim instance provides methods to check + * what the name of the claim is, + * which values the claim request contains, + * whether the claim is essential, and + * which locale the claim is associated with. + * The resolver function can consider this information when computing and returning the claim value. + * + * Below, find a default configuration that is expected to work in the current environment. + * A reusable function, utils.getUserProfileClaimResolver(String attribute-name), + * is called to return a claim resolver function based on a user profile attribute. + * @see CLAIM RESOLVERS section for the implementation details and examples. + * For the address claim, an example of a claim resolver that uses another claim resolver is provided. + * + * CUSTOMIZATION + * You can reuse the predefined utils methods with your custom arguments. + * You can also specify a custom resolver function for a claim name, + * that will compute and return the claim value—as shown in the commented out example below. + */ + utils.setClaimResolvers({ + /* + // An example of a simple claim resolver function that is defined for a claim + // directly in the configuration object: + custom-claim-name: function (requestedClaim) { + // In this case, initially, the claim value comes straight from a user profile attribute value: + var claimValue = identity.getAttribute('custom-attribute-name').toArray()[0] + + // Optionally, provide additional logic for processing (filtering, formatting, etc.) the claim value. + // You can use: + // requestedClaim.getName() + // requestedClaim.getValues() + // requestedClaim.getLocale() + // requestedClaim.isEssential() + + return claimValue + }, + */ + /** + * The use of utils.getUserProfileClaimResolver shows how + * an argument passed to a function that returns a claim resolver + * becomes available to the resolver function (via its lexical context). + */ + name: utils.getUserProfileClaimResolver('cn'), + family_name: utils.getUserProfileClaimResolver('sn'), + given_name: utils.getUserProfileClaimResolver('givenname'), + zoneinfo: utils.getUserProfileClaimResolver('preferredtimezone'), + locale: utils.getUserProfileClaimResolver('preferredlocale'), + email: utils.getUserProfileClaimResolver('mail'), + address: utils.getAddressClaimResolver( + /** + * The passed in user profile claim resolver function + * can be used by the address claim resolver function + * to obtain the claim value to be formatted as per the OIDC specification: + * @see https://openid.net/specs/openid-connect-core-1_0.html#AddressClaim. + */ + utils.getUserProfileClaimResolver('postaladdress') + ), + phone_number: utils.getUserProfileClaimResolver('telephonenumber') + }); + + // CLAIM PROCESSING UTILITIES + + /** + * @returns {object} An object that contains reusable claim processing utilities. + * @see PUBLIC METHODS section and the return statement for the list of exported functions. + */ + function getUtils () { + // IMPORT JAVA + + /** + * Provides Java scripting functionality. + * @see {@link https://developer.mozilla.org/en-US/docs/Mozilla/Projects/Rhino/Scripting_Java#javaimporter_constructor}. + */ + var frJava = JavaImporter( + org.forgerock.oauth2.core.exceptions.InvalidRequestException, + org.forgerock.oauth2.core.UserInfoClaims, + org.forgerock.openidconnect.Claim, + + java.util.LinkedHashMap, + java.util.ArrayList + ); + + // SET UP CONFIGURATION + + /** + * Placeholder for a configuration option that contains + * an object that maps the supported scope values (scopes) + * and the corresponding claim names for each scope value. + */ + var scopeClaimsMap; + + /** + * Placeholder for a configuration option that contains + * an object that maps the supported claim names + * and the resolver functions returning the claim value. + */ + var claimResolvers; + + /** + * A (public) method that accepts an object that maps the supported scopes and the corresponding claim names, + * and assigns it to a (private) variable that serves as a configuration option. + * @param {object} params - An object that maps each supported scope value to an array of claim names, + * in order to specify which claims need to be processed for the requested scopes. + * @see {@link https://openid.net/specs/openid-connect-core-1_0.html#ScopeClaims} for details. + * @param {string[]} [params.profile] - An array of claim names to be returned if the profile scope is requested. + * @param {string[]} [params.email] - An array of claim names to be returned if the email scope is requested. + * @param {string[]} [params.address] - An array of claim names to be returned if the address scope is requested. + * @param {string[]} [params.phone] - An array of claim names to be returned if the phone scope is requested. + * @returns {undefined} + */ + function setScopeClaimsMap(params) { + scopeClaimsMap = params; + } + + /** + * A (public) method that accepts an object that maps the supported claim names + * and the resolver functions returning the claim value, + * and assigns it to a (private) variable that serves as a configuration option. + * @param {object} params - An object that maps + * each supported claim name to a function that computes and returns the claim value. + */ + function setClaimResolvers(params) { + claimResolvers = params; + } + + // CLAIM RESOLVERS + + /** + * Claim resolvers are functions that return a claim value. + * @param {*} + * @returns {*} + */ + + /** + * Defines a claim resolver based on a user profile attribute. + * @param {string} attributeName - Name of the user profile attribute. + * @returns {function} A function that will determine the claim value + * based on the user profile attribute and the (requested) claim properties. + */ + function getUserProfileClaimResolver (attributeName) { + /** + * Resolves a claim with a user profile attribute value. + * Returns undefined if the identity attribute is not populated, + * OR if the claim has requested values that do not contain the identity attribute value. + * ATTENTION: the aforementioned comparison is case-sensitive. + * @param {org.forgerock.openidconnect.Claim} claim + * An object that provides methods to obtain information/requirements associated with a claim. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for details. + * @returns {string|HashSet|undefined} + */ + function resolveClaim(claim) { + var userProfileValue; + + if (identity) { + userProfileValue = getClaimValueFromSet(claim, identity.getAttribute(attributeName)); + + if (userProfileValue && !userProfileValue.isEmpty()) { + if (!claim.getValues() || claim.getValues().isEmpty() || claim.getValues().contains(userProfileValue)) { + return userProfileValue; + } + } + } + } + + return resolveClaim; + } + + /** + * Returns an address claim resolver based on a claim value obtained with another claim resolver. + * @param {function} resolveClaim - A function that returns a claim value. + * @returns {function} A function that will accept a claim as an argument, + * run the claim resolver function for the claim and obtain the claim value, + * and apply additional formatting to the value before returning it. + */ + function getAddressClaimResolver (resolveClaim) { + /** + * Creates an address claim object from a value returned by a claim resolver, + * and returns the address claim object as the claim value. + * @see {@link https://openid.net/specs/openid-connect-core-1_0.html#AddressClaim}. + * The claim value is obtained with a claim resolving function available from the closure. + * @param {org.forgerock.openidconnect.Claim} claim + * An object that provides methods to obtain information/requirements associated with a claim. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for details. + * @returns {java.util.LinkedHashMap|undefined} The address claim object created from a claim value. + */ + function resolveAddressClaim(claim) { + var claimValue = resolveClaim(claim); + var addressObject; + + if (isClaimValueValid(claimValue)) { + addressObject = new frJava.LinkedHashMap(); + + addressObject.put('formatted', claimValue); + + return addressObject; + } + } + + return resolveAddressClaim; + } + + /** + * Returns an essential claim resolver based on a claim value obtained with another claim resolver. + * @param {function} resolveClaim - A function that returns a claim value. + * @returns {function} A function that will accept a claim as an argument, + * run the claim resolver function for the claim and obtain the claim value, + * and apply additional logic for essential claims. + */ + function getEssentialClaimResolver (resolveClaim) { + /** + * Returns a claim value or throws an error. + * The claim value is obtained with a claim resolving function available from the closure. + * Throws an exception if the claim is essential and no value is returned for the claim. + * + * Use of this resolver is optional. + * @see {@link https://openid.net/specs/openid-connect-core-1_0.html#IndividualClaimsRequests} stating: + * "Note that even if the Claims are not available because the End-User did not authorize their release or they are not present, + * the Authorization Server MUST NOT generate an error when Claims are not returned, whether they are Essential or Voluntary, + * unless otherwise specified in the description of the specific claim." + * + * @param {org.forgerock.openidconnect.Claim} claim + * An object that provides methods to obtain information/requirements associated with a claim. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for details. + * @returns {*} + * @throws {org.forgerock.oauth2.core.exceptions.InvalidRequestException} + */ + function resolveEssentialClaim(claim) { + var claimValue = resolveClaim(claim); + + if (claim.isEssential() && !isClaimValueValid(claimValue)) { + throw new frJava.InvalidRequestException('Could not provide value for essential claim: ' + claim.getName()); + } + + return claimValue; + } + + return resolveEssentialClaim; + } + + /** + * Provides default resolution for a claim. + * Use it if a claim-specific resolver is not defined in the configuration. + * @param {org.forgerock.openidconnect.Claim} claim + * An object that provides methods to obtain information/requirements associated with a claim. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for details. + * @returns {*} A single value associated with this claim. + */ + function resolveAnyClaim (claim) { + if (claim.getValues().size() === 1) { + return claim.getValues().toArray()[0]; + } + } + + // UTILITIES + + /** + * Returns claim value from a set. + * If the set contains a single value, returns the value. + * If the set contains multiple values, returns the set. + * Otherwise, returns undefined. + * + * @param {org.forgerock.openidconnect.Claim} claim + * An object that provides methods to obtain information/requirements associated with a claim. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for details. + * @param {java.util.HashSet} set The set—for example, a user profile attribute value. + * @returns {string|java.util.HashSet|undefined} + */ + function getClaimValueFromSet (claim, set) { + if (set && set.size()) { + if (set.size() === 1) { + return set.toArray()[0]; + } else { + return set; + } + } else if (logger.warningEnabled()) { + logger.warning('OIDC Claims script. Got an empty set for claim: ' + claim.getName()); + } + } + + function isClaimValueValid (claimValue) { + if (typeof claimValue === 'undefined' || claimValue === null) { + return false; + } + + return true; + } + + // CLAIM PROCESSING + + /** + * Constructs and returns an object populated with the computed claim values + * and the requested scopes mapped to the claim names. + * @returns {org.forgerock.oauth2.core.UserInfoClaims} The object to be returned to the authorization server. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/oauth2/core/UserInfoClaims.html}. + * @see RESULTS section for the use of this function. + */ + function getUserInfoClaims () { + return new frJava.UserInfoClaims(getComputedClaims(), getCompositeScopes()); + } + + /** + * Creates a map of (requested) claim names populated with the computed claim values. + * @returns {java.util.LinkedHashMap} + * A map of the requested claim names and the corresponding claim values. + */ + function getComputedClaims () { + /** + * Creates a complete list of claim objects from: + * the claims derived from the scopes, + * the claims provided by the authorization server, + * and the claims requested by the client. + * @returns {java.util.ArrayList} + * Returns a complete list of org.forgerock.openidconnect.Claim objects available to the script. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for the claim object details. + */ + function getClaims() { + /** + * Returns a list of claim objects for the requested scopes. + * Uses the scopeClaimsMap configuration option to derive the claim names; + * no other properties of a claim derived from a scope are populated. + * @returns {java.util.ArrayList} + * A list of org.forgerock.openidconnect.Claim objects derived from the requested scopes. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for the claim object details. + */ + function convertScopeToClaims() { + var claims = new frJava.ArrayList(); + + scopes.toArray().forEach(function (scope) { + if (String(scope) !== 'openid' && scopeClaimsMap[scope]) { + scopeClaimsMap[scope].forEach(function (claimName) { + claims.add(new frJava.Claim(claimName)); + }); + } + }); + + return claims; + } + + var claims = new frJava.ArrayList(); + + claims.addAll(convertScopeToClaims()); + claims.addAll(claimObjects); + claims.addAll(requestedTypedClaims); + + return claims; + } + + /** + * Computes and returns a claim value. + * To obtain the claim value, uses the resolver function specified for the claim in the claimResolvers configuration object. + * @see claimResolvers + * If no resolver function is found, uses the default claim resolver function. + * + * @param {org.forgerock.openidconnect.Claim} claim + * An object that provides methods to obtain information/requirements associated with a claim. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for details. + * @returns {*} Claim value. + * @throws {org.forgerock.oauth2.core.exceptions.InvalidRequestException} + * Rethrows this exception if a claim resolver throws it. + * You can throw org.forgerock.oauth2.core.exceptions.InvalidRequestException from your custom claim resolver + * if you want to terminate the claim processing. + */ + function computeClaim(claim) { + var resolveClaim; + var message; + + try { + resolveClaim = claimResolvers[claim.getName()] || resolveAnyClaim; + + return resolveClaim(claim); + } catch (e) { + message = 'OIDC Claims script exception. Unable to resolve OIDC Claim. ' + e; + + if (String(e).indexOf('org.forgerock.oauth2.core.exceptions.InvalidRequestException') !== -1) { + throw e; + } + + if (logger.warningEnabled()) { + logger.warning(message); + } + } + } + + var computedClaims = new frJava.LinkedHashMap(); + + getClaims().toArray().forEach(function (claim) { + var claimValue = computeClaim(claim); + + if (isClaimValueValid(claimValue)) { + computedClaims.put(claim.getName(), claimValue); + } else { + /** + * If a claim has been processed, but appears in the list again, + * and its value cannot be computed under the new conditions, + * the claim is removed from the final result. + * + * For example, a claim could be mapped to a scope and found in the user profile, + * but also requested by the client with required values that don't match the computed one. + * @see {link https://openid.net/specs/openid-connect-core-1_0.html#IndividualClaimsRequests}. + * for the relevant OIDC specification details. + */ + computedClaims.remove(claim.getName()); + } + }); + + return computedClaims; + } + + /** + * Creates a map of requested scopes and the corresponding claim names. + * @returns {java.util.LinkedHashMap} + */ + function getCompositeScopes () { + var compositeScopes = new frJava.LinkedHashMap(); + + scopes.toArray().forEach(function (scope) { + var scopeClaims = new frJava.ArrayList(); + + if (scopeClaimsMap[scope]) { + scopeClaimsMap[scope].forEach(function (claimName) { + scopeClaims.add(claimName); + }); + } + + if (scopeClaims.size()) { + compositeScopes.put(scope, scopeClaims); + } + }); + + return compositeScopes; + } + + // PUBLIC METHODS + + return { + setScopeClaimsMap: setScopeClaimsMap, + setClaimResolvers: setClaimResolvers, + getUserProfileClaimResolver: getUserProfileClaimResolver, + getAddressClaimResolver: getAddressClaimResolver, + getEssentialClaimResolver: getEssentialClaimResolver, + getUserInfoClaims: getUserInfoClaims + }; + } + + // RESULTS + + /** + * This script returns an instance of the org.forgerock.oauth2.core.UserInfoClaims class + * populated with the computed claim values and + * the requested scopes mapped to the claim names. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/oauth2/core/UserInfoClaims.html}. + * + * Assigning it to a variable gives you an opportunity + * to log the content of the returned value during development. + */ + var userInfoClaims = utils.getUserInfoClaims(); + + /* + logger.error(scriptName + ' results:') + logger.error('Values: ' + userInfoClaims.getValues()) + logger.error('Scopes: ' + userInfoClaims.getCompositeScopes()) + */ + + return userInfoClaims; +}()); diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-endUserUIClient-OIDC-Claims-Script.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-endUserUIClient-OIDC-Claims-Script.script.json new file mode 100644 index 000000000..da3e08fea --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Alpha-endUserUIClient-OIDC-Claims-Script.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "e1db8a0a-0329-4962-a5bf-ecffaca376ae": { + "_id": "e1db8a0a-0329-4962-a5bf-ecffaca376ae", + "context": "OIDC_CLAIMS", + "createdBy": "null", + "creationDate": 0, + "default": false, + "description": "Used by endUserUIClient", + "evaluatorVersion": "1.0", + "language": "JAVASCRIPT", + "lastModifiedBy": "id=ad62492c-d064-4952-95ed-0a74ed5b2fd1,ou=user,ou=am-config", + "lastModifiedDate": 1761154811644, + "name": "Alpha endUserUIClient OIDC Claims Script", + "script": "file://Alpha-endUserUIClient-OIDC-Claims-Script.script.js" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Amazon-Profile-Normalization.script.groovy b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Amazon-Profile-Normalization.script.groovy new file mode 100644 index 000000000..05a04f5b1 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Amazon-Profile-Normalization.script.groovy @@ -0,0 +1,18 @@ +/* + * Copyright 2020-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +import static org.forgerock.json.JsonValue.field +import static org.forgerock.json.JsonValue.json +import static org.forgerock.json.JsonValue.object + +return json(object( + field("id", rawProfile.user_id), + field("displayName", rawProfile.name), + field("email", rawProfile.email), + field("username", rawProfile.email))) diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Amazon-Profile-Normalization.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Amazon-Profile-Normalization.script.json new file mode 100644 index 000000000..8bc58e517 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Amazon-Profile-Normalization.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "6b3cfd48-62d3-48ff-a96f-fe8f3a22ab30": { + "_id": "6b3cfd48-62d3-48ff-a96f-fe8f3a22ab30", + "context": "SOCIAL_IDP_PROFILE_TRANSFORMATION", + "createdBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "creationDate": 1433147666269, + "default": true, + "description": "Normalizes raw profile data from Amazon", + "evaluatorVersion": "1.0", + "language": "GROOVY", + "lastModifiedBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "lastModifiedDate": 1433147666269, + "name": "Amazon Profile Normalization", + "script": "file://Amazon-Profile-Normalization.script.groovy" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Apple-Profile-Normalization.script.groovy b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Apple-Profile-Normalization.script.groovy new file mode 100644 index 000000000..6d7fc7e3b --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Apple-Profile-Normalization.script.groovy @@ -0,0 +1,53 @@ +/* + * Copyright 2021-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + * + * In some common default configurations, the following keys are required to be not empty: + * username, givenName, familyName, email. + * + * From RFC4517: A value of the Directory String syntax is a string of one or more + * arbitrary characters from the Universal Character Set (UCS). + * A zero-length character string is not permitted. + */ + + +import static org.forgerock.json.JsonValue.field +import static org.forgerock.json.JsonValue.fieldIfNotNull +import static org.forgerock.json.JsonValue.json +import static org.forgerock.json.JsonValue.object + +String email = null +String firstName = null +String lastName = null +String username = null +String name + +if (rawProfile.isDefined("email") && rawProfile.email.isNotNull()){ // User can elect to not share their email + email = rawProfile.email.asString() + username = email +} else { + throw new Exception("Email is required") +} +if (rawProfile.isDefined("name") && rawProfile.name.isNotNull()) { + if (rawProfile.name.isDefined("firstName") && rawProfile.name.firstName.isNotNull()) { + firstName = rawProfile.name.firstName.asString() + } + if (rawProfile.name.isDefined("lastName") && rawProfile.name.lastName.isNotNull()) { + lastName = rawProfile.name.lastName.asString() + } +} + +name = (firstName?.trim() ? firstName : "") + (lastName?.trim() ? ((firstName?.trim() ? " " : "") + lastName) : "") +name = (!name?.trim()) ? " " : name + +return json(object( + field("id", rawProfile.get('sub')), + field("displayName", name), + field("email", email), + fieldIfNotNull("givenName", firstName), + fieldIfNotNull("familyName", lastName), + field("username", username))) diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Apple-Profile-Normalization.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Apple-Profile-Normalization.script.json new file mode 100644 index 000000000..39283d7e8 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Apple-Profile-Normalization.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "484e6246-dbc6-4288-97e6-54e55431402e": { + "_id": "484e6246-dbc6-4288-97e6-54e55431402e", + "context": "SOCIAL_IDP_PROFILE_TRANSFORMATION", + "createdBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "creationDate": 1433147666269, + "default": true, + "description": "Normalizes raw profile data from Apple", + "evaluatorVersion": "1.0", + "language": "GROOVY", + "lastModifiedBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "lastModifiedDate": 1433147666269, + "name": "Apple Profile Normalization", + "script": "file://Apple-Profile-Normalization.script.groovy" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Authentication-Tree-Decision-Node-Script.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Authentication-Tree-Decision-Node-Script.script.js new file mode 100644 index 000000000..d78155005 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Authentication-Tree-Decision-Node-Script.script.js @@ -0,0 +1,6 @@ +/* + - Data made available by nodes that have already executed are available in the sharedState variable. + - The script should set outcome to either "true" or "false". + */ + +outcome = "true"; diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Authentication-Tree-Decision-Node-Script.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Authentication-Tree-Decision-Node-Script.script.json new file mode 100644 index 000000000..bac191479 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Authentication-Tree-Decision-Node-Script.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "01e1a3c0-038b-4c16-956a-6c9d89328cff": { + "_id": "01e1a3c0-038b-4c16-956a-6c9d89328cff", + "context": "AUTHENTICATION_TREE_DECISION_NODE", + "createdBy": "null", + "creationDate": 0, + "default": true, + "description": "Default global script for a scripted decision node", + "evaluatorVersion": "1.0", + "language": "JAVASCRIPT", + "lastModifiedBy": "null", + "lastModifiedDate": 0, + "name": "Authentication Tree Decision Node Script", + "script": "file://Authentication-Tree-Decision-Node-Script.script.js" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Config-Provider-Node-Script.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Config-Provider-Node-Script.script.js new file mode 100644 index 000000000..ad6916155 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Config-Provider-Node-Script.script.js @@ -0,0 +1,67 @@ +/* + * Copyright 2021-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +/** + * The following script is a simplified template for understanding how to build + * up a config Map object with custom values. The Config Provider Node will then + * provide this config Map to the desired node type. It is important that the Map + * you build here is named 'config'. + * + * Defined variables: + * + * nodeState - Node State (1) + * Always present, this represents the current values stored in the node state. + * + * idRepository - Profile Data (2) + * Always present, a repository to retrieve user information. + * + * secrets - Credentials and Secrets (3) + * Always present, an interface to access the Secrets API from a scripting context. + * + * requestHeaders (4) - Map (5) + * Always present, an object that provides methods for accessing headers in the login request. + * + * logger - Debug Logging (6) + * Always present, the debug logger instance. + * + * httpClient - HTTP Client (7) + * Always present, the HTTP client that can be used to make external HTTP requests. + * + * realm - String (primitive). + * Always present, the name of the realm the user is authenticating to. + * + * existingSession - Map (5) + * Present if the request contains the session cookie, the user's session object. The returned map from + * SSOToken.getProperties() (8) + * + * requestParameters - Map (5) + * Always present, the object that contains the authentication request parameters. + * + * + * Outputs: + * + * config - Map (5) + * Define and fill a Map object named 'config' with custom values, this will define the configuration for the + * associated node selected in the ConfigProviderNode. + * + * Reference: + * (1) Node State - https://backstage.forgerock.com/docs/idcloud-am/latest/authentication-guide/scripting-api-node.html#scripting-api-node-nodeState + * (2) Profile Data - https://backstage.forgerock.com/docs/am/7.1/authentication-guide/scripting-api-node.html#scripting-api-node-id-repo + * (3) Credentials and Secrets - https://backstage.forgerock.com/docs/am/7.1/authentication-guide/scripting-api-node.html#scripting-api-authn-secrets + * (4) Request Headers - https://backstage.forgerock.com/docs/am/7/authentication-guide/scripting-api-node.html#scripting-api-node-requestHeaders. + * (5) Map - https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html + * (6) Debug Logging - https://backstage.forgerock.com/docs/am/7/scripting-guide/scripting-api-global-logger.html#scripting-api-global-logger. + * (7) HTTP Client - https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/http/Client.html. + * (8) SSOToken - https://backstage.forgerock.com/docs/am/7/apidocs/com/iplanet/sso/SSOToken.html. + */ + +config = { + "key0": {"subKey": "value0"}, + "key1": "value1" +}; diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Config-Provider-Node-Script.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Config-Provider-Node-Script.script.json new file mode 100644 index 000000000..c70626852 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Config-Provider-Node-Script.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "5e854779-6ec1-4c39-aeba-0477e0986646": { + "_id": "5e854779-6ec1-4c39-aeba-0477e0986646", + "context": "CONFIG_PROVIDER_NODE", + "createdBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "creationDate": 1433147666269, + "default": true, + "description": "Script to provide values for a config provider node", + "evaluatorVersion": "1.0", + "language": "JAVASCRIPT", + "lastModifiedBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "lastModifiedDate": 1433147666269, + "name": "Config Provider Node Script", + "script": "file://Config-Provider-Node-Script.script.js" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Device-Id-(Match)-Client-Side.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Device-Id-(Match)-Client-Side.script.js new file mode 100644 index 000000000..f92f5db65 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Device-Id-(Match)-Client-Side.script.js @@ -0,0 +1,254 @@ +/* + * Copyright 2023-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +var fontDetector = (function () { + /** + * JavaScript code to detect available availability of a + * particular font in a browser using JavaScript and CSS. + * + * Author : Lalit Patel + * Website: http://www.lalit.org/lab/javascript-css-font-detect/ + * License: Apache Software License 2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * Version: 0.15 (21 Sep 2009) + * Changed comparision font to default from sans-default-default, + * as in FF3.0 font of child element didn't fallback + * to parent element if the font is missing. + * Version: 0.2 (04 Mar 2012) + * Comparing font against all the 3 generic font families ie, + * 'monospace', 'sans-serif' and 'sans'. If it doesn't match all 3 + * then that font is 100% not available in the system + * Version: 0.3 (24 Mar 2012) + * Replaced sans with serif in the list of baseFonts + */ + /* + * Portions Copyrighted 2013-2025 Ping Identity Corporation + */ + var detector = {}, baseFonts, testString, testSize, h, s, defaultWidth = {}, defaultHeight = {}, index; + + // a font will be compared against all the three default fonts. + // and if it doesn't match all 3 then that font is not available. + baseFonts = ['monospace', 'sans-serif', 'serif']; + + //we use m or w because these two characters take up the maximum width. + // And we use a LLi so that the same matching fonts can get separated + testString = "mmmmmmmmmmlli"; + + //we test using 72px font size, we may use any size. I guess larger the better. + testSize = '72px'; + + h = document.getElementsByTagName("body")[0]; + + // create a SPAN in the document to get the width of the text we use to test + s = document.createElement("span"); + s.style.fontSize = testSize; + s.innerHTML = testString; + for (index in baseFonts) { + //get the default width for the three base fonts + s.style.fontFamily = baseFonts[index]; + h.appendChild(s); + defaultWidth[baseFonts[index]] = s.offsetWidth; //width for the default font + defaultHeight[baseFonts[index]] = s.offsetHeight; //height for the defualt font + h.removeChild(s); + } + + detector.detect = function(font) { + var detected = false, index, matched; + for (index in baseFonts) { + s.style.fontFamily = font + ',' + baseFonts[index]; // name of the font along with the base font for fallback. + h.appendChild(s); + matched = (s.offsetWidth !== defaultWidth[baseFonts[index]] || s.offsetHeight !== defaultHeight[baseFonts[index]]); + h.removeChild(s); + detected = detected || matched; + } + return detected; + }; + + return detector; +}()); +/* + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. + * + * Copyright (c) 2009 Sun Microsystems Inc. All Rights Reserved + * + * The contents of this file are subject to the terms + * of the Common Development and Distribution License + * (the License). You may not use this file except in + * compliance with the License. + * + * You can obtain a copy of the License at + * https://opensso.dev.java.net/public/CDDLv1.0.html or + * opensso/legal/CDDLv1.0.txt + * See the License for the specific language governing + * permission and limitations under the License. + * + * When distributing Covered Code, include this CDDL + * Header Notice in each file and include the License file + * at opensso/legal/CDDLv1.0.txt. + * If applicable, add the following below the CDDL Header, + * with the fields enclosed by brackets [] replaced by + * your own identifying information: + * "Portions Copyrighted [year] [name of copyright owner]" + * + */ +/* + * Portions Copyrighted 2013 Syntegrity. + * Portions Copyrighted 2013-2025 Ping Identity Corporation + */ + +var collectScreenInfo = function () { + var screenInfo = {}; + if (screen) { + if (screen.width) { + screenInfo.screenWidth = screen.width; + } + + if (screen.height) { + screenInfo.screenHeight = screen.height; + } + + if (screen.pixelDepth) { + screenInfo.screenColourDepth = screen.pixelDepth; + } + } else { + console.warn("Cannot collect screen information. screen is not defined."); + } + return screenInfo; + }, + collectTimezoneInfo = function () { + var timezoneInfo = {}, offset = new Date().getTimezoneOffset(); + + if (offset) { + timezoneInfo.timezone = offset; + } else { + console.warn("Cannot collect timezone information. timezone is not defined."); + } + + return timezoneInfo; + }, + collectBrowserPluginsInfo = function () { + + if (navigator && navigator.plugins) { + var pluginsInfo = {}, i, plugins = navigator.plugins; + pluginsInfo.installedPlugins = ""; + + for (i = 0; i < plugins.length; i++) { + pluginsInfo.installedPlugins = pluginsInfo.installedPlugins + plugins[i].filename + ";"; + } + + return pluginsInfo; + } else { + console.warn("Cannot collect browser plugin information. navigator.plugins is not defined."); + return {}; + } + + }, +// Getting geolocation takes some time and is done asynchronously, hence need a callback which is called once geolocation is retrieved. + collectGeolocationInfo = function (callback) { + var geolocationInfo = {}, + successCallback = function(position) { + geolocationInfo.longitude = position.coords.longitude; + geolocationInfo.latitude = position.coords.latitude; + callback(geolocationInfo); + }, errorCallback = function(error) { + console.warn("Cannot collect geolocation information. " + error.code + ": " + error.message); + callback(geolocationInfo); + }; + if (navigator && navigator.geolocation) { + // NB: If user chooses 'Not now' on Firefox neither callback gets called + // https://bugzilla.mozilla.org/show_bug.cgi?id=675533 + navigator.geolocation.getCurrentPosition(successCallback, errorCallback); + } else { + console.warn("Cannot collect geolocation information. navigator.geolocation is not defined."); + callback(geolocationInfo); + } + }, + collectBrowserFontsInfo = function () { + var fontsInfo = {}, i, fontsList = ["cursive","monospace","serif","sans-serif","fantasy","default","Arial","Arial Black", + "Arial Narrow","Arial Rounded MT Bold","Bookman Old Style","Bradley Hand ITC","Century","Century Gothic", + "Comic Sans MS","Courier","Courier New","Georgia","Gentium","Impact","King","Lucida Console","Lalit", + "Modena","Monotype Corsiva","Papyrus","Tahoma","TeX","Times","Times New Roman","Trebuchet MS","Verdana", + "Verona"]; + fontsInfo.installedFonts = ""; + + for (i = 0; i < fontsList.length; i++) { + if (fontDetector.detect(fontsList[i])) { + fontsInfo.installedFonts = fontsInfo.installedFonts + fontsList[i] + ";"; + } + } + return fontsInfo; + }, + devicePrint = {}; + +devicePrint.screen = collectScreenInfo(); +devicePrint.timezone = collectTimezoneInfo(); +devicePrint.plugins = collectBrowserPluginsInfo(); +devicePrint.fonts = collectBrowserFontsInfo(); + +if (navigator.userAgent) { + devicePrint.userAgent = navigator.userAgent; +} +if (navigator.appName) { + devicePrint.appName = navigator.appName; +} +if (navigator.appCodeName) { + devicePrint.appCodeName = navigator.appCodeName; +} +if (navigator.appVersion) { + devicePrint.appVersion = navigator.appVersion; +} +if (navigator.appMinorVersion) { + devicePrint.appMinorVersion = navigator.appMinorVersion; +} +if (navigator.buildID) { + devicePrint.buildID = navigator.buildID; +} +if (navigator.platform) { + devicePrint.platform = navigator.platform; +} +if (navigator.cpuClass) { + devicePrint.cpuClass = navigator.cpuClass; +} +if (navigator.oscpu) { + devicePrint.oscpu = navigator.oscpu; +} +if (navigator.product) { + devicePrint.product = navigator.product; +} +if (navigator.productSub) { + devicePrint.productSub = navigator.productSub; +} +if (navigator.vendor) { + devicePrint.vendor = navigator.vendor; +} +if (navigator.vendorSub) { + devicePrint.vendorSub = navigator.vendorSub; +} +if (navigator.language) { + devicePrint.language = navigator.language; +} +if (navigator.userLanguage) { + devicePrint.userLanguage = navigator.userLanguage; +} +if (navigator.browserLanguage) { + devicePrint.browserLanguage = navigator.browserLanguage; +} +if (navigator.systemLanguage) { + devicePrint.systemLanguage = navigator.systemLanguage; +} + +// Attempt to collect geo-location information and return this with the data collected so far. +// Otherwise, if geo-location fails or takes longer than 30 seconds, auto-submit the data collected so far. +autoSubmitDelay = 30000; +output.value = JSON.stringify(devicePrint); +collectGeolocationInfo(function(geolocationInfo) { + devicePrint.geolocation = geolocationInfo; + output.value = JSON.stringify(devicePrint); + submit(); +}); diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Device-Id-(Match)-Client-Side.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Device-Id-(Match)-Client-Side.script.json new file mode 100644 index 000000000..d532e222d --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Device-Id-(Match)-Client-Side.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "157298c0-7d31-4059-a95b-eeb08473b7e5": { + "_id": "157298c0-7d31-4059-a95b-eeb08473b7e5", + "context": "AUTHENTICATION_CLIENT_SIDE", + "createdBy": "null", + "creationDate": 0, + "default": true, + "description": "Default global script for client side Device Id (Match) Authentication Module", + "evaluatorVersion": "1.0", + "language": "JAVASCRIPT", + "lastModifiedBy": "null", + "lastModifiedDate": 0, + "name": "Device Id (Match) - Client Side", + "script": "file://Device-Id-(Match)-Client-Side.script.js" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Device-Id-(Match)-Server-Side.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Device-Id-(Match)-Server-Side.script.js new file mode 100644 index 000000000..4083cc9d5 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Device-Id-(Match)-Server-Side.script.js @@ -0,0 +1,831 @@ +/* + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. + * + * Copyright (c) 2009 Sun Microsystems Inc. All Rights Reserved + * + * The contents of this file are subject to the terms + * of the Common Development and Distribution License + * (the License). You may not use this file except in + * compliance with the License. + * + * You can obtain a copy of the License at + * https://opensso.dev.java.net/public/CDDLv1.0.html or + * opensso/legal/CDDLv1.0.txt + * See the License for the specific language governing + * permission and limitations under the License. + * + * When distributing Covered Code, include this CDDL + * Header Notice in each file and include the License file + * at opensso/legal/CDDLv1.0.txt. + * If applicable, add the following below the CDDL Header, + * with the fields enclosed by brackets [] replaced by + * your own identifying information: + * "Portions Copyrighted [year] [name of copyright owner]" + * + */ +/* + * Portions Copyrighted 2013 Syntegrity. + * Portions Copyrighted 2013-2025 Ping Identity Corporation + */ + +var ScalarComparator = {}, ScreenComparator = {}, MultiValueComparator = {}, UserAgentComparator = {}, GeolocationComparator = {}; + +var config = { + profileExpiration: 30, //in days + maxProfilesAllowed: 5, + maxPenaltyPoints: 0, + attributes: { + screen: { + required: true, + comparator: ScreenComparator, + args: { + penaltyPoints: 50 + } + }, + plugins: { + installedPlugins: { + required: false, + comparator: MultiValueComparator, + args: { + maxPercentageDifference: 10, + maxDifferences: 5, + penaltyPoints: 100 + } + } + }, + fonts: { + installedFonts: { + required: false, + comparator: MultiValueComparator, + args: { + maxPercentageDifference: 10, + maxDifferences: 5, + penaltyPoints: 100 + } + } + }, + timezone: { + timezone: { + required: false, + comparator: ScalarComparator, + args: { + penaltyPoints: 100 + } + } + }, + userAgent: { + required: true, + comparator: UserAgentComparator, + args: { + ignoreVersion: true, + penaltyPoints: 100 + } + }, + geolocation: { + required: false, + comparator: GeolocationComparator, + args: { + allowedRange: 100, //in miles + penaltyPoints: 100 + } + } + } +}; + +//---------------------------------------------------------------------------// +// Comparator functions // +//---------------------------------------------------------------------------// + +var all, any, calculateDistance, calculateIntersection, calculatePercentage, nullOrUndefined, splitAndTrim, + undefinedLocation; + +// ComparisonResult + +/** + * Constructs an instance of a ComparisonResult with the given penalty points. + * + * @param penaltyPoints (Number) The penalty points for the comparison (defaults to 0). + * @param additionalInfoInCurrentValue (boolean) Whether the current value contains more information + * than the stored value (defaults to false). + */ +function ComparisonResult() { + + var penaltyPoints = 0, + additionalInfoInCurrentValue = false; + + if (arguments[0] !== undefined && arguments[1] !== undefined) { + penaltyPoints = arguments[0]; + additionalInfoInCurrentValue = arguments[1]; + } + + if (arguments[0] !== undefined && arguments[1] === undefined) { + if (typeof(arguments[0]) === "boolean") { + additionalInfoInCurrentValue = arguments[0]; + } else { + penaltyPoints = arguments[0]; + } + } + + this.penaltyPoints = penaltyPoints; + this.additionalInfoInCurrentValue = additionalInfoInCurrentValue; + +} + +ComparisonResult.ZERO_PENALTY_POINTS = new ComparisonResult(0); + +/** + * Static method for functional programming. + * + * @return boolean true if comparisonResult.isSuccessful(). + */ +ComparisonResult.isSuccessful = function(comparisonResult) { + return comparisonResult.isSuccessful(); +}; + + +/** + * Static method for functional programming. + * + * @return boolean true if comparisonResult.additionalInfoInCurrentValue. + */ +ComparisonResult.additionalInfoInCurrentValue = function(comparisonResult) { + return comparisonResult.additionalInfoInCurrentValue; +}; + +/** + * Comparison function that can be provided as an argument to array.sort + */ +ComparisonResult.compare = function(first, second) { + if (nullOrUndefined(first) && nullOrUndefined(second)) { + return 0; + } else if (nullOrUndefined(first)) { + return -1; + } else if (nullOrUndefined(second)) { + return 1; + } else { + if (first.penaltyPoints !== second.penaltyPoints) { + return first.penaltyPoints - second.penaltyPoints; + } else { + return (first.additionalInfoInCurrentValue ? 1 : 0) - (second.additionalInfoInCurrentValue ? 1 : 0); + } + } +}; + +/** + * Amalgamates the given ComparisonResult into this ComparisonResult. + * + * @param comparisonResult The ComparisonResult to include. + */ +ComparisonResult.prototype.addComparisonResult = function(comparisonResult) { + this.penaltyPoints += comparisonResult.penaltyPoints; + if (comparisonResult.additionalInfoInCurrentValue) { + this.additionalInfoInCurrentValue = comparisonResult.additionalInfoInCurrentValue; + } +}; + +/** + * Returns true if no penalty points have been assigned for the comparison. + * + * @return boolean true if the comparison was successful. + */ +ComparisonResult.prototype.isSuccessful = function() { + return nullOrUndefined(this.penaltyPoints) || this.penaltyPoints === 0; +}; + +/** + * Compares two simple objects (String|Number) and if they are equal then returns a ComparisonResult with zero + * penalty points assigned, otherwise returns a ComparisonResult with the given number of penalty points assigned. + * + * @param currentValue (String|Number) The current value. + * @param storedValue (String|Number) The stored value. + * @param config: { + * "penaltyPoints": (Number) The number of penalty points. + * } + * @return ComparisonResult. + */ +ScalarComparator.compare = function (currentValue, storedValue, config) { + if (logger.messageEnabled()) { + logger.message("StringComparator.compare:currentValue: " + JSON.stringify(currentValue)); + logger.message("StringComparator.compare:storedValue: " + JSON.stringify(storedValue)); + logger.message("StringComparator.compare:config: " + JSON.stringify(config)); + } + if (config.penaltyPoints === 0) { + return ComparisonResult.ZERO_PENALTY_POINTS; + } + + if (!nullOrUndefined(storedValue)) { + if (nullOrUndefined(currentValue) || currentValue !== storedValue) { + return new ComparisonResult(config.penaltyPoints); + } + } else if (!nullOrUndefined(currentValue)) { + return new ComparisonResult(true); + } + + return ComparisonResult.ZERO_PENALTY_POINTS; +}; + +/** + * Compares two screens and if they are equal then returns a ComparisonResult with zero penalty points assigned, + * otherwise returns a ComparisonResult with the given number of penalty points assigned. + * + * @param currentValue: { + * "screenWidth": (Number) The current client screen width. + * "screenHeight": (Number) The current client screen height. + * "screenColourDepth": (Number) The current client screen colour depth. + * } + * @param storedValue: { + * "screenWidth": (Number) The stored client screen width. + * "screenHeight": (Number) The stored client screen height. + * "screenColourDepth": (Number) The stored client screen colour depth. + * } + * @param config: { + * "penaltyPoints": (Number) The number of penalty points. + * } + * @return ComparisonResult + */ +ScreenComparator.compare = function (currentValue, storedValue, config) { + if (logger.messageEnabled()) { + logger.message("ScreenComparator.compare:currentValue: " + JSON.stringify(currentValue)); + logger.message("ScreenComparator.compare:storedValue: " + JSON.stringify(storedValue)); + logger.message("ScreenComparator.compare:config: " + JSON.stringify(config)); + } + + if (nullOrUndefined(currentValue)) { + currentValue = {screenWidth: null, screenHeight: null, screenColourDepth: null}; + } + if (nullOrUndefined(storedValue)) { + storedValue = {screenWidth: null, screenHeight: null, screenColourDepth: null}; + } + + var comparisonResults = [ + ScalarComparator.compare(currentValue.screenWidth, storedValue.screenWidth, config), + ScalarComparator.compare(currentValue.screenHeight, storedValue.screenHeight, config), + ScalarComparator.compare(currentValue.screenColourDepth, storedValue.screenColourDepth, config)]; + + if (all(comparisonResults, ComparisonResult.isSuccessful)) { + return new ComparisonResult(any(comparisonResults, ComparisonResult.additionalInfoInCurrentValue)); + } else { + return new ComparisonResult(config.penaltyPoints); + } +}; + +/** + * Splits both values using delimiter, trims every value and compares collections of values. + * Returns zero-result for same multi-value attributes. + * + * If collections are not same checks if number of differences is less or equal maxDifferences or + * percentage of difference is less or equal maxPercentageDifference. + * + * If yes then returns zero-result with additional info, else returns penaltyPoints-result. + * + * @param currentValue: (String) The current value. + * @param storedValue: (String) The stored value. + * @param config: { + * "maxPercentageDifference": (Number) The max difference percentage in the values, + * before the penalty is assigned. + * "maxDifferences": (Number) The max number of differences in the values, + * before the penalty points are assigned. + * "penaltyPoints": (Number) The number of penalty points. + * } + * @return ComparisonResult + */ +MultiValueComparator.compare = function (currentValue, storedValue, config) { + if (logger.messageEnabled()) { + logger.message("MultiValueComparator.compare:currentValue: " + JSON.stringify(currentValue)); + logger.message("MultiValueComparator.compare:storedValue: " + JSON.stringify(storedValue)); + logger.message("MultiValueComparator.compare:config: " + JSON.stringify(config)); + } + + var delimiter = ";", + currentValues = splitAndTrim(currentValue, delimiter), + storedValues = splitAndTrim(storedValue, delimiter), + maxNumberOfElements = Math.max(currentValues.length, storedValues.length), + numberOfTheSameElements = calculateIntersection(currentValues, storedValues).length, + numberOfDifferences = maxNumberOfElements - numberOfTheSameElements, + percentageOfDifferences = calculatePercentage(numberOfDifferences, maxNumberOfElements); + + if (nullOrUndefined(storedValue) && !nullOrUndefined(currentValue)) { + return new ComparisonResult(true); + } + + if (logger.messageEnabled()) { + logger.message(numberOfTheSameElements + " of " + maxNumberOfElements + " are same"); + } + + if (maxNumberOfElements === 0) { + logger.message("Ignored because no attributes found in both profiles"); + return ComparisonResult.ZERO_PENALTY_POINTS; + } + + if (numberOfTheSameElements === maxNumberOfElements) { + logger.message("Ignored because all attributes are same"); + return ComparisonResult.ZERO_PENALTY_POINTS; + } + + if (numberOfDifferences > config.maxDifferences) { + if (logger.messageEnabled()) { + logger.message("Would be ignored if not more than " + config.maxDifferences + " differences"); + } + return new ComparisonResult(config.penaltyPoints); + } + + if (percentageOfDifferences > config.maxPercentageDifference) { + if (logger.messageEnabled()) { + logger.message(percentageOfDifferences + " percents are different"); + logger.message("Would be ignored if not more than " + config.maxPercentageDifference + " percent"); + } + return new ComparisonResult(config.penaltyPoints); + } + + if (logger.messageEnabled()) { + logger.message("Ignored because number of differences(" + numberOfDifferences + ") not more than " + + config.maxDifferences); + logger.message(percentageOfDifferences + " percents are different"); + logger.message("Ignored because not more than " + config.maxPercentageDifference + " percent"); + } + return new ComparisonResult(true); +}; + +/** + * Compares two User Agent Strings and if they are equal then returns a ComparisonResult with zero penalty + * points assigned, otherwise returns a ComparisonResult with the given number of penalty points assigned. + * + * @param currentValue (String) The current value. + * @param storedValue (String) The stored value. + * @param config: { + * "ignoreVersion": (boolean) If the version numbers in the User Agent Strings should be ignore + * in the comparison. + * "penaltyPoints": (Number) The number of penalty points. + * } + * @return A ComparisonResult. + */ +UserAgentComparator.compare = function (currentValue, storedValue, config) { + if (logger.messageEnabled()) { + logger.message("UserAgentComparator.compare:currentValue: " + JSON.stringify(currentValue)); + logger.message("UserAgentComparator.compare:storedValue: " + JSON.stringify(storedValue)); + logger.message("UserAgentComparator.compare:config: " + JSON.stringify(config)); + } + + if (config.ignoreVersion) { + // remove version number + currentValue = nullOrUndefined(currentValue) ? null : currentValue.replace(/[\d\.]+/g, "").trim(); + storedValue = nullOrUndefined(storedValue) ? null : storedValue.replace(/[\d\.]+/g, "").trim(); + } + + return ScalarComparator.compare(currentValue, storedValue, config); +}; + +/** + * Compares two locations, taking into account a degree of difference. + * + * @param currentValue: { + * "latitude": (Number) The current latitude. + * "longitude": (Number) The current longitude. + * } + * @param storedValue: { + * "latitude": (Number) The stored latitude. + * "longitude": (Number) The stored longitude. + * } + * @param config: { + * "allowedRange": (Number) The max difference allowed in the two locations, before the penalty is assigned. + * "penaltyPoints": (Number) The number of penalty points. +* } + * @return ComparisonResult + */ +GeolocationComparator.compare = function (currentValue, storedValue, config) { + if (logger.messageEnabled()) { + logger.message("GeolocationComparator.compare:currentValue: " + JSON.stringify(currentValue)); + logger.message("GeolocationComparator.compare:storedValue: " + JSON.stringify(storedValue)); + logger.message("GeolocationComparator.compare:config: " + JSON.stringify(config)); + } + + // Check for undefined stored or current locations + + if (undefinedLocation(currentValue) && undefinedLocation(storedValue)) { + return ComparisonResult.ZERO_PENALTY_POINTS; + } + if (undefinedLocation(currentValue) && !undefinedLocation(storedValue)) { + return new ComparisonResult(config.penaltyPoints); + } + if (!undefinedLocation(currentValue) && undefinedLocation(storedValue)) { + return new ComparisonResult(true); + } + + // Both locations defined, therefore perform comparison + + var distance = calculateDistance(currentValue, storedValue); + + if (logger.messageEnabled()) { + logger.message("Distance between (" + currentValue.latitude + "," + currentValue.longitude + ") and (" + + storedValue.latitude + "," + storedValue.longitude + ") is " + distance + " miles"); + } + + if (parseFloat(distance.toPrecision(5)) === 0) { + logger.message("Location is the same"); + return ComparisonResult.ZERO_PENALTY_POINTS; + } + + if (distance <= config.allowedRange) { + if (logger.messageEnabled()) { + logger.message("Tolerated because distance not more then " + config.allowedRange); + } + return new ComparisonResult(true); + } else { + if (logger.messageEnabled()) { + logger.message("Would be ignored if distance not more then " + config.allowedRange); + } + return new ComparisonResult(config.penaltyPoints); + } +}; + + +//---------------------------------------------------------------------------// +// Device Print Logic - DO NOT MODIFY // +//---------------------------------------------------------------------------// + +// Utility functions + +/** + * Returns true if evaluating function f on each element of the Array a returns true. + * + * @param a: (Array) The array of elements to evaluate + * @param f: (Function) A single argument function for mapping elements of the array to boolean. + * @return boolean. + */ +all = function(a, f) { + var i; + for (i = 0; i < a.length; i++) { + if (f(a[i]) === false) { + return false; + } + } + return true; +}; + +/** + * Returns true if evaluating function f on any element of the Array a returns true. + * + * @param a: (Array) The array of elements to evaluate + * @param f: (Function) A single argument function for mapping elements of the array to boolean. + * @return boolean. + */ +any = function(a, f) { + var i; + for (i = 0; i < a.length; i++) { + if (f(a[i]) === true) { + return true; + } + } + return false; +}; + +/** + * Returns true if the provided location is null or has undefined longitude or latitude values. + * + * @param location: { + * "latitude": (Number) The latitude. + * "longitude": (Number) The longitude. + * } + * @return boolean + */ +undefinedLocation = function(location) { + return nullOrUndefined(location) || nullOrUndefined(location.latitude) || nullOrUndefined(location.longitude); +}; + +/** + * Returns true if the provided value is null or undefined. + * + * @param value: a value of any type + * @return boolean + */ +nullOrUndefined = function(value) { + return value === null || value === undefined; +}; + +/** + * Calculates the distances between the two locations. + * + * @param first: { + * "latitude": (Number) The first latitude. + * "longitude": (Number) The first longitude. + * } + * @param second: { + * "latitude": (Number) The second latitude. + * "longitude": (Number) The second longitude. + * } + * @return Number The distance between the two locations. + */ +calculateDistance = function(first, second) { + var factor = (Math.PI / 180), + theta, + dist; + function degreesToRadians(degrees) { + return degrees * factor; + } + function radiansToDegrees(radians) { + return radians / factor; + } + theta = first.longitude - second.longitude; + dist = Math.sin(degreesToRadians(first.latitude)) * Math.sin(degreesToRadians(second.latitude)) + + Math.cos(degreesToRadians(first.latitude)) * Math.cos(degreesToRadians(second.latitude)) + * Math.cos(degreesToRadians(theta)); + dist = Math.acos(dist); + dist = radiansToDegrees(dist); + dist = dist * 60 * 1.1515; + return dist; +}; + +/** + * Converts a String holding a delimited sequence of values into an array. + * + * @param text (String) The String representation of a delimited sequence of values. + * @param delimiter (String) The character delimiting values within the text String. + * @return (Array) The comma separated values. + */ +splitAndTrim = function(text, delimiter) { + + var results = [], + i, + values, + value; + if (text === null) { + return results; + } + + values = text.split(delimiter); + for (i = 0; i < values.length; i++) { + value = values[i].trim(); + if (value !== "") { + results.push(value); + } + } + + return results; +}; + +/** + * Converts value to a percentage of range. + * + * @param value (Number) The actual number to be converted to a percentage. + * @param range (Number) The total number of values (i.e. represents 100%). + * @return (Number) The percentage. + */ +calculatePercentage = function(value, range) { + if (range === 0) { + return 0; + } + return parseFloat((value / range).toPrecision(2)) * 100; +}; + +/** + * Creates a new array containing only those elements found in both arrays received as arguments. + * + * @param first (Array) The first array. + * @param second (Array) The second array. + * @return (Array) The elements that found in first and second. + */ +calculateIntersection = function(first, second) { + return first.filter(function(element) { + return second.indexOf(element) !== -1; + }); +}; + +function getValue(obj, attributePath) { + var value = obj, + i; + for (i = 0; i < attributePath.length; i++) { + if (value === undefined) { + return null; + } + value = value[attributePath[i]]; + } + return value; +} + + +function isLeafNode(attributeConfig) { + return attributeConfig.comparator !== undefined; +} + +function getAttributePaths(attributeConfig, attributePath) { + + var attributePaths = [], + attributeName, + attrPaths, + attrPath, + i; + + for (attributeName in attributeConfig) { + if (attributeConfig.hasOwnProperty(attributeName)) { + + if (isLeafNode(attributeConfig[attributeName])) { + attrPath = attributePath.slice(); + attrPath.push(attributeName); + attributePaths.push(attrPath); + } else { + attrPath = attributePath.slice(); + attrPath.push(attributeName); + attrPaths = getAttributePaths(attributeConfig[attributeName], attrPath); + for (i = 0; i < attrPaths.length; i++) { + attributePaths.push(attrPaths[i]); + } + } + } + } + + return attributePaths; +} + +function getDevicePrintAttributePaths(attributeConfig) { + return getAttributePaths(attributeConfig, []); +} + +function hasRequiredAttributes(devicePrint, attributeConfig) { + + var attributePaths = getDevicePrintAttributePaths(attributeConfig), + i, + attrValue, + attrConfig; + + for (i = 0; i < attributePaths.length; i++) { + + attrValue = getValue(devicePrint, attributePaths[i]); + attrConfig = getValue(attributeConfig, attributePaths[i]); + + if (attrConfig.required && attrValue === undefined) { + logger.warning("Device Print profile missing required attribute, " + attributePaths[i]); + return false; + } + } + + logger.message("device print has required attributes"); + return true; +} + +function compareDevicePrintProfiles(attributeConfig, devicePrint, devicePrintProfiles, maxPenaltyPoints) { + + var attributePaths = getDevicePrintAttributePaths(attributeConfig), + dao = sharedState.get('_DeviceIdDao'), + results, + j, + aggregatedComparisonResult, + i, + currentValue, + storedValue, + attrConfig, + comparisonResult, + selectedComparisonResult, + selectedProfile, + curDevicePrintProfile, + vals; + + results = []; + for (j = 0; j < devicePrintProfiles.length; j++) { + curDevicePrintProfile = JSON.parse(org.forgerock.json.JsonValue.json(devicePrintProfiles[j])); + aggregatedComparisonResult = new ComparisonResult(); + for (i = 0; i < attributePaths.length; i++) { + + currentValue = getValue(devicePrint, attributePaths[i]); + storedValue = getValue(curDevicePrintProfile.devicePrint, attributePaths[i]); + attrConfig = getValue(attributeConfig, attributePaths[i]); + + if (storedValue === null) { + comparisonResult = new ComparisonResult(attrConfig.penaltyPoints); + } else { + comparisonResult = attrConfig.comparator.compare(currentValue, storedValue, attrConfig.args); + } + + if (logger.messageEnabled()) { + logger.message("Comparing attribute path: " + attributePaths[i] + + ", Comparison result: successful=" + comparisonResult.isSuccessful() + ", penaltyPoints=" + + comparisonResult.penaltyPoints + ", additionalInfoInCurrentValue=" + + comparisonResult.additionalInfoInCurrentValue); + } + aggregatedComparisonResult.addComparisonResult(comparisonResult); + } + if (logger.messageEnabled()) { + logger.message("Aggregated comparison result: successful=" + + aggregatedComparisonResult.isSuccessful() + ", penaltyPoints=" + + aggregatedComparisonResult.penaltyPoints + ", additionalInfoInCurrentValue=" + + aggregatedComparisonResult.additionalInfoInCurrentValue); + } + + results.push({ + key: aggregatedComparisonResult, + value: devicePrintProfiles[j] + }); + } + + if (results.length === 0) { + return null; + } + + results.sort(function(a, b) { + return ComparisonResult.compare(a.key, b.key); + }); + selectedComparisonResult = results[0].key; + if (logger.messageEnabled()) { + logger.message("Selected comparison result: successful=" + selectedComparisonResult.isSuccessful() + + ", penaltyPoints=" + selectedComparisonResult.penaltyPoints + ", additionalInfoInCurrentValue=" + + selectedComparisonResult.additionalInfoInCurrentValue); + } + + selectedProfile = null; + if (selectedComparisonResult.penaltyPoints <= maxPenaltyPoints) { + selectedProfile = results[0].value; + if (logger.messageEnabled()) { + logger.message("Selected profile: " + selectedProfile + + " with " + selectedComparisonResult.penaltyPoints + " penalty points"); + } + } + + if (selectedProfile === null) { + return false; + } + + /* update profile */ + selectedProfile.put("selectionCounter", + java.lang.Integer.valueOf(parseInt(selectedProfile.get("selectionCounter"), 10) + 1)); + selectedProfile.put("lastSelectedDate", java.lang.Long.valueOf(new Date().getTime())); + selectedProfile.put("devicePrint", devicePrint); + + vals = []; + for (i = 0; i < devicePrintProfiles.length; i++) { + vals.push(org.forgerock.json.JsonValue.json(devicePrintProfiles[i])); + } + + dao.saveDeviceProfiles(username, realm, vals); + + return true; +} + +function matchDevicePrint() { + + if (!username) { + logger.error("Username not set. Cannot compare user's device print profiles."); + authState = FAILED; + } else { + + if (logger.messageEnabled()) { + logger.message("client devicePrint: " + clientScriptOutputData); + } + + var getProfiles = function () { + + function isExpiredProfile(devicePrintProfile) { + var expirationDate = new Date(), + lastSelectedDate; + expirationDate.setDate(expirationDate.getDate() - config.profileExpiration); + + lastSelectedDate = new Date(devicePrintProfile.lastSelectedDate); + + return lastSelectedDate < expirationDate; + } + + function getNotExpiredProfiles() { + var profile, + dao = sharedState.get('_DeviceIdDao'), + results = [], + profiles, + iter; + + profiles = dao.getDeviceProfiles(username, realm); + + if (profiles) { + iter = profiles.iterator(); + + while (iter.hasNext()) { + profile = iter.next().getObject(); + if (!isExpiredProfile(profile)) { + results.push(profile); + } + } + } + if (logger.messageEnabled()) { + logger.message("stored non-expired profiles: " + results); + } + return results; + } + + return getNotExpiredProfiles(); + }, + devicePrint = JSON.parse(clientScriptOutputData), + devicePrintProfiles = getProfiles(); + + if (!hasRequiredAttributes(devicePrint, config.attributes)) { + logger.message("devicePrint.hasRequiredAttributes: false"); + // Will fail this module but fall-through to next module. Which should be OTP. + authState = FAILED; + } else if (compareDevicePrintProfiles(config.attributes, devicePrint, devicePrintProfiles, config.maxPenaltyPoints)) { + logger.message("devicePrint.hasValidProfile: true"); + authState = SUCCESS; + } else { + logger.message("devicePrint.hasValidProfile: false"); + sharedState.put('devicePrintProfile', JSON.stringify(devicePrint)); + // Will fail this module but fall-through to next module. Which should be OTP. + authState = FAILED; + } + } +} + +matchDevicePrint(); diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Device-Id-(Match)-Server-Side.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Device-Id-(Match)-Server-Side.script.json new file mode 100644 index 000000000..3485db70b --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Device-Id-(Match)-Server-Side.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "703dab1a-1921-4981-98dd-b8e5349d8548": { + "_id": "703dab1a-1921-4981-98dd-b8e5349d8548", + "context": "AUTHENTICATION_SERVER_SIDE", + "createdBy": "null", + "creationDate": 0, + "default": true, + "description": "Default global script for server side Device Id (Match) Authentication Module", + "evaluatorVersion": "1.0", + "language": "JAVASCRIPT", + "lastModifiedBy": "null", + "lastModifiedDate": 0, + "name": "Device Id (Match) - Server Side", + "script": "file://Device-Id-(Match)-Server-Side.script.js" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Device-Profile-Match-Template-Decision-Node-Script.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Device-Profile-Match-Template-Decision-Node-Script.script.js new file mode 100644 index 000000000..45eb79b6e --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Device-Profile-Match-Template-Decision-Node-Script.script.js @@ -0,0 +1,82 @@ +/* + * Copyright 2020-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +/** ****************************************************************** + * + * The following script is a simplified template for understanding + * the basics of device matching. _This is not functionally complete._ + * For a functionally complete script as well as a development toolkit, + * visit https://github.com/ForgeRock/forgerock-device-match-script. + * + * Global node variables accessible within this scope: + * 1. `sharedState` provides access to incoming request + * 2. `deviceProfilesDao` provides access to stored profiles + * 3. `outcome` variable maps to auth tree node outcomes; values are + * 'true', 'false', or 'unknownDevice' (notice _all_ are strings). + * ******************************************************************/ + +/** + * Get the incoming request's device profile. + * Returns serialized JSON (type string); parsing this will result a + * native JS object. + */ +var incomingJson = sharedState.get('forgeRock.device.profile').toString(); +var incoming = JSON.parse(incomingJson); + +/** + * Get the incoming user's username and realm. + * Notice the use of `.asString()`. + */ +var username = sharedState.get("username").asString(); +var realm = sharedState.get("realm").asString(); + +/** + * Get the user's stored profiles for appropriate realm. + * Returns a _special_ object with methods for profile data + */ +var storedProfiles = deviceProfilesDao.getDeviceProfiles(username, realm); + +// Default to `outcome` of 'unknownDevice' +outcome = 'unknownDevice'; + +if (storedProfiles) { + var i = 0; + // NOTE: `.size()` method returns the number of stored profiles + var len = storedProfiles.size(); + + for (i; i < len; i++) { + /** + * Get the stored profile. + * Returns serialized JSON (type string); parsing this will result + * a native JS object. + */ + var storedJson = storedProfiles.get(i); + var stored = JSON.parse(storedJson); + + /** + * Find a stored profile with the same identifier. + */ + if (incoming.identifier === stored.identifier) { + + /** + * Now that you've found the appropriate profile, you will perform + * the logic here to match the values of the `incoming` profile + * with that of the `stored` profile. + * + * The result of the matching logic is assigned to `outcome`. Since + * we have profiles of the same identifier, the value (type string) + * should now be either 'true' or 'false' (properties matched or not). + * + * For more information about this topic, visit this Github repo: + * https://github.com/ForgeRock/forgerock-device-match-script + */ + outcome = 'false'; + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Device-Profile-Match-Template-Decision-Node-Script.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Device-Profile-Match-Template-Decision-Node-Script.script.json new file mode 100644 index 000000000..88cecca87 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Device-Profile-Match-Template-Decision-Node-Script.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "13e3f263-9cd3-4844-8d1c-040fd0dd02eb": { + "_id": "13e3f263-9cd3-4844-8d1c-040fd0dd02eb", + "context": "AUTHENTICATION_TREE_DECISION_NODE", + "createdBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "creationDate": 1433147666269, + "default": true, + "description": "Default global script template for Device Profile Match decision node script for Authentication Tree", + "evaluatorVersion": "1.0", + "language": "JAVASCRIPT", + "lastModifiedBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "lastModifiedDate": 1433147666269, + "name": "Device Profile Match Template - Decision Node Script", + "script": "file://Device-Profile-Match-Template-Decision-Node-Script.script.js" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Facebook-Profile-Normalization.script.groovy b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Facebook-Profile-Normalization.script.groovy new file mode 100644 index 000000000..a2e75ed7c --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Facebook-Profile-Normalization.script.groovy @@ -0,0 +1,21 @@ +/* + * Copyright 2020-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +import static org.forgerock.json.JsonValue.field +import static org.forgerock.json.JsonValue.json +import static org.forgerock.json.JsonValue.object + +return json(object( + field("id", rawProfile.id), + field("displayName", rawProfile.name), + field("givenName", rawProfile.first_name), + field("familyName", rawProfile.last_name), + field("photoUrl", rawProfile.picture.data.url), + field("email", rawProfile.email), + field("username", rawProfile.email))) diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Facebook-Profile-Normalization.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Facebook-Profile-Normalization.script.json new file mode 100644 index 000000000..de5ee7d89 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Facebook-Profile-Normalization.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "bae1d54a-e97d-4997-aa5d-c027f21af82c": { + "_id": "bae1d54a-e97d-4997-aa5d-c027f21af82c", + "context": "SOCIAL_IDP_PROFILE_TRANSFORMATION", + "createdBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "creationDate": 1433147666269, + "default": true, + "description": "Normalizes raw profile data from Facebook", + "evaluatorVersion": "1.0", + "language": "GROOVY", + "lastModifiedBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "lastModifiedDate": 1433147666269, + "name": "Facebook Profile Normalization", + "script": "file://Facebook-Profile-Normalization.script.groovy" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/ForgeRock-Internal-OAuth2-Access-Token-Modification-Script.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/ForgeRock-Internal-OAuth2-Access-Token-Modification-Script.script.js new file mode 100644 index 000000000..b537060bd --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/ForgeRock-Internal-OAuth2-Access-Token-Modification-Script.script.js @@ -0,0 +1,9 @@ +/* + * Copyright 2023-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ +// Script is intentionally empty diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/ForgeRock-Internal-OAuth2-Access-Token-Modification-Script.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/ForgeRock-Internal-OAuth2-Access-Token-Modification-Script.script.json new file mode 100644 index 000000000..d736f2593 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/ForgeRock-Internal-OAuth2-Access-Token-Modification-Script.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "c234ba0b-58a1-4cfd-9567-09edde980745": { + "_id": "c234ba0b-58a1-4cfd-9567-09edde980745", + "context": "OAUTH2_ACCESS_TOKEN_MODIFICATION", + "createdBy": "null", + "creationDate": 1433147666269, + "default": true, + "description": "Internal token modification script", + "evaluatorVersion": "1.0", + "language": "JAVASCRIPT", + "lastModifiedBy": "null", + "lastModifiedDate": 0, + "name": "ForgeRock Internal: OAuth2 Access Token Modification Script", + "script": "file://ForgeRock-Internal-OAuth2-Access-Token-Modification-Script.script.js" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/ForgeRock-Internal-OIDC-Claims-Script.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/ForgeRock-Internal-OIDC-Claims-Script.script.js new file mode 100644 index 000000000..b2f53ad69 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/ForgeRock-Internal-OIDC-Claims-Script.script.js @@ -0,0 +1,621 @@ +/* + * Copyright 2014-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +/* + * This script computes claim values returned in ID tokens and/or at the UserInfo Endpoint. + * The claim values are computed for: + * the claims derived from the requested scopes, + * the claims provided by the authorization server, + * and the claims requested by the client via the claims parameter. + * + * In the CONFIGURATION AND CUSTOMIZATION section, you can + * define the scope-to-claims mapping, and + * assign to each claim a resolver function that will compute the claim value. + * + * Defined variables (class references are provided below): + * scopes - Set (6). + * Always present, the requested scopes. + * claims - Map (5). + * Always present, default server provided claims. + * claimObjects - List (7, 2). + * Always present, the default server provided claims. + * requestedClaims - Map> (5). + * Always present, not empty if the request contains the claims parameter and the server has enabled + * claims_parameter_supported. A map of the requested claims to possible values, otherwise empty; + * requested claims with no requested values will have a key but no value in the map. A key with + * a single value in its Set (6) indicates that this is the only value that should be returned. + * requestedTypedClaims - List (7, 2). + * Always present, the requested claims. + * Requested claims with no requested values will have a claim with no values. + * A claim with a single value indicates this is the only value that should be returned. + * claimsLocales - List (7). + * The values from the 'claims_locales' parameter. + * See https://openid.net/specs/openid-connect-core-1_0.html#ClaimsLanguagesAndScripts for the OIDC specification details. + * requestProperties - Unmodifiable Map (5). + * Always present, contains a map of request properties: + * requestUri - The request URI. + * realm - The realm that the request relates to. + * requestParams - A map of the request params and/or posted data. + * Each value is a list of one or more properties. + * Please note that these should be handled in accordance with OWASP best practices: + * https://owasp.org/www-community/vulnerabilities/Unsafe_use_of_Reflection. + * clientProperties - Unmodifiable Map (5). + * Present if the client specified in the request was identified, contains a map of client properties: + * clientId - The client's URI for the request locale. + * allowedGrantTypes - List of the allowed grant types (org.forgerock.oauth2.core.GrantType) for the client. + * allowedResponseTypes - List of the allowed response types for the client. + * allowedScopes - List of the allowed scopes for the client. + * customProperties - A map of the custom properties of the client. + * Lists or maps will be included as sub-maps; for example: + * customMap[Key1]=Value1 will be returned as customMap -> Key1 -> Value1. + * To add custom properties to a client, update the Custom Properties field + * in AM Console > Realm Name > Applications > OAuth 2.0 > Clients > Client ID > Advanced. + * identity - AMIdentity (3). + * Always present, the identity of the resource owner. + * session - SSOToken (4). + * Present if the request contains the session cookie, the user's session object. + * scriptName - String (primitive). + * Always present, the display name of the script. + * logger - Always present, the "OAuth2Provider" debug logger instance: + * https://backstage.forgerock.com/docs/am/7/scripting-guide/scripting-api-global-logger.html#scripting-api-global-logger. + * Corresponding files will be prefixed with: scripts.OIDC_CLAIMS. + * httpClient - HTTP Client (8). + * Always present, the HTTP Client instance: + * https://backstage.forgerock.com/docs/am/7/scripting-guide/scripting-api-global-http-client.html#scripting-api-global-http-client. + * In order to use the client, you may need to add + * org.forgerock.http.Client, + * org.forgerock.http.protocol.*, + * and org.forgerock.util.promise.PromiseImpl + * to the allowed Java classes in the scripting engine configuration, as described in: + * https://backstage.forgerock.com/docs/am/7/scripting-guide/script-engine-security.html + * + * Return - a new UserInfoClaims(Map values, Map> compositeScopes) (1) object. + * The result of the last statement in the script is returned to the server. + * Currently, the Immediately Invoked Function Expression (also known as Self-Executing Anonymous Function) + * is the last (and only) statement in this script, and its return value will become the script result. + * Do not use "return variable" statement outside of a function definition. + * See RESULTS section for additional details. + * + * Class reference: + * (1) UserInfoClaims - https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/oauth2/core/UserInfoClaims.html. + * (2) Claim - https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html). + * An instance of org.forgerock.openidconnect.Claim has methods to access + * the claim name, requested values, locale, and whether the claim is essential. + * (3) AMIdentity - https://backstage.forgerock.com/docs/am/7/apidocs/com/sun/identity/idm/AMIdentity.html. + * (4) SSOToken - https://backstage.forgerock.com/docs/am/7/apidocs/com/iplanet/sso/SSOToken.html. + * (5) Map - https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/HashMap.html, + * or https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/LinkedHashMap.html. + * (6) Set - https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/HashSet.html. + * (7) List - https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/ArrayList.html. + * (8) Client - https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/http/Client.html. +*/ + +(function () { + // SETUP + + /** + * Claim processing utilities. + * An object that contains reusable functions for processing claims. + * @see CLAIM PROCESSING UTILITIES section for details. + */ + var utils = getUtils(); + + // CONFIGURATION AND CUSTOMIZATION + + /** + * OAuth 2.0 scope values (scopes) can be used by the Client to request OIDC claims. + * + * Call this configuration method, and pass in as the first argument + * an object that maps a scope value to an array of claim names + * to specify which claims need to be processed and returned for the requested scopes. + * @see {@link https://openid.net/specs/openid-connect-core-1_0.html#ScopeClaims} + * for the scope values that could be used to request claims as defined in the OIDC specification. + * + * Below, find a default configuration that is expected to work in the current environment. + * + * CUSTOMIZATION + * You can choose the claim names returned for a scope. + */ + utils.setScopeClaimsMap({ + profile: [ + 'name', + 'family_name', + 'given_name', + 'zoneinfo', + 'locale' + ], + email: ['email'], + address: ['address'], + phone: ['phone_number'] + }); + + /** + * In this script, each claim + * derived from the requested scopes, + * provided by the authorization server, and + * requested by the client via the claims parameter + * will be processed by a function associated with the claim name. + * + * Call this configuration method, and pass in as the first argument + * an object that maps a claim name to a resolver function, + * which will be automatically executed for each claim processed by the script. + * + * The claim resolver function will receive the requested claim information + * in an instance of org.forgerock.openidconnect.Claim as the first argument. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} + * for details on the Claim class. + * + * If the claim resolver function returns a value, + * other than undefined or null, + * the claim will be included in the script's results. + * + * The Claim instance provides methods to check + * what the name of the claim is, + * which values the claim request contains, + * whether the claim is essential, and + * which locale the claim is associated with. + * The resolver function can consider this information when computing and returning the claim value. + * + * Below, find a default configuration that is expected to work in the current environment. + * A reusable function, utils.getUserProfileClaimResolver(String attribute-name), + * is called to return a claim resolver function based on a user profile attribute. + * @see CLAIM RESOLVERS section for the implementation details and examples. + * For the address claim, an example of a claim resolver that uses another claim resolver is provided. + * + * CUSTOMIZATION + * You can reuse the predefined utils methods with your custom arguments. + * You can also specify a custom resolver function for a claim name, + * that will compute and return the claim value—as shown in the commented out example below. + */ + utils.setClaimResolvers({ + /* + // An example of a simple claim resolver function that is defined for a claim + // directly in the configuration object: + custom-claim-name: function (requestedClaim) { + // In this case, initially, the claim value comes straight from a user profile attribute value: + var claimValue = identity.getAttribute('custom-attribute-name').toArray()[0] + + // Optionally, provide additional logic for processing (filtering, formatting, etc.) the claim value. + // You can use: + // requestedClaim.getName() + // requestedClaim.getValues() + // requestedClaim.getLocale() + // requestedClaim.isEssential() + + return claimValue + }, + */ + /** + * The use of utils.getUserProfileClaimResolver shows how + * an argument passed to a function that returns a claim resolver + * becomes available to the resolver function (via its lexical context). + */ + name: utils.getUserProfileClaimResolver('cn'), + family_name: utils.getUserProfileClaimResolver('sn'), + given_name: utils.getUserProfileClaimResolver('givenname'), + zoneinfo: utils.getUserProfileClaimResolver('preferredtimezone'), + locale: utils.getUserProfileClaimResolver('preferredlocale'), + email: utils.getUserProfileClaimResolver('mail'), + address: utils.getAddressClaimResolver( + /** + * The passed in user profile claim resolver function + * can be used by the address claim resolver function + * to obtain the claim value to be formatted as per the OIDC specification: + * @see https://openid.net/specs/openid-connect-core-1_0.html#AddressClaim. + */ + utils.getUserProfileClaimResolver('postaladdress') + ), + phone_number: utils.getUserProfileClaimResolver('telephonenumber') + }); + + // CLAIM PROCESSING UTILITIES + + /** + * @returns {object} An object that contains reusable claim processing utilities. + * @see PUBLIC METHODS section and the return statement for the list of exported functions. + */ + function getUtils () { + // IMPORT JAVA + + /** + * Provides Java scripting functionality. + * @see {@link https://developer.mozilla.org/en-US/docs/Mozilla/Projects/Rhino/Scripting_Java#javaimporter_constructor}. + */ + var frJava = JavaImporter( + org.forgerock.oauth2.core.exceptions.InvalidRequestException, + org.forgerock.oauth2.core.UserInfoClaims, + org.forgerock.openidconnect.Claim, + + java.util.LinkedHashMap, + java.util.ArrayList + ); + + // SET UP CONFIGURATION + + /** + * Placeholder for a configuration option that contains + * an object that maps the supported scope values (scopes) + * and the corresponding claim names for each scope value. + */ + var scopeClaimsMap; + + /** + * Placeholder for a configuration option that contains + * an object that maps the supported claim names + * and the resolver functions returning the claim value. + */ + var claimResolvers; + + /** + * A (public) method that accepts an object that maps the supported scopes and the corresponding claim names, + * and assigns it to a (private) variable that serves as a configuration option. + * @param {object} params - An object that maps each supported scope value to an array of claim names, + * in order to specify which claims need to be processed for the requested scopes. + * @see {@link https://openid.net/specs/openid-connect-core-1_0.html#ScopeClaims} for details. + * @param {string[]} [params.profile] - An array of claim names to be returned if the profile scope is requested. + * @param {string[]} [params.email] - An array of claim names to be returned if the email scope is requested. + * @param {string[]} [params.address] - An array of claim names to be returned if the address scope is requested. + * @param {string[]} [params.phone] - An array of claim names to be returned if the phone scope is requested. + * @returns {undefined} + */ + function setScopeClaimsMap(params) { + scopeClaimsMap = params; + } + + /** + * A (public) method that accepts an object that maps the supported claim names + * and the resolver functions returning the claim value, + * and assigns it to a (private) variable that serves as a configuration option. + * @param {object} params - An object that maps + * each supported claim name to a function that computes and returns the claim value. + */ + function setClaimResolvers(params) { + claimResolvers = params; + } + + // CLAIM RESOLVERS + + /** + * Claim resolvers are functions that return a claim value. + * @param {*} + * @returns {*} + */ + + /** + * Defines a claim resolver based on a user profile attribute. + * @param {string} attributeName - Name of the user profile attribute. + * @returns {function} A function that will determine the claim value + * based on the user profile attribute and the (requested) claim properties. + */ + function getUserProfileClaimResolver (attributeName) { + /** + * Resolves a claim with a user profile attribute value. + * Returns undefined if the identity attribute is not populated, + * OR if the claim has requested values that do not contain the identity attribute value. + * ATTENTION: the aforementioned comparison is case-sensitive. + * @param {org.forgerock.openidconnect.Claim} claim + * An object that provides methods to obtain information/requirements associated with a claim. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for details. + * @returns {string|HashSet|undefined} + */ + function resolveClaim(claim) { + var userProfileValue; + + if (identity) { + userProfileValue = getClaimValueFromSet(claim, identity.getAttribute(attributeName)); + + if (userProfileValue && !userProfileValue.isEmpty()) { + if (!claim.getValues() || claim.getValues().isEmpty() || claim.getValues().contains(userProfileValue)) { + return userProfileValue; + } + } + } + } + + return resolveClaim; + } + + /** + * Returns an address claim resolver based on a claim value obtained with another claim resolver. + * @param {function} resolveClaim - A function that returns a claim value. + * @returns {function} A function that will accept a claim as an argument, + * run the claim resolver function for the claim and obtain the claim value, + * and apply additional formatting to the value before returning it. + */ + function getAddressClaimResolver (resolveClaim) { + /** + * Creates an address claim object from a value returned by a claim resolver, + * and returns the address claim object as the claim value. + * @see {@link https://openid.net/specs/openid-connect-core-1_0.html#AddressClaim}. + * The claim value is obtained with a claim resolving function available from the closure. + * @param {org.forgerock.openidconnect.Claim} claim + * An object that provides methods to obtain information/requirements associated with a claim. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for details. + * @returns {java.util.LinkedHashMap|undefined} The address claim object created from a claim value. + */ + function resolveAddressClaim(claim) { + var claimValue = resolveClaim(claim); + var addressObject; + + if (isClaimValueValid(claimValue)) { + addressObject = new frJava.LinkedHashMap(); + + addressObject.put('formatted', claimValue); + + return addressObject; + } + } + + return resolveAddressClaim; + } + + /** + * Returns an essential claim resolver based on a claim value obtained with another claim resolver. + * @param {function} resolveClaim - A function that returns a claim value. + * @returns {function} A function that will accept a claim as an argument, + * run the claim resolver function for the claim and obtain the claim value, + * and apply additional logic for essential claims. + */ + function getEssentialClaimResolver (resolveClaim) { + /** + * Returns a claim value or throws an error. + * The claim value is obtained with a claim resolving function available from the closure. + * Throws an exception if the claim is essential and no value is returned for the claim. + * + * Use of this resolver is optional. + * @see {@link https://openid.net/specs/openid-connect-core-1_0.html#IndividualClaimsRequests} stating: + * "Note that even if the Claims are not available because the End-User did not authorize their release or they are not present, + * the Authorization Server MUST NOT generate an error when Claims are not returned, whether they are Essential or Voluntary, + * unless otherwise specified in the description of the specific claim." + * + * @param {org.forgerock.openidconnect.Claim} claim + * An object that provides methods to obtain information/requirements associated with a claim. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for details. + * @returns {*} + * @throws {org.forgerock.oauth2.core.exceptions.InvalidRequestException} + */ + function resolveEssentialClaim(claim) { + var claimValue = resolveClaim(claim); + + if (claim.isEssential() && !isClaimValueValid(claimValue)) { + throw new frJava.InvalidRequestException('Could not provide value for essential claim: ' + claim.getName()); + } + + return claimValue; + } + + return resolveEssentialClaim; + } + + /** + * Provides default resolution for a claim. + * Use it if a claim-specific resolver is not defined in the configuration. + * @param {org.forgerock.openidconnect.Claim} claim + * An object that provides methods to obtain information/requirements associated with a claim. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for details. + * @returns {*} A single value associated with this claim. + */ + function resolveAnyClaim (claim) { + if (claim.getValues().size() === 1) { + return claim.getValues().toArray()[0]; + } + } + + // UTILITIES + + /** + * Returns claim value from a set. + * If the set contains a single value, returns the value. + * If the set contains multiple values, returns the set. + * Otherwise, returns undefined. + * + * @param {org.forgerock.openidconnect.Claim} claim + * An object that provides methods to obtain information/requirements associated with a claim. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for details. + * @param {java.util.HashSet} set The set—for example, a user profile attribute value. + * @returns {string|java.util.HashSet|undefined} + */ + function getClaimValueFromSet (claim, set) { + if (set && set.size()) { + if (set.size() === 1) { + return set.toArray()[0]; + } else { + return set; + } + } else if (logger.warningEnabled()) { + logger.warning('OIDC Claims script. Got an empty set for claim: ' + claim.getName()); + } + } + + function isClaimValueValid (claimValue) { + if (typeof claimValue === 'undefined' || claimValue === null) { + return false; + } + + return true; + } + + // CLAIM PROCESSING + + /** + * Constructs and returns an object populated with the computed claim values + * and the requested scopes mapped to the claim names. + * @returns {org.forgerock.oauth2.core.UserInfoClaims} The object to be returned to the authorization server. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/oauth2/core/UserInfoClaims.html}. + * @see RESULTS section for the use of this function. + */ + function getUserInfoClaims () { + return new frJava.UserInfoClaims(getComputedClaims(), getCompositeScopes()); + } + + /** + * Creates a map of (requested) claim names populated with the computed claim values. + * @returns {java.util.LinkedHashMap} + * A map of the requested claim names and the corresponding claim values. + */ + function getComputedClaims () { + /** + * Creates a complete list of claim objects from: + * the claims derived from the scopes, + * the claims provided by the authorization server, + * and the claims requested by the client. + * @returns {java.util.ArrayList} + * Returns a complete list of org.forgerock.openidconnect.Claim objects available to the script. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for the claim object details. + */ + function getClaims() { + /** + * Returns a list of claim objects for the requested scopes. + * Uses the scopeClaimsMap configuration option to derive the claim names; + * no other properties of a claim derived from a scope are populated. + * @returns {java.util.ArrayList} + * A list of org.forgerock.openidconnect.Claim objects derived from the requested scopes. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for the claim object details. + */ + function convertScopeToClaims() { + var claims = new frJava.ArrayList(); + + scopes.toArray().forEach(function (scope) { + if (String(scope) !== 'openid' && scopeClaimsMap[scope]) { + scopeClaimsMap[scope].forEach(function (claimName) { + claims.add(new frJava.Claim(claimName)); + }); + } + }); + + return claims; + } + + var claims = new frJava.ArrayList(); + + claims.addAll(convertScopeToClaims()); + claims.addAll(claimObjects); + claims.addAll(requestedTypedClaims); + + return claims; + } + + /** + * Computes and returns a claim value. + * To obtain the claim value, uses the resolver function specified for the claim in the claimResolvers configuration object. + * @see claimResolvers + * If no resolver function is found, uses the default claim resolver function. + * + * @param {org.forgerock.openidconnect.Claim} claim + * An object that provides methods to obtain information/requirements associated with a claim. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for details. + * @returns {*} Claim value. + * @throws {org.forgerock.oauth2.core.exceptions.InvalidRequestException} + * Rethrows this exception if a claim resolver throws it. + * You can throw org.forgerock.oauth2.core.exceptions.InvalidRequestException from your custom claim resolver + * if you want to terminate the claim processing. + */ + function computeClaim(claim) { + var resolveClaim; + var message; + + try { + resolveClaim = claimResolvers[claim.getName()] || resolveAnyClaim; + + return resolveClaim(claim); + } catch (e) { + message = 'OIDC Claims script exception. Unable to resolve OIDC Claim. ' + e; + + if (String(e).indexOf('org.forgerock.oauth2.core.exceptions.InvalidRequestException') !== -1) { + throw e; + } + + if (logger.warningEnabled()) { + logger.warning(message); + } + } + } + + var computedClaims = new frJava.LinkedHashMap(); + + getClaims().toArray().forEach(function (claim) { + var claimValue = computeClaim(claim); + + if (isClaimValueValid(claimValue)) { + computedClaims.put(claim.getName(), claimValue); + } else { + /** + * If a claim has been processed, but appears in the list again, + * and its value cannot be computed under the new conditions, + * the claim is removed from the final result. + * + * For example, a claim could be mapped to a scope and found in the user profile, + * but also requested by the client with required values that don't match the computed one. + * @see {link https://openid.net/specs/openid-connect-core-1_0.html#IndividualClaimsRequests}. + * for the relevant OIDC specification details. + */ + computedClaims.remove(claim.getName()); + } + }); + + return computedClaims; + } + + /** + * Creates a map of requested scopes and the corresponding claim names. + * @returns {java.util.LinkedHashMap} + */ + function getCompositeScopes () { + var compositeScopes = new frJava.LinkedHashMap(); + + scopes.toArray().forEach(function (scope) { + var scopeClaims = new frJava.ArrayList(); + + if (scopeClaimsMap[scope]) { + scopeClaimsMap[scope].forEach(function (claimName) { + scopeClaims.add(claimName); + }); + } + + if (scopeClaims.size()) { + compositeScopes.put(scope, scopeClaims); + } + }); + + return compositeScopes; + } + + // PUBLIC METHODS + + return { + setScopeClaimsMap: setScopeClaimsMap, + setClaimResolvers: setClaimResolvers, + getUserProfileClaimResolver: getUserProfileClaimResolver, + getAddressClaimResolver: getAddressClaimResolver, + getEssentialClaimResolver: getEssentialClaimResolver, + getUserInfoClaims: getUserInfoClaims + }; + } + + // RESULTS + + /** + * This script returns an instance of the org.forgerock.oauth2.core.UserInfoClaims class + * populated with the computed claim values and + * the requested scopes mapped to the claim names. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/oauth2/core/UserInfoClaims.html}. + * + * Assigning it to a variable gives you an opportunity + * to log the content of the returned value during development. + */ + var userInfoClaims = utils.getUserInfoClaims(); + + /* + logger.error(scriptName + ' results:') + logger.error('Values: ' + userInfoClaims.getValues()) + logger.error('Scopes: ' + userInfoClaims.getCompositeScopes()) + */ + + return userInfoClaims; +}()); diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/ForgeRock-Internal-OIDC-Claims-Script.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/ForgeRock-Internal-OIDC-Claims-Script.script.json new file mode 100644 index 000000000..e9e2d5149 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/ForgeRock-Internal-OIDC-Claims-Script.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "1f389a3d-21cf-417c-a6d3-42ea620071f0": { + "_id": "1f389a3d-21cf-417c-a6d3-42ea620071f0", + "context": "OIDC_CLAIMS", + "createdBy": "null", + "creationDate": 0, + "default": true, + "description": "Internal OIDC Claims script", + "evaluatorVersion": "1.0", + "language": "JAVASCRIPT", + "lastModifiedBy": "null", + "lastModifiedDate": 0, + "name": "ForgeRock Internal: OIDC Claims Script", + "script": "file://ForgeRock-Internal-OIDC-Claims-Script.script.js" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/GitHub-Profile-Normalization.script.groovy b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/GitHub-Profile-Normalization.script.groovy new file mode 100644 index 000000000..d8d00c7d3 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/GitHub-Profile-Normalization.script.groovy @@ -0,0 +1,17 @@ +/* + * Copyright 2022-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +import static org.forgerock.json.JsonValue.field +import static org.forgerock.json.JsonValue.json +import static org.forgerock.json.JsonValue.object + +return json(object( + field("id", rawProfile.id), + field("displayName", rawProfile.name), + field("username", rawProfile.login))) diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/GitHub-Profile-Normalization.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/GitHub-Profile-Normalization.script.json new file mode 100644 index 000000000..22fba543d --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/GitHub-Profile-Normalization.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "a7a78773-445b-4eca-bb93-409e86bced81": { + "_id": "a7a78773-445b-4eca-bb93-409e86bced81", + "context": "SOCIAL_IDP_PROFILE_TRANSFORMATION", + "createdBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "creationDate": 1433147666269, + "default": true, + "description": "Normalizes raw profile data from GitHub", + "evaluatorVersion": "1.0", + "language": "GROOVY", + "lastModifiedBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "lastModifiedDate": 1433147666269, + "name": "GitHub Profile Normalization", + "script": "file://GitHub-Profile-Normalization.script.groovy" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Google-Profile-Normalization.script.groovy b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Google-Profile-Normalization.script.groovy new file mode 100644 index 000000000..f3f02676f --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Google-Profile-Normalization.script.groovy @@ -0,0 +1,22 @@ +/* + * Copyright 2020-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +import static org.forgerock.json.JsonValue.field +import static org.forgerock.json.JsonValue.json +import static org.forgerock.json.JsonValue.object + +return json(object( + field("id", rawProfile.sub), + field("displayName", rawProfile.name), + field("givenName", rawProfile.given_name), + field("familyName", rawProfile.family_name), + field("photoUrl", rawProfile.picture), + field("email", rawProfile.email), + field("username", rawProfile.email), + field("locale", rawProfile.locale))) diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Google-Profile-Normalization.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Google-Profile-Normalization.script.json new file mode 100644 index 000000000..5bab3003b --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Google-Profile-Normalization.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "58d29080-4563-480b-89bb-1e7719776a21": { + "_id": "58d29080-4563-480b-89bb-1e7719776a21", + "context": "SOCIAL_IDP_PROFILE_TRANSFORMATION", + "createdBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "creationDate": 1433147666269, + "default": true, + "description": "Normalizes raw profile data from Google", + "evaluatorVersion": "1.0", + "language": "GROOVY", + "lastModifiedBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "lastModifiedDate": 1433147666269, + "name": "Google Profile Normalization", + "script": "file://Google-Profile-Normalization.script.groovy" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Instagram-Profile-Normalization.script.groovy b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Instagram-Profile-Normalization.script.groovy new file mode 100644 index 000000000..083831a69 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Instagram-Profile-Normalization.script.groovy @@ -0,0 +1,16 @@ +/* + * Copyright 2020-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +import static org.forgerock.json.JsonValue.field +import static org.forgerock.json.JsonValue.json +import static org.forgerock.json.JsonValue.object + +return json(object( + field("id", rawProfile.id), + field("username", rawProfile.username))) diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Instagram-Profile-Normalization.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Instagram-Profile-Normalization.script.json new file mode 100644 index 000000000..de7f5b2d8 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Instagram-Profile-Normalization.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "1244e639-4a31-401d-ab61-d75133d8dc9e": { + "_id": "1244e639-4a31-401d-ab61-d75133d8dc9e", + "context": "SOCIAL_IDP_PROFILE_TRANSFORMATION", + "createdBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "creationDate": 1433147666269, + "default": true, + "description": "Normalizes raw profile data from Instagram", + "evaluatorVersion": "1.0", + "language": "GROOVY", + "lastModifiedBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "lastModifiedDate": 1433147666269, + "name": "Instagram Profile Normalization", + "script": "file://Instagram-Profile-Normalization.script.groovy" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Itsme-Profile-Normalization.script.groovy b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Itsme-Profile-Normalization.script.groovy new file mode 100644 index 000000000..da0ae20ff --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Itsme-Profile-Normalization.script.groovy @@ -0,0 +1,23 @@ +/* + * Copyright 2020-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +import static org.forgerock.json.JsonValue.field +import static org.forgerock.json.JsonValue.json +import static org.forgerock.json.JsonValue.object + +import org.forgerock.json.JsonValue + +JsonValue managedUser = json(object( + field("id", rawProfile.sub), + field("displayName", rawProfile.name), + field("givenName", rawProfile.given_name), + field("familyName", rawProfile.family_name), + field("username", rawProfile.email), + field("email", rawProfile.email))) +return managedUser diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Itsme-Profile-Normalization.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Itsme-Profile-Normalization.script.json new file mode 100644 index 000000000..139e65ee6 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Itsme-Profile-Normalization.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "3d97c436-42c0-4dd0-a571-ea6f34f752b3": { + "_id": "3d97c436-42c0-4dd0-a571-ea6f34f752b3", + "context": "SOCIAL_IDP_PROFILE_TRANSFORMATION", + "createdBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "creationDate": 1433147666269, + "default": true, + "description": "Normalizes raw profile data from Itsme", + "evaluatorVersion": "1.0", + "language": "GROOVY", + "lastModifiedBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "lastModifiedDate": 1433147666269, + "name": "Itsme Profile Normalization", + "script": "file://Itsme-Profile-Normalization.script.groovy" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/LINE-Profile-Normalization.script.groovy b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/LINE-Profile-Normalization.script.groovy new file mode 100644 index 000000000..145d8d7a1 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/LINE-Profile-Normalization.script.groovy @@ -0,0 +1,44 @@ +/* + * Copyright 2024-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + + +import static org.forgerock.json.JsonValue.field +import static org.forgerock.json.JsonValue.fieldIfNotNull +import static org.forgerock.json.JsonValue.json +import static org.forgerock.json.JsonValue.object + +// LINE does not return the email from the userInfo endpoint but should return it from the token endpoint and therefore +// it should be set in the shared state +var email = null +var username = null +var firstName = null +var lastName = null + +if (sharedState.get("claims_set") != null && sharedState.get("claims_set").email != null) { + email = sharedState.get("claims_set").email + username = email +} else { + // Ensure that your LINE provider is configured to provide users' email addresses + throw new Exception("Email is required") +} + +if (rawProfile.isDefined("name") && rawProfile.name.isNotNull()) { + var splitName = rawProfile.name.asString().split(" ") + firstName = splitName[0] + lastName = splitName[-1] +} + +return json(object( + field("id", rawProfile.sub), + field("displayName", rawProfile.name), + field("photoUrl", rawProfile.picture), + field("email", email), + fieldIfNotNull("givenName", firstName), + fieldIfNotNull("familyName", lastName), + field("username", username))) diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/LINE-Profile-Normalization.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/LINE-Profile-Normalization.script.json new file mode 100644 index 000000000..a0d5e698a --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/LINE-Profile-Normalization.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "60609c1a-4cef-4729-a417-354aafdebf3f": { + "_id": "60609c1a-4cef-4729-a417-354aafdebf3f", + "context": "SOCIAL_IDP_PROFILE_TRANSFORMATION", + "createdBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "creationDate": 1433147666269, + "default": true, + "description": "Normalizes raw profile data from LINE", + "evaluatorVersion": "1.0", + "language": "GROOVY", + "lastModifiedBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "lastModifiedDate": 1433147666269, + "name": "LINE Profile Normalization", + "script": "file://LINE-Profile-Normalization.script.groovy" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Library-Script.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Library-Script.script.js new file mode 100644 index 000000000..2f301acc5 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Library-Script.script.js @@ -0,0 +1,34 @@ +/* + * Copyright 2022-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +/* + * This is an example library script with methods that can be used in other scripts. + * To reference it, use the following: + * + * var library = require("Library Script"); + * + * library.logError(logger, "Error message"); + * library.logDebug(logger, "Debug message"); + */ + +function logError(log, errorMessage) { + log.error(errorMessage); +} + +function logWarning(log, warningMessage) { + log.warn(warningMessage); +} + +exports.logError = logError; +exports.logWarning = logWarning; + +// Alternatively, exports can be declared using an inline arrow function + +exports.logInfo = (log, infoMessage) => log.info(infoMessage); +exports.logDebug = (log, debugMessage) => log.debug(debugMessage); diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Library-Script.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Library-Script.script.json new file mode 100644 index 000000000..e2c95f312 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Library-Script.script.json @@ -0,0 +1,40 @@ +{ + "script": { + "6c49bebe-3a62-11ed-a261-0242ac120002": { + "_id": "6c49bebe-3a62-11ed-a261-0242ac120002", + "context": "LIBRARY", + "createdBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "creationDate": 1433147666269, + "default": true, + "description": "Default global library script to be referenced from other scripts", + "evaluatorVersion": "2.0", + "exports": [ + { + "arity": 2, + "id": "logError", + "type": "Function" + }, + { + "arity": 2, + "id": "logWarning", + "type": "Function" + }, + { + "arity": 2, + "id": "logInfo", + "type": "Function" + }, + { + "arity": 2, + "id": "logDebug", + "type": "Function" + } + ], + "language": "JAVASCRIPT", + "lastModifiedBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "lastModifiedDate": 1433147666269, + "name": "Library Script", + "script": "file://Library-Script.script.js" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/LinkedIn-Profile-Normalization-(Legacy).script.groovy b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/LinkedIn-Profile-Normalization-(Legacy).script.groovy new file mode 100644 index 000000000..211a7785f --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/LinkedIn-Profile-Normalization-(Legacy).script.groovy @@ -0,0 +1,20 @@ +/* + * Copyright 2020-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +import static org.forgerock.json.JsonValue.field +import static org.forgerock.json.JsonValue.json +import static org.forgerock.json.JsonValue.object + +return json(object( + field("id", rawProfile.id), + field("givenName", rawProfile.firstName.localized.get(0)), + field("familyName", rawProfile.lastName.localized.get(0)), + field("photoUrl", rawProfile.profilePicture.displayImage), + field("email", rawProfile.elements.get(0).get("handle~").emailAddress), + field("username", rawProfile.elements.get(0).get("handle~").emailAddress))) diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/LinkedIn-Profile-Normalization-(Legacy).script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/LinkedIn-Profile-Normalization-(Legacy).script.json new file mode 100644 index 000000000..f1796fb6a --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/LinkedIn-Profile-Normalization-(Legacy).script.json @@ -0,0 +1,18 @@ +{ + "script": { + "8862ca8f-7770-4af5-a888-ac0df0947f36": { + "_id": "8862ca8f-7770-4af5-a888-ac0df0947f36", + "context": "SOCIAL_IDP_PROFILE_TRANSFORMATION", + "createdBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "creationDate": 1433147666269, + "default": true, + "description": "Normalizes raw profile data from LinkedIn (Legacy)", + "evaluatorVersion": "1.0", + "language": "GROOVY", + "lastModifiedBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "lastModifiedDate": 1433147666269, + "name": "LinkedIn Profile Normalization (Legacy)", + "script": "file://LinkedIn-Profile-Normalization-(Legacy).script.groovy" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/LinkedIn-Profile-Normalization.script.groovy b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/LinkedIn-Profile-Normalization.script.groovy new file mode 100644 index 000000000..e481a4eac --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/LinkedIn-Profile-Normalization.script.groovy @@ -0,0 +1,23 @@ +/* + * Copyright 2024-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + + +import static org.forgerock.json.JsonValue.field +import static org.forgerock.json.JsonValue.json +import static org.forgerock.json.JsonValue.object + +return json(object( + field("id", rawProfile.sub), + field("displayName", rawProfile.name), + field("givenName", rawProfile.given_name), + field("familyName", rawProfile.family_name), + field("photoUrl", rawProfile.picture), + field("email", rawProfile.email), + field("emailVerified", rawProfile.email_verified), + field("username", rawProfile.email))) diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/LinkedIn-Profile-Normalization.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/LinkedIn-Profile-Normalization.script.json new file mode 100644 index 000000000..4b4775605 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/LinkedIn-Profile-Normalization.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "b4f3facb-c754-4e7f-b1c0-f4d46f592126": { + "_id": "b4f3facb-c754-4e7f-b1c0-f4d46f592126", + "context": "SOCIAL_IDP_PROFILE_TRANSFORMATION", + "createdBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "creationDate": 1433147666269, + "default": true, + "description": "Normalizes raw profile data from LinkedIn", + "evaluatorVersion": "1.0", + "language": "GROOVY", + "lastModifiedBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "lastModifiedDate": 1433147666269, + "name": "LinkedIn Profile Normalization", + "script": "file://LinkedIn-Profile-Normalization.script.groovy" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Microsoft-Profile-Normalization.script.groovy b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Microsoft-Profile-Normalization.script.groovy new file mode 100644 index 000000000..5a9545cad --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Microsoft-Profile-Normalization.script.groovy @@ -0,0 +1,20 @@ +/* + * Copyright 2020-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +import static org.forgerock.json.JsonValue.field +import static org.forgerock.json.JsonValue.json +import static org.forgerock.json.JsonValue.object + +return json(object( + field("id", rawProfile.id), + field("displayName", rawProfile.displayName), + field("givenName", rawProfile.givenName), + field("familyName", rawProfile.surname), + field("email", rawProfile.userPrincipalName), + field("username", rawProfile.userPrincipalName))) diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Microsoft-Profile-Normalization.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Microsoft-Profile-Normalization.script.json new file mode 100644 index 000000000..1cae125cc --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Microsoft-Profile-Normalization.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "73cecbfc-dad0-4395-be6a-6858ee3a80e5": { + "_id": "73cecbfc-dad0-4395-be6a-6858ee3a80e5", + "context": "SOCIAL_IDP_PROFILE_TRANSFORMATION", + "createdBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "creationDate": 1433147666269, + "default": true, + "description": "Normalizes raw profile data from Microsoft", + "evaluatorVersion": "1.0", + "language": "GROOVY", + "lastModifiedBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "lastModifiedDate": 1433147666269, + "name": "Microsoft Profile Normalization", + "script": "file://Microsoft-Profile-Normalization.script.groovy" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Next-Generation-Device-Match-Node-Script.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Next-Generation-Device-Match-Node-Script.script.js new file mode 100644 index 000000000..bc57aca00 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Next-Generation-Device-Match-Node-Script.script.js @@ -0,0 +1,14 @@ +/* + * Copyright 2024-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ +/* + - Data made available by nodes that have already executed is available in the nodeState variable. + - Use the action object to set the outcome of the node. + */ + +action.goTo("true"); diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Next-Generation-Device-Match-Node-Script.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Next-Generation-Device-Match-Node-Script.script.json new file mode 100644 index 000000000..843987f0d --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Next-Generation-Device-Match-Node-Script.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "11e1a3c0-038b-4c16-956a-6c9d89328d00": { + "_id": "11e1a3c0-038b-4c16-956a-6c9d89328d00", + "context": "DEVICE_MATCH_NODE", + "createdBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "creationDate": 1433147666269, + "default": true, + "description": "Default global script for a device match node", + "evaluatorVersion": "2.0", + "language": "JAVASCRIPT", + "lastModifiedBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "lastModifiedDate": 1433147666269, + "name": "Next Generation Device Match Node Script", + "script": "file://Next-Generation-Device-Match-Node-Script.script.js" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Next-Generation-Scripted-Decision-Node-Script.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Next-Generation-Scripted-Decision-Node-Script.script.js new file mode 100644 index 000000000..bc57aca00 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Next-Generation-Scripted-Decision-Node-Script.script.js @@ -0,0 +1,14 @@ +/* + * Copyright 2024-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ +/* + - Data made available by nodes that have already executed is available in the nodeState variable. + - Use the action object to set the outcome of the node. + */ + +action.goTo("true"); diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Next-Generation-Scripted-Decision-Node-Script.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Next-Generation-Scripted-Decision-Node-Script.script.json new file mode 100644 index 000000000..777eccc98 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Next-Generation-Scripted-Decision-Node-Script.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "11e1a3c0-038b-4c16-956a-6c9d89328cff": { + "_id": "11e1a3c0-038b-4c16-956a-6c9d89328cff", + "context": "AUTHENTICATION_TREE_DECISION_NODE", + "createdBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "creationDate": 1433147666269, + "default": true, + "description": "Default global script for a scripted decision node", + "evaluatorVersion": "2.0", + "language": "JAVASCRIPT", + "lastModifiedBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "lastModifiedDate": 1433147666269, + "name": "Next Generation Scripted Decision Node Script", + "script": "file://Next-Generation-Scripted-Decision-Node-Script.script.js" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Normalized-Profile-to-Identity.script.groovy b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Normalized-Profile-to-Identity.script.groovy new file mode 100644 index 000000000..b5a202af5 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Normalized-Profile-to-Identity.script.groovy @@ -0,0 +1,24 @@ +/* + * Copyright 2021-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +import static org.forgerock.json.JsonValue.field +import static org.forgerock.json.JsonValue.json +import static org.forgerock.json.JsonValue.object + +import org.forgerock.json.JsonValue + +JsonValue identity = json(object( + field("givenName", normalizedProfile.givenName), + field("sn", normalizedProfile.familyName), + field("mail", normalizedProfile.email), + field("cn", normalizedProfile.displayName), + field("userName", normalizedProfile.username), + field("iplanet-am-user-alias-list", selectedIdp + '-' + normalizedProfile.id.asString()))) + +return identity diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Normalized-Profile-to-Identity.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Normalized-Profile-to-Identity.script.json new file mode 100644 index 000000000..bb9466b62 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Normalized-Profile-to-Identity.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "ed685f9f-5909-4726-86e8-22bd38b47663": { + "_id": "ed685f9f-5909-4726-86e8-22bd38b47663", + "context": "SOCIAL_IDP_PROFILE_TRANSFORMATION", + "createdBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "creationDate": 1433147666269, + "default": true, + "description": "Converts a normalized social profile into an Identity", + "evaluatorVersion": "1.0", + "language": "GROOVY", + "lastModifiedBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "lastModifiedDate": 1433147666269, + "name": "Normalized Profile to Identity", + "script": "file://Normalized-Profile-to-Identity.script.groovy" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Normalized-Profile-to-Managed-User.script.groovy b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Normalized-Profile-to-Managed-User.script.groovy new file mode 100644 index 000000000..c5d7f7483 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Normalized-Profile-to-Managed-User.script.groovy @@ -0,0 +1,39 @@ +/* + * Copyright 2020-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +import static org.forgerock.json.JsonValue.field +import static org.forgerock.json.JsonValue.json +import static org.forgerock.json.JsonValue.object + +import org.forgerock.json.JsonValue + +JsonValue managedUser = json(object( + field("givenName", normalizedProfile.givenName), + field("sn", normalizedProfile.familyName), + field("mail", normalizedProfile.email), + field("userName", normalizedProfile.username))) + +if (normalizedProfile.postalAddress.isNotNull()) managedUser.put("postalAddress", normalizedProfile.postalAddress) +if (normalizedProfile.addressLocality.isNotNull()) managedUser.put("city", normalizedProfile.addressLocality) +if (normalizedProfile.addressRegion.isNotNull()) managedUser.put("stateProvince", normalizedProfile.addressRegion) +if (normalizedProfile.postalCode.isNotNull()) managedUser.put("postalCode", normalizedProfile.postalCode) +if (normalizedProfile.country.isNotNull()) managedUser.put("country", normalizedProfile.country) +if (normalizedProfile.phone.isNotNull()) managedUser.put("telephoneNumber", normalizedProfile.phone) + +// if the givenName and familyName is null or empty +// then add a boolean flag to the shared state to indicate names are not present +// this could be used elsewhere +// for eg. this could be used in a scripted decision node to by-pass patching +// the user object with blank values when givenName and familyName is not present +boolean noGivenName = normalizedProfile.givenName.isNull() || (!normalizedProfile.givenName.asString()?.trim()) +boolean noFamilyName = normalizedProfile.familyName.isNull() || (!normalizedProfile.familyName.asString()?.trim()) +sharedState.put("nameEmptyOrNull", noGivenName && noFamilyName) + + +return managedUser diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Normalized-Profile-to-Managed-User.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Normalized-Profile-to-Managed-User.script.json new file mode 100644 index 000000000..ec53960c4 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/Normalized-Profile-to-Managed-User.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "58c824ae-84ed-4724-82cd-db128fc3f6c": { + "_id": "58c824ae-84ed-4724-82cd-db128fc3f6c", + "context": "SOCIAL_IDP_PROFILE_TRANSFORMATION", + "createdBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "creationDate": 1433147666269, + "default": true, + "description": "Converts a normalized social profile into a managed user", + "evaluatorVersion": "1.0", + "language": "GROOVY", + "lastModifiedBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "lastModifiedDate": 1433147666269, + "name": "Normalized Profile to Managed User", + "script": "file://Normalized-Profile-to-Managed-User.script.groovy" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Access-Token-Modification-Script.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Access-Token-Modification-Script.script.js new file mode 100644 index 000000000..a89688384 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Access-Token-Modification-Script.script.js @@ -0,0 +1,136 @@ +/* + * Copyright 2019-2025 Ping Identity Corporation. All Rights Reserved. + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +/* + * This script lets you modify information associated with an OAuth2 access token + * with methods provided by the AccessToken (1) interface. + * The changes made to OAuth2 access tokens will directly impact the size of the CTS tokens, + * and, similarly, the size of the JWTs if client-based OAuth2 tokens are utilized. + * When adding/updating fields make sure that the token size remains within client/user-agent limits. + * + * Defined variables: + * accessToken - AccessToken (1). + * The access token to be updated. + * Mutable object, all changes to the access token will be reflected. + * scopes - Set (6). + * Always present, the requested scopes. + * requestProperties - Unmodifiable Map (5). + * Always present, contains a map of request properties: + * requestUri - The request URI. + * realm - The realm that the request relates to. + * requestParams - A map of the request params and/or posted data. + * Each value is a list of one or more properties. + * Please note that these should be handled in accordance with OWASP best practices: + * https://owasp.org/www-community/vulnerabilities/Unsafe_use_of_Reflection. + * clientProperties - Unmodifiable Map (5). + * Present if the client specified in the request was identified, contains a map of client properties: + * clientId - The client's URI for the request locale. + * allowedGrantTypes - List of the allowed grant types (org.forgerock.oauth2.core.GrantType) for the client. + * allowedResponseTypes - List of the allowed response types for the client. + * allowedScopes - List of the allowed scopes for the client. + * customProperties - A map of the custom properties of the client. + * Lists or maps will be included as sub-maps; for example: + * customMap[Key1]=Value1 will be returned as customMap -> Key1 -> Value1. + * To add custom properties to a client, update the Custom Properties field + * in AM Console > Realm Name > Applications > OAuth 2.0 > Clients > Client ID > Advanced. + * identity - AMIdentity (3). + * Always present, the identity of the resource owner. + * session - SSOToken (4). + * Present if the request contains the session cookie, the user's session object. + * scriptName - String (primitive). + * Always present, the display name of the script. + * logger - Always present, the "OAuth2Provider" debug logger instance: + * https://backstage.forgerock.com/docs/am/7/scripting-guide/scripting-api-global-logger.html#scripting-api-global-logger. + * Corresponding log files will be prefixed with: scripts.OAUTH2_ACCESS_TOKEN_MODIFICATION. + * httpClient - HTTP Client (8). + * Always present, the HTTP Client instance: + * https://backstage.forgerock.com/docs/am/7/scripting-guide/scripting-api-global-http-client.html#scripting-api-global-http-client. + * + * Return - no value is expected, changes shall be made to the accessToken parameter directly. + * + * Class reference: + * (1) AccessToken - https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/oauth2/core/AccessToken.html. + * (3) AMIdentity - https://backstage.forgerock.com/docs/am/7/apidocs/com/sun/identity/idm/AMIdentity.html. + * (4) SSOToken - https://backstage.forgerock.com/docs/am/7/apidocs/com/iplanet/sso/SSOToken.html. + * (5) Map - https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/HashMap.html, + * or https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/LinkedHashMap.html. + * (6) Set - https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/HashSet.html. + * (8) Client - https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/http/Client.html. + */ + +/* EXAMPLE +(function () { + var frJava = JavaImporter( + org.forgerock.http.protocol.Request, + org.forgerock.http.protocol.Response + ); + + // Always includes this field in the token. + accessToken.setField('key1', 'value1'); + + // Receives and adds to the access token additional values by performing a REST call to an external service. + // WARNING: Below, you will find a reference to a third-party site, which is provided only as an example. + var uri = 'https://jsonplaceholder.typicode.com/posts'; + + try { + var request = new frJava.Request(); + + // You can chain methods that return the request object. + request.setUri(uri) + .setMethod('POST') + .setEntity(JSON.stringify({ + updatedFields: { + key2: 'value2', + key3: 'value3' + } + })); + + // You can call a method when chaining is not possible. + request.getHeaders().add('Content-Type', 'application/json; charset=UTF-8'); + + // Sends the request and receives the response. + var response = httpClient.send(request).getOrThrow(); + + // Checks if the response status is as expected. + if (response.getStatus() === org.forgerock.http.protocol.Status.CREATED) { + var result = JSON.parse(response.getEntity().getString()); + + // Set multiple token fields at once. + accessToken.setFields(result.updatedFields); + } else { + logger.error('Unable to obtain access token modifications. Status: ' + response.getStatus() + '. Content: ' + response.getEntity().getString()); + } + } catch (e) { + logger.error('The request processing was interrupted. ' + e); + + // The access token request fails with the HTTP 500 error in this case. + throw ('Unable to obtain response from: ' + uri); + } + + // Adds new fields containing identity attribute values to the access token. + accessToken.setField('mail', identity.getAttribute('mail')); + accessToken.setField('phone', identity.getAttribute('telephoneNumber').toArray()[0]); + + // Adds new fields containing the session property values. + // NOTE: session may not be available for non-interactive authorization grants. + if (session) { + try { + accessToken.setField('ipAddress', session.getProperty('Host')); + } catch (e) { + logger.error('Unable to retrieve session property value. ' + e); + } + } + + // Removes a native field from the token entry, that was set by AM. + // WARNING: removing native fields from the token may result in loss of functionality. + // accessToken.removeTokenName() + + // No return value is expected. Let it be undefined. +}()); +*/ diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Access-Token-Modification-Script.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Access-Token-Modification-Script.script.json new file mode 100644 index 000000000..37afee124 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Access-Token-Modification-Script.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "d22f9a0c-426a-4466-b95e-d0f125b0d5fa": { + "_id": "d22f9a0c-426a-4466-b95e-d0f125b0d5fa", + "context": "OAUTH2_ACCESS_TOKEN_MODIFICATION", + "createdBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "creationDate": 1433147666269, + "default": true, + "description": "Default global script for OAuth2 Access Token Modification", + "evaluatorVersion": "1.0", + "language": "JAVASCRIPT", + "lastModifiedBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "lastModifiedDate": 1433147666269, + "name": "OAuth2 Access Token Modification Script", + "script": "file://OAuth2-Access-Token-Modification-Script.script.js" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Authorize-Endpoint-Data-Provider-Script.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Authorize-Endpoint-Data-Provider-Script.script.js new file mode 100644 index 000000000..94fc0e7d3 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Authorize-Endpoint-Data-Provider-Script.script.js @@ -0,0 +1,91 @@ +/* + * Copyright 2021-2025 Ping Identity Corporation. All Rights Reserved + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +/* + * This script lets you return additional data when authorize request is called. + * + * Defined variables: + * + * session - SSOToken (1) + * Present if the request contains the session cookie, the user's session object. + * + * httpClient - HTTP Client (2). + * Always present, the HTTP client that can be used to make external HTTP requests + * + * logger - Debug (3) + * Always present, the "ScriptedAuthorizeEndpointDataProvider" debug logger instance: + * https://backstage.forgerock.com/docs/am/7/scripting-guide/scripting-api-global-logger.html#scripting-api-global-logger. + * Corresponding log files will be prefixed with: scripts.OAUTH2_AUTHORIZE_ENDPOINT_DATA_PROVIDER. + * + * scriptName - String (primitive). + * Always present, the display name of the script + * + * Return - a Map of additional data (4). + * + * Class reference: + * (1) SSOToken - https://backstage.forgerock.com/docs/am/7/apidocs/com/iplanet/sso/SSOToken.html. + * (2) Client - https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/http/Client.html. + * (3) Debug - https://backstage.forgerock.com/docs/am/7/scripting-guide/scripting-api-global-logger.html#scripting-api-global-logger. + * (4) Map - https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/HashMap.html. + */ + +/** + * Default authorize endpoint data provider script to use as a template for new scripts. + */ + +/* EXAMPLE +var map = new java.util.HashMap(); + +function addAdditionalData() { + + //If constant data needs to be returned + map.put("hello", "world"); + + //If some data needs to be returned from third party service + addAdditionalDataFromExternalService(); + + //If there is a need to return some user session data + addAdditionalDataFromSessionProperties() + + return map; +}; + +function addAdditionalDataFromExternalService() { + var frJava = JavaImporter( + org.forgerock.oauth2.core.exceptions.ServerException + ); + try { + //Obtain additional data by performing a REST call to an external service + var request = new org.forgerock.http.protocol.Request(); + request.setUri("https://third.party.app/hello.jsp"); + request.setMethod("POST"); + //request.setEntity("foo=bar&hello=world"); + request.setEntity(json(object( + field("foo", "bar")))); + var response = httpClient.send(request).getOrThrow(); + logResponse(response); + var result = JSON.parse(response.getEntity().getString()); + map.put("someKey",result.get("someKey")); + } catch (err) { + throw new frJava.ServerException(err); + } +}; + +function addAdditionalDataFromSessionProperties() { + //Add additional data from session property values + if (session != null) { // session is not available for resource owner password credentials grant + map.put("ipAddress", session.getProperty("Host")) + } +}; + +function logResponse(response) { + logger.message("User REST Call. Status: " + response.getStatus() + ", Body: " + response.getEntity().getString()); +}; + +addAdditionalData(); +*/ diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Authorize-Endpoint-Data-Provider-Script.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Authorize-Endpoint-Data-Provider-Script.script.json new file mode 100644 index 000000000..6cc4fc032 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Authorize-Endpoint-Data-Provider-Script.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "3f93ef6e-e54a-4393-aba1-f322656db28a": { + "_id": "3f93ef6e-e54a-4393-aba1-f322656db28a", + "context": "OAUTH2_AUTHORIZE_ENDPOINT_DATA_PROVIDER", + "createdBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "creationDate": 1433147666269, + "default": true, + "description": "Default global script for OAuth2 Authorize Endpoint Data Provider", + "evaluatorVersion": "1.0", + "language": "JAVASCRIPT", + "lastModifiedBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "lastModifiedDate": 1433147666269, + "name": "OAuth2 Authorize Endpoint Data Provider Script", + "script": "file://OAuth2-Authorize-Endpoint-Data-Provider-Script.script.js" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Dynamic-Client-Registration-Script.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Dynamic-Client-Registration-Script.script.js new file mode 100644 index 000000000..de215145f --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Dynamic-Client-Registration-Script.script.js @@ -0,0 +1,71 @@ +/* + * Copyright 2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +/* + * This script is run after the following Dynamic Client Registration operations: CREATE, UPDATE, DELETE. + * + * Defined variables: + * Common script bindings for next-generation scripts (1) + * requestProperties - An unmodifiable map of the following request properties: + * requestUri - The request URI. + * realm - The realm that the request relates to. + * requestParams - A map of the request params and/or posted data. + * Each value is a list of one or more properties. + * Please note that these should be handled in accordance with OWASP best practices: + * https://owasp.org/www-community/vulnerabilities/Unsafe_use_of_Reflection. + * requestHeaders - A map of the request headers. + * Case-sensitive. + * requestBody - A map representing the body of the request. + * operation - A string to denote the dynamic client registration request operation. + * Possible values: CREATE, UPDATE, DELETE + * clientIdentity - The AMIdentity that represents the created or updated OAuth2Client. + * Null if the operation is DELETE. + * softwareStatement - A map representing the decoded data of the software statement from the request. + * Empty map if no software statement is provided. + * + * Return - no value is expected, any changes shall be made via the bindings directly. + * + * Reference: + * (1) Script Bindings - https://docs.pingidentity.com/pingoneaic/latest/am-scripting/script-bindings.html + */ + +// logger.info("Executing: {}", scriptName); + +/* +// Example: Update the OAuth2Client identity on CREATE +// NOTE: setAttribute() overwrites the whole attribute if it exists already +if (operation === "CREATE") { + // Read a property from the request body + var requestBody = requestProperties.get("requestBody"); + var grantType = requestBody.get("grant_type"); + + if (grantType != null) { + var grantTypes = ["[0]=authorization_code"]; + grantTypes.push("[1]=".concat(grantType)); + clientIdentity.setAttribute( "com.forgerock.openam.oauth2provider.grantTypes", grantTypes); + clientIdentity.store(); + }; +}; + +// Example: Update the OAuth2Client identity on UPDATE +// NOTE: addAttribute() adds the provided value to the set if it exists already. +// Otherwise, it sets the attribute with the single value. +if (operation === "UPDATE") { + // Example: Read a property from the software statement + var redirectUris = softwareStatement.get("redirect_uris"); + if (redirectUris != null) { + var firstUri = redirectUris[0]; + }; + + if (firstUri != null) { + clientIdentity.addAttribute("com.forgerock.openam.oauth2provider.redirectionURIs", "[0]=".concat(firstUri)); + clientIdentity.store(); + }; +}; +*/ diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Dynamic-Client-Registration-Script.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Dynamic-Client-Registration-Script.script.json new file mode 100644 index 000000000..81ec69d28 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Dynamic-Client-Registration-Script.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "4b6b7e8e-cf03-46c8-949f-c5742dbd6bc5": { + "_id": "4b6b7e8e-cf03-46c8-949f-c5742dbd6bc5", + "context": "OAUTH2_DYNAMIC_CLIENT_REGISTRATION", + "createdBy": "null", + "creationDate": 0, + "default": true, + "description": "Default global script for Dynamic Client Registration", + "evaluatorVersion": "2.0", + "language": "JAVASCRIPT", + "lastModifiedBy": "null", + "lastModifiedDate": 0, + "name": "OAuth2 Dynamic Client Registration Script", + "script": "file://OAuth2-Dynamic-Client-Registration-Script.script.js" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Evaluate-Scope-Script.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Evaluate-Scope-Script.script.js new file mode 100644 index 000000000..630e2dad4 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Evaluate-Scope-Script.script.js @@ -0,0 +1,53 @@ +/* + * Copyright 2021-2025 Ping Identity Corporation. All Rights Reserved + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +/* + * This script lets you populate the scopes with profile attribute values when the tokeninfo endpoint is called. + * For example, if one of the scopes is mail, AM sets mail to the resource owner's email address in the token information returned. + * + * Defined variables: + * accessToken - AccessToken (1). + * The access token to be updated. + * Mutable object, all changes to the access token will be reflected. + * identity - AMIdentity (2). + * The client's identity if present or the resource owner's identity. Can be null. + * scriptName - String (primitive). + * Always present, the display name of the script. + * logger - Always present, the debug logger instance: + * https://backstage.forgerock.com/docs/am/7/scripting-guide/scripting-api-global-logger.html#scripting-api-global-logger. + * Corresponding log files will be prefixed with: scripts.OAUTH2_EVALUATE_SCOPE + * httpClient - HTTP Client (3). + * Always present, the HTTP Client instance: + * https://backstage.forgerock.com/docs/am/7/scripting-guide/scripting-api-global-http-client.html#scripting-api-global-http-client. + * + * Return - a Map of the access token's information (4). + * + * Class reference: + * (1) AccessToken - https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/oauth2/core/AccessToken.html. + * (2) AMIdentity - https://backstage.forgerock.com/docs/am/7/apidocs/com/sun/identity/idm/AMIdentity.html. + * (3) Client - https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/http/Client.html. + * (4) Map - https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/HashMap.html. + */ + +/** + * Default evaluate scope script to use as a template for new scripts. + */ + +(function () { + var map = new java.util.HashMap(); + if (identity !== null) { + var scopes = accessToken.getScope().toArray(); + scopes.forEach(function (scope) { + var attributes = identity.getAttribute(scope).toArray(); + map.put(scope, attributes.join(",")); + }); + } else { + logger.error('identity is null'); + } + return map; +}()); diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Evaluate-Scope-Script.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Evaluate-Scope-Script.script.json new file mode 100644 index 000000000..99752517f --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Evaluate-Scope-Script.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "da56fe60-8b38-4c46-a405-d6b306d4b336": { + "_id": "da56fe60-8b38-4c46-a405-d6b306d4b336", + "context": "OAUTH2_EVALUATE_SCOPE", + "createdBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "creationDate": 1433147666269, + "default": true, + "description": "Default global script for OAuth2 Scope Evaluation", + "evaluatorVersion": "1.0", + "language": "JAVASCRIPT", + "lastModifiedBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "lastModifiedDate": 1433147666269, + "name": "OAuth2 Evaluate Scope Script", + "script": "file://OAuth2-Evaluate-Scope-Script.script.js" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-JWT-Issuer-Script.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-JWT-Issuer-Script.script.js new file mode 100644 index 000000000..5b25559ff --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-JWT-Issuer-Script.script.js @@ -0,0 +1,76 @@ +/* + * Copyright 2022-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +/* + * This script lets you to derive the configuration for a dynamic JWT issuer from the issuer string. + * A JWT issuer is made up of the following: + * - issuer - the identifier of the entity that issues JWTs + * - resource owner subject claim - the name of the claim in the JWT that identifies the resource owner + * - consented scope claim - the name of the claim in the JWT that represents scope that the resource owner + * has already consented to externally + * - authorized subjects - the set of principal identifiers that are authorized to be used as resource owners + * by the issuer + * - JWKs - either a set of JWKs or connection details for obtaining that set, that are the public keys that + * can verify the signature on the issued JWTs. + * + * Defined variables: + * issuer - String + * The issuer from the bearer JWT. + * realm - String + * The path of the realm that is handling the request. + * scriptName - String. + * Always present, the display name of the script. + * logger - Always present, the script debug logger instance: + * https://backstage.forgerock.com/docs/am/7/scripting-guide/scripting-api-global-logger.html#scripting-api-global-logger. + * Corresponding log files will be prefixed with: scripts.OAUTH2_SCRIPTED_JWT_ISSUER. + * httpClient - HTTP Client (1). + * Always present, the HTTP Client instance: + * https://backstage.forgerock.com/docs/am/7/scripting-guide/scripting-api-global-http-client.html#scripting-api-global-http-client. + * idRepository - Identity Repository (2). Always present. + * secrets - Secrets accessor (3). Always present. + * + * Return - org.forgerock.oauth2.core.TrustedJwtIssuerConfig (4) - the configuration of the trusted JWT issuer. + * + * Class reference: + * (1) Client - https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/http/Client.html. + * (2) ScriptedIdentityRepository - https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openam/scripting/api/identity/ScriptedIdentityRepository.html. + * (3) ScriptedSecrets - https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openam/scripting/api/secrets/ScriptedSecrets.html. + * (4) TrustedJwtIssuerConfig - https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/oauth2/core/TrustedJwtIssuerConfig.html. + */ + +/* EXAMPLE +(function () { + var frJava = JavaImporter( + org.forgerock.oauth2.core.TrustedJwtIssuerConfig, + java.util.Collections + ); + + var iss = idRepository.getIdentity(issuer); + if (iss == null) { + logger.message('No issuer found for: '+issuer); + return null; + } + logger.message('Found issuer: '+iss); + // in this example either a JWK set or a URI to a JWK set are in the postalAddress attribute + var jwksAttrs = iss.getAttributeValues('postalAddress'); + var jwkSet = jwksAttrs.length === 0 ? null : jwksAttrs[0]; + var config = new frJava.TrustedJwtIssuerConfig( + issuer, + 'sub', + 'scope', + // in this example, valid subjects are stored in the mail attribute + iss.getAttributeValues('mail'), + jwkSet.startsWith('{') ? jwkSet : null, + jwkSet.startsWith('http') ? jwkSet : null, + '5 minutes', + '1 minute' + ); + return config; +}()); +*/ diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-JWT-Issuer-Script.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-JWT-Issuer-Script.script.json new file mode 100644 index 000000000..c953826aa --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-JWT-Issuer-Script.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "400e48ba-3f13-4144-ac7b-f824ea8e98c5": { + "_id": "400e48ba-3f13-4144-ac7b-f824ea8e98c5", + "context": "OAUTH2_SCRIPTED_JWT_ISSUER", + "createdBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "creationDate": 1433147666269, + "default": true, + "description": "Default global script for scripted JWT Issuers", + "evaluatorVersion": "1.0", + "language": "JAVASCRIPT", + "lastModifiedBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "lastModifiedDate": 1433147666269, + "name": "OAuth2 JWT Issuer Script", + "script": "file://OAuth2-JWT-Issuer-Script.script.js" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-May-Act-Script.script.groovy b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-May-Act-Script.script.groovy new file mode 100644 index 000000000..10c25d485 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-May-Act-Script.script.groovy @@ -0,0 +1,43 @@ +/* + * Copyright 2020-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +/** + * Defined variables: + * token - The access token to be updated. Mutable object, all changes to the access token will be reflected. + * logger - always present, corresponding log files will be prefixed with: scripts.OAUTH2_ACCESS_TOKEN_MODIFICATION. + * scriptName - always present, the display name of the script + * session - present if the request contains the session cookie, the user's session object + * requestProperties - always present, contains a map of request properties: + * requestUri - the request URI + * realm - the realm that the request relates to + * requestParams - a map of the request params and/or posted data. Each value is a list of one or + * more properties. Please note that these should be handled in accordance with OWASP best + * practices. + * clientProperties - present if the client specified in the request was identified, contains a map of client + * properties: + * clientId - the client's Uri for the request locale + * allowedGrantTypes - list of the allowed grant types (org.forgerock.oauth2.core.GrantType) + * for the client + * allowedResponseTypes - list of the allowed response types for the client + * allowedScopes - list of the allowed scopes for the client + * customProperties - A map of the custom properties of the client. + * Lists or maps will be included as sub-maps, e.g: + * testMap[Key1]=Value1 will be returned as testmap -> Key1 -> Value1 + * + * identity - always present, the identity of the resource owner + * scopes - always present, the requested scopes + */ +/* +import org.forgerock.json.JsonValue + +token.setMayAct( + JsonValue.json(JsonValue.object( + JsonValue.field("client_id", "myClient"), + JsonValue.field("sub", "(usr!myActor)")))) +*/ diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-May-Act-Script.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-May-Act-Script.script.json new file mode 100644 index 000000000..39f2be4f4 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-May-Act-Script.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "c735de08-f8f2-4e69-aa4a-2d8d3d438323": { + "_id": "c735de08-f8f2-4e69-aa4a-2d8d3d438323", + "context": "OAUTH2_MAY_ACT", + "createdBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "creationDate": 1433147666269, + "default": true, + "description": "Default global script for OAuth2 May Act", + "evaluatorVersion": "1.0", + "language": "GROOVY", + "lastModifiedBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "lastModifiedDate": 1433147666269, + "name": "OAuth2 May Act Script", + "script": "file://OAuth2-May-Act-Script.script.groovy" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Validate-Scope-Script.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Validate-Scope-Script.script.js new file mode 100644 index 000000000..55acfe9b7 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Validate-Scope-Script.script.js @@ -0,0 +1,86 @@ +/* + * Copyright 2021-2025 Ping Identity Corporation. All Rights Reserved + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +/* + * This script validates the requested scopes against the allowed scopes. + * If no scopes are requested, default scopes are assumed. + * The script has four top level functions that could be executed during the different OAuth2 flows: + * - validateAuthorizationScope + * - validateAccessTokenScope + * - validateRefreshTokenScope + * - validateBackChannelAuthorizationScope + * + * Defined variables: + * requestedScopes - Set (1). + * The set of requested scopes. + * defaultScopes - Set (1). + * The set of default scopes. + * allowedScopes - Set (1). + * The set of allowed scopes. + * scriptName - String (primitive). + * Always present, the display name of the script. + * logger - Always present, the debug logger instance: + * https://backstage.forgerock.com/docs/am/7/scripting-guide/scripting-api-global-logger.html#scripting-api-global-logger. + * Corresponding log files will be prefixed with: scripts.OAUTH2_VALIDATE_SCOPE + * httpClient - HTTP Client (2). + * Always present, the HTTP Client instance: + * https://backstage.forgerock.com/docs/am/7/scripting-guide/scripting-api-global-http-client.html#scripting-api-global-http-client. + * + * Throws InvalidScopeException: + * - if there are no scopes requested and default scopes are empty + * - if a requested scope is not allowed + * + * Return - a Set of validated scopes (1). + * + * Class reference: + * (1) Set - https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/HashSet.html. + * (2) Client - https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/http/Client.html. + */ + +/** + * Default validate scope script. + */ +function validateScopes () { + var frJava = JavaImporter( + org.forgerock.oauth2.core.exceptions.InvalidScopeException + ); + + var scopes; + if (requestedScopes == null || requestedScopes.isEmpty()) { + scopes = defaultScopes; + } else { + scopes = new java.util.HashSet(allowedScopes); + scopes.retainAll(requestedScopes); + if (requestedScopes.size() > scopes.size()) { + var invalidScopes = new java.util.HashSet(requestedScopes); + invalidScopes.removeAll(allowedScopes); + throw new frJava.InvalidScopeException('Unknown/invalid scope(s)'); + } + } + + if (scopes == null || scopes.isEmpty()) { + throw new frJava.InvalidScopeException('No scope requested and no default scope configured'); + } + return scopes; +} + +function validateAuthorizationScope () { + return validateScopes(); +} + +function validateAccessTokenScope () { + return validateScopes(); +} + +function validateRefreshTokenScope () { + return validateScopes(); +} + +function validateBackChannelAuthorizationScope () { + return validateScopes(); +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Validate-Scope-Script.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Validate-Scope-Script.script.json new file mode 100644 index 000000000..4091198e2 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OAuth2-Validate-Scope-Script.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "25e6c06d-cf70-473b-bd28-26931edc476b": { + "_id": "25e6c06d-cf70-473b-bd28-26931edc476b", + "context": "OAUTH2_VALIDATE_SCOPE", + "createdBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "creationDate": 1433147666269, + "default": true, + "description": "Default global script for OAuth2 Scope Validation", + "evaluatorVersion": "1.0", + "language": "JAVASCRIPT", + "lastModifiedBy": "id=dsameuser,ou=user,dc=openam,dc=forgerock,dc=org", + "lastModifiedDate": 1433147666269, + "name": "OAuth2 Validate Scope Script", + "script": "file://OAuth2-Validate-Scope-Script.script.js" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OIDC-Claims-Script.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OIDC-Claims-Script.script.js new file mode 100644 index 000000000..b2f53ad69 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OIDC-Claims-Script.script.js @@ -0,0 +1,621 @@ +/* + * Copyright 2014-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +/* + * This script computes claim values returned in ID tokens and/or at the UserInfo Endpoint. + * The claim values are computed for: + * the claims derived from the requested scopes, + * the claims provided by the authorization server, + * and the claims requested by the client via the claims parameter. + * + * In the CONFIGURATION AND CUSTOMIZATION section, you can + * define the scope-to-claims mapping, and + * assign to each claim a resolver function that will compute the claim value. + * + * Defined variables (class references are provided below): + * scopes - Set (6). + * Always present, the requested scopes. + * claims - Map (5). + * Always present, default server provided claims. + * claimObjects - List (7, 2). + * Always present, the default server provided claims. + * requestedClaims - Map> (5). + * Always present, not empty if the request contains the claims parameter and the server has enabled + * claims_parameter_supported. A map of the requested claims to possible values, otherwise empty; + * requested claims with no requested values will have a key but no value in the map. A key with + * a single value in its Set (6) indicates that this is the only value that should be returned. + * requestedTypedClaims - List (7, 2). + * Always present, the requested claims. + * Requested claims with no requested values will have a claim with no values. + * A claim with a single value indicates this is the only value that should be returned. + * claimsLocales - List (7). + * The values from the 'claims_locales' parameter. + * See https://openid.net/specs/openid-connect-core-1_0.html#ClaimsLanguagesAndScripts for the OIDC specification details. + * requestProperties - Unmodifiable Map (5). + * Always present, contains a map of request properties: + * requestUri - The request URI. + * realm - The realm that the request relates to. + * requestParams - A map of the request params and/or posted data. + * Each value is a list of one or more properties. + * Please note that these should be handled in accordance with OWASP best practices: + * https://owasp.org/www-community/vulnerabilities/Unsafe_use_of_Reflection. + * clientProperties - Unmodifiable Map (5). + * Present if the client specified in the request was identified, contains a map of client properties: + * clientId - The client's URI for the request locale. + * allowedGrantTypes - List of the allowed grant types (org.forgerock.oauth2.core.GrantType) for the client. + * allowedResponseTypes - List of the allowed response types for the client. + * allowedScopes - List of the allowed scopes for the client. + * customProperties - A map of the custom properties of the client. + * Lists or maps will be included as sub-maps; for example: + * customMap[Key1]=Value1 will be returned as customMap -> Key1 -> Value1. + * To add custom properties to a client, update the Custom Properties field + * in AM Console > Realm Name > Applications > OAuth 2.0 > Clients > Client ID > Advanced. + * identity - AMIdentity (3). + * Always present, the identity of the resource owner. + * session - SSOToken (4). + * Present if the request contains the session cookie, the user's session object. + * scriptName - String (primitive). + * Always present, the display name of the script. + * logger - Always present, the "OAuth2Provider" debug logger instance: + * https://backstage.forgerock.com/docs/am/7/scripting-guide/scripting-api-global-logger.html#scripting-api-global-logger. + * Corresponding files will be prefixed with: scripts.OIDC_CLAIMS. + * httpClient - HTTP Client (8). + * Always present, the HTTP Client instance: + * https://backstage.forgerock.com/docs/am/7/scripting-guide/scripting-api-global-http-client.html#scripting-api-global-http-client. + * In order to use the client, you may need to add + * org.forgerock.http.Client, + * org.forgerock.http.protocol.*, + * and org.forgerock.util.promise.PromiseImpl + * to the allowed Java classes in the scripting engine configuration, as described in: + * https://backstage.forgerock.com/docs/am/7/scripting-guide/script-engine-security.html + * + * Return - a new UserInfoClaims(Map values, Map> compositeScopes) (1) object. + * The result of the last statement in the script is returned to the server. + * Currently, the Immediately Invoked Function Expression (also known as Self-Executing Anonymous Function) + * is the last (and only) statement in this script, and its return value will become the script result. + * Do not use "return variable" statement outside of a function definition. + * See RESULTS section for additional details. + * + * Class reference: + * (1) UserInfoClaims - https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/oauth2/core/UserInfoClaims.html. + * (2) Claim - https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html). + * An instance of org.forgerock.openidconnect.Claim has methods to access + * the claim name, requested values, locale, and whether the claim is essential. + * (3) AMIdentity - https://backstage.forgerock.com/docs/am/7/apidocs/com/sun/identity/idm/AMIdentity.html. + * (4) SSOToken - https://backstage.forgerock.com/docs/am/7/apidocs/com/iplanet/sso/SSOToken.html. + * (5) Map - https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/HashMap.html, + * or https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/LinkedHashMap.html. + * (6) Set - https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/HashSet.html. + * (7) List - https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/ArrayList.html. + * (8) Client - https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/http/Client.html. +*/ + +(function () { + // SETUP + + /** + * Claim processing utilities. + * An object that contains reusable functions for processing claims. + * @see CLAIM PROCESSING UTILITIES section for details. + */ + var utils = getUtils(); + + // CONFIGURATION AND CUSTOMIZATION + + /** + * OAuth 2.0 scope values (scopes) can be used by the Client to request OIDC claims. + * + * Call this configuration method, and pass in as the first argument + * an object that maps a scope value to an array of claim names + * to specify which claims need to be processed and returned for the requested scopes. + * @see {@link https://openid.net/specs/openid-connect-core-1_0.html#ScopeClaims} + * for the scope values that could be used to request claims as defined in the OIDC specification. + * + * Below, find a default configuration that is expected to work in the current environment. + * + * CUSTOMIZATION + * You can choose the claim names returned for a scope. + */ + utils.setScopeClaimsMap({ + profile: [ + 'name', + 'family_name', + 'given_name', + 'zoneinfo', + 'locale' + ], + email: ['email'], + address: ['address'], + phone: ['phone_number'] + }); + + /** + * In this script, each claim + * derived from the requested scopes, + * provided by the authorization server, and + * requested by the client via the claims parameter + * will be processed by a function associated with the claim name. + * + * Call this configuration method, and pass in as the first argument + * an object that maps a claim name to a resolver function, + * which will be automatically executed for each claim processed by the script. + * + * The claim resolver function will receive the requested claim information + * in an instance of org.forgerock.openidconnect.Claim as the first argument. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} + * for details on the Claim class. + * + * If the claim resolver function returns a value, + * other than undefined or null, + * the claim will be included in the script's results. + * + * The Claim instance provides methods to check + * what the name of the claim is, + * which values the claim request contains, + * whether the claim is essential, and + * which locale the claim is associated with. + * The resolver function can consider this information when computing and returning the claim value. + * + * Below, find a default configuration that is expected to work in the current environment. + * A reusable function, utils.getUserProfileClaimResolver(String attribute-name), + * is called to return a claim resolver function based on a user profile attribute. + * @see CLAIM RESOLVERS section for the implementation details and examples. + * For the address claim, an example of a claim resolver that uses another claim resolver is provided. + * + * CUSTOMIZATION + * You can reuse the predefined utils methods with your custom arguments. + * You can also specify a custom resolver function for a claim name, + * that will compute and return the claim value—as shown in the commented out example below. + */ + utils.setClaimResolvers({ + /* + // An example of a simple claim resolver function that is defined for a claim + // directly in the configuration object: + custom-claim-name: function (requestedClaim) { + // In this case, initially, the claim value comes straight from a user profile attribute value: + var claimValue = identity.getAttribute('custom-attribute-name').toArray()[0] + + // Optionally, provide additional logic for processing (filtering, formatting, etc.) the claim value. + // You can use: + // requestedClaim.getName() + // requestedClaim.getValues() + // requestedClaim.getLocale() + // requestedClaim.isEssential() + + return claimValue + }, + */ + /** + * The use of utils.getUserProfileClaimResolver shows how + * an argument passed to a function that returns a claim resolver + * becomes available to the resolver function (via its lexical context). + */ + name: utils.getUserProfileClaimResolver('cn'), + family_name: utils.getUserProfileClaimResolver('sn'), + given_name: utils.getUserProfileClaimResolver('givenname'), + zoneinfo: utils.getUserProfileClaimResolver('preferredtimezone'), + locale: utils.getUserProfileClaimResolver('preferredlocale'), + email: utils.getUserProfileClaimResolver('mail'), + address: utils.getAddressClaimResolver( + /** + * The passed in user profile claim resolver function + * can be used by the address claim resolver function + * to obtain the claim value to be formatted as per the OIDC specification: + * @see https://openid.net/specs/openid-connect-core-1_0.html#AddressClaim. + */ + utils.getUserProfileClaimResolver('postaladdress') + ), + phone_number: utils.getUserProfileClaimResolver('telephonenumber') + }); + + // CLAIM PROCESSING UTILITIES + + /** + * @returns {object} An object that contains reusable claim processing utilities. + * @see PUBLIC METHODS section and the return statement for the list of exported functions. + */ + function getUtils () { + // IMPORT JAVA + + /** + * Provides Java scripting functionality. + * @see {@link https://developer.mozilla.org/en-US/docs/Mozilla/Projects/Rhino/Scripting_Java#javaimporter_constructor}. + */ + var frJava = JavaImporter( + org.forgerock.oauth2.core.exceptions.InvalidRequestException, + org.forgerock.oauth2.core.UserInfoClaims, + org.forgerock.openidconnect.Claim, + + java.util.LinkedHashMap, + java.util.ArrayList + ); + + // SET UP CONFIGURATION + + /** + * Placeholder for a configuration option that contains + * an object that maps the supported scope values (scopes) + * and the corresponding claim names for each scope value. + */ + var scopeClaimsMap; + + /** + * Placeholder for a configuration option that contains + * an object that maps the supported claim names + * and the resolver functions returning the claim value. + */ + var claimResolvers; + + /** + * A (public) method that accepts an object that maps the supported scopes and the corresponding claim names, + * and assigns it to a (private) variable that serves as a configuration option. + * @param {object} params - An object that maps each supported scope value to an array of claim names, + * in order to specify which claims need to be processed for the requested scopes. + * @see {@link https://openid.net/specs/openid-connect-core-1_0.html#ScopeClaims} for details. + * @param {string[]} [params.profile] - An array of claim names to be returned if the profile scope is requested. + * @param {string[]} [params.email] - An array of claim names to be returned if the email scope is requested. + * @param {string[]} [params.address] - An array of claim names to be returned if the address scope is requested. + * @param {string[]} [params.phone] - An array of claim names to be returned if the phone scope is requested. + * @returns {undefined} + */ + function setScopeClaimsMap(params) { + scopeClaimsMap = params; + } + + /** + * A (public) method that accepts an object that maps the supported claim names + * and the resolver functions returning the claim value, + * and assigns it to a (private) variable that serves as a configuration option. + * @param {object} params - An object that maps + * each supported claim name to a function that computes and returns the claim value. + */ + function setClaimResolvers(params) { + claimResolvers = params; + } + + // CLAIM RESOLVERS + + /** + * Claim resolvers are functions that return a claim value. + * @param {*} + * @returns {*} + */ + + /** + * Defines a claim resolver based on a user profile attribute. + * @param {string} attributeName - Name of the user profile attribute. + * @returns {function} A function that will determine the claim value + * based on the user profile attribute and the (requested) claim properties. + */ + function getUserProfileClaimResolver (attributeName) { + /** + * Resolves a claim with a user profile attribute value. + * Returns undefined if the identity attribute is not populated, + * OR if the claim has requested values that do not contain the identity attribute value. + * ATTENTION: the aforementioned comparison is case-sensitive. + * @param {org.forgerock.openidconnect.Claim} claim + * An object that provides methods to obtain information/requirements associated with a claim. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for details. + * @returns {string|HashSet|undefined} + */ + function resolveClaim(claim) { + var userProfileValue; + + if (identity) { + userProfileValue = getClaimValueFromSet(claim, identity.getAttribute(attributeName)); + + if (userProfileValue && !userProfileValue.isEmpty()) { + if (!claim.getValues() || claim.getValues().isEmpty() || claim.getValues().contains(userProfileValue)) { + return userProfileValue; + } + } + } + } + + return resolveClaim; + } + + /** + * Returns an address claim resolver based on a claim value obtained with another claim resolver. + * @param {function} resolveClaim - A function that returns a claim value. + * @returns {function} A function that will accept a claim as an argument, + * run the claim resolver function for the claim and obtain the claim value, + * and apply additional formatting to the value before returning it. + */ + function getAddressClaimResolver (resolveClaim) { + /** + * Creates an address claim object from a value returned by a claim resolver, + * and returns the address claim object as the claim value. + * @see {@link https://openid.net/specs/openid-connect-core-1_0.html#AddressClaim}. + * The claim value is obtained with a claim resolving function available from the closure. + * @param {org.forgerock.openidconnect.Claim} claim + * An object that provides methods to obtain information/requirements associated with a claim. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for details. + * @returns {java.util.LinkedHashMap|undefined} The address claim object created from a claim value. + */ + function resolveAddressClaim(claim) { + var claimValue = resolveClaim(claim); + var addressObject; + + if (isClaimValueValid(claimValue)) { + addressObject = new frJava.LinkedHashMap(); + + addressObject.put('formatted', claimValue); + + return addressObject; + } + } + + return resolveAddressClaim; + } + + /** + * Returns an essential claim resolver based on a claim value obtained with another claim resolver. + * @param {function} resolveClaim - A function that returns a claim value. + * @returns {function} A function that will accept a claim as an argument, + * run the claim resolver function for the claim and obtain the claim value, + * and apply additional logic for essential claims. + */ + function getEssentialClaimResolver (resolveClaim) { + /** + * Returns a claim value or throws an error. + * The claim value is obtained with a claim resolving function available from the closure. + * Throws an exception if the claim is essential and no value is returned for the claim. + * + * Use of this resolver is optional. + * @see {@link https://openid.net/specs/openid-connect-core-1_0.html#IndividualClaimsRequests} stating: + * "Note that even if the Claims are not available because the End-User did not authorize their release or they are not present, + * the Authorization Server MUST NOT generate an error when Claims are not returned, whether they are Essential or Voluntary, + * unless otherwise specified in the description of the specific claim." + * + * @param {org.forgerock.openidconnect.Claim} claim + * An object that provides methods to obtain information/requirements associated with a claim. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for details. + * @returns {*} + * @throws {org.forgerock.oauth2.core.exceptions.InvalidRequestException} + */ + function resolveEssentialClaim(claim) { + var claimValue = resolveClaim(claim); + + if (claim.isEssential() && !isClaimValueValid(claimValue)) { + throw new frJava.InvalidRequestException('Could not provide value for essential claim: ' + claim.getName()); + } + + return claimValue; + } + + return resolveEssentialClaim; + } + + /** + * Provides default resolution for a claim. + * Use it if a claim-specific resolver is not defined in the configuration. + * @param {org.forgerock.openidconnect.Claim} claim + * An object that provides methods to obtain information/requirements associated with a claim. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for details. + * @returns {*} A single value associated with this claim. + */ + function resolveAnyClaim (claim) { + if (claim.getValues().size() === 1) { + return claim.getValues().toArray()[0]; + } + } + + // UTILITIES + + /** + * Returns claim value from a set. + * If the set contains a single value, returns the value. + * If the set contains multiple values, returns the set. + * Otherwise, returns undefined. + * + * @param {org.forgerock.openidconnect.Claim} claim + * An object that provides methods to obtain information/requirements associated with a claim. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for details. + * @param {java.util.HashSet} set The set—for example, a user profile attribute value. + * @returns {string|java.util.HashSet|undefined} + */ + function getClaimValueFromSet (claim, set) { + if (set && set.size()) { + if (set.size() === 1) { + return set.toArray()[0]; + } else { + return set; + } + } else if (logger.warningEnabled()) { + logger.warning('OIDC Claims script. Got an empty set for claim: ' + claim.getName()); + } + } + + function isClaimValueValid (claimValue) { + if (typeof claimValue === 'undefined' || claimValue === null) { + return false; + } + + return true; + } + + // CLAIM PROCESSING + + /** + * Constructs and returns an object populated with the computed claim values + * and the requested scopes mapped to the claim names. + * @returns {org.forgerock.oauth2.core.UserInfoClaims} The object to be returned to the authorization server. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/oauth2/core/UserInfoClaims.html}. + * @see RESULTS section for the use of this function. + */ + function getUserInfoClaims () { + return new frJava.UserInfoClaims(getComputedClaims(), getCompositeScopes()); + } + + /** + * Creates a map of (requested) claim names populated with the computed claim values. + * @returns {java.util.LinkedHashMap} + * A map of the requested claim names and the corresponding claim values. + */ + function getComputedClaims () { + /** + * Creates a complete list of claim objects from: + * the claims derived from the scopes, + * the claims provided by the authorization server, + * and the claims requested by the client. + * @returns {java.util.ArrayList} + * Returns a complete list of org.forgerock.openidconnect.Claim objects available to the script. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for the claim object details. + */ + function getClaims() { + /** + * Returns a list of claim objects for the requested scopes. + * Uses the scopeClaimsMap configuration option to derive the claim names; + * no other properties of a claim derived from a scope are populated. + * @returns {java.util.ArrayList} + * A list of org.forgerock.openidconnect.Claim objects derived from the requested scopes. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for the claim object details. + */ + function convertScopeToClaims() { + var claims = new frJava.ArrayList(); + + scopes.toArray().forEach(function (scope) { + if (String(scope) !== 'openid' && scopeClaimsMap[scope]) { + scopeClaimsMap[scope].forEach(function (claimName) { + claims.add(new frJava.Claim(claimName)); + }); + } + }); + + return claims; + } + + var claims = new frJava.ArrayList(); + + claims.addAll(convertScopeToClaims()); + claims.addAll(claimObjects); + claims.addAll(requestedTypedClaims); + + return claims; + } + + /** + * Computes and returns a claim value. + * To obtain the claim value, uses the resolver function specified for the claim in the claimResolvers configuration object. + * @see claimResolvers + * If no resolver function is found, uses the default claim resolver function. + * + * @param {org.forgerock.openidconnect.Claim} claim + * An object that provides methods to obtain information/requirements associated with a claim. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/openidconnect/Claim.html} for details. + * @returns {*} Claim value. + * @throws {org.forgerock.oauth2.core.exceptions.InvalidRequestException} + * Rethrows this exception if a claim resolver throws it. + * You can throw org.forgerock.oauth2.core.exceptions.InvalidRequestException from your custom claim resolver + * if you want to terminate the claim processing. + */ + function computeClaim(claim) { + var resolveClaim; + var message; + + try { + resolveClaim = claimResolvers[claim.getName()] || resolveAnyClaim; + + return resolveClaim(claim); + } catch (e) { + message = 'OIDC Claims script exception. Unable to resolve OIDC Claim. ' + e; + + if (String(e).indexOf('org.forgerock.oauth2.core.exceptions.InvalidRequestException') !== -1) { + throw e; + } + + if (logger.warningEnabled()) { + logger.warning(message); + } + } + } + + var computedClaims = new frJava.LinkedHashMap(); + + getClaims().toArray().forEach(function (claim) { + var claimValue = computeClaim(claim); + + if (isClaimValueValid(claimValue)) { + computedClaims.put(claim.getName(), claimValue); + } else { + /** + * If a claim has been processed, but appears in the list again, + * and its value cannot be computed under the new conditions, + * the claim is removed from the final result. + * + * For example, a claim could be mapped to a scope and found in the user profile, + * but also requested by the client with required values that don't match the computed one. + * @see {link https://openid.net/specs/openid-connect-core-1_0.html#IndividualClaimsRequests}. + * for the relevant OIDC specification details. + */ + computedClaims.remove(claim.getName()); + } + }); + + return computedClaims; + } + + /** + * Creates a map of requested scopes and the corresponding claim names. + * @returns {java.util.LinkedHashMap} + */ + function getCompositeScopes () { + var compositeScopes = new frJava.LinkedHashMap(); + + scopes.toArray().forEach(function (scope) { + var scopeClaims = new frJava.ArrayList(); + + if (scopeClaimsMap[scope]) { + scopeClaimsMap[scope].forEach(function (claimName) { + scopeClaims.add(claimName); + }); + } + + if (scopeClaims.size()) { + compositeScopes.put(scope, scopeClaims); + } + }); + + return compositeScopes; + } + + // PUBLIC METHODS + + return { + setScopeClaimsMap: setScopeClaimsMap, + setClaimResolvers: setClaimResolvers, + getUserProfileClaimResolver: getUserProfileClaimResolver, + getAddressClaimResolver: getAddressClaimResolver, + getEssentialClaimResolver: getEssentialClaimResolver, + getUserInfoClaims: getUserInfoClaims + }; + } + + // RESULTS + + /** + * This script returns an instance of the org.forgerock.oauth2.core.UserInfoClaims class + * populated with the computed claim values and + * the requested scopes mapped to the claim names. + * @see {@link https://backstage.forgerock.com/docs/am/7/apidocs/org/forgerock/oauth2/core/UserInfoClaims.html}. + * + * Assigning it to a variable gives you an opportunity + * to log the content of the returned value during development. + */ + var userInfoClaims = utils.getUserInfoClaims(); + + /* + logger.error(scriptName + ' results:') + logger.error('Values: ' + userInfoClaims.getValues()) + logger.error('Scopes: ' + userInfoClaims.getCompositeScopes()) + */ + + return userInfoClaims; +}()); diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OIDC-Claims-Script.script.json b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OIDC-Claims-Script.script.json new file mode 100644 index 000000000..8d7726755 --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/OIDC-Claims-Script.script.json @@ -0,0 +1,18 @@ +{ + "script": { + "36863ffb-40ec-48b9-94b1-9a99f71cc3b5": { + "_id": "36863ffb-40ec-48b9-94b1-9a99f71cc3b5", + "context": "OIDC_CLAIMS", + "createdBy": "null", + "creationDate": 0, + "default": true, + "description": "Default global script for OIDC claims", + "evaluatorVersion": "1.0", + "language": "JAVASCRIPT", + "lastModifiedBy": "null", + "lastModifiedDate": 0, + "name": "OIDC Claims Script", + "script": "file://OIDC-Claims-Script.script.js" + } + } +} diff --git a/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/SAML2-IDP-Adapter-Script.script.js b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/SAML2-IDP-Adapter-Script.script.js new file mode 100644 index 000000000..4c50d97de --- /dev/null +++ b/test/e2e/exports/all-separate-extracted-script/cloud/realm/root-alpha/script/SAML2-IDP-Adapter-Script.script.js @@ -0,0 +1,151 @@ +/* + * Copyright 2021-2025 Ping Identity Corporation. All Rights Reserved + * + * This code is to be used exclusively in connection with Ping Identity + * Corporation software or services. Ping Identity Corporation only offers + * such software or services to legal entities who have entered into a + * binding license agreement with Ping Identity Corporation. + */ + +/* + * The script has these top level functions that could be executed during a SAML2 flow. + * - preSingleSignOn + * - preAuthentication + * - preSendResponse + * - preSignResponse + * - preSendFailureResponse + * + * Please see the javadoc for the interface definition and more information about these methods. + * https://backstage.forgerock.com/docs/am/7.3/_attachments/apidocs/com/sun/identity/saml2/plugins/SAML2IdentityProviderAdapter.html + * Note that the initialize method is not supported in the scripts. + * + * Defined variables. Check the documentation on the respective functions for the variables available to it. + * + * hostedEntityId - String + * Entity ID for the hosted IDP + * realm - String + * Realm of the hosted IDP + * idpAdapterScriptHelper - IdpAdapterScriptHelper (1) + * An instance of IdpAdapterScriptHelper containing helper methods. See Javadoc for more details. + * request - HttpServletRequest (2) + * Servlet request object + * response - HttpServletResponse (3) + * Servlet response object + * authnRequest - AuthnRequest (4) + * The original authentication request sent from SP + * reqId - String + * The id to use for continuation of processing if the adapter redirects + * res - Response (5) + * The SAML Response + * session - SSOToken (6) + * The single sign-on session. The reference type of this is Object and would need to be casted to SSOToken. + * relayState - String + * The relayState that will be used in the redirect + * faultCode - String + * the fault code that will be returned in the SAML response + * faultDetail - String + * the fault detail that will be returned in the SAML response + * logger - Logger instance + * https://backstage.forgerock.com/docs/am/7.3/scripting-guide/scripting-api-global-logger.html. + * Corresponding log files will be prefixed with: scripts.