From 6958cce6bbf0fa139b90d6ea8e6dae9cb22aba96 Mon Sep 17 00:00:00 2001 From: Dallin Sevy Date: Thu, 4 Jun 2026 14:45:44 -0600 Subject: [PATCH] feat: add commands for iga-sod-policy and iga-sod-policy-rules --- src/cli/config/config-export.ts | 4 +- src/cli/config/config-import.ts | 6 +- src/cli/iga/iga.ts | 4 + .../sod-policy-rule/iga-policy-rule-delete.ts | 61 + .../iga-policy-rule-describe.ts | 72 + .../sod-policy-rule/iga-policy-rule-export.ts | 131 ++ .../sod-policy-rule/iga-policy-rule-import.ts | 127 ++ .../sod-policy-rule/iga-policy-rule-list.ts | 62 + src/cli/iga/sod-policy-rule/iga-policy.ts | 32 + src/cli/iga/sod-policy/iga-policy-delete.ts | 61 + src/cli/iga/sod-policy/iga-policy-describe.ts | 72 + src/cli/iga/sod-policy/iga-policy-export.ts | 131 ++ src/cli/iga/sod-policy/iga-policy-import.ts | 125 ++ src/cli/iga/sod-policy/iga-policy-list.ts | 62 + src/cli/iga/sod-policy/iga-policy.ts | 30 + src/ops/cloud/iga/IgaSodPolicyOps.ts | 516 +++++++ src/ops/cloud/iga/IgaSodPolicyRuleOps.ts | 507 +++++++ src/ops/cloud/iga/IgaWorkflowOps.ts | 16 +- .../en/__snapshots__/iga.test.js.snap | 2 + .../iga-sod-policy-delete.e2e.test.js.snap | 8 + .../iga-sod-policy-describe.e2e.test.js.snap | 37 + .../iga-sod-policy-export.e2e.test.js.snap | 256 ++++ .../iga-sod-policy-import.e2e.test.js.snap | 36 + .../iga-sod-policy-list.e2e.test.js.snap | 24 + ...ga-sod-policy-rule-delete.e2e.test.js.snap | 8 + ...-sod-policy-rule-describe.e2e.test.js.snap | 49 + ...ga-sod-policy-rule-export.e2e.test.js.snap | 1184 +++++++++++++++++ ...ga-sod-policy-rule-import.e2e.test.js.snap | 36 + .../iga-sod-policy-rule-list.e2e.test.js.snap | 27 + test/e2e/config-export.e2e.test.js | 8 +- .../sod-policy-rules/Test-Policy.rule.json | 418 ++++++ .../sod-policy-rules/describe-test.rule.json | 418 ++++++ .../test-rule.policyRule.json | 106 ++ .../sod-policy-rules/test-rule.rule.json | 418 ++++++ .../global/sod-policy/test-policy.policy.json | 33 + .../cloud/global/sod-policy/test.policy.json | 35 + .../global/sod-policy/testing.policy.json | 32 + test/e2e/exports/all/allPolicies.policy.json | 76 ++ .../e2e/exports/all/allPolicyRules.rules.json | 320 +++++ test/e2e/iga-sod-policy-delete.e2e.test.js | 71 + test/e2e/iga-sod-policy-describe.e2e.test.js | 84 ++ test/e2e/iga-sod-policy-export.e2e.test.js | 82 ++ test/e2e/iga-sod-policy-import.e2e.test.js | 107 ++ test/e2e/iga-sod-policy-list.e2e.test.js | 82 ++ .../iga-sod-policy-rule-delete.e2e.test.js | 72 + .../iga-sod-policy-rule-describe.e2e.test.js | 84 ++ .../iga-sod-policy-rule-export.e2e.test.js | 82 ++ .../iga-sod-policy-rule-import.e2e.test.js | 107 ++ test/e2e/iga-sod-policy-rule-list.e2e.test.js | 82 ++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 257 ++++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 387 ++++++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 387 ++++++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 387 ++++++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 387 ++++++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 147 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 147 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 147 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 147 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 147 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 147 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../0_890022063/am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../0_890022063/iga_2664973160/recording.har | 147 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 147 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 147 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 267 ++++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 147 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 147 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 147 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 147 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 147 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 147 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 147 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 147 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 147 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 147 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../0_890022063/am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../0_890022063/iga_2664973160/recording.har | 147 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 147 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ .../am_1076162899/recording.har | 312 +++++ .../environment_1072573434/recording.har | 125 ++ .../iga_2664973160/recording.har | 147 ++ .../oauth2_393036114/recording.har | 146 ++ .../openidm_3290118515/recording.har | 310 +++++ 205 files changed, 40274 insertions(+), 11 deletions(-) create mode 100644 src/cli/iga/sod-policy-rule/iga-policy-rule-delete.ts create mode 100644 src/cli/iga/sod-policy-rule/iga-policy-rule-describe.ts create mode 100644 src/cli/iga/sod-policy-rule/iga-policy-rule-export.ts create mode 100644 src/cli/iga/sod-policy-rule/iga-policy-rule-import.ts create mode 100644 src/cli/iga/sod-policy-rule/iga-policy-rule-list.ts create mode 100644 src/cli/iga/sod-policy-rule/iga-policy.ts create mode 100644 src/cli/iga/sod-policy/iga-policy-delete.ts create mode 100644 src/cli/iga/sod-policy/iga-policy-describe.ts create mode 100644 src/cli/iga/sod-policy/iga-policy-export.ts create mode 100644 src/cli/iga/sod-policy/iga-policy-import.ts create mode 100644 src/cli/iga/sod-policy/iga-policy-list.ts create mode 100644 src/cli/iga/sod-policy/iga-policy.ts create mode 100644 src/ops/cloud/iga/IgaSodPolicyOps.ts create mode 100644 src/ops/cloud/iga/IgaSodPolicyRuleOps.ts create mode 100644 test/e2e/__snapshots__/iga-sod-policy-delete.e2e.test.js.snap create mode 100644 test/e2e/__snapshots__/iga-sod-policy-describe.e2e.test.js.snap create mode 100644 test/e2e/__snapshots__/iga-sod-policy-export.e2e.test.js.snap create mode 100644 test/e2e/__snapshots__/iga-sod-policy-import.e2e.test.js.snap create mode 100644 test/e2e/__snapshots__/iga-sod-policy-list.e2e.test.js.snap create mode 100644 test/e2e/__snapshots__/iga-sod-policy-rule-delete.e2e.test.js.snap create mode 100644 test/e2e/__snapshots__/iga-sod-policy-rule-describe.e2e.test.js.snap create mode 100644 test/e2e/__snapshots__/iga-sod-policy-rule-export.e2e.test.js.snap create mode 100644 test/e2e/__snapshots__/iga-sod-policy-rule-import.e2e.test.js.snap create mode 100644 test/e2e/__snapshots__/iga-sod-policy-rule-list.e2e.test.js.snap create mode 100644 test/e2e/exports/all-separate/cloud/global/sod-policy-rules/Test-Policy.rule.json create mode 100644 test/e2e/exports/all-separate/cloud/global/sod-policy-rules/describe-test.rule.json create mode 100644 test/e2e/exports/all-separate/cloud/global/sod-policy-rules/test-rule.policyRule.json create mode 100644 test/e2e/exports/all-separate/cloud/global/sod-policy-rules/test-rule.rule.json create mode 100644 test/e2e/exports/all-separate/cloud/global/sod-policy/test-policy.policy.json create mode 100644 test/e2e/exports/all-separate/cloud/global/sod-policy/test.policy.json create mode 100644 test/e2e/exports/all-separate/cloud/global/sod-policy/testing.policy.json create mode 100644 test/e2e/exports/all/allPolicies.policy.json create mode 100644 test/e2e/exports/all/allPolicyRules.rules.json create mode 100644 test/e2e/iga-sod-policy-delete.e2e.test.js create mode 100644 test/e2e/iga-sod-policy-describe.e2e.test.js create mode 100644 test/e2e/iga-sod-policy-export.e2e.test.js create mode 100644 test/e2e/iga-sod-policy-import.e2e.test.js create mode 100644 test/e2e/iga-sod-policy-list.e2e.test.js create mode 100644 test/e2e/iga-sod-policy-rule-delete.e2e.test.js create mode 100644 test/e2e/iga-sod-policy-rule-describe.e2e.test.js create mode 100644 test/e2e/iga-sod-policy-rule-export.e2e.test.js create mode 100644 test/e2e/iga-sod-policy-rule-import.e2e.test.js create mode 100644 test/e2e/iga-sod-policy-rule-list.e2e.test.js create mode 100644 test/e2e/mocks/iga_2664973160/policy-delete_2932273073/0_n_2861796890/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-delete_2932273073/0_n_2861796890/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-delete_2932273073/0_n_2861796890/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-delete_2932273073/0_n_2861796890/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-delete_2932273073/0_n_2861796890/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_file_174088422/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_file_174088422/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_file_174088422/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_file_174088422/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_n_f_4242328059/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_n_f_4242328059/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_n_f_4242328059/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_n_f_4242328059/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_policy-name_3782453078/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_policy-name_3782453078/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_policy-name_3782453078/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_policy-name_3782453078/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_policy-name_3782453078/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_NAD_1312604927/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_NAD_1312604927/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_NAD_1312604927/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_NAD_1312604927/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_NAD_1312604927/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_all_file_3124693826/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_all_file_3124693826/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_all_file_3124693826/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_all_file_3124693826/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_all_file_3124693826/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_no-metadata_a_directory_3627220595/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_no-metadata_a_directory_3627220595/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_no-metadata_a_directory_3627220595/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_no-metadata_a_directory_3627220595/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_no-metadata_a_directory_3627220595/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_AD_3050885125/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_AD_3050885125/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_AD_3050885125/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_AD_3050885125/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_AD_3050885125/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_af_3559436575/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_af_3559436575/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_af_3559436575/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_af_3559436575/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_af_3559436575/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_all-separate_directory_3135850579/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_all-separate_directory_3135850579/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_all-separate_directory_3135850579/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_all-separate_directory_3135850579/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_all-separate_directory_3135850579/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_f_2727575938/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_f_2727575938/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_f_2727575938/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_f_2727575938/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_f_2727575938/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_n_f_4242328059/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_n_f_4242328059/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_n_f_4242328059/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_n_f_4242328059/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_n_f_4242328059/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_policy-name_file_3260601541/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_policy-name_file_3260601541/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_policy-name_file_3260601541/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_policy-name_file_3260601541/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_policy-name_file_3260601541/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_890022063/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_890022063/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_890022063/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_890022063/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_890022063/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_l_2828241652/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_l_2828241652/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_l_2828241652/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_l_2828241652/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_l_2828241652/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_long_276218670/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_long_276218670/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_long_276218670/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_long_276218670/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_long_276218670/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-delete_3777581556/0_n_2861796890/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-delete_3777581556/0_n_2861796890/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-delete_3777581556/0_n_2861796890/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-delete_3777581556/0_n_2861796890/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-delete_3777581556/0_n_2861796890/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_file_174088422/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_file_174088422/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_file_174088422/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_file_174088422/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_n_f_4242328059/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_n_f_4242328059/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_n_f_4242328059/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_n_f_4242328059/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_rule-name_4160298258/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_rule-name_4160298258/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_rule-name_4160298258/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_rule-name_4160298258/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_rule-name_4160298258/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_NAD_1312604927/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_NAD_1312604927/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_NAD_1312604927/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_NAD_1312604927/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_NAD_1312604927/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_all_file_3124693826/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_all_file_3124693826/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_all_file_3124693826/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_all_file_3124693826/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_all_file_3124693826/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_no-metadata_a_directory_3627220595/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_no-metadata_a_directory_3627220595/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_no-metadata_a_directory_3627220595/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_no-metadata_a_directory_3627220595/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_no-metadata_a_directory_3627220595/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_AD_3050885125/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_AD_3050885125/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_AD_3050885125/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_AD_3050885125/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_AD_3050885125/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_af_3559436575/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_af_3559436575/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_af_3559436575/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_af_3559436575/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_af_3559436575/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_all-separate_directory_3135850579/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_all-separate_directory_3135850579/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_all-separate_directory_3135850579/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_all-separate_directory_3135850579/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_all-separate_directory_3135850579/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_f_2727575938/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_f_2727575938/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_f_2727575938/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_f_2727575938/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_f_2727575938/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_n_f_4242328059/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_n_f_4242328059/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_n_f_4242328059/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_n_f_4242328059/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_n_f_4242328059/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_rule-name_file_754998057/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_rule-name_file_754998057/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_rule-name_file_754998057/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_rule-name_file_754998057/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_rule-name_file_754998057/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_890022063/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_890022063/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_890022063/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_890022063/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_890022063/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_l_2828241652/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_l_2828241652/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_l_2828241652/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_l_2828241652/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_l_2828241652/openidm_3290118515/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_long_276218670/am_1076162899/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_long_276218670/environment_1072573434/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_long_276218670/iga_2664973160/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_long_276218670/oauth2_393036114/recording.har create mode 100644 test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_long_276218670/openidm_3290118515/recording.har diff --git a/src/cli/config/config-export.ts b/src/cli/config/config-export.ts index 5acecae67..5883787ff 100644 --- a/src/cli/config/config-export.ts +++ b/src/cli/config/config-export.ts @@ -176,7 +176,7 @@ export default function setup() { includeReadOnly: options.readOnly, onlyRealm: options.realmOnly, onlyGlobal: options.globalOnly, - onlyCustom: options.onlyCustom + onlyCustom: options.onlyCustom, } ); if (!outcome) process.exitCode = 1; @@ -209,7 +209,7 @@ export default function setup() { includeReadOnly: options.readOnly, onlyRealm: options.realmOnly, onlyGlobal: options.globalOnly, - onlyCustom: options.onlyCustom + onlyCustom: options.onlyCustom, } ); if (!outcome) process.exitCode = 1; diff --git a/src/cli/config/config-import.ts b/src/cli/config/config-import.ts index 20e887ad3..16c02d90c 100644 --- a/src/cli/config/config-import.ts +++ b/src/cli/config/config-import.ts @@ -135,7 +135,7 @@ export default function setup() { includeDefault: options.default, includeActiveValues: options.includeActiveValues, source: options.source, - onlyCustom: options.onlyCustom + onlyCustom: options.onlyCustom, }); if (!outcome) process.exitCode = 1; } @@ -159,7 +159,7 @@ export default function setup() { includeDefault: options.default, includeActiveValues: options.includeActiveValues, source: options.source, - onlyCustom: options.onlyCustom + onlyCustom: options.onlyCustom, }); if (!outcome) process.exitCode = 1; } @@ -177,7 +177,7 @@ export default function setup() { includeDefault: options.default, includeActiveValues: options.includeActiveValues, source: options.source, - onlyCustom: options.onlyCustom + onlyCustom: options.onlyCustom, } ); if (!outcome) process.exitCode = 1; diff --git a/src/cli/iga/iga.ts b/src/cli/iga/iga.ts index 3da94c735..150fbb4e7 100644 --- a/src/cli/iga/iga.ts +++ b/src/cli/iga/iga.ts @@ -1,4 +1,6 @@ import { FrodoStubCommand } from '../FrodoCommand'; +import SodPolicyCmd from './sod-policy/iga-policy'; +import SodPolicyRulesCmd from './sod-policy-rule/iga-policy'; import WorkflowCmd from './workflow/iga-workflow'; export default function setup() { @@ -7,6 +9,8 @@ export default function setup() { ); program.addCommand(WorkflowCmd().name('workflow').showHelpAfterError()); + program.addCommand(SodPolicyCmd().name('policy').showHelpAfterError()); + program.addCommand(SodPolicyRulesCmd().name('policy-rule')); program.showHelpAfterError(); return program; diff --git a/src/cli/iga/sod-policy-rule/iga-policy-rule-delete.ts b/src/cli/iga/sod-policy-rule/iga-policy-rule-delete.ts new file mode 100644 index 000000000..7b8f1b85d --- /dev/null +++ b/src/cli/iga/sod-policy-rule/iga-policy-rule-delete.ts @@ -0,0 +1,61 @@ +import { frodo, state } from '@rockcarver/frodo-lib'; +import { Option } from 'commander'; + +import { getTokens } from '../../../ops/AuthenticateOps'; +import { deletePolicyRuleByName } from '../../../ops/cloud/iga/IgaSodPolicyRuleOps'; +import { printMessage, verboseMessage } from '../../../utils/Console.js'; +import { FrodoCommand } from '../../FrodoCommand'; + +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; + +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; + +export default function setup() { + const program = new FrodoCommand('frodo iga policy-rule delete'); + + program + .description('Delete a SoD policy rule.') + .addOption(new Option('-n, --rule-name ', 'Rule name.')) + .action(async (host, realm, user, password, options, command) => { + command.handleDefaultArgsAndOpts( + host, + realm, + user, + password, + options, + command + ); + if (!options.ruleName) { + printMessage( + 'Unrecognized combination of options or no options...', + 'error' + ); + program.help(); + process.exitCode = 1; + return; + } + const getTokensIsSuccessful = await getTokens( + false, + true, + deploymentTypes + ); + if (!getTokensIsSuccessful) { + printMessage('Error getting tokens', 'error'); + process.exitCode = 1; + return; + } + if (!state.getIsIGA()) { + printMessage( + 'Command not supported for non-IGA cloud tenants', + 'error' + ); + process.exitCode = 1; + return; + } + verboseMessage('Deleting policy...'); + const outcome = await deletePolicyRuleByName(options.ruleName); + if (!outcome) process.exitCode = 1; + }); + + return program; +} diff --git a/src/cli/iga/sod-policy-rule/iga-policy-rule-describe.ts b/src/cli/iga/sod-policy-rule/iga-policy-rule-describe.ts new file mode 100644 index 000000000..3aa48595e --- /dev/null +++ b/src/cli/iga/sod-policy-rule/iga-policy-rule-describe.ts @@ -0,0 +1,72 @@ +import { frodo, state } from '@rockcarver/frodo-lib'; +import { Option } from 'commander'; + +import { getTokens } from '../../../ops/AuthenticateOps'; +import { describePolicyRule } from '../../../ops/cloud/iga/IgaSodPolicyRuleOps'; +import { printMessage, verboseMessage } from '../../../utils/Console'; +import { FrodoCommand } from '../../FrodoCommand'; + +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; + +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; + +export default function setup() { + const program = new FrodoCommand('frodo iga policy-rule describe'); + + program + .description('Describe Policy Rule.') + .addOption( + new Option( + '-n, --rule-name ', + 'Rule name. If not specified, will describe first rule in the provided export file.' + ) + ) + .addOption( + new Option( + '-f, --file ', + 'Name of the policy export file to describe. If not specified, will automatically pull the policy export data of the provided id from the tenant.' + ) + ) + .action(async (host, realm, user, password, options, command) => { + command.handleDefaultArgsAndOpts( + host, + realm, + user, + password, + options, + command + ); + if (!options.ruleName && !options.file) { + printMessage( + 'Unrecognized combination of options or no options...', + 'error' + ); + program.help(); + process.exitCode = 1; + return; + } + const getTokensIsSuccessful = await getTokens( + false, + true, + deploymentTypes + ); + if (!getTokensIsSuccessful) { + printMessage('Error getting tokens', 'error'); + process.exitCode = 1; + return; + } + if (!state.getIsIGA()) { + printMessage( + 'Command not supported for non-IGA cloud tenants', + 'error' + ); + process.exitCode = 1; + return; + } + verboseMessage(`Describing policy ${options.ruleName}...`); + const outcome = await describePolicyRule(options.ruleName, options.file); + if (!outcome) process.exitCode = 1; + }); + + return program; +} diff --git a/src/cli/iga/sod-policy-rule/iga-policy-rule-export.ts b/src/cli/iga/sod-policy-rule/iga-policy-rule-export.ts new file mode 100644 index 000000000..cd9351bad --- /dev/null +++ b/src/cli/iga/sod-policy-rule/iga-policy-rule-export.ts @@ -0,0 +1,131 @@ +import { frodo, state } from '@rockcarver/frodo-lib'; +import { Option } from 'commander'; + +import { getTokens } from '../../../ops/AuthenticateOps'; +import { + exportPolicyRulesToFile, + exportPolicyRulesToFiles, + exportPolicyRuleToFile, +} from '../../../ops/cloud/iga/IgaSodPolicyRuleOps'; +import { printMessage, verboseMessage } from '../../../utils/Console.js'; +import { FrodoCommand } from '../../FrodoCommand'; + +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; + +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; + +export default function setup() { + const program = new FrodoCommand( + 'frodo iga policy-rule export', + [], + deploymentTypes + ); + + program + .description('Export policy rules.') + .addOption( + new Option( + '-n, --rule-name ', + 'Rule name. If specified, -a and -A are ignored.' + ) + ) + .addOption( + new Option( + '-f, --file [file]', + 'Name of the export file. Ignored with -A. Defaults to .rule.json.' + ) + ) + .addOption( + new Option( + '-a, --all', + 'Export all policies to a single file. Ignored with -n.' + ) + ) + .addOption( + new Option( + '-A, --all-separate', + 'Export all policies as separate files .rule.json. Ignored with -n and -a.' + ) + ) + .addOption( + new Option( + '-N, --no-metadata', + 'Do not include metadata in the export file.' + ) + ) + .addOption( + new Option( + '-M, --modified-properties', + 'Include modified properties in export (e.g. lastModifiedDate, lastModifiedBy, createdBy, creationDate, etc.)' + ).default(false, 'false') + ) + .action(async (host, realm, user, password, options, command) => { + command.handleDefaultArgsAndOpts( + host, + realm, + user, + password, + options, + command + ); + if (!options.ruleName && !options.all && !options.allSeparate) { + printMessage( + 'Unrecognized combination of options or no options...', + 'error' + ); + program.help(); + process.exitCode = 1; + return; + } + const getTokensIsSuccessful = await getTokens( + false, + true, + deploymentTypes + ); + if (!getTokensIsSuccessful) { + printMessage('Error getting tokens', 'error'); + process.exitCode = 1; + return; + } + if (!state.getIsIGA()) { + printMessage( + 'Command not supported for non-IGA cloud tenants', + 'error' + ); + process.exitCode = 1; + return; + } + // --policy-name -n + if (options.ruleName) { + verboseMessage(`Exporting policy "${options.ruleName}"...`); + const outcome = await exportPolicyRuleToFile( + options.ruleName, + options.file, + options.metadata, + options.modifiedProperties + ); + if (!outcome) process.exitCode = 1; + } + // --all -a + else if (options.all) { + verboseMessage('Exporting all policies to a single file...'); + const outcome = await exportPolicyRulesToFile( + options.file, + options.metadata, + options.modifiedProperties + ); + if (!outcome) process.exitCode = 1; + } + // --all-separate -A + else if (options.allSeparate) { + verboseMessage('Exporting all policies to separate files...'); + const outcome = await exportPolicyRulesToFiles( + options.metadata, + options.modifiedProperties + ); + if (!outcome) process.exitCode = 1; + } + }); + + return program; +} diff --git a/src/cli/iga/sod-policy-rule/iga-policy-rule-import.ts b/src/cli/iga/sod-policy-rule/iga-policy-rule-import.ts new file mode 100644 index 000000000..0e8344a76 --- /dev/null +++ b/src/cli/iga/sod-policy-rule/iga-policy-rule-import.ts @@ -0,0 +1,127 @@ +import { frodo, state } from '@rockcarver/frodo-lib'; +import { Option } from 'commander'; + +import { getTokens } from '../../../ops/AuthenticateOps'; +import { + importFirstPolicyRuleFromFile, + importPolicyRuleFromFile, + importPolicyRulesFromFile, + importPolicyRulesFromFiles, +} from '../../../ops/cloud/iga/IgaSodPolicyRuleOps'; +import { printMessage, verboseMessage } from '../../../utils/Console.js'; +import { FrodoCommand } from '../../FrodoCommand'; + +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; + +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; + +export default function setup() { + const program = new FrodoCommand( + 'frodo iga policy-rule import', + [], + deploymentTypes + ); + + program + .description('Import SoD policy rules.') + .addOption( + new Option( + '-n, --rule-name ', + 'Rule name. If specified, -a and -A are ignored.' + ) + ) + .addOption(new Option('-f, --file ', 'Name of the import file.')) + .addOption( + new Option( + '-a, --all', + 'Import all policy rules from a single file. Ignored with -n.' + ) + ) + .addOption( + new Option( + '-A, --all-separate', + 'Import all policy rules from separate files (*.rule.json) in the current directory. Ignored with -n or -a.' + ) + ) + .action(async (host, realm, user, password, options, command) => { + command.handleDefaultArgsAndOpts( + host, + realm, + user, + password, + options, + command + ); + const isImportByName = options.ruleName && options.file; + const isImportAll = options.all && options.file; + const isImportAllSeparate = options.allSeparate && !options.file; + const isImportFirst = !!options.file; + if ( + !isImportByName && + !isImportAll && + !isImportAllSeparate && + !isImportFirst + ) { + printMessage( + 'Unrecognized combination of options or no options...', + 'error' + ); + program.help(); + process.exitCode = 1; + return; + } + const getTokensIsSuccessful = await getTokens( + false, + true, + deploymentTypes + ); + if (!getTokensIsSuccessful) { + printMessage('Error getting tokens', 'error'); + process.exitCode = 1; + return; + } + if (!state.getIsIGA()) { + printMessage( + 'Command not supported for non-IGA cloud tenants', + 'error' + ); + process.exitCode = 1; + return; + } + // import by name + if (isImportByName) { + verboseMessage(`Importing policy rule "${options.ruleName}"...`); + const outcome = await importPolicyRuleFromFile( + options.ruleName, + options.file + ); + if (!outcome) process.exitCode = 1; + } + // --all -a + else if (isImportAll) { + verboseMessage( + `Importing all policy rules from a single file (${options.file})...` + ); + const outcome = await importPolicyRulesFromFile(options.file); + if (!outcome) process.exitCode = 1; + } + // --all-separate -A + else if (isImportAllSeparate) { + verboseMessage( + 'Importing all policy rules from separate files (*.rule.json) in current directory...' + ); + const outcome = await importPolicyRulesFromFiles(); + if (!outcome) process.exitCode = 1; + } + // import first policy rule from file + else if (isImportFirst) { + verboseMessage( + `Importing first policy rule from file "${options.file}"...` + ); + const outcome = await importFirstPolicyRuleFromFile(options.file); + if (!outcome) process.exitCode = 1; + } + }); + + return program; +} diff --git a/src/cli/iga/sod-policy-rule/iga-policy-rule-list.ts b/src/cli/iga/sod-policy-rule/iga-policy-rule-list.ts new file mode 100644 index 000000000..e25460f3f --- /dev/null +++ b/src/cli/iga/sod-policy-rule/iga-policy-rule-list.ts @@ -0,0 +1,62 @@ +import { frodo, state } from '@rockcarver/frodo-lib'; +import { Option } from 'commander'; + +import { getTokens } from '../../../ops/AuthenticateOps'; +import { listPolicyRules } from '../../../ops/cloud/iga/IgaSodPolicyRuleOps'; +import { printMessage, verboseMessage } from '../../../utils/Console.js'; +import { FrodoCommand } from '../../FrodoCommand'; + +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; + +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; + +export default function setup() { + const program = new FrodoCommand( + 'frodo iga policy-rules list', + [], + deploymentTypes + ); + + program + .description('List policy rules.') + .addOption( + new Option('-l, --long', 'Long with all fields.').default(false, 'false') + ) + .action( + // implement command logic inside action handler + async (host, realm, user, password, options, command) => { + command.handleDefaultArgsAndOpts( + host, + realm, + user, + password, + options, + command + ); + const getTokensIsSuccessful = await getTokens( + false, + true, + deploymentTypes + ); + if (!getTokensIsSuccessful) { + printMessage('Error getting tokens', 'error'); + process.exitCode = 1; + return; + } + if (!state.getIsIGA()) { + printMessage( + 'Command not supported for non-IGA cloud tenants', + 'error' + ); + process.exitCode = 1; + return; + } + verboseMessage(`Listing workflows ...`); + const outcome = await listPolicyRules(options.long); + if (!outcome) process.exitCode = 1; + } + // end command logic inside action handler + ); + + return program; +} diff --git a/src/cli/iga/sod-policy-rule/iga-policy.ts b/src/cli/iga/sod-policy-rule/iga-policy.ts new file mode 100644 index 000000000..879f5a8d6 --- /dev/null +++ b/src/cli/iga/sod-policy-rule/iga-policy.ts @@ -0,0 +1,32 @@ +import { FrodoStubCommand } from '../../FrodoCommand'; +import DeleteCmd from './iga-policy-rule-delete.js'; +import DescribeCmd from './iga-policy-rule-describe.js'; +import ExportCmd from './iga-policy-rule-export.js'; +import ImportCmd from './iga-policy-rule-import.js'; +import ListCmd from './iga-policy-rule-list.js'; + +export default function setup() { + const program = new FrodoStubCommand('frodo iga policy'); + + program.description('Manage iga sod policy rules.'); + + program.addCommand( + DeleteCmd().name('delete').description('Delete policy rules.') + ); + + program.addCommand(ListCmd().name('list').description('List policy rules.')); + + program.addCommand( + ExportCmd().name('export').description('Export policy rules.') + ); + + program.addCommand( + ImportCmd().name('import').description('Import policy rules.') + ); + + program.addCommand( + DescribeCmd().name('describe').description('Describe policy rules.') + ); + + return program; +} diff --git a/src/cli/iga/sod-policy/iga-policy-delete.ts b/src/cli/iga/sod-policy/iga-policy-delete.ts new file mode 100644 index 000000000..87c757a35 --- /dev/null +++ b/src/cli/iga/sod-policy/iga-policy-delete.ts @@ -0,0 +1,61 @@ +import { frodo, state } from '@rockcarver/frodo-lib'; +import { Option } from 'commander'; + +import { getTokens } from '../../../ops/AuthenticateOps'; +import { deletePolicyByName } from '../../../ops/cloud/iga/IgaSodPolicyOps'; +import { printMessage, verboseMessage } from '../../../utils/Console.js'; +import { FrodoCommand } from '../../FrodoCommand'; + +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; + +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; + +export default function setup() { + const program = new FrodoCommand('frodo iga sod policy delete'); + + program + .description('Delete a SoD policy.') + .addOption(new Option('-n, --policy-name ', 'Policy name.')) + .action(async (host, realm, user, password, options, command) => { + command.handleDefaultArgsAndOpts( + host, + realm, + user, + password, + options, + command + ); + if (!options.policyName) { + printMessage( + 'Unrecognized combination of options or no options...', + 'error' + ); + program.help(); + process.exitCode = 1; + return; + } + const getTokensIsSuccessful = await getTokens( + false, + true, + deploymentTypes + ); + if (!getTokensIsSuccessful) { + printMessage('Error getting tokens', 'error'); + process.exitCode = 1; + return; + } + if (!state.getIsIGA()) { + printMessage( + 'Command not supported for non-IGA cloud tenants', + 'error' + ); + process.exitCode = 1; + return; + } + verboseMessage('Deleting policy...'); + const outcome = await deletePolicyByName(options.policyName); + if (!outcome) process.exitCode = 1; + }); + + return program; +} diff --git a/src/cli/iga/sod-policy/iga-policy-describe.ts b/src/cli/iga/sod-policy/iga-policy-describe.ts new file mode 100644 index 000000000..746569b91 --- /dev/null +++ b/src/cli/iga/sod-policy/iga-policy-describe.ts @@ -0,0 +1,72 @@ +import { frodo, state } from '@rockcarver/frodo-lib'; +import { Option } from 'commander'; + +import { getTokens } from '../../../ops/AuthenticateOps'; +import { describePolicy } from '../../../ops/cloud/iga/IgaSodPolicyOps'; +import { printMessage, verboseMessage } from '../../../utils/Console'; +import { FrodoCommand } from '../../FrodoCommand'; + +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; + +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; + +export default function setup() { + const program = new FrodoCommand('frodo iga Policy describe'); + + program + .description('Describe Policy.') + .addOption( + new Option( + '-n, --policy-name ', + 'Policy name. If not specified, will describe first policy in the provided export file.' + ) + ) + .addOption( + new Option( + '-f, --file ', + 'Name of the policy export file to describe. If not specified, will automatically pull the policy export data of the provided id from the tenant.' + ) + ) + .action(async (host, realm, user, password, options, command) => { + command.handleDefaultArgsAndOpts( + host, + realm, + user, + password, + options, + command + ); + if (!options.policyName && !options.file) { + printMessage( + 'Unrecognized combination of options or no options...', + 'error' + ); + program.help(); + process.exitCode = 1; + return; + } + const getTokensIsSuccessful = await getTokens( + false, + true, + deploymentTypes + ); + if (!getTokensIsSuccessful) { + printMessage('Error getting tokens', 'error'); + process.exitCode = 1; + return; + } + if (!state.getIsIGA()) { + printMessage( + 'Command not supported for non-IGA cloud tenants', + 'error' + ); + process.exitCode = 1; + return; + } + verboseMessage(`Describing policy ${options.policyName}...`); + const outcome = await describePolicy(options.workflowId, options.file); + if (!outcome) process.exitCode = 1; + }); + + return program; +} diff --git a/src/cli/iga/sod-policy/iga-policy-export.ts b/src/cli/iga/sod-policy/iga-policy-export.ts new file mode 100644 index 000000000..05c663374 --- /dev/null +++ b/src/cli/iga/sod-policy/iga-policy-export.ts @@ -0,0 +1,131 @@ +import { frodo, state } from '@rockcarver/frodo-lib'; +import { Option } from 'commander'; + +import { getTokens } from '../../../ops/AuthenticateOps'; +import { + exportPoliciesToFile, + exportPoliciesToFiles, + exportPolicyToFile, +} from '../../../ops/cloud/iga/IgaSodPolicyOps'; +import { printMessage, verboseMessage } from '../../../utils/Console.js'; +import { FrodoCommand } from '../../FrodoCommand'; + +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; + +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; + +export default function setup() { + const program = new FrodoCommand( + 'frodo iga sod policy export', + [], + deploymentTypes + ); + + program + .description('Export SoD policies.') + .addOption( + new Option( + '-n, --policy-name ', + 'Policy name. If specified, -a and -A are ignored.' + ) + ) + .addOption( + new Option( + '-f, --file [file]', + 'Name of the export file. Ignored with -A. Defaults to .policy.json.' + ) + ) + .addOption( + new Option( + '-a, --all', + 'Export all policies to a single file. Ignored with -n.' + ) + ) + .addOption( + new Option( + '-A, --all-separate', + 'Export all policies as separate files .policy.json. Ignored with -n and -a.' + ) + ) + .addOption( + new Option( + '-N, --no-metadata', + 'Do not include metadata in the export file.' + ) + ) + .addOption( + new Option( + '-M, --modified-properties', + 'Include modified properties in export (e.g. lastModifiedDate, lastModifiedBy, createdBy, creationDate, etc.)' + ).default(false, 'false') + ) + .action(async (host, realm, user, password, options, command) => { + command.handleDefaultArgsAndOpts( + host, + realm, + user, + password, + options, + command + ); + if (!options.policyName && !options.all && !options.allSeparate) { + printMessage( + 'Unrecognized combination of options or no options...', + 'error' + ); + program.help(); + process.exitCode = 1; + return; + } + const getTokensIsSuccessful = await getTokens( + false, + true, + deploymentTypes + ); + if (!getTokensIsSuccessful) { + printMessage('Error getting tokens', 'error'); + process.exitCode = 1; + return; + } + if (!state.getIsIGA()) { + printMessage( + 'Command not supported for non-IGA cloud tenants', + 'error' + ); + process.exitCode = 1; + return; + } + // --policy-name -n + if (options.policyName) { + verboseMessage(`Exporting policy "${options.policyName}"...`); + const outcome = await exportPolicyToFile( + options.policyName, + options.file, + options.metadata, + options.modifiedProperties + ); + if (!outcome) process.exitCode = 1; + } + // --all -a + else if (options.all) { + verboseMessage('Exporting all policies to a single file...'); + const outcome = await exportPoliciesToFile( + options.file, + options.metadata, + options.modifiedProperties + ); + if (!outcome) process.exitCode = 1; + } + // --all-separate -A + else if (options.allSeparate) { + verboseMessage('Exporting all policies to separate files...'); + const outcome = await exportPoliciesToFiles( + options.metadata, + options.modifiedProperties + ); + if (!outcome) process.exitCode = 1; + } + }); + + return program; +} diff --git a/src/cli/iga/sod-policy/iga-policy-import.ts b/src/cli/iga/sod-policy/iga-policy-import.ts new file mode 100644 index 000000000..82d191f1c --- /dev/null +++ b/src/cli/iga/sod-policy/iga-policy-import.ts @@ -0,0 +1,125 @@ +import { frodo, state } from '@rockcarver/frodo-lib'; +import { Option } from 'commander'; + +import { getTokens } from '../../../ops/AuthenticateOps'; +import { + importFirstPolicyFromFile, + importPoliciesFromFile, + importPoliciesFromFiles, + importPolicyFromFile, +} from '../../../ops/cloud/iga/IgaSodPolicyOps'; +import { printMessage, verboseMessage } from '../../../utils/Console.js'; +import { FrodoCommand } from '../../FrodoCommand'; + +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; + +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; + +export default function setup() { + const program = new FrodoCommand( + 'frodo iga sod policy import', + [], + deploymentTypes + ); + + program + .description('Import SoD policies.') + .addOption( + new Option( + '-n, --policy-name ', + 'Policy name. If specified, -a and -A are ignored.' + ) + ) + .addOption(new Option('-f, --file ', 'Name of the import file.')) + .addOption( + new Option( + '-a, --all', + 'Import all policies from a single file. Ignored with -n.' + ) + ) + .addOption( + new Option( + '-A, --all-separate', + 'Import all policies from separate files (*.policy.json) in the current directory. Ignored with -n or -a.' + ) + ) + .action(async (host, realm, user, password, options, command) => { + command.handleDefaultArgsAndOpts( + host, + realm, + user, + password, + options, + command + ); + const isImportByName = options.policyName && options.file; + const isImportAll = options.all && options.file; + const isImportAllSeparate = options.allSeparate && !options.file; + const isImportFirst = !!options.file; + if ( + !isImportByName && + !isImportAll && + !isImportAllSeparate && + !isImportFirst + ) { + printMessage( + 'Unrecognized combination of options or no options...', + 'error' + ); + program.help(); + process.exitCode = 1; + return; + } + const getTokensIsSuccessful = await getTokens( + false, + true, + deploymentTypes + ); + if (!getTokensIsSuccessful) { + printMessage('Error getting tokens', 'error'); + process.exitCode = 1; + return; + } + if (!state.getIsIGA()) { + printMessage( + 'Command not supported for non-IGA cloud tenants', + 'error' + ); + process.exitCode = 1; + return; + } + // import by name + if (isImportByName) { + verboseMessage(`Importing policy "${options.policyName}"...`); + const outcome = await importPolicyFromFile( + options.policyName, + options.file + ); + if (!outcome) process.exitCode = 1; + } + // --all -a + else if (isImportAll) { + verboseMessage( + `Importing all policies from a single file (${options.file})...` + ); + const outcome = await importPoliciesFromFile(options.file); + if (!outcome) process.exitCode = 1; + } + // --all-separate -A + else if (isImportAllSeparate) { + verboseMessage( + 'Importing all policies from separate files (*.policy.json) in current directory...' + ); + const outcome = await importPoliciesFromFiles(); + if (!outcome) process.exitCode = 1; + } + // import first policy from file + else if (isImportFirst) { + verboseMessage(`Importing first policy from file "${options.file}"...`); + const outcome = await importFirstPolicyFromFile(options.file); + if (!outcome) process.exitCode = 1; + } + }); + + return program; +} diff --git a/src/cli/iga/sod-policy/iga-policy-list.ts b/src/cli/iga/sod-policy/iga-policy-list.ts new file mode 100644 index 000000000..666db182f --- /dev/null +++ b/src/cli/iga/sod-policy/iga-policy-list.ts @@ -0,0 +1,62 @@ +import { frodo, state } from '@rockcarver/frodo-lib'; +import { Option } from 'commander'; + +import { getTokens } from '../../../ops/AuthenticateOps'; +import { listPolicies } from '../../../ops/cloud/iga/IgaSodPolicyOps'; +import { printMessage, verboseMessage } from '../../../utils/Console.js'; +import { FrodoCommand } from '../../FrodoCommand'; + +const { CLOUD_DEPLOYMENT_TYPE_KEY } = frodo.utils.constants; + +const deploymentTypes = [CLOUD_DEPLOYMENT_TYPE_KEY]; + +export default function setup() { + const program = new FrodoCommand( + 'frodo iga workflow list', + [], + deploymentTypes + ); + + program + .description('List policy.') + .addOption( + new Option('-l, --long', 'Long with all fields.').default(false, 'false') + ) + .action( + // implement command logic inside action handler + async (host, realm, user, password, options, command) => { + command.handleDefaultArgsAndOpts( + host, + realm, + user, + password, + options, + command + ); + const getTokensIsSuccessful = await getTokens( + false, + true, + deploymentTypes + ); + if (!getTokensIsSuccessful) { + printMessage('Error getting tokens', 'error'); + process.exitCode = 1; + return; + } + if (!state.getIsIGA()) { + printMessage( + 'Command not supported for non-IGA cloud tenants', + 'error' + ); + process.exitCode = 1; + return; + } + verboseMessage(`Listing workflows ...`); + const outcome = await listPolicies(options.long); + if (!outcome) process.exitCode = 1; + } + // end command logic inside action handler + ); + + return program; +} diff --git a/src/cli/iga/sod-policy/iga-policy.ts b/src/cli/iga/sod-policy/iga-policy.ts new file mode 100644 index 000000000..e617b6ba9 --- /dev/null +++ b/src/cli/iga/sod-policy/iga-policy.ts @@ -0,0 +1,30 @@ +import { FrodoStubCommand } from '../../FrodoCommand'; +import DeleteCmd from './iga-policy-delete.js'; +import DescribeCmd from './iga-policy-describe.js'; +import ExportCmd from './iga-policy-export.js'; +import ImportCmd from './iga-policy-import.js'; +import ListCmd from './iga-policy-list.js'; + +export default function setup() { + const program = new FrodoStubCommand('frodo iga policy'); + + program.description('Manage iga sod policies.'); + + program.addCommand(DeleteCmd().name('delete').description('Delete policys.')); + + program.addCommand(ListCmd().name('list').description('List policies.')); + + program.addCommand( + ExportCmd().name('export').description('Export policies.') + ); + + program.addCommand( + ImportCmd().name('import').description('Import policies.') + ); + + program.addCommand( + DescribeCmd().name('describe').description('Describe policies.') + ); + + return program; +} diff --git a/src/ops/cloud/iga/IgaSodPolicyOps.ts b/src/ops/cloud/iga/IgaSodPolicyOps.ts new file mode 100644 index 000000000..63f736b61 --- /dev/null +++ b/src/ops/cloud/iga/IgaSodPolicyOps.ts @@ -0,0 +1,516 @@ +import { frodo, FrodoError } from '@rockcarver/frodo-lib'; +import { PolicySkeleton } from '@rockcarver/frodo-lib/types/api/cloud/iga/IgaSodPolicyApi'; +import { PolicyExportInterface } from '@rockcarver/frodo-lib/types/ops/cloud/iga/IgaSodPolicyOps'; +import fs from 'fs'; + +import { + createKeyValueTable, + createProgressIndicator, + createTable, + getTableRowsFromArray, + printError, + printMessage, + stopProgressIndicator, + updateProgressIndicator, +} from '../../../utils/Console'; + +const { getTypedFilename, saveJsonToFile, getFilePath, getWorkingDirectory } = + frodo.utils; +const { + importPolicy, + readPolicies, + readPolicyByName, + exportPolicies, + exportPoliciesByName, + deletePolicyByName: _deletePolicyByName, +} = frodo.cloud.iga.sodPolicy; +const { readPolicyRule } = frodo.cloud.iga.sodPolicyRule; +/** + * List all the policies + * @param {boolean} long Long version, all the fields + * @returns {Promise} a promise resolving to true if successful, false otherwise + */ +export async function listPolicies(long: boolean = false): Promise { + let policies: PolicySkeleton[] = []; + try { + policies = await readPolicies(); + if (!long) { + for (const policy of policies) { + printMessage(`${policy.name}`, 'data'); + } + return true; + } else { + const table = createTable([ + 'ID', + 'Name', + 'Description', + 'Active', + 'Policy Owner', + 'Policy Rules', + ]); + for (const policy of policies) { + table.push([ + policy.id, + policy.name, + policy.description ?? '', + policy.active ? 'active'['brightGreen'] : 'inactive'['brightRed'], + policy.policyOwner?.userName ?? '-', + policy.policyRuleIds.length ?? 0, + ]); + } + + printMessage(table.toString(), 'data'); + } + return true; + } catch (error) { + printError(error); + } + return false; +} + +/** + * Describe a policy + * @param {string} name policy name + * @param {string} file the policy export file + * @returns {Promise} true if successful, false otherwise + */ +export async function describePolicy( + name?: string, + file?: string +): Promise { + try { + let policy: PolicySkeleton; + + if (file) { + const data = fs.readFileSync(file, 'utf8'); + const policyExport: PolicyExportInterface = JSON.parse(data); + const ids = Object.keys(policyExport.policy); + if (ids.length === 0) { + throw new FrodoError(`No policies found in export file ${file}`); + } + + if (name) { + const match = Object.values(policyExport.policy).find( + (p) => p.name === name + ); + if (!match) { + throw new FrodoError( + `No policy named '${name}' found in export file ${file}` + ); + } + policy = match; + } else { + policy = policyExport.policy[ids[0]]; + } + } else if (name) { + policy = await readPolicyByName(name); + } else { + const policies = await readPolicies(); + if (policies.length === 0) { + throw new FrodoError(`No policies found`); + } + policy = policies[0]; + } + + const table = createKeyValueTable(); + table.push(['Id'['brightCyan'], policy.id]); + table.push(['Name'['brightCyan'], policy.name]); + table.push(['Description'['brightCyan'], policy.description ?? '']); + table.push([ + 'Status'['brightCyan'], + policy.active ? 'active'['brightGreen'] : 'inactive'['brightRed'], + ]); + table.push([ + 'Policy Owner'['brightCyan'], + policy.policyOwner?.userName ?? '-', + ]); + + let ruleLabels: string[]; + if (policy.policyRuleNames?.length) { + ruleLabels = policy.policyRuleNames; + } else if (policy.policyRuleIds?.length) { + ruleLabels = []; + for (const ruleId of policy.policyRuleIds) { + try { + const rule = await readPolicyRule(ruleId); + ruleLabels.push(rule.name); + } catch (e) { + ruleLabels.push(`${ruleId} (not found)`); + printError(e); + } + } + } else { + ruleLabels = []; + } + getTableRowsFromArray( + table, + `Policy Rules (${ruleLabels.length})`, + ruleLabels + ); + + printMessage(table.toString() + '\n', 'data'); + return true; + } catch (error) { + printError(error); + } + return false; +} +/** + * Export Policy to file + * @param {string} name Policy name + * @param {string} file file name + * @param {boolean} includeMeta true to include metadata, false otherwise. Default: true + * @param {boolean} keepModifiedProperties true to keep modified properties, otherwise delete them. Default: false + * @param {boolean} extract extracts the scripts from the export into separate files if true. Default: false + * @returns {Promise} true if successful, false otherwise + */ +export async function exportPolicyToFile( + name: string, + file: string, + includeMeta: boolean = true, + keepModifiedProperties: boolean = false +): Promise { + const indicatorId = createProgressIndicator( + 'determinate', + 1, + `Exporting ${name}...` + ); + try { + const policies = await readPolicies(); + const policy = policies.find((s) => s.name === name); + if (!policy) { + throw new FrodoError(`No policy named '${name}' found`); + } + const exportData = await exportPoliciesByName(policy.name); + if (!file) { + file = getTypedFilename(policy.name, 'policy'); + } + const filePath = getFilePath(file, true); + updateProgressIndicator( + indicatorId, + `Saving ${policy.name} to ${filePath}...` + ); + saveJsonToFile( + exportData, + filePath, + includeMeta, + false, + keepModifiedProperties + ); + stopProgressIndicator( + indicatorId, + `Exported policy ${policy.name} to file`, + 'success' + ); + return true; + } catch (error) { + stopProgressIndicator( + indicatorId, + `Error exporting policy ${name} to file`, + 'fail' + ); + printError(error); + } + return false; +} /** + * Export all Policies to file + * @param {string} file file name + * @param {boolean} includeMeta true to include metadata, false otherwise. Default: true + * @param {boolean} keepModifiedProperties true to keep modified properties, otherwise delete them. Default: false + * @returns {Promise} true if successful, false otherwise + */ +export async function exportPoliciesToFile( + file: string, + includeMeta: boolean = true, + keepModifiedProperties: boolean = false +): Promise { + try { + const exportData = await exportPolicies(); + if (!file) { + file = getTypedFilename(`allPolicies`, 'policy'); + } + saveJsonToFile( + exportData, + getFilePath(file, true), + includeMeta, + false, + keepModifiedProperties + ); + return true; + } catch (error) { + printError(error, `Error exporting policy to file`); + } + return false; +} + +/** + * Export all policies to separate files + * @param {boolean} includeMeta true to include metadata, false otherwise. Default: true + * @param {boolean} keepModifiedProperties true to keep modified properties, otherwise delete them. Default: false + * @param {boolean} extract extracts the scripts from the exports into separate files if true. Default: false + * @returns {Promise} true if successful, false otherwise + */ +export async function exportPoliciesToFiles( + includeMeta: boolean = true, + keepModifiedProperties: boolean = false +): Promise { + try { + const exportData = await exportPolicies(); + for (const [id, policy] of Object.entries(exportData.policy)) { + // single-policy envelope so each file holds only its own policy + const fileExportData = { + ...exportData, + policy: { [id]: policy }, + }; + saveJsonToFile( + fileExportData, + getFilePath(getTypedFilename(policy.name, 'policy'), true), + includeMeta, + false, + keepModifiedProperties + ); + } + return true; + } catch (error) { + printError(error, `Error exporting policies to files`); + } + return false; +} + +/** + * Import a policy from file + * @param {string} name policy name + * @param {string} file import file name + * @returns {Promise} true if successful, false otherwise + */ +export async function importPolicyFromFile( + name: string, + file: string +): Promise { + let indicatorId: string; + try { + indicatorId = createProgressIndicator( + 'indeterminate', + 0, + 'Importing policy...' + ); + updateProgressIndicator(indicatorId, 'Importing policy...'); + const filePath = getFilePath(file); + const importData = JSON.parse(fs.readFileSync(filePath, 'utf8')); + + const existingPolicies = await readPolicies(); + const policies: PolicyExportInterface = { policy: {} }; + for (const id of Object.keys(importData.policy)) { + const policy = importData.policy[id]; + if (policy.name !== name) continue; + if ( + existingPolicies.find( + (s) => s.id === policy.id || s.name === policy.name + ) + ) + continue; + policies.policy[id] = policy; + } + + await importPolicy(policies); + stopProgressIndicator( + indicatorId, + `Successfully imported policy ${name}.`, + 'success' + ); + return true; + } catch (error) { + stopProgressIndicator( + indicatorId, + `Error importing policy ${name}`, + 'fail' + ); + printError(error); + } + return false; +} +/** + * Import policies from file + * @param {String} file file name + + * @returns {Promise} true if successful, false otherwise + */ +export async function importPoliciesFromFile(file: string): Promise { + let indicatorId: string; + try { + indicatorId = createProgressIndicator( + 'indeterminate', + 0, + 'Importing policies...' + ); + updateProgressIndicator(indicatorId, 'Importing policies...'); + const filePath = getFilePath(file); + const importData = JSON.parse(fs.readFileSync(filePath, 'utf8')); + + const existingPolicies = await readPolicies(); + const policies: PolicyExportInterface = { policy: {} }; + for (const id of Object.keys(importData.policy)) { + const policy = importData.policy[id]; + if ( + existingPolicies.find( + (s) => s.id === policy.id || s.name === policy.name + ) + ) + continue; + policies.policy[id] = policy; + } + + await importPolicy(policies); + stopProgressIndicator( + indicatorId, + `Successfully imported policies.`, + 'success' + ); + return true; + } catch (error) { + stopProgressIndicator(indicatorId, `Error importing policies.`, 'fail'); + printError(error, `Error importing policies from file`); + } + return false; +} + +/** + * Import all policies from separate files + * @returns {Promise} true if successful, false otherwise + */ +export async function importPoliciesFromFiles(): Promise { + let indicatorId: string; + const errors: Error[] = []; + try { + const names = fs.readdirSync(getWorkingDirectory()); + const policyFiles = names.filter((name) => + name.toLowerCase().endsWith('.policy.json') + ); + indicatorId = createProgressIndicator( + 'determinate', + policyFiles.length, + 'Importing policies...' + ); + + const existingPolicies = await readPolicies(); + + for (const file of policyFiles) { + try { + updateProgressIndicator( + indicatorId, + `Importing policy from file ${file}...` + ); + const importData = JSON.parse( + fs.readFileSync(getFilePath(file), 'utf8') + ); + + const policies: PolicyExportInterface = { policy: {} }; + for (const id of Object.keys(importData.policy)) { + const policy = importData.policy[id]; + if ( + existingPolicies.find( + (s) => s.id === policy.id || s.name === policy.name + ) + ) + continue; + policies.policy[id] = policy; + } + + await importPolicy(policies); + } catch (error) { + errors.push( + new FrodoError(`Error importing policies from ${file}`, error) + ); + } + } + if (errors.length > 0) + throw new FrodoError(`One or more errors importing policies`, errors); + stopProgressIndicator( + indicatorId, + `Successfully imported policies.`, + 'success' + ); + return true; + } catch (error) { + stopProgressIndicator(indicatorId, `Error(s) importing policies.`, 'fail'); + printError(error, `Error importing policies from files`); + } + return false; +} +/** + * Import first policy from file + * @param {string} file import file name + * @returns {Promise} true if successful, false otherwise + */ +export async function importFirstPolicyFromFile( + file: string +): Promise { + let indicatorId: string; + try { + indicatorId = createProgressIndicator( + 'indeterminate', + 0, + 'Importing policy...' + ); + const filePath = getFilePath(file); + const importData = JSON.parse(fs.readFileSync(filePath, 'utf8')); + const ids = Object.keys(importData.policy); + if (ids.length === 0) + throw new FrodoError(`No policies found in import data`); + + const existingPolicies = await readPolicies(); + const policies: PolicyExportInterface = { policy: {} }; + for (const id of ids) { + const policy = importData.policy[id]; + if ( + existingPolicies.find( + (s) => s.id === policy.id || s.name === policy.name + ) + ) + continue; + policies.policy[id] = policy; + break; // only first + } + + await importPolicy(policies); + stopProgressIndicator( + indicatorId, + `Imported policy from ${file}`, + 'success' + ); + return true; + } catch (error) { + stopProgressIndicator( + indicatorId, + `Error importing policy from ${file}`, + 'fail' + ); + printError(error); + } + return false; +} + +/** + * Delete policy by name. + * @param {string} name policy name + * @returns {Promise} true if successful, false otherwise + */ +export async function deletePolicyByName(name: string): Promise { + const spinnerId = createProgressIndicator( + 'indeterminate', + undefined, + `Deleting policy ${name}...` + ); + try { + const result = await _deletePolicyByName(name); + if (!result) { + throw new FrodoError(`Failed to delete policy ${name}`); + } + stopProgressIndicator(spinnerId, `Deleted policy ${name}.`, 'success'); + return true; + } catch (error) { + stopProgressIndicator(spinnerId, `Error: ${error.message}`, 'fail'); + printError(error); + } + return false; +} diff --git a/src/ops/cloud/iga/IgaSodPolicyRuleOps.ts b/src/ops/cloud/iga/IgaSodPolicyRuleOps.ts new file mode 100644 index 000000000..ef6405515 --- /dev/null +++ b/src/ops/cloud/iga/IgaSodPolicyRuleOps.ts @@ -0,0 +1,507 @@ +import { frodo, FrodoError } from '@rockcarver/frodo-lib'; +import { PolicyRuleSkeleton } from '@rockcarver/frodo-lib/types/api/cloud/iga/IgaSodPolicyRulesApi'; +import { PolicyRuleExportInterface } from '@rockcarver/frodo-lib/types/ops/cloud/iga/IgaSodPolicyRuleOps'; +import fs from 'fs'; + +import { + createKeyValueTable, + createProgressIndicator, + createTable, + printError, + printMessage, + stopProgressIndicator, + updateProgressIndicator, +} from '../../../utils/Console'; + +const { getTypedFilename, saveJsonToFile, getFilePath, getWorkingDirectory } = + frodo.utils; +const { + readPolicyRuleByName, + readPolicyRules, + importPolicyRule, + exportPolicyRuleByName, + exportPolicyRules, + deletePolicyRuleByName: _deletePolicyRuleByName, +} = frodo.cloud.iga.sodPolicyRule; + +/** + * List all the policy rules + * @param {boolean} long Long version, all the fields + * @returns {Promise} a promise resolving to true if successful, false otherwise + */ +export async function listPolicyRules(long: boolean = false): Promise { + let policyRules: PolicyRuleSkeleton[] = []; + try { + policyRules = await readPolicyRules(); + if (!long) { + for (const policy of policyRules) { + printMessage(`${policy.name}`, 'data'); + } + return true; + } else { + const table = createTable([ + 'ID', + 'Name', + 'Description', + 'Active', + 'Owner', + 'Risk Score', + ]); + for (const rule of policyRules) { + table.push([ + rule.id, + rule.name, + rule.description ?? '', + rule.active ? 'active'['brightGreen'] : 'inactive'['brightRed'], + rule.policyRuleOwner?.userName ?? '-', + rule.riskScore ?? '-', + ]); + } + + printMessage(table.toString(), 'data'); + } + return true; + } catch (error) { + printError(error); + } + return false; +} + +/** + * Describe a policy rule + * @param {string} name policy rule name + * @param {string} file the policy rule export file + * @returns {Promise} true if successful, false otherwise + */ +export async function describePolicyRule( + name?: string, + file?: string +): Promise { + try { + let rule: PolicyRuleSkeleton; + + if (file) { + const data = fs.readFileSync(file, 'utf8'); + const ruleExport: PolicyRuleExportInterface = JSON.parse(data); + const ids = Object.keys(ruleExport.policyRule); + if (ids.length === 0) { + throw new FrodoError(`No policy rules found in export file ${file}`); + } + if (name) { + const match = Object.values(ruleExport.policyRule).find( + (p) => p.name === name + ); + if (!match) { + throw new FrodoError( + `No policy named '${name}' found in export file ${file}` + ); + } + rule = match; + } else { + rule = ruleExport.policyRule[ids[0]]; + } + } else if (name) { + rule = await readPolicyRuleByName(name); + } else { + const policies = await readPolicyRules(); + if (policies.length === 0) { + throw new FrodoError(`No policy rules found`); + } + rule = policies[0]; + } + + const table = createKeyValueTable(); + table.push(['Id'['brightCyan'], rule.id]); + table.push(['Name'['brightCyan'], rule.name]); + table.push(['Description'['brightCyan'], rule.description ?? '']); + table.push([ + 'Active'['brightCyan'], + rule.active ? 'active'['brightGreen'] : 'inactive'['brightRed'], + ]); + table.push([ + 'Rule Owner'['brightCyan'], + rule.policyRuleOwner?.userName ?? '-', + ]); + table.push([ + 'Violation Owner'['brightCyan'], + rule.violationOwner?.userName ?? '-', + ]); + table.push(['Risk Score'['brightCyan'], rule.riskScore ?? '-']); + table.push([ + 'Max Exception Duration'['brightCyan'], + rule.maxExceptionDuration ?? '-', + ]); + + const scanTypes = rule.scanTypes + ? Object.entries(rule.scanTypes) + .filter(([, v]) => v === true) + .map(([k]) => k) + : []; + table.push([ + 'Scan Types'['brightCyan'], + scanTypes.length ? scanTypes.join(', ') : '-', + ]); + + const decisionOptions = rule.decisionOptions + ? Object.entries(rule.decisionOptions) + .filter(([, v]) => v === true) + .map(([k]) => k) + : []; + table.push([ + 'Decision Options'['brightCyan'], + decisionOptions.length ? decisionOptions.join(', ') : '-', + ]); + + table.push([ + 'Workflow'['brightCyan'], + rule.workflow ? `${rule.workflow.id} (${rule.workflow.type})` : '-', + ]); + + printMessage(table.toString() + '\n', 'data'); + return true; + } catch (error) { + printError(error); + } + return false; +} +/** + * Export a policy rule to file + * @param {string} name policy rule name + * @param {string} file file name + * @param {boolean} includeMeta true to include metadata, false otherwise. Default: true + * @param {boolean} keepModifiedProperties true to keep modified properties, otherwise delete them. Default: false + * @returns {Promise} true if successful, false otherwise + */ +export async function exportPolicyRuleToFile( + name: string, + file: string, + includeMeta: boolean = true, + keepModifiedProperties: boolean = false +): Promise { + const indicatorId = createProgressIndicator( + 'determinate', + 1, + `Exporting ${name}...` + ); + try { + const exportData = await exportPolicyRuleByName(name); + if (!file) { + file = getTypedFilename(name, 'rule'); + } + const filePath = getFilePath(file, true); + updateProgressIndicator(indicatorId, `Saving ${name} to ${filePath}...`); + saveJsonToFile( + exportData, + filePath, + includeMeta, + false, + keepModifiedProperties + ); + stopProgressIndicator( + indicatorId, + `Exported policy rule ${name} to file`, + 'success' + ); + return true; + } catch (error) { + stopProgressIndicator( + indicatorId, + `Error exporting policy rule ${name} to file`, + 'fail' + ); + printError(error); + } + return false; +} + +/** + * Export all policy rules to a single file + * @param {string} file file name + * @param {boolean} includeMeta true to include metadata, false otherwise. Default: true + * @param {boolean} keepModifiedProperties true to keep modified properties, otherwise delete them. Default: false + * @returns {Promise} true if successful, false otherwise + */ +export async function exportPolicyRulesToFile( + file: string, + includeMeta: boolean = true, + keepModifiedProperties: boolean = false +): Promise { + try { + const exportData = await exportPolicyRules(); + if (!file) { + file = getTypedFilename(`allPolicyRule`, 'rule'); + } + saveJsonToFile( + exportData, + getFilePath(file, true), + includeMeta, + false, + keepModifiedProperties + ); + return true; + } catch (error) { + printError(error, `Error exporting policy rules to file`); + } + return false; +} + +/** + * Export all policy rules to separate files + * @param {boolean} includeMeta true to include metadata, false otherwise. Default: true + * @param {boolean} keepModifiedProperties true to keep modified properties, otherwise delete them. Default: false + * @returns {Promise} true if successful, false otherwise + */ +export async function exportPolicyRulesToFiles( + includeMeta: boolean = true, + keepModifiedProperties: boolean = false +): Promise { + try { + const exportData = await exportPolicyRules(); + for (const [id, rule] of Object.entries(exportData.policyRule)) { + // build a single-rule envelope so each file holds only its own rule + const fileExportData = { + ...exportData, + policyRule: { [id]: rule }, + }; + saveJsonToFile( + fileExportData, + getFilePath(getTypedFilename(rule.name, 'rule'), true), + includeMeta, + false, + keepModifiedProperties + ); + } + return true; + } catch (error) { + printError(error, `Error exporting policy rules to files`); + } + return false; +} +/** + * Import a policy rule from file + * @param {string} name policy name + * @param {string} file import file name + * @returns {Promise} true if successful, false otherwise + */ +export async function importPolicyRuleFromFile( + name: string, + file: string +): Promise { + let indicatorId: string; + try { + indicatorId = createProgressIndicator( + 'indeterminate', + 0, + 'Importing policy rule...' + ); + updateProgressIndicator(indicatorId, 'Importing policy rule...'); + const filePath = getFilePath(file); + const importData = JSON.parse(fs.readFileSync(filePath, 'utf8')); + + const existingRules = await readPolicyRules(); + const rules: PolicyRuleExportInterface = { policyRule: {} }; + for (const id of Object.keys(importData.policyRule)) { + const rule = importData.policyRule[id]; + if (rule.name !== name) continue; + if (existingRules.find((s) => s.id === rule.id || s.name === rule.name)) + continue; + rules.policyRule[id] = rule; + } + + await importPolicyRule(rules); + stopProgressIndicator( + indicatorId, + `Successfully imported policy rule ${name}.`, + 'success' + ); + return true; + } catch (error) { + stopProgressIndicator( + indicatorId, + `Error importing policy rule ${name}`, + 'fail' + ); + printError(error); + } + return false; +} +/** + * Import policy rules from file + * @param {String} file file name + + * @returns {Promise} true if successful, false otherwise + */ +export async function importPolicyRulesFromFile( + file: string +): Promise { + let indicatorId: string; + try { + indicatorId = createProgressIndicator( + 'indeterminate', + 0, + 'Importing policy rules...' + ); + updateProgressIndicator(indicatorId, 'Importing policy rules...'); + const filePath = getFilePath(file); + const importData = JSON.parse(fs.readFileSync(filePath, 'utf8')); + + const existingRules = await readPolicyRules(); + const rules: PolicyRuleExportInterface = { policyRule: {} }; + for (const id of Object.keys(importData.policyRule)) { + const rule = importData.policyRule[id]; + if (existingRules.find((s) => s.id === rule.id || s.name === rule.name)) + continue; + rules.policyRule[id] = rule; + } + + await importPolicyRule(rules); + stopProgressIndicator( + indicatorId, + `Successfully imported policy rules.`, + 'success' + ); + return true; + } catch (error) { + stopProgressIndicator(indicatorId, `Error importing policy rules.`, 'fail'); + printError(error, `Error importing policy rules from file`); + } + return false; +} +export async function importPolicyRulesFromFiles(): Promise { + let indicatorId: string; + const errors: Error[] = []; + try { + const names = fs.readdirSync(getWorkingDirectory()); + const ruleFiles = names.filter((name) => + name.toLowerCase().endsWith('.rule.json') + ); + indicatorId = createProgressIndicator( + 'determinate', + ruleFiles.length, + 'Importing policy rules...' + ); + + const existingRules = await readPolicyRules(); + + for (const file of ruleFiles) { + try { + updateProgressIndicator( + indicatorId, + `Importing policy rule from file ${file}...` + ); + const importData = JSON.parse( + fs.readFileSync(getFilePath(file), 'utf8') + ); + + if (!importData.policyRule) { + throw new FrodoError( + `File ${file} is not a policy rule export (no 'policyRule' key)` + ); + } + + const rules: PolicyRuleExportInterface = { policyRule: {} }; + for (const id of Object.keys(importData.policyRule)) { + const rule = importData.policyRule[id]; + if ( + existingRules.find((s) => s.id === rule.id || s.name === rule.name) + ) + continue; + rules.policyRule[id] = rule; + } + + await importPolicyRule(rules); + } catch (error) { + errors.push( + new FrodoError(`Error importing policy rules from ${file}`, error) + ); + } + } + if (errors.length > 0) + throw new FrodoError(`One or more errors importing policy rules`, errors); + stopProgressIndicator( + indicatorId, + `Successfully imported policy rules.`, + 'success' + ); + return true; + } catch (error) { + stopProgressIndicator( + indicatorId, + `Error(s) importing policy rules.`, + 'fail' + ); + printError(error, `Error importing policy rules from files`); + } + return false; +} /** + * Import first policy rule from file + * @param {string} file import file name + * @returns {Promise} true if successful, false otherwise + */ +export async function importFirstPolicyRuleFromFile( + file: string +): Promise { + let indicatorId: string; + try { + indicatorId = createProgressIndicator( + 'indeterminate', + 0, + 'Importing policy rule...' + ); + const filePath = getFilePath(file); + const importData = JSON.parse(fs.readFileSync(filePath, 'utf8')); + const ids = Object.keys(importData.policyRule); + if (ids.length === 0) + throw new FrodoError(`No policy rules found in import data`); + + const existingRules = await readPolicyRules(); + const rules: PolicyRuleExportInterface = { policyRule: {} }; + for (const id of ids) { + const rule = importData.policyRule[id]; + if (existingRules.find((s) => s.id === rule.id || s.name === rule.name)) + continue; + rules.policyRule[id] = rule; + break; + } + + await importPolicyRule(rules); + stopProgressIndicator( + indicatorId, + `Imported policy rule from ${file}`, + 'success' + ); + return true; + } catch (error) { + stopProgressIndicator( + indicatorId, + `Error importing policy rule from ${file}`, + 'fail' + ); + printError(error); + } + return false; +} +/** + * Delete policy rule by name. + * @param {string} name policy name + * @returns {Promise} true if successful, false otherwise + */ +export async function deletePolicyRuleByName(name: string): Promise { + const spinnerId = createProgressIndicator( + 'indeterminate', + undefined, + `Deleting policy ${name}...` + ); + try { + const result = await _deletePolicyRuleByName(name); + if (!result) { + throw new FrodoError(`Failed to delete policy rule ${name}`); + } + stopProgressIndicator(spinnerId, `Deleted policy rule ${name}.`, 'success'); + return true; + } catch (error) { + stopProgressIndicator(spinnerId, `Error: ${error.message}`, 'fail'); + printError(error); + } + return false; +} diff --git a/src/ops/cloud/iga/IgaWorkflowOps.ts b/src/ops/cloud/iga/IgaWorkflowOps.ts index 37cbc5ad6..f1e1c44e9 100644 --- a/src/ops/cloud/iga/IgaWorkflowOps.ts +++ b/src/ops/cloud/iga/IgaWorkflowOps.ts @@ -246,7 +246,13 @@ export async function exportWorkflowToFile( indicatorId, `Saving ${workflowId} to ${filePath}...` ); - saveJsonToFile(exportData, filePath, includeMeta, false, keepModifiedProperties); + saveJsonToFile( + exportData, + filePath, + includeMeta, + false, + keepModifiedProperties + ); stopProgressIndicator( indicatorId, `Exported workflow ${workflowId} to file`, @@ -288,7 +294,13 @@ export async function exportWorkflowsToFile( if (!file) { file = getTypedFilename(`allWorkflows`, 'workflow'); } - saveJsonToFile(exportData, getFilePath(file, true), includeMeta, false, keepModifiedProperties); + saveJsonToFile( + exportData, + getFilePath(file, true), + includeMeta, + false, + keepModifiedProperties + ); return true; } catch (error) { printError(error, `Error exporting workflows to file`); diff --git a/test/client_cli/en/__snapshots__/iga.test.js.snap b/test/client_cli/en/__snapshots__/iga.test.js.snap index fd0b93817..bf4bfe804 100644 --- a/test/client_cli/en/__snapshots__/iga.test.js.snap +++ b/test/client_cli/en/__snapshots__/iga.test.js.snap @@ -13,6 +13,8 @@ Options: Commands: help display help for command + policy Manage iga sod policies. + policy-rule Manage iga sod policy rules. workflow Manage workflows. " `; diff --git a/test/e2e/__snapshots__/iga-sod-policy-delete.e2e.test.js.snap b/test/e2e/__snapshots__/iga-sod-policy-delete.e2e.test.js.snap new file mode 100644 index 000000000..541b34611 --- /dev/null +++ b/test/e2e/__snapshots__/iga-sod-policy-delete.e2e.test.js.snap @@ -0,0 +1,8 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`frodo iga policy delete "frodo iga policy delete -n delete-test": should delete the specified policy 1`] = `""`; + +exports[`frodo iga policy delete "frodo iga policy delete -n delete-test": should delete the specified policy 2`] = ` +"✔ Deleted policy delete-test. +" +`; diff --git a/test/e2e/__snapshots__/iga-sod-policy-describe.e2e.test.js.snap b/test/e2e/__snapshots__/iga-sod-policy-describe.e2e.test.js.snap new file mode 100644 index 000000000..1b7e3515b --- /dev/null +++ b/test/e2e/__snapshots__/iga-sod-policy-describe.e2e.test.js.snap @@ -0,0 +1,37 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`frodo iga policy describe "frodo iga policy describe --file test/e2e/exports/all/allPolicies.policy.json": should describe first policy from file test/e2e/exports/all/allPolicies.policy.json 1`] = ` +"Id │39e53582-d85d-4f4d-91a8-54def507b993 +Name │test +Description │test +Status │active +Policy Owner │1csv +Policy Rules (2)│Test Policy + │test rule + +" +`; + +exports[`frodo iga policy describe "frodo iga policy describe --policy-name test ": should describe policy 'test' 1`] = ` +"Id │39e53582-d85d-4f4d-91a8-54def507b993 +Name │test +Description │test +Status │active +Policy Owner │1csv +Policy Rules (2)│Test Policy + │test rule + +" +`; + +exports[`frodo iga policy describe "frodo iga policy describe -n test -f test/e2e/exports/all/allPolicies.policy.json": should describe policy 'contains-test' from file test/e2e/exports/all/allPolicies.policy.json 1`] = ` +"Id │39e53582-d85d-4f4d-91a8-54def507b993 +Name │test +Description │test +Status │active +Policy Owner │1csv +Policy Rules (2)│Test Policy + │test rule + +" +`; diff --git a/test/e2e/__snapshots__/iga-sod-policy-export.e2e.test.js.snap b/test/e2e/__snapshots__/iga-sod-policy-export.e2e.test.js.snap new file mode 100644 index 000000000..363ce9c0d --- /dev/null +++ b/test/e2e/__snapshots__/iga-sod-policy-export.e2e.test.js.snap @@ -0,0 +1,256 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`frodo iga policy export "frodo iga policy export --all --file testPolicyExportFile2.json": should export all policy to file 1`] = `0`; + +exports[`frodo iga policy export "frodo iga policy export --all --file testPolicyExportFile2.json": should export all policy to file 2`] = `""`; + +exports[`frodo iga policy export "frodo iga policy export --all --file testPolicyExportFile2.json": should export all policy to file 3`] = ` +"✔ Exported 3 policies +" +`; + +exports[`frodo iga policy export "frodo iga policy export --all --file testPolicyExportFile2.json": should export all policy to file: testPolicyExportFile2.json 1`] = ` +{ + "meta": Any, + "policy": { + "39e53582-d85d-4f4d-91a8-54def507b993": { + "active": true, + "description": "test", + "id": "39e53582-d85d-4f4d-91a8-54def507b993", + "metadata": {}, + "name": "test", + "policyOwner": { + "givenName": "csv", + "id": "managed/user/9de92b26-e91e-44b7-ac81-7ae1c6adf9ad", + "mail": "1csv@example.com", + "sn": "one", + "userName": "1csv", + }, + "policyRuleIds": [ + "0434dcaa-7950-4f7a-b869-7a3d33c82396", + "df95d487-a251-458d-8299-14f2b131264c", + ], + "policyRuleNames": [ + "Test Policy", + "test rule", + ], + "schedule": null, + }, + "df18c346-68bb-48ce-8840-ead1688f2a60": { + "active": true, + "description": "", + "id": "df18c346-68bb-48ce-8840-ead1688f2a60", + "metadata": {}, + "name": "testing", + "policyOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin", + }, + "policyRuleIds": [ + "df95d487-a251-458d-8299-14f2b131264c", + ], + "policyRuleNames": [ + "test rule", + ], + }, + "e5b6a80d-a1ae-455f-830d-dc1bcc61b7cf": { + "active": true, + "description": "this is a test policy", + "id": "e5b6a80d-a1ae-455f-830d-dc1bcc61b7cf", + "metadata": {}, + "name": "test policy", + "policyOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin", + }, + "policyRuleIds": [ + "df95d487-a251-458d-8299-14f2b131264c", + ], + "policyRuleNames": [ + "test rule", + ], + "scheduleId": "policySchedulee5b6a80da1ae455f830ddc1bcc61b7cf", + }, + }, +} +`; + +exports[`frodo iga policy export "frodo iga policy export --no-metadata -a --directory testPolicyExportDir2": should export all policies with no metadata 1`] = `0`; + +exports[`frodo iga policy export "frodo iga policy export --no-metadata -a --directory testPolicyExportDir2": should export all policies with no metadata 2`] = `""`; + +exports[`frodo iga policy export "frodo iga policy export --no-metadata -a --directory testPolicyExportDir2": should export all policies with no metadata 3`] = ` +"✔ Exported 3 policies +" +`; + +exports[`frodo iga policy export "frodo iga policy export --no-metadata -a --directory testPolicyExportDir2": should export all policies with no metadata: testPolicyExportDir2/allPolicies.policy.json 1`] = ` +{ + "policy": { + "39e53582-d85d-4f4d-91a8-54def507b993": { + "active": true, + "description": "test", + "id": "39e53582-d85d-4f4d-91a8-54def507b993", + "metadata": {}, + "name": "test", + "policyOwner": { + "givenName": "csv", + "id": "managed/user/9de92b26-e91e-44b7-ac81-7ae1c6adf9ad", + "mail": "1csv@example.com", + "sn": "one", + "userName": "1csv", + }, + "policyRuleIds": [ + "0434dcaa-7950-4f7a-b869-7a3d33c82396", + "df95d487-a251-458d-8299-14f2b131264c", + ], + "policyRuleNames": [ + "Test Policy", + "test rule", + ], + "schedule": null, + }, + "df18c346-68bb-48ce-8840-ead1688f2a60": { + "active": true, + "description": "", + "id": "df18c346-68bb-48ce-8840-ead1688f2a60", + "metadata": {}, + "name": "testing", + "policyOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin", + }, + "policyRuleIds": [ + "df95d487-a251-458d-8299-14f2b131264c", + ], + "policyRuleNames": [ + "test rule", + ], + }, + "e5b6a80d-a1ae-455f-830d-dc1bcc61b7cf": { + "active": true, + "description": "this is a test policy", + "id": "e5b6a80d-a1ae-455f-830d-dc1bcc61b7cf", + "metadata": {}, + "name": "test policy", + "policyOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin", + }, + "policyRuleIds": [ + "df95d487-a251-458d-8299-14f2b131264c", + ], + "policyRuleNames": [ + "test rule", + ], + "scheduleId": "policySchedulee5b6a80da1ae455f830ddc1bcc61b7cf", + }, + }, +} +`; + +exports[`frodo iga policy export "frodo iga policy export -NAD testPolicyExportDir3": should export all policies separately with no metadata 1`] = `0`; + +exports[`frodo iga policy export "frodo iga policy export -NAD testPolicyExportDir3": should export all policies separately with no metadata 2`] = `""`; + +exports[`frodo iga policy export "frodo iga policy export -NAD testPolicyExportDir3": should export all policies separately with no metadata 3`] = ` +"✔ Exported 3 policies +" +`; + +exports[`frodo iga policy export "frodo iga policy export -NAD testPolicyExportDir3": should export all policies separately with no metadata: testPolicyExportDir3/test.policy.json 1`] = ` +{ + "policy": { + "39e53582-d85d-4f4d-91a8-54def507b993": { + "active": true, + "description": "test", + "id": "39e53582-d85d-4f4d-91a8-54def507b993", + "metadata": {}, + "name": "test", + "policyOwner": { + "givenName": "csv", + "id": "managed/user/9de92b26-e91e-44b7-ac81-7ae1c6adf9ad", + "mail": "1csv@example.com", + "sn": "one", + "userName": "1csv", + }, + "policyRuleIds": [ + "0434dcaa-7950-4f7a-b869-7a3d33c82396", + "df95d487-a251-458d-8299-14f2b131264c", + ], + "policyRuleNames": [ + "Test Policy", + "test rule", + ], + "schedule": null, + }, + }, +} +`; + +exports[`frodo iga policy export "frodo iga policy export -NAD testPolicyExportDir3": should export all policies separately with no metadata: testPolicyExportDir3/test-policy.policy.json 1`] = ` +{ + "policy": { + "e5b6a80d-a1ae-455f-830d-dc1bcc61b7cf": { + "active": true, + "description": "this is a test policy", + "id": "e5b6a80d-a1ae-455f-830d-dc1bcc61b7cf", + "metadata": {}, + "name": "test policy", + "policyOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin", + }, + "policyRuleIds": [ + "df95d487-a251-458d-8299-14f2b131264c", + ], + "policyRuleNames": [ + "test rule", + ], + "scheduleId": "policySchedulee5b6a80da1ae455f830ddc1bcc61b7cf", + }, + }, +} +`; + +exports[`frodo iga policy export "frodo iga policy export -NAD testPolicyExportDir3": should export all policies separately with no metadata: testPolicyExportDir3/testing.policy.json 1`] = ` +{ + "policy": { + "df18c346-68bb-48ce-8840-ead1688f2a60": { + "active": true, + "description": "", + "id": "df18c346-68bb-48ce-8840-ead1688f2a60", + "metadata": {}, + "name": "testing", + "policyOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin", + }, + "policyRuleIds": [ + "df95d487-a251-458d-8299-14f2b131264c", + ], + "policyRuleNames": [ + "test rule", + ], + }, + }, +} +`; diff --git a/test/e2e/__snapshots__/iga-sod-policy-import.e2e.test.js.snap b/test/e2e/__snapshots__/iga-sod-policy-import.e2e.test.js.snap new file mode 100644 index 000000000..d233adf38 --- /dev/null +++ b/test/e2e/__snapshots__/iga-sod-policy-import.e2e.test.js.snap @@ -0,0 +1,36 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`frodo iga policy import "frodo iga policy import --policy-name test --file test/e2e/exports/all/allPolicies.policy.json ": should import test test from the file "test/e2e/exports/all/allPolicies.policy.json " 1`] = `""`; + +exports[`frodo iga policy import "frodo iga policy import --policy-name test --file test/e2e/exports/all/allPolicies.policy.json ": should import test test from the file "test/e2e/exports/all/allPolicies.policy.json " 2`] = ` +"✔ Successfully imported policy contains-test. +" +`; + +exports[`frodo iga policy import "frodo iga policy import -AD test/e2e/exports/all-separate/cloud/global/sod-policy": should import all policies from the directory "test/e2e/exports/all-separate/cloud/global/sod-policy" with dependencies 1`] = `""`; + +exports[`frodo iga policy import "frodo iga policy import -AD test/e2e/exports/all-separate/cloud/global/sod-policy": should import all policies from the directory "test/e2e/exports/all-separate/cloud/global/sod-policy" with dependencies 2`] = ` +"✔ Successfully imported policies. +" +`; + +exports[`frodo iga policy import "frodo iga policy import -af test/e2e/exports/all/allPolicies.policy.json ": should import all policies from the file "test/e2e/exports/all/allPolicies.policy.json " with dependencies 1`] = `""`; + +exports[`frodo iga policy import "frodo iga policy import -af test/e2e/exports/all/allPolicies.policy.json ": should import all policies from the file "test/e2e/exports/all/allPolicies.policy.json " with dependencies 2`] = ` +"✔ Successfully imported policies. +" +`; + +exports[`frodo iga policy import "frodo iga policy import -f test/e2e/exports/all/allPolicies.policy.json ": should import first policy from the file "test/e2e/exports/all/allPolicies.policy.json " 1`] = `""`; + +exports[`frodo iga policy import "frodo iga policy import -f test/e2e/exports/all/allPolicies.policy.json ": should import first policy from the file "test/e2e/exports/all/allPolicies.policy.json " 2`] = ` +"✔ Imported policy from test/e2e/exports/all/allPolicies.policy.json +" +`; + +exports[`frodo iga policy import "frodo iga policy import -n test -f test/e2e/exports/all/allPolicies.policy.json ": should import test policy from the file "test/e2e/exports/all/allPolicies.policy.json " with dependencies 1`] = `""`; + +exports[`frodo iga policy import "frodo iga policy import -n test -f test/e2e/exports/all/allPolicies.policy.json ": should import test policy from the file "test/e2e/exports/all/allPolicies.policy.json " with dependencies 2`] = ` +"✔ Successfully imported policy test. +" +`; diff --git a/test/e2e/__snapshots__/iga-sod-policy-list.e2e.test.js.snap b/test/e2e/__snapshots__/iga-sod-policy-list.e2e.test.js.snap new file mode 100644 index 000000000..b5a466d6e --- /dev/null +++ b/test/e2e/__snapshots__/iga-sod-policy-list.e2e.test.js.snap @@ -0,0 +1,24 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`frodo iga policy list "frodo iga policy list --long": should list the ids, names, descriptions, status and owner of the policies\`. 1`] = ` +"ID │Name │Description │Active│Policy Owner│Policy Rules +39e53582-d85d-4f4d-91a8-54def507b993│test │test │active│1csv │2 +df18c346-68bb-48ce-8840-ead1688f2a60│testing │ │active│Dallin │1 +e5b6a80d-a1ae-455f-830d-dc1bcc61b7cf│test policy│this is a test policy│active│Dallin │1 +" +`; + +exports[`frodo iga policy list "frodo iga policy list -l": should list the ids, names, descriptions, status and owner of the policies. 1`] = ` +"ID │Name │Description │Active│Policy Owner│Policy Rules +39e53582-d85d-4f4d-91a8-54def507b993│test │test │active│1csv │2 +df18c346-68bb-48ce-8840-ead1688f2a60│testing │ │active│Dallin │1 +e5b6a80d-a1ae-455f-830d-dc1bcc61b7cf│test policy│this is a test policy│active│Dallin │1 +" +`; + +exports[`frodo iga policy list "frodo iga policy list": should list the ids of the policies 1`] = ` +"test +testing +test policy +" +`; diff --git a/test/e2e/__snapshots__/iga-sod-policy-rule-delete.e2e.test.js.snap b/test/e2e/__snapshots__/iga-sod-policy-rule-delete.e2e.test.js.snap new file mode 100644 index 000000000..80f26f3dc --- /dev/null +++ b/test/e2e/__snapshots__/iga-sod-policy-rule-delete.e2e.test.js.snap @@ -0,0 +1,8 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`frodo iga policy-rule delete "frodo iga policy-rule delete -n delete-test": Should delete policy rule delete-test by name 1`] = `""`; + +exports[`frodo iga policy-rule delete "frodo iga policy-rule delete -n delete-test": Should delete policy rule delete-test by name 2`] = ` +"✔ Deleted policy rule delete-test. +" +`; diff --git a/test/e2e/__snapshots__/iga-sod-policy-rule-describe.e2e.test.js.snap b/test/e2e/__snapshots__/iga-sod-policy-rule-describe.e2e.test.js.snap new file mode 100644 index 000000000..f558f379d --- /dev/null +++ b/test/e2e/__snapshots__/iga-sod-policy-rule-describe.e2e.test.js.snap @@ -0,0 +1,49 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`frodo iga policy-rule describe "frodo iga policy-rule describe --file test/e2e/exports/all/allPolicyRules.rules.json": should describe first policy-rule from file test/e2e/exports/all/allPolicyRules.rules.json 1`] = ` +"Id │0434dcaa-7950-4f7a-b869-7a3d33c82396 +Name │Test Policy +Description │Test policy (delete me) +Active │active +Rule Owner │PrestonIGATestUser +Violation Owner │PrestonIGATestUser +Risk Score │5 +Max Exception Duration│90 +Scan Types │detective, preventative +Decision Options │allow, exception, remediate +Workflow │ModifyUser (bpmn) + +" +`; + +exports[`frodo iga policy-rule describe "frodo iga policy-rule describe --rule-name describe-test ": should describe policy-rule 'describe-test' 1`] = ` +"Id │2e4bc849-67b5-4c8a-9894-341cf2fa1192 +Name │describe-test +Description │this is a description test +Active │active +Rule Owner │ColtonIGATestUser +Violation Owner │ColtonIGATestUser +Risk Score │100 +Max Exception Duration│90 +Scan Types │preventative, detective +Decision Options │exception, allow, remediate +Workflow │- + +" +`; + +exports[`frodo iga policy-rule describe "frodo iga policy-rule describe -n describe-test -f test/e2e/exports/all/allPolicyRules.rules.json": should describe policy-rule 'describe-test' from file test/e2e/exports/all/allPolicyRules.rules.json 1`] = ` +"Id │2e4bc849-67b5-4c8a-9894-341cf2fa1192 +Name │describe-test +Description │this is a description test +Active │active +Rule Owner │ColtonIGATestUser +Violation Owner │ColtonIGATestUser +Risk Score │100 +Max Exception Duration│90 +Scan Types │detective, preventative +Decision Options │allow, exception, remediate +Workflow │- + +" +`; diff --git a/test/e2e/__snapshots__/iga-sod-policy-rule-export.e2e.test.js.snap b/test/e2e/__snapshots__/iga-sod-policy-rule-export.e2e.test.js.snap new file mode 100644 index 000000000..e6b3bca5c --- /dev/null +++ b/test/e2e/__snapshots__/iga-sod-policy-rule-export.e2e.test.js.snap @@ -0,0 +1,1184 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`frodo iga policy-rule export "frodo iga policy-rule export --all --file allPolicyRule.rule.json": should export all policy rules to file 1`] = `0`; + +exports[`frodo iga policy-rule export "frodo iga policy-rule export --all --file allPolicyRule.rule.json": should export all policy rules to file 2`] = `""`; + +exports[`frodo iga policy-rule export "frodo iga policy-rule export --all --file allPolicyRule.rule.json": should export all policy rules to file 3`] = ` +"✔ Exported 4 policy rules +" +`; + +exports[`frodo iga policy-rule export "frodo iga policy-rule export --all --file allPolicyRule.rule.json": should export all policy rules to file: allPolicyRule.rule.json 1`] = ` +{ + "meta": Any, + "policyRule": { + "0434dcaa-7950-4f7a-b869-7a3d33c82396": { + "active": true, + "correctionAdvice": "Correct violations", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true, + }, + "description": "Test policy (delete me)", + "documentationUrl": "google.com", + "id": "0434dcaa-7950-4f7a-b869-7a3d33c82396", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "Mitigate Control", + "name": "Test Policy", + "policyRuleOwner": { + "givenName": "Preston", + "id": "managed/user/0f325c99-6965-4f45-b1e4-f9db1fa4dcf6", + "mail": "test@test.com", + "sn": "Test", + "userName": "PrestonIGATestUser", + }, + "remediation": { + "schemas": [ + "grantRemoval", + ], + }, + "riskScore": 5, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1", + }, + "operator": "CONTAINS", + }, + ], + "operator": "AND", + "type": [ + "entitlementGrant", + ], + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup2", + }, + "operator": "CONTAINS", + }, + ], + "operator": "OR", + "type": [ + "entitlementGrant", + ], + }, + ], + "ruleDefinitionTags": [ + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName", + "targetName=entitlement.displayName&targetValue=aicGroup2", + "targetValue=aicGroup2&targetName=entitlement.displayName", + "targetName=id&targetValue=0f325c99-6965-4f45-b1e4-f9db1fa4dcf6", + "targetValue=0f325c99-6965-4f45-b1e4-f9db1fa4dcf6&targetName=id", + ], + "scanTypes": { + "detective": true, + "preventative": true, + }, + "userFilter": { + "operand": [ + { + "operand": { + "targetName": "id", + "targetValue": "0f325c99-6965-4f45-b1e4-f9db1fa4dcf6", + }, + "operator": "EQUALS", + }, + ], + "operator": "AND", + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true, + }, + "expiration": { + "action": "do_nothing", + "duration": 7, + "expires": true, + }, + "workflow": { + "action": "launch_workflow", + }, + }, + "violationOwner": { + "givenName": "Preston", + "id": "managed/user/0f325c99-6965-4f45-b1e4-f9db1fa4dcf6", + "mail": "test@test.com", + "sn": "Test", + "userName": "PrestonIGATestUser", + }, + "violationOwnerType": "user", + "workflow": { + "id": "ModifyUser", + "type": "bpmn", + }, + }, + "2e4bc849-67b5-4c8a-9894-341cf2fa1192": { + "active": true, + "correctionAdvice": "", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true, + }, + "description": "this is a description test", + "documentationUrl": "", + "id": "2e4bc849-67b5-4c8a-9894-341cf2fa1192", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "test", + "name": "describe-test", + "policyRuleOwner": { + "givenName": "Colton", + "id": "managed/user/645363b3-7cbb-47a3-bf93-d96c59c387d9", + "mail": "cparry@trivir.com", + "sn": "Parry", + "userName": "ColtonIGATestUser", + }, + "remediation": { + "schemas": [ + "grantRemoval", + ], + }, + "riskScore": 100, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.glossary.description", + "targetValue": "empty", + }, + "operator": "EQUALS", + }, + ], + "operator": "OR", + "type": [ + "entitlementGrant", + ], + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.glossary.CP-DummyEntitlement", + "targetValue": "empty", + }, + "operator": "EQUALS", + }, + ], + "operator": "OR", + "type": [ + "entitlementGrant", + ], + }, + ], + "ruleDefinitionTags": [ + "targetName=entitlement.glossary.description&targetValue=empty", + "targetValue=empty&targetName=entitlement.glossary.description", + "targetName=entitlement.glossary.CP-DummyEntitlement&targetValue=empty", + "targetValue=empty&targetName=entitlement.glossary.CP-DummyEntitlement", + "targetName=id&targetValue=5068da35-7971-4f11-becf-ba716b6aadb9", + "targetValue=5068da35-7971-4f11-becf-ba716b6aadb9&targetName=id", + ], + "scanTypes": { + "detective": true, + "preventative": true, + }, + "userFilter": { + "operand": [ + { + "operand": { + "targetName": "id", + "targetValue": "5068da35-7971-4f11-becf-ba716b6aadb9", + }, + "operator": "EQUALS", + }, + ], + "operator": "AND", + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true, + }, + "expiration": { + "expires": false, + }, + "workflow": { + "action": "do_nothing", + }, + }, + "violationOwner": { + "givenName": "Colton", + "id": "managed/user/645363b3-7cbb-47a3-bf93-d96c59c387d9", + "mail": "cparry@trivir.com", + "sn": "Parry", + "userName": "ColtonIGATestUser", + }, + "violationOwnerType": "user", + }, + "c03aaa17-ce22-4981-b0ac-c8bb3bc2dbf8": { + "active": true, + "correctionAdvice": "", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true, + }, + "description": "this is a test rule", + "documentationUrl": "", + "id": "c03aaa17-ce22-4981-b0ac-c8bb3bc2dbf8", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "", + "name": "test-rule", + "policyRuleOwner": { + "givenName": "ChildTwo", + "id": "managed/user/fe4f7519-329e-4dc3-ab85-4ea023e22c25", + "mail": "pholderness+c2admin@trivir.com", + "sn": "Admin", + "userName": "phh-child2-org-admin", + }, + "remediation": { + "schemas": [ + "grantRemoval", + ], + }, + "riskScore": 15, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1", + }, + "operator": "EQUALS", + }, + ], + "operator": "OR", + "type": [ + "entitlementGrant", + ], + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1", + }, + "operator": "EQUALS", + }, + ], + "operator": "OR", + "type": [ + "entitlementGrant", + ], + }, + ], + "ruleDefinitionTags": [ + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName", + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName", + ], + "scanTypes": { + "detective": true, + "preventative": true, + }, + "userFilter": { + "operand": [], + "operator": "ALL", + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true, + }, + "expiration": { + "expires": false, + }, + "workflow": { + "action": "launch_workflow", + }, + }, + "violationOwner": { + "givenName": "Colton", + "id": "managed/user/645363b3-7cbb-47a3-bf93-d96c59c387d9", + "mail": "cparry@trivir.com", + "sn": "Parry", + "userName": "ColtonIGATestUser", + }, + "violationOwnerType": "user", + "workflow": { + "id": "BasicViolationProcess", + "type": "bpmn", + }, + }, + "df95d487-a251-458d-8299-14f2b131264c": { + "active": true, + "correctionAdvice": "", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true, + }, + "description": "this is a test rule", + "documentationUrl": "", + "id": "df95d487-a251-458d-8299-14f2b131264c", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "", + "name": "test rule", + "policyRuleOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin", + }, + "remediation": { + "schemas": [ + "grantRemoval", + ], + }, + "riskScore": 0, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1", + }, + "operator": "EQUALS", + }, + ], + "operator": "OR", + "type": [ + "entitlementGrant", + ], + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup2", + }, + "operator": "EQUALS", + }, + ], + "operator": "AND", + "type": [ + "entitlementGrant", + ], + }, + ], + "ruleDefinitionTags": [ + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName", + "targetName=entitlement.displayName&targetValue=aicGroup2", + "targetValue=aicGroup2&targetName=entitlement.displayName", + ], + "scanTypes": { + "detective": true, + "preventative": true, + }, + "userFilter": { + "operand": [], + "operator": "ALL", + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true, + }, + "expiration": { + "expires": false, + }, + "workflow": { + "action": "do_nothing", + }, + }, + "violationOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin", + }, + "violationOwnerType": "user", + }, + }, +} +`; + +exports[`frodo iga policy-rule export "frodo iga policy-rule export --no-metadata -a --directory testPolicyRuleExportDir2": should export all policy rules with no metadata 1`] = `0`; + +exports[`frodo iga policy-rule export "frodo iga policy-rule export --no-metadata -a --directory testPolicyRuleExportDir2": should export all policy rules with no metadata 2`] = `""`; + +exports[`frodo iga policy-rule export "frodo iga policy-rule export --no-metadata -a --directory testPolicyRuleExportDir2": should export all policy rules with no metadata 3`] = ` +"✔ Exported 4 policy rules +" +`; + +exports[`frodo iga policy-rule export "frodo iga policy-rule export --no-metadata -a --directory testPolicyRuleExportDir2": should export all policy rules with no metadata: testPolicyRuleExportDir2/allPolicyRule.rule.json 1`] = ` +{ + "policyRule": { + "0434dcaa-7950-4f7a-b869-7a3d33c82396": { + "active": true, + "correctionAdvice": "Correct violations", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true, + }, + "description": "Test policy (delete me)", + "documentationUrl": "google.com", + "id": "0434dcaa-7950-4f7a-b869-7a3d33c82396", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "Mitigate Control", + "name": "Test Policy", + "policyRuleOwner": { + "givenName": "Preston", + "id": "managed/user/0f325c99-6965-4f45-b1e4-f9db1fa4dcf6", + "mail": "test@test.com", + "sn": "Test", + "userName": "PrestonIGATestUser", + }, + "remediation": { + "schemas": [ + "grantRemoval", + ], + }, + "riskScore": 5, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1", + }, + "operator": "CONTAINS", + }, + ], + "operator": "AND", + "type": [ + "entitlementGrant", + ], + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup2", + }, + "operator": "CONTAINS", + }, + ], + "operator": "OR", + "type": [ + "entitlementGrant", + ], + }, + ], + "ruleDefinitionTags": [ + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName", + "targetName=entitlement.displayName&targetValue=aicGroup2", + "targetValue=aicGroup2&targetName=entitlement.displayName", + "targetName=id&targetValue=0f325c99-6965-4f45-b1e4-f9db1fa4dcf6", + "targetValue=0f325c99-6965-4f45-b1e4-f9db1fa4dcf6&targetName=id", + ], + "scanTypes": { + "detective": true, + "preventative": true, + }, + "userFilter": { + "operand": [ + { + "operand": { + "targetName": "id", + "targetValue": "0f325c99-6965-4f45-b1e4-f9db1fa4dcf6", + }, + "operator": "EQUALS", + }, + ], + "operator": "AND", + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true, + }, + "expiration": { + "action": "do_nothing", + "duration": 7, + "expires": true, + }, + "workflow": { + "action": "launch_workflow", + }, + }, + "violationOwner": { + "givenName": "Preston", + "id": "managed/user/0f325c99-6965-4f45-b1e4-f9db1fa4dcf6", + "mail": "test@test.com", + "sn": "Test", + "userName": "PrestonIGATestUser", + }, + "violationOwnerType": "user", + "workflow": { + "id": "ModifyUser", + "type": "bpmn", + }, + }, + "2e4bc849-67b5-4c8a-9894-341cf2fa1192": { + "active": true, + "correctionAdvice": "", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true, + }, + "description": "this is a description test", + "documentationUrl": "", + "id": "2e4bc849-67b5-4c8a-9894-341cf2fa1192", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "test", + "name": "describe-test", + "policyRuleOwner": { + "givenName": "Colton", + "id": "managed/user/645363b3-7cbb-47a3-bf93-d96c59c387d9", + "mail": "cparry@trivir.com", + "sn": "Parry", + "userName": "ColtonIGATestUser", + }, + "remediation": { + "schemas": [ + "grantRemoval", + ], + }, + "riskScore": 100, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.glossary.description", + "targetValue": "empty", + }, + "operator": "EQUALS", + }, + ], + "operator": "OR", + "type": [ + "entitlementGrant", + ], + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.glossary.CP-DummyEntitlement", + "targetValue": "empty", + }, + "operator": "EQUALS", + }, + ], + "operator": "OR", + "type": [ + "entitlementGrant", + ], + }, + ], + "ruleDefinitionTags": [ + "targetName=entitlement.glossary.description&targetValue=empty", + "targetValue=empty&targetName=entitlement.glossary.description", + "targetName=entitlement.glossary.CP-DummyEntitlement&targetValue=empty", + "targetValue=empty&targetName=entitlement.glossary.CP-DummyEntitlement", + "targetName=id&targetValue=5068da35-7971-4f11-becf-ba716b6aadb9", + "targetValue=5068da35-7971-4f11-becf-ba716b6aadb9&targetName=id", + ], + "scanTypes": { + "detective": true, + "preventative": true, + }, + "userFilter": { + "operand": [ + { + "operand": { + "targetName": "id", + "targetValue": "5068da35-7971-4f11-becf-ba716b6aadb9", + }, + "operator": "EQUALS", + }, + ], + "operator": "AND", + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true, + }, + "expiration": { + "expires": false, + }, + "workflow": { + "action": "do_nothing", + }, + }, + "violationOwner": { + "givenName": "Colton", + "id": "managed/user/645363b3-7cbb-47a3-bf93-d96c59c387d9", + "mail": "cparry@trivir.com", + "sn": "Parry", + "userName": "ColtonIGATestUser", + }, + "violationOwnerType": "user", + }, + "c03aaa17-ce22-4981-b0ac-c8bb3bc2dbf8": { + "active": true, + "correctionAdvice": "", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true, + }, + "description": "this is a test rule", + "documentationUrl": "", + "id": "c03aaa17-ce22-4981-b0ac-c8bb3bc2dbf8", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "", + "name": "test-rule", + "policyRuleOwner": { + "givenName": "ChildTwo", + "id": "managed/user/fe4f7519-329e-4dc3-ab85-4ea023e22c25", + "mail": "pholderness+c2admin@trivir.com", + "sn": "Admin", + "userName": "phh-child2-org-admin", + }, + "remediation": { + "schemas": [ + "grantRemoval", + ], + }, + "riskScore": 15, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1", + }, + "operator": "EQUALS", + }, + ], + "operator": "OR", + "type": [ + "entitlementGrant", + ], + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1", + }, + "operator": "EQUALS", + }, + ], + "operator": "OR", + "type": [ + "entitlementGrant", + ], + }, + ], + "ruleDefinitionTags": [ + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName", + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName", + ], + "scanTypes": { + "detective": true, + "preventative": true, + }, + "userFilter": { + "operand": [], + "operator": "ALL", + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true, + }, + "expiration": { + "expires": false, + }, + "workflow": { + "action": "launch_workflow", + }, + }, + "violationOwner": { + "givenName": "Colton", + "id": "managed/user/645363b3-7cbb-47a3-bf93-d96c59c387d9", + "mail": "cparry@trivir.com", + "sn": "Parry", + "userName": "ColtonIGATestUser", + }, + "violationOwnerType": "user", + "workflow": { + "id": "BasicViolationProcess", + "type": "bpmn", + }, + }, + "df95d487-a251-458d-8299-14f2b131264c": { + "active": true, + "correctionAdvice": "", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true, + }, + "description": "this is a test rule", + "documentationUrl": "", + "id": "df95d487-a251-458d-8299-14f2b131264c", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "", + "name": "test rule", + "policyRuleOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin", + }, + "remediation": { + "schemas": [ + "grantRemoval", + ], + }, + "riskScore": 0, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1", + }, + "operator": "EQUALS", + }, + ], + "operator": "OR", + "type": [ + "entitlementGrant", + ], + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup2", + }, + "operator": "EQUALS", + }, + ], + "operator": "AND", + "type": [ + "entitlementGrant", + ], + }, + ], + "ruleDefinitionTags": [ + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName", + "targetName=entitlement.displayName&targetValue=aicGroup2", + "targetValue=aicGroup2&targetName=entitlement.displayName", + ], + "scanTypes": { + "detective": true, + "preventative": true, + }, + "userFilter": { + "operand": [], + "operator": "ALL", + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true, + }, + "expiration": { + "expires": false, + }, + "workflow": { + "action": "do_nothing", + }, + }, + "violationOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin", + }, + "violationOwnerType": "user", + }, + }, +} +`; + +exports[`frodo iga policy-rule export "frodo iga policy-rule export -NAD testPolicyRuleExportDir3": should export all policy rules separately with no metadata 1`] = `0`; + +exports[`frodo iga policy-rule export "frodo iga policy-rule export -NAD testPolicyRuleExportDir3": should export all policy rules separately with no metadata 2`] = `""`; + +exports[`frodo iga policy-rule export "frodo iga policy-rule export -NAD testPolicyRuleExportDir3": should export all policy rules separately with no metadata 3`] = ` +"✔ Exported 4 policy rules +" +`; + +exports[`frodo iga policy-rule export "frodo iga policy-rule export -NAD testPolicyRuleExportDir3": should export all policy rules separately with no metadata: testPolicyRuleExportDir3/Test-Policy.rule.json 1`] = ` +{ + "policyRule": { + "0434dcaa-7950-4f7a-b869-7a3d33c82396": { + "active": true, + "correctionAdvice": "Correct violations", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true, + }, + "description": "Test policy (delete me)", + "documentationUrl": "google.com", + "id": "0434dcaa-7950-4f7a-b869-7a3d33c82396", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "Mitigate Control", + "name": "Test Policy", + "policyRuleOwner": { + "givenName": "Preston", + "id": "managed/user/0f325c99-6965-4f45-b1e4-f9db1fa4dcf6", + "mail": "test@test.com", + "sn": "Test", + "userName": "PrestonIGATestUser", + }, + "remediation": { + "schemas": [ + "grantRemoval", + ], + }, + "riskScore": 5, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1", + }, + "operator": "CONTAINS", + }, + ], + "operator": "AND", + "type": [ + "entitlementGrant", + ], + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup2", + }, + "operator": "CONTAINS", + }, + ], + "operator": "OR", + "type": [ + "entitlementGrant", + ], + }, + ], + "ruleDefinitionTags": [ + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName", + "targetName=entitlement.displayName&targetValue=aicGroup2", + "targetValue=aicGroup2&targetName=entitlement.displayName", + "targetName=id&targetValue=0f325c99-6965-4f45-b1e4-f9db1fa4dcf6", + "targetValue=0f325c99-6965-4f45-b1e4-f9db1fa4dcf6&targetName=id", + ], + "scanTypes": { + "detective": true, + "preventative": true, + }, + "userFilter": { + "operand": [ + { + "operand": { + "targetName": "id", + "targetValue": "0f325c99-6965-4f45-b1e4-f9db1fa4dcf6", + }, + "operator": "EQUALS", + }, + ], + "operator": "AND", + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true, + }, + "expiration": { + "action": "do_nothing", + "duration": 7, + "expires": true, + }, + "workflow": { + "action": "launch_workflow", + }, + }, + "violationOwner": { + "givenName": "Preston", + "id": "managed/user/0f325c99-6965-4f45-b1e4-f9db1fa4dcf6", + "mail": "test@test.com", + "sn": "Test", + "userName": "PrestonIGATestUser", + }, + "violationOwnerType": "user", + "workflow": { + "id": "ModifyUser", + "type": "bpmn", + }, + }, + }, +} +`; + +exports[`frodo iga policy-rule export "frodo iga policy-rule export -NAD testPolicyRuleExportDir3": should export all policy rules separately with no metadata: testPolicyRuleExportDir3/describe-test.rule.json 1`] = ` +{ + "policyRule": { + "2e4bc849-67b5-4c8a-9894-341cf2fa1192": { + "active": true, + "correctionAdvice": "", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true, + }, + "description": "this is a description test", + "documentationUrl": "", + "id": "2e4bc849-67b5-4c8a-9894-341cf2fa1192", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "test", + "name": "describe-test", + "policyRuleOwner": { + "givenName": "Colton", + "id": "managed/user/645363b3-7cbb-47a3-bf93-d96c59c387d9", + "mail": "cparry@trivir.com", + "sn": "Parry", + "userName": "ColtonIGATestUser", + }, + "remediation": { + "schemas": [ + "grantRemoval", + ], + }, + "riskScore": 100, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.glossary.description", + "targetValue": "empty", + }, + "operator": "EQUALS", + }, + ], + "operator": "OR", + "type": [ + "entitlementGrant", + ], + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.glossary.CP-DummyEntitlement", + "targetValue": "empty", + }, + "operator": "EQUALS", + }, + ], + "operator": "OR", + "type": [ + "entitlementGrant", + ], + }, + ], + "ruleDefinitionTags": [ + "targetName=entitlement.glossary.description&targetValue=empty", + "targetValue=empty&targetName=entitlement.glossary.description", + "targetName=entitlement.glossary.CP-DummyEntitlement&targetValue=empty", + "targetValue=empty&targetName=entitlement.glossary.CP-DummyEntitlement", + "targetName=id&targetValue=5068da35-7971-4f11-becf-ba716b6aadb9", + "targetValue=5068da35-7971-4f11-becf-ba716b6aadb9&targetName=id", + ], + "scanTypes": { + "detective": true, + "preventative": true, + }, + "userFilter": { + "operand": [ + { + "operand": { + "targetName": "id", + "targetValue": "5068da35-7971-4f11-becf-ba716b6aadb9", + }, + "operator": "EQUALS", + }, + ], + "operator": "AND", + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true, + }, + "expiration": { + "expires": false, + }, + "workflow": { + "action": "do_nothing", + }, + }, + "violationOwner": { + "givenName": "Colton", + "id": "managed/user/645363b3-7cbb-47a3-bf93-d96c59c387d9", + "mail": "cparry@trivir.com", + "sn": "Parry", + "userName": "ColtonIGATestUser", + }, + "violationOwnerType": "user", + }, + }, +} +`; + +exports[`frodo iga policy-rule export "frodo iga policy-rule export -NAD testPolicyRuleExportDir3": should export all policy rules separately with no metadata: testPolicyRuleExportDir3/test-rule.rule.json 1`] = ` +{ + "policyRule": { + "df95d487-a251-458d-8299-14f2b131264c": { + "active": true, + "correctionAdvice": "", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true, + }, + "description": "this is a test rule", + "documentationUrl": "", + "id": "df95d487-a251-458d-8299-14f2b131264c", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "", + "name": "test rule", + "policyRuleOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin", + }, + "remediation": { + "schemas": [ + "grantRemoval", + ], + }, + "riskScore": 0, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1", + }, + "operator": "EQUALS", + }, + ], + "operator": "OR", + "type": [ + "entitlementGrant", + ], + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup2", + }, + "operator": "EQUALS", + }, + ], + "operator": "AND", + "type": [ + "entitlementGrant", + ], + }, + ], + "ruleDefinitionTags": [ + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName", + "targetName=entitlement.displayName&targetValue=aicGroup2", + "targetValue=aicGroup2&targetName=entitlement.displayName", + ], + "scanTypes": { + "detective": true, + "preventative": true, + }, + "userFilter": { + "operand": [], + "operator": "ALL", + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true, + }, + "expiration": { + "expires": false, + }, + "workflow": { + "action": "do_nothing", + }, + }, + "violationOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin", + }, + "violationOwnerType": "user", + }, + }, +} +`; diff --git a/test/e2e/__snapshots__/iga-sod-policy-rule-import.e2e.test.js.snap b/test/e2e/__snapshots__/iga-sod-policy-rule-import.e2e.test.js.snap new file mode 100644 index 000000000..4f16c12ca --- /dev/null +++ b/test/e2e/__snapshots__/iga-sod-policy-rule-import.e2e.test.js.snap @@ -0,0 +1,36 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`frodo iga policy-rule import "frodo iga policy-rule import --rule-name describe-test --file test/e2e/exports/all/allPolicyRules.rules.json ": should import describe-test from the file "test/e2e/exports/all/allPolicyRules.rules.json" 1`] = `""`; + +exports[`frodo iga policy-rule import "frodo iga policy-rule import --rule-name describe-test --file test/e2e/exports/all/allPolicyRules.rules.json ": should import describe-test from the file "test/e2e/exports/all/allPolicyRules.rules.json" 2`] = ` +"✔ Successfully imported policy rule describe-test. +" +`; + +exports[`frodo iga policy-rule import "frodo iga policy-rule import -AD test/e2e/exports/all-separate/cloud/global/sod-policy-rules": should import all policy rules from the directory "test/e2e/exports/all-separate/cloud/global/sod-policy-rules" with dependencies 1`] = `""`; + +exports[`frodo iga policy-rule import "frodo iga policy-rule import -AD test/e2e/exports/all-separate/cloud/global/sod-policy-rules": should import all policy rules from the directory "test/e2e/exports/all-separate/cloud/global/sod-policy-rules" with dependencies 2`] = ` +"✔ Successfully imported policy rules. +" +`; + +exports[`frodo iga policy-rule import "frodo iga policy-rule import -af test/e2e/exports/all/allPolicyRules.rules.json": should import all policy rules from the file "test/e2e/exports/all/allPolicyRules.rules.json" with dependencies 1`] = `""`; + +exports[`frodo iga policy-rule import "frodo iga policy-rule import -af test/e2e/exports/all/allPolicyRules.rules.json": should import all policy rules from the file "test/e2e/exports/all/allPolicyRules.rules.json" with dependencies 2`] = ` +"✔ Successfully imported policy rules. +" +`; + +exports[`frodo iga policy-rule import "frodo iga policy-rule import -f test/e2e/exports/all/allPolicyRules.rules.json ": should import first policy rule from the file "test/e2e/exports/all/allPolicyRules.rules.json" 1`] = `""`; + +exports[`frodo iga policy-rule import "frodo iga policy-rule import -f test/e2e/exports/all/allPolicyRules.rules.json ": should import first policy rule from the file "test/e2e/exports/all/allPolicyRules.rules.json" 2`] = ` +"✔ Imported policy rule from test/e2e/exports/all/allPolicyRules.rules.json +" +`; + +exports[`frodo iga policy-rule import "frodo iga policy-rule import -n describe-test -f test/e2e/exports/all/allPolicyRules.rules.json": should import describe-test from the file "test/e2e/exports/all/allPolicyRules.rules.json" with dependencies 1`] = `""`; + +exports[`frodo iga policy-rule import "frodo iga policy-rule import -n describe-test -f test/e2e/exports/all/allPolicyRules.rules.json": should import describe-test from the file "test/e2e/exports/all/allPolicyRules.rules.json" with dependencies 2`] = ` +"✔ Successfully imported policy rule describe-test. +" +`; diff --git a/test/e2e/__snapshots__/iga-sod-policy-rule-list.e2e.test.js.snap b/test/e2e/__snapshots__/iga-sod-policy-rule-list.e2e.test.js.snap new file mode 100644 index 000000000..a6d86d062 --- /dev/null +++ b/test/e2e/__snapshots__/iga-sod-policy-rule-list.e2e.test.js.snap @@ -0,0 +1,27 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`frodo iga policy-rule list "frodo iga policy-rule list --long": should list the ids, names, mutability, and statuses of the policy rules. 1`] = ` +"ID │Name │Description │Active│Owner │Risk Score +0434dcaa-7950-4f7a-b869-7a3d33c82396│Test Policy │Test policy (delete me) │active│PrestonIGATestUser │5 +2e4bc849-67b5-4c8a-9894-341cf2fa1192│describe-test│this is a description test│active│ColtonIGATestUser │100 +c03aaa17-ce22-4981-b0ac-c8bb3bc2dbf8│test-rule │this is a test rule │active│phh-child2-org-admin│15 +df95d487-a251-458d-8299-14f2b131264c│test rule │this is a test rule │active│Dallin │0 +" +`; + +exports[`frodo iga policy-rule list "frodo iga policy-rule list -l": should list the ids, names, mutability, and statuses of the policy rules. 1`] = ` +"ID │Name │Description │Active│Owner │Risk Score +0434dcaa-7950-4f7a-b869-7a3d33c82396│Test Policy │Test policy (delete me) │active│PrestonIGATestUser │5 +2e4bc849-67b5-4c8a-9894-341cf2fa1192│describe-test│this is a description test│active│ColtonIGATestUser │100 +c03aaa17-ce22-4981-b0ac-c8bb3bc2dbf8│test-rule │this is a test rule │active│phh-child2-org-admin│15 +df95d487-a251-458d-8299-14f2b131264c│test rule │this is a test rule │active│Dallin │0 +" +`; + +exports[`frodo iga policy-rule list "frodo iga policy-rule list": should list the ids of the policy rules 1`] = ` +"Test Policy +describe-test +test-rule +test rule +" +`; diff --git a/test/e2e/config-export.e2e.test.js b/test/e2e/config-export.e2e.test.js index 0fb357ace..3133ddb39 100644 --- a/test/e2e/config-export.e2e.test.js +++ b/test/e2e/config-export.e2e.test.js @@ -135,25 +135,25 @@ describe('frodo config export', () => { // Cloud IGA Tests - test.todo('"frodo config export -NRag --use-string-arrays --no-coords -f testExportAllIGA1.json": should export all global IGA configuration with no-coords, string arrays, and read only configuration.', async () => { + test.skip('"frodo config export -NRag --use-string-arrays --no-coords -f testExportAllIGA1.json": should export all global IGA configuration with no-coords, string arrays, and read only configuration.', async () => { const exportFile = 'testExportAllIGA1.json'; const CMD = `frodo config export -NRag --use-string-arrays --no-coords -f ${exportFile}`; await testExport(CMD, env, type, exportFile, undefined, false, true); }); - test.todo('"frodo config export --all --global --file testExportAllIGA2.json": should export all global IGA configuration.', async () => { + test.skip('"frodo config export --all --global --file testExportAllIGA2.json": should export all global IGA configuration.', async () => { const exportFile = 'testExportAllIGA2.json'; const CMD = `frodo config export --all --global --file ${exportFile}`; await testExport(CMD, env, type, exportFile, undefined, true, true); }); - test.todo('"frodo config export --no-metadata --read-only --all-separate -g --use-string-arrays --no-coords --extract --directory exportAllTestDir11": should export all global IGA configuration separately with extracted scripts, no-coords, string arrays, and read only configuration.', async () => { + test.skip('"frodo config export --no-metadata --read-only --all-separate -g --use-string-arrays --no-coords --extract --directory exportAllTestDir11": should export all global IGA configuration separately with extracted scripts, no-coords, string arrays, and read only configuration.', async () => { const exportDirectory = 'exportAllTestDir11'; const CMD = `frodo config export --no-metadata --read-only --all-separate -g --use-string-arrays --no-coords --extract --directory ${exportDirectory}`; await testExport(CMD, env, type, undefined, exportDirectory, false, true); }); - test.todo('"frodo config export -AgD exportAllTestDir12": should export all global IGA configuration separately', async () => { + test.skip('"frodo config export -AgD exportAllTestDir12": should export all global IGA configuration separately', async () => { const exportDirectory = 'exportAllTestDir12'; const CMD = `frodo config export -AgD ${exportDirectory}`; await testExport(CMD, env, type, undefined, exportDirectory, true, true); diff --git a/test/e2e/exports/all-separate/cloud/global/sod-policy-rules/Test-Policy.rule.json b/test/e2e/exports/all-separate/cloud/global/sod-policy-rules/Test-Policy.rule.json new file mode 100644 index 000000000..02e4aa038 --- /dev/null +++ b/test/e2e/exports/all-separate/cloud/global/sod-policy-rules/Test-Policy.rule.json @@ -0,0 +1,418 @@ +{ + "meta": { + "exportDate": "2026-06-04T19:21:02.726Z", + "exportTool": "frodo", + "exportToolVersion": "v4.0.0-39 [v24.13.0]", + "exportedBy": "dsevy@trivir.com", + "origin": "https://openam-trivir-fairfax.forgeblocks.com/am", + "originAmVersion": "9.0.0" + }, + "policyRule": { + "0434dcaa-7950-4f7a-b869-7a3d33c82396": { + "active": true, + "correctionAdvice": "Correct violations", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true + }, + "description": "Test policy (delete me)", + "documentationUrl": "google.com", + "id": "0434dcaa-7950-4f7a-b869-7a3d33c82396", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "Mitigate Control", + "name": "Test Policy", + "policyRuleOwner": { + "givenName": "Preston", + "id": "managed/user/0f325c99-6965-4f45-b1e4-f9db1fa4dcf6", + "mail": "test@test.com", + "sn": "Test", + "userName": "PrestonIGATestUser" + }, + "remediation": { + "schemas": [ + "grantRemoval" + ] + }, + "riskScore": 5, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1" + }, + "operator": "CONTAINS" + } + ], + "operator": "AND", + "type": [ + "entitlementGrant" + ] + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup2" + }, + "operator": "CONTAINS" + } + ], + "operator": "OR", + "type": [ + "entitlementGrant" + ] + } + ], + "ruleDefinitionTags": [ + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName", + "targetName=entitlement.displayName&targetValue=aicGroup2", + "targetValue=aicGroup2&targetName=entitlement.displayName", + "targetName=id&targetValue=0f325c99-6965-4f45-b1e4-f9db1fa4dcf6", + "targetValue=0f325c99-6965-4f45-b1e4-f9db1fa4dcf6&targetName=id" + ], + "scanTypes": { + "detective": true, + "preventative": true + }, + "userFilter": { + "operand": [ + { + "operand": { + "targetName": "id", + "targetValue": "0f325c99-6965-4f45-b1e4-f9db1fa4dcf6" + }, + "operator": "EQUALS" + } + ], + "operator": "AND" + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true + }, + "expiration": { + "action": "do_nothing", + "duration": 7, + "expires": true + }, + "workflow": { + "action": "launch_workflow" + } + }, + "violationOwner": { + "givenName": "Preston", + "id": "managed/user/0f325c99-6965-4f45-b1e4-f9db1fa4dcf6", + "mail": "test@test.com", + "sn": "Test", + "userName": "PrestonIGATestUser" + }, + "violationOwnerType": "user", + "workflow": { + "id": "ModifyUser", + "type": "bpmn" + } + }, + "2e4bc849-67b5-4c8a-9894-341cf2fa1192": { + "active": true, + "correctionAdvice": "", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true + }, + "description": "this is a description test", + "documentationUrl": "", + "id": "2e4bc849-67b5-4c8a-9894-341cf2fa1192", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "test", + "name": "describe-test", + "policyRuleOwner": { + "givenName": "Colton", + "id": "managed/user/645363b3-7cbb-47a3-bf93-d96c59c387d9", + "mail": "cparry@trivir.com", + "sn": "Parry", + "userName": "ColtonIGATestUser" + }, + "remediation": { + "schemas": [ + "grantRemoval" + ] + }, + "riskScore": 100, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.glossary.description", + "targetValue": "empty" + }, + "operator": "EQUALS" + } + ], + "operator": "OR", + "type": [ + "entitlementGrant" + ] + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.glossary.CP-DummyEntitlement", + "targetValue": "empty" + }, + "operator": "EQUALS" + } + ], + "operator": "OR", + "type": [ + "entitlementGrant" + ] + } + ], + "ruleDefinitionTags": [ + "targetName=entitlement.glossary.description&targetValue=empty", + "targetValue=empty&targetName=entitlement.glossary.description", + "targetName=entitlement.glossary.CP-DummyEntitlement&targetValue=empty", + "targetValue=empty&targetName=entitlement.glossary.CP-DummyEntitlement", + "targetName=id&targetValue=5068da35-7971-4f11-becf-ba716b6aadb9", + "targetValue=5068da35-7971-4f11-becf-ba716b6aadb9&targetName=id" + ], + "scanTypes": { + "detective": true, + "preventative": true + }, + "userFilter": { + "operand": [ + { + "operand": { + "targetName": "id", + "targetValue": "5068da35-7971-4f11-becf-ba716b6aadb9" + }, + "operator": "EQUALS" + } + ], + "operator": "AND" + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true + }, + "expiration": { + "expires": false + }, + "workflow": { + "action": "do_nothing" + } + }, + "violationOwner": { + "givenName": "Colton", + "id": "managed/user/645363b3-7cbb-47a3-bf93-d96c59c387d9", + "mail": "cparry@trivir.com", + "sn": "Parry", + "userName": "ColtonIGATestUser" + }, + "violationOwnerType": "user" + }, + "c03aaa17-ce22-4981-b0ac-c8bb3bc2dbf8": { + "active": true, + "correctionAdvice": "", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true + }, + "description": "this is a test rule", + "documentationUrl": "", + "id": "c03aaa17-ce22-4981-b0ac-c8bb3bc2dbf8", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "", + "name": "test-rule", + "policyRuleOwner": { + "givenName": "ChildTwo", + "id": "managed/user/fe4f7519-329e-4dc3-ab85-4ea023e22c25", + "mail": "pholderness+c2admin@trivir.com", + "sn": "Admin", + "userName": "phh-child2-org-admin" + }, + "remediation": { + "schemas": [ + "grantRemoval" + ] + }, + "riskScore": 15, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1" + }, + "operator": "EQUALS" + } + ], + "operator": "OR", + "type": [ + "entitlementGrant" + ] + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1" + }, + "operator": "EQUALS" + } + ], + "operator": "OR", + "type": [ + "entitlementGrant" + ] + } + ], + "ruleDefinitionTags": [ + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName", + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName" + ], + "scanTypes": { + "detective": true, + "preventative": true + }, + "userFilter": { + "operand": [], + "operator": "ALL" + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true + }, + "expiration": { + "expires": false + }, + "workflow": { + "action": "launch_workflow" + } + }, + "violationOwner": { + "givenName": "Colton", + "id": "managed/user/645363b3-7cbb-47a3-bf93-d96c59c387d9", + "mail": "cparry@trivir.com", + "sn": "Parry", + "userName": "ColtonIGATestUser" + }, + "violationOwnerType": "user", + "workflow": { + "id": "BasicViolationProcess", + "type": "bpmn" + } + }, + "df95d487-a251-458d-8299-14f2b131264c": { + "active": true, + "correctionAdvice": "", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true + }, + "description": "this is a test rule", + "documentationUrl": "", + "id": "df95d487-a251-458d-8299-14f2b131264c", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "", + "name": "test rule", + "policyRuleOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin" + }, + "remediation": { + "schemas": [ + "grantRemoval" + ] + }, + "riskScore": 0, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1" + }, + "operator": "EQUALS" + } + ], + "operator": "OR", + "type": [ + "entitlementGrant" + ] + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup2" + }, + "operator": "EQUALS" + } + ], + "operator": "AND", + "type": [ + "entitlementGrant" + ] + } + ], + "ruleDefinitionTags": [ + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName", + "targetName=entitlement.displayName&targetValue=aicGroup2", + "targetValue=aicGroup2&targetName=entitlement.displayName" + ], + "scanTypes": { + "detective": true, + "preventative": true + }, + "userFilter": { + "operand": [], + "operator": "ALL" + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true + }, + "expiration": { + "expires": false + }, + "workflow": { + "action": "do_nothing" + } + }, + "violationOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin" + }, + "violationOwnerType": "user" + } + } +} diff --git a/test/e2e/exports/all-separate/cloud/global/sod-policy-rules/describe-test.rule.json b/test/e2e/exports/all-separate/cloud/global/sod-policy-rules/describe-test.rule.json new file mode 100644 index 000000000..02e4aa038 --- /dev/null +++ b/test/e2e/exports/all-separate/cloud/global/sod-policy-rules/describe-test.rule.json @@ -0,0 +1,418 @@ +{ + "meta": { + "exportDate": "2026-06-04T19:21:02.726Z", + "exportTool": "frodo", + "exportToolVersion": "v4.0.0-39 [v24.13.0]", + "exportedBy": "dsevy@trivir.com", + "origin": "https://openam-trivir-fairfax.forgeblocks.com/am", + "originAmVersion": "9.0.0" + }, + "policyRule": { + "0434dcaa-7950-4f7a-b869-7a3d33c82396": { + "active": true, + "correctionAdvice": "Correct violations", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true + }, + "description": "Test policy (delete me)", + "documentationUrl": "google.com", + "id": "0434dcaa-7950-4f7a-b869-7a3d33c82396", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "Mitigate Control", + "name": "Test Policy", + "policyRuleOwner": { + "givenName": "Preston", + "id": "managed/user/0f325c99-6965-4f45-b1e4-f9db1fa4dcf6", + "mail": "test@test.com", + "sn": "Test", + "userName": "PrestonIGATestUser" + }, + "remediation": { + "schemas": [ + "grantRemoval" + ] + }, + "riskScore": 5, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1" + }, + "operator": "CONTAINS" + } + ], + "operator": "AND", + "type": [ + "entitlementGrant" + ] + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup2" + }, + "operator": "CONTAINS" + } + ], + "operator": "OR", + "type": [ + "entitlementGrant" + ] + } + ], + "ruleDefinitionTags": [ + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName", + "targetName=entitlement.displayName&targetValue=aicGroup2", + "targetValue=aicGroup2&targetName=entitlement.displayName", + "targetName=id&targetValue=0f325c99-6965-4f45-b1e4-f9db1fa4dcf6", + "targetValue=0f325c99-6965-4f45-b1e4-f9db1fa4dcf6&targetName=id" + ], + "scanTypes": { + "detective": true, + "preventative": true + }, + "userFilter": { + "operand": [ + { + "operand": { + "targetName": "id", + "targetValue": "0f325c99-6965-4f45-b1e4-f9db1fa4dcf6" + }, + "operator": "EQUALS" + } + ], + "operator": "AND" + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true + }, + "expiration": { + "action": "do_nothing", + "duration": 7, + "expires": true + }, + "workflow": { + "action": "launch_workflow" + } + }, + "violationOwner": { + "givenName": "Preston", + "id": "managed/user/0f325c99-6965-4f45-b1e4-f9db1fa4dcf6", + "mail": "test@test.com", + "sn": "Test", + "userName": "PrestonIGATestUser" + }, + "violationOwnerType": "user", + "workflow": { + "id": "ModifyUser", + "type": "bpmn" + } + }, + "2e4bc849-67b5-4c8a-9894-341cf2fa1192": { + "active": true, + "correctionAdvice": "", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true + }, + "description": "this is a description test", + "documentationUrl": "", + "id": "2e4bc849-67b5-4c8a-9894-341cf2fa1192", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "test", + "name": "describe-test", + "policyRuleOwner": { + "givenName": "Colton", + "id": "managed/user/645363b3-7cbb-47a3-bf93-d96c59c387d9", + "mail": "cparry@trivir.com", + "sn": "Parry", + "userName": "ColtonIGATestUser" + }, + "remediation": { + "schemas": [ + "grantRemoval" + ] + }, + "riskScore": 100, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.glossary.description", + "targetValue": "empty" + }, + "operator": "EQUALS" + } + ], + "operator": "OR", + "type": [ + "entitlementGrant" + ] + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.glossary.CP-DummyEntitlement", + "targetValue": "empty" + }, + "operator": "EQUALS" + } + ], + "operator": "OR", + "type": [ + "entitlementGrant" + ] + } + ], + "ruleDefinitionTags": [ + "targetName=entitlement.glossary.description&targetValue=empty", + "targetValue=empty&targetName=entitlement.glossary.description", + "targetName=entitlement.glossary.CP-DummyEntitlement&targetValue=empty", + "targetValue=empty&targetName=entitlement.glossary.CP-DummyEntitlement", + "targetName=id&targetValue=5068da35-7971-4f11-becf-ba716b6aadb9", + "targetValue=5068da35-7971-4f11-becf-ba716b6aadb9&targetName=id" + ], + "scanTypes": { + "detective": true, + "preventative": true + }, + "userFilter": { + "operand": [ + { + "operand": { + "targetName": "id", + "targetValue": "5068da35-7971-4f11-becf-ba716b6aadb9" + }, + "operator": "EQUALS" + } + ], + "operator": "AND" + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true + }, + "expiration": { + "expires": false + }, + "workflow": { + "action": "do_nothing" + } + }, + "violationOwner": { + "givenName": "Colton", + "id": "managed/user/645363b3-7cbb-47a3-bf93-d96c59c387d9", + "mail": "cparry@trivir.com", + "sn": "Parry", + "userName": "ColtonIGATestUser" + }, + "violationOwnerType": "user" + }, + "c03aaa17-ce22-4981-b0ac-c8bb3bc2dbf8": { + "active": true, + "correctionAdvice": "", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true + }, + "description": "this is a test rule", + "documentationUrl": "", + "id": "c03aaa17-ce22-4981-b0ac-c8bb3bc2dbf8", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "", + "name": "test-rule", + "policyRuleOwner": { + "givenName": "ChildTwo", + "id": "managed/user/fe4f7519-329e-4dc3-ab85-4ea023e22c25", + "mail": "pholderness+c2admin@trivir.com", + "sn": "Admin", + "userName": "phh-child2-org-admin" + }, + "remediation": { + "schemas": [ + "grantRemoval" + ] + }, + "riskScore": 15, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1" + }, + "operator": "EQUALS" + } + ], + "operator": "OR", + "type": [ + "entitlementGrant" + ] + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1" + }, + "operator": "EQUALS" + } + ], + "operator": "OR", + "type": [ + "entitlementGrant" + ] + } + ], + "ruleDefinitionTags": [ + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName", + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName" + ], + "scanTypes": { + "detective": true, + "preventative": true + }, + "userFilter": { + "operand": [], + "operator": "ALL" + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true + }, + "expiration": { + "expires": false + }, + "workflow": { + "action": "launch_workflow" + } + }, + "violationOwner": { + "givenName": "Colton", + "id": "managed/user/645363b3-7cbb-47a3-bf93-d96c59c387d9", + "mail": "cparry@trivir.com", + "sn": "Parry", + "userName": "ColtonIGATestUser" + }, + "violationOwnerType": "user", + "workflow": { + "id": "BasicViolationProcess", + "type": "bpmn" + } + }, + "df95d487-a251-458d-8299-14f2b131264c": { + "active": true, + "correctionAdvice": "", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true + }, + "description": "this is a test rule", + "documentationUrl": "", + "id": "df95d487-a251-458d-8299-14f2b131264c", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "", + "name": "test rule", + "policyRuleOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin" + }, + "remediation": { + "schemas": [ + "grantRemoval" + ] + }, + "riskScore": 0, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1" + }, + "operator": "EQUALS" + } + ], + "operator": "OR", + "type": [ + "entitlementGrant" + ] + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup2" + }, + "operator": "EQUALS" + } + ], + "operator": "AND", + "type": [ + "entitlementGrant" + ] + } + ], + "ruleDefinitionTags": [ + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName", + "targetName=entitlement.displayName&targetValue=aicGroup2", + "targetValue=aicGroup2&targetName=entitlement.displayName" + ], + "scanTypes": { + "detective": true, + "preventative": true + }, + "userFilter": { + "operand": [], + "operator": "ALL" + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true + }, + "expiration": { + "expires": false + }, + "workflow": { + "action": "do_nothing" + } + }, + "violationOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin" + }, + "violationOwnerType": "user" + } + } +} diff --git a/test/e2e/exports/all-separate/cloud/global/sod-policy-rules/test-rule.policyRule.json b/test/e2e/exports/all-separate/cloud/global/sod-policy-rules/test-rule.policyRule.json new file mode 100644 index 000000000..0302d3526 --- /dev/null +++ b/test/e2e/exports/all-separate/cloud/global/sod-policy-rules/test-rule.policyRule.json @@ -0,0 +1,106 @@ +{ + "meta": { + "exportDate": "2026-06-04T18:55:46.208Z", + "exportTool": "frodo", + "exportToolVersion": "v4.0.0-39 [v24.13.0]", + "exportedBy": "dsevy@trivir.com", + "origin": "https://openam-trivir-fairfax.forgeblocks.com/am", + "originAmVersion": "9.0.0" + }, + "rule": { + "test rule": { + "active": true, + "correctionAdvice": "", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true + }, + "description": "this is a test rule", + "documentationUrl": "", + "id": "df95d487-a251-458d-8299-14f2b131264c", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "", + "name": "test rule", + "policyRuleOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin" + }, + "remediation": { + "schemas": [ + "grantRemoval" + ] + }, + "riskScore": 0, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1" + }, + "operator": "EQUALS" + } + ], + "operator": "OR", + "type": [ + "entitlementGrant" + ] + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup2" + }, + "operator": "EQUALS" + } + ], + "operator": "AND", + "type": [ + "entitlementGrant" + ] + } + ], + "ruleDefinitionTags": [ + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName", + "targetName=entitlement.displayName&targetValue=aicGroup2", + "targetValue=aicGroup2&targetName=entitlement.displayName" + ], + "scanTypes": { + "detective": true, + "preventative": true + }, + "userFilter": { + "operand": [], + "operator": "ALL" + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true + }, + "expiration": { + "expires": false + }, + "workflow": { + "action": "do_nothing" + } + }, + "violationOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin" + }, + "violationOwnerType": "user" + } + } +} diff --git a/test/e2e/exports/all-separate/cloud/global/sod-policy-rules/test-rule.rule.json b/test/e2e/exports/all-separate/cloud/global/sod-policy-rules/test-rule.rule.json new file mode 100644 index 000000000..02e4aa038 --- /dev/null +++ b/test/e2e/exports/all-separate/cloud/global/sod-policy-rules/test-rule.rule.json @@ -0,0 +1,418 @@ +{ + "meta": { + "exportDate": "2026-06-04T19:21:02.726Z", + "exportTool": "frodo", + "exportToolVersion": "v4.0.0-39 [v24.13.0]", + "exportedBy": "dsevy@trivir.com", + "origin": "https://openam-trivir-fairfax.forgeblocks.com/am", + "originAmVersion": "9.0.0" + }, + "policyRule": { + "0434dcaa-7950-4f7a-b869-7a3d33c82396": { + "active": true, + "correctionAdvice": "Correct violations", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true + }, + "description": "Test policy (delete me)", + "documentationUrl": "google.com", + "id": "0434dcaa-7950-4f7a-b869-7a3d33c82396", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "Mitigate Control", + "name": "Test Policy", + "policyRuleOwner": { + "givenName": "Preston", + "id": "managed/user/0f325c99-6965-4f45-b1e4-f9db1fa4dcf6", + "mail": "test@test.com", + "sn": "Test", + "userName": "PrestonIGATestUser" + }, + "remediation": { + "schemas": [ + "grantRemoval" + ] + }, + "riskScore": 5, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1" + }, + "operator": "CONTAINS" + } + ], + "operator": "AND", + "type": [ + "entitlementGrant" + ] + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup2" + }, + "operator": "CONTAINS" + } + ], + "operator": "OR", + "type": [ + "entitlementGrant" + ] + } + ], + "ruleDefinitionTags": [ + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName", + "targetName=entitlement.displayName&targetValue=aicGroup2", + "targetValue=aicGroup2&targetName=entitlement.displayName", + "targetName=id&targetValue=0f325c99-6965-4f45-b1e4-f9db1fa4dcf6", + "targetValue=0f325c99-6965-4f45-b1e4-f9db1fa4dcf6&targetName=id" + ], + "scanTypes": { + "detective": true, + "preventative": true + }, + "userFilter": { + "operand": [ + { + "operand": { + "targetName": "id", + "targetValue": "0f325c99-6965-4f45-b1e4-f9db1fa4dcf6" + }, + "operator": "EQUALS" + } + ], + "operator": "AND" + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true + }, + "expiration": { + "action": "do_nothing", + "duration": 7, + "expires": true + }, + "workflow": { + "action": "launch_workflow" + } + }, + "violationOwner": { + "givenName": "Preston", + "id": "managed/user/0f325c99-6965-4f45-b1e4-f9db1fa4dcf6", + "mail": "test@test.com", + "sn": "Test", + "userName": "PrestonIGATestUser" + }, + "violationOwnerType": "user", + "workflow": { + "id": "ModifyUser", + "type": "bpmn" + } + }, + "2e4bc849-67b5-4c8a-9894-341cf2fa1192": { + "active": true, + "correctionAdvice": "", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true + }, + "description": "this is a description test", + "documentationUrl": "", + "id": "2e4bc849-67b5-4c8a-9894-341cf2fa1192", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "test", + "name": "describe-test", + "policyRuleOwner": { + "givenName": "Colton", + "id": "managed/user/645363b3-7cbb-47a3-bf93-d96c59c387d9", + "mail": "cparry@trivir.com", + "sn": "Parry", + "userName": "ColtonIGATestUser" + }, + "remediation": { + "schemas": [ + "grantRemoval" + ] + }, + "riskScore": 100, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.glossary.description", + "targetValue": "empty" + }, + "operator": "EQUALS" + } + ], + "operator": "OR", + "type": [ + "entitlementGrant" + ] + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.glossary.CP-DummyEntitlement", + "targetValue": "empty" + }, + "operator": "EQUALS" + } + ], + "operator": "OR", + "type": [ + "entitlementGrant" + ] + } + ], + "ruleDefinitionTags": [ + "targetName=entitlement.glossary.description&targetValue=empty", + "targetValue=empty&targetName=entitlement.glossary.description", + "targetName=entitlement.glossary.CP-DummyEntitlement&targetValue=empty", + "targetValue=empty&targetName=entitlement.glossary.CP-DummyEntitlement", + "targetName=id&targetValue=5068da35-7971-4f11-becf-ba716b6aadb9", + "targetValue=5068da35-7971-4f11-becf-ba716b6aadb9&targetName=id" + ], + "scanTypes": { + "detective": true, + "preventative": true + }, + "userFilter": { + "operand": [ + { + "operand": { + "targetName": "id", + "targetValue": "5068da35-7971-4f11-becf-ba716b6aadb9" + }, + "operator": "EQUALS" + } + ], + "operator": "AND" + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true + }, + "expiration": { + "expires": false + }, + "workflow": { + "action": "do_nothing" + } + }, + "violationOwner": { + "givenName": "Colton", + "id": "managed/user/645363b3-7cbb-47a3-bf93-d96c59c387d9", + "mail": "cparry@trivir.com", + "sn": "Parry", + "userName": "ColtonIGATestUser" + }, + "violationOwnerType": "user" + }, + "c03aaa17-ce22-4981-b0ac-c8bb3bc2dbf8": { + "active": true, + "correctionAdvice": "", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true + }, + "description": "this is a test rule", + "documentationUrl": "", + "id": "c03aaa17-ce22-4981-b0ac-c8bb3bc2dbf8", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "", + "name": "test-rule", + "policyRuleOwner": { + "givenName": "ChildTwo", + "id": "managed/user/fe4f7519-329e-4dc3-ab85-4ea023e22c25", + "mail": "pholderness+c2admin@trivir.com", + "sn": "Admin", + "userName": "phh-child2-org-admin" + }, + "remediation": { + "schemas": [ + "grantRemoval" + ] + }, + "riskScore": 15, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1" + }, + "operator": "EQUALS" + } + ], + "operator": "OR", + "type": [ + "entitlementGrant" + ] + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1" + }, + "operator": "EQUALS" + } + ], + "operator": "OR", + "type": [ + "entitlementGrant" + ] + } + ], + "ruleDefinitionTags": [ + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName", + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName" + ], + "scanTypes": { + "detective": true, + "preventative": true + }, + "userFilter": { + "operand": [], + "operator": "ALL" + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true + }, + "expiration": { + "expires": false + }, + "workflow": { + "action": "launch_workflow" + } + }, + "violationOwner": { + "givenName": "Colton", + "id": "managed/user/645363b3-7cbb-47a3-bf93-d96c59c387d9", + "mail": "cparry@trivir.com", + "sn": "Parry", + "userName": "ColtonIGATestUser" + }, + "violationOwnerType": "user", + "workflow": { + "id": "BasicViolationProcess", + "type": "bpmn" + } + }, + "df95d487-a251-458d-8299-14f2b131264c": { + "active": true, + "correctionAdvice": "", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true + }, + "description": "this is a test rule", + "documentationUrl": "", + "id": "df95d487-a251-458d-8299-14f2b131264c", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "", + "name": "test rule", + "policyRuleOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin" + }, + "remediation": { + "schemas": [ + "grantRemoval" + ] + }, + "riskScore": 0, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1" + }, + "operator": "EQUALS" + } + ], + "operator": "OR", + "type": [ + "entitlementGrant" + ] + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup2" + }, + "operator": "EQUALS" + } + ], + "operator": "AND", + "type": [ + "entitlementGrant" + ] + } + ], + "ruleDefinitionTags": [ + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName", + "targetName=entitlement.displayName&targetValue=aicGroup2", + "targetValue=aicGroup2&targetName=entitlement.displayName" + ], + "scanTypes": { + "detective": true, + "preventative": true + }, + "userFilter": { + "operand": [], + "operator": "ALL" + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true + }, + "expiration": { + "expires": false + }, + "workflow": { + "action": "do_nothing" + } + }, + "violationOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin" + }, + "violationOwnerType": "user" + } + } +} diff --git a/test/e2e/exports/all-separate/cloud/global/sod-policy/test-policy.policy.json b/test/e2e/exports/all-separate/cloud/global/sod-policy/test-policy.policy.json new file mode 100644 index 000000000..3db29df8f --- /dev/null +++ b/test/e2e/exports/all-separate/cloud/global/sod-policy/test-policy.policy.json @@ -0,0 +1,33 @@ +{ + "meta": { + "exportDate": "2026-06-04T15:39:51.407Z", + "exportTool": "frodo", + "exportToolVersion": "v4.0.0-39 [v24.13.0]", + "exportedBy": "dsevy@trivir.com", + "origin": "https://openam-trivir-fairfax.forgeblocks.com/am", + "originAmVersion": "9.0.0" + }, + "policy": { + "test policy": { + "active": true, + "description": "this is a test policy", + "id": "e5b6a80d-a1ae-455f-830d-dc1bcc61b7cf", + "metadata": {}, + "name": "test policy", + "policyOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin" + }, + "policyRuleIds": [ + "df95d487-a251-458d-8299-14f2b131264c" + ], + "policyRuleNames": [ + "test rule" + ], + "scheduleId": "policySchedulee5b6a80da1ae455f830ddc1bcc61b7cf" + } + } +} diff --git a/test/e2e/exports/all-separate/cloud/global/sod-policy/test.policy.json b/test/e2e/exports/all-separate/cloud/global/sod-policy/test.policy.json new file mode 100644 index 000000000..7a49f16dc --- /dev/null +++ b/test/e2e/exports/all-separate/cloud/global/sod-policy/test.policy.json @@ -0,0 +1,35 @@ +{ + "meta": { + "exportDate": "2026-06-04T15:39:51.406Z", + "exportTool": "frodo", + "exportToolVersion": "v4.0.0-39 [v24.13.0]", + "exportedBy": "dsevy@trivir.com", + "origin": "https://openam-trivir-fairfax.forgeblocks.com/am", + "originAmVersion": "9.0.0" + }, + "policy": { + "test": { + "active": true, + "description": "test", + "id": "39e53582-d85d-4f4d-91a8-54def507b993", + "metadata": {}, + "name": "test", + "policyOwner": { + "givenName": "csv", + "id": "managed/user/9de92b26-e91e-44b7-ac81-7ae1c6adf9ad", + "mail": "1csv@example.com", + "sn": "one", + "userName": "1csv" + }, + "policyRuleIds": [ + "0434dcaa-7950-4f7a-b869-7a3d33c82396", + "df95d487-a251-458d-8299-14f2b131264c" + ], + "policyRuleNames": [ + "Test Policy", + "test rule" + ], + "schedule": null + } + } +} diff --git a/test/e2e/exports/all-separate/cloud/global/sod-policy/testing.policy.json b/test/e2e/exports/all-separate/cloud/global/sod-policy/testing.policy.json new file mode 100644 index 000000000..88340c524 --- /dev/null +++ b/test/e2e/exports/all-separate/cloud/global/sod-policy/testing.policy.json @@ -0,0 +1,32 @@ +{ + "meta": { + "exportDate": "2026-06-04T15:39:51.407Z", + "exportTool": "frodo", + "exportToolVersion": "v4.0.0-39 [v24.13.0]", + "exportedBy": "dsevy@trivir.com", + "origin": "https://openam-trivir-fairfax.forgeblocks.com/am", + "originAmVersion": "9.0.0" + }, + "policy": { + "testing": { + "active": true, + "description": "", + "id": "df18c346-68bb-48ce-8840-ead1688f2a60", + "metadata": {}, + "name": "testing", + "policyOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin" + }, + "policyRuleIds": [ + "df95d487-a251-458d-8299-14f2b131264c" + ], + "policyRuleNames": [ + "test rule" + ] + } + } +} diff --git a/test/e2e/exports/all/allPolicies.policy.json b/test/e2e/exports/all/allPolicies.policy.json new file mode 100644 index 000000000..3e5b22374 --- /dev/null +++ b/test/e2e/exports/all/allPolicies.policy.json @@ -0,0 +1,76 @@ +{ + "meta": { + "exportDate": "2026-06-04T15:39:57.368Z", + "exportTool": "frodo", + "exportToolVersion": "v4.0.0-39 [v24.13.0]", + "exportedBy": "dsevy@trivir.com", + "origin": "https://openam-trivir-fairfax.forgeblocks.com/am", + "originAmVersion": "9.0.0" + }, + "policy": { + "39e53582-d85d-4f4d-91a8-54def507b993": { + "active": true, + "description": "test", + "id": "39e53582-d85d-4f4d-91a8-54def507b993", + "metadata": {}, + "name": "test", + "policyOwner": { + "givenName": "csv", + "id": "managed/user/9de92b26-e91e-44b7-ac81-7ae1c6adf9ad", + "mail": "1csv@example.com", + "sn": "one", + "userName": "1csv" + }, + "policyRuleIds": [ + "0434dcaa-7950-4f7a-b869-7a3d33c82396", + "df95d487-a251-458d-8299-14f2b131264c" + ], + "policyRuleNames": [ + "Test Policy", + "test rule" + ], + "schedule": null + }, + "df18c346-68bb-48ce-8840-ead1688f2a60": { + "active": true, + "description": "", + "id": "df18c346-68bb-48ce-8840-ead1688f2a60", + "metadata": {}, + "name": "testing", + "policyOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin" + }, + "policyRuleIds": [ + "df95d487-a251-458d-8299-14f2b131264c" + ], + "policyRuleNames": [ + "test rule" + ] + }, + "e5b6a80d-a1ae-455f-830d-dc1bcc61b7cf": { + "active": true, + "description": "this is a test policy", + "id": "e5b6a80d-a1ae-455f-830d-dc1bcc61b7cf", + "metadata": {}, + "name": "test policy", + "policyOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin" + }, + "policyRuleIds": [ + "df95d487-a251-458d-8299-14f2b131264c" + ], + "policyRuleNames": [ + "test rule" + ], + "scheduleId": "policySchedulee5b6a80da1ae455f830ddc1bcc61b7cf" + } + } +} diff --git a/test/e2e/exports/all/allPolicyRules.rules.json b/test/e2e/exports/all/allPolicyRules.rules.json new file mode 100644 index 000000000..0242fa7c4 --- /dev/null +++ b/test/e2e/exports/all/allPolicyRules.rules.json @@ -0,0 +1,320 @@ +{ + "meta": { + "exportDate": "2026-06-04T18:03:27.952Z", + "exportTool": "frodo", + "exportToolVersion": "v4.0.0-39 [v24.13.0]", + "exportedBy": "dsevy@trivir.com", + "origin": "https://openam-trivir-fairfax.forgeblocks.com/am", + "originAmVersion": "9.0.0" + }, + "policyRule": { + "0434dcaa-7950-4f7a-b869-7a3d33c82396": { + "active": true, + "correctionAdvice": "Correct violations", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true + }, + "description": "Test policy (delete me)", + "documentationUrl": "google.com", + "id": "0434dcaa-7950-4f7a-b869-7a3d33c82396", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "Mitigate Control", + "name": "Test Policy", + "policyRuleOwner": { + "givenName": "Preston", + "id": "managed/user/0f325c99-6965-4f45-b1e4-f9db1fa4dcf6", + "mail": "test@test.com", + "sn": "Test", + "userName": "PrestonIGATestUser" + }, + "remediation": { + "schemas": [ + "grantRemoval" + ] + }, + "riskScore": 5, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1" + }, + "operator": "CONTAINS" + } + ], + "operator": "AND", + "type": [ + "entitlementGrant" + ] + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup2" + }, + "operator": "CONTAINS" + } + ], + "operator": "OR", + "type": [ + "entitlementGrant" + ] + } + ], + "ruleDefinitionTags": [ + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName", + "targetName=entitlement.displayName&targetValue=aicGroup2", + "targetValue=aicGroup2&targetName=entitlement.displayName", + "targetName=id&targetValue=0f325c99-6965-4f45-b1e4-f9db1fa4dcf6", + "targetValue=0f325c99-6965-4f45-b1e4-f9db1fa4dcf6&targetName=id" + ], + "scanTypes": { + "detective": true, + "preventative": true + }, + "userFilter": { + "operand": [ + { + "operand": { + "targetName": "id", + "targetValue": "0f325c99-6965-4f45-b1e4-f9db1fa4dcf6" + }, + "operator": "EQUALS" + } + ], + "operator": "AND" + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true + }, + "expiration": { + "action": "do_nothing", + "duration": 7, + "expires": true + }, + "workflow": { + "action": "launch_workflow" + } + }, + "violationOwner": { + "givenName": "Preston", + "id": "managed/user/0f325c99-6965-4f45-b1e4-f9db1fa4dcf6", + "mail": "test@test.com", + "sn": "Test", + "userName": "PrestonIGATestUser" + }, + "violationOwnerType": "user", + "workflow": { + "id": "ModifyUser", + "type": "bpmn" + } + }, + "2e4bc849-67b5-4c8a-9894-341cf2fa1192": { + "active": true, + "correctionAdvice": "", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true + }, + "description": "this is a description test", + "documentationUrl": "", + "id": "2e4bc849-67b5-4c8a-9894-341cf2fa1192", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "test", + "name": "describe-test", + "policyRuleOwner": { + "givenName": "Colton", + "id": "managed/user/645363b3-7cbb-47a3-bf93-d96c59c387d9", + "mail": "cparry@trivir.com", + "sn": "Parry", + "userName": "ColtonIGATestUser" + }, + "remediation": { + "schemas": [ + "grantRemoval" + ] + }, + "riskScore": 100, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.glossary.description", + "targetValue": "empty" + }, + "operator": "EQUALS" + } + ], + "operator": "OR", + "type": [ + "entitlementGrant" + ] + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.glossary.CP-DummyEntitlement", + "targetValue": "empty" + }, + "operator": "EQUALS" + } + ], + "operator": "OR", + "type": [ + "entitlementGrant" + ] + } + ], + "ruleDefinitionTags": [ + "targetName=entitlement.glossary.description&targetValue=empty", + "targetValue=empty&targetName=entitlement.glossary.description", + "targetName=entitlement.glossary.CP-DummyEntitlement&targetValue=empty", + "targetValue=empty&targetName=entitlement.glossary.CP-DummyEntitlement", + "targetName=id&targetValue=5068da35-7971-4f11-becf-ba716b6aadb9", + "targetValue=5068da35-7971-4f11-becf-ba716b6aadb9&targetName=id" + ], + "scanTypes": { + "detective": true, + "preventative": true + }, + "userFilter": { + "operand": [ + { + "operand": { + "targetName": "id", + "targetValue": "5068da35-7971-4f11-becf-ba716b6aadb9" + }, + "operator": "EQUALS" + } + ], + "operator": "AND" + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true + }, + "expiration": { + "expires": false + }, + "workflow": { + "action": "do_nothing" + } + }, + "violationOwner": { + "givenName": "Colton", + "id": "managed/user/645363b3-7cbb-47a3-bf93-d96c59c387d9", + "mail": "cparry@trivir.com", + "sn": "Parry", + "userName": "ColtonIGATestUser" + }, + "violationOwnerType": "user" + }, + "df95d487-a251-458d-8299-14f2b131264c": { + "active": true, + "correctionAdvice": "", + "decisionOptions": { + "allow": true, + "exception": true, + "remediate": true + }, + "description": "this is a test rule", + "documentationUrl": "", + "id": "df95d487-a251-458d-8299-14f2b131264c", + "maxExceptionDuration": 90, + "metadata": {}, + "mitigatingControl": "", + "name": "test rule", + "policyRuleOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin" + }, + "remediation": { + "schemas": [ + "grantRemoval" + ] + }, + "riskScore": 0, + "ruleDefinition": [ + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup1" + }, + "operator": "EQUALS" + } + ], + "operator": "OR", + "type": [ + "entitlementGrant" + ] + }, + { + "operand": [ + { + "operand": { + "targetName": "entitlement.displayName", + "targetValue": "aicGroup2" + }, + "operator": "EQUALS" + } + ], + "operator": "AND", + "type": [ + "entitlementGrant" + ] + } + ], + "ruleDefinitionTags": [ + "targetName=entitlement.displayName&targetValue=aicGroup1", + "targetValue=aicGroup1&targetName=entitlement.displayName", + "targetName=entitlement.displayName&targetValue=aicGroup2", + "targetValue=aicGroup2&targetName=entitlement.displayName" + ], + "scanTypes": { + "detective": true, + "preventative": true + }, + "userFilter": { + "operand": [], + "operator": "ALL" + }, + "violationLifecycle": { + "exception": { + "justificationCheck": true + }, + "expiration": { + "expires": false + }, + "workflow": { + "action": "do_nothing" + } + }, + "violationOwner": { + "givenName": "Dallin", + "id": "managed/user/5068da35-7971-4f11-becf-ba716b6aadb9", + "mail": "test@mail.com", + "sn": "sevy", + "userName": "Dallin" + }, + "violationOwnerType": "user" + } + } +} diff --git a/test/e2e/iga-sod-policy-delete.e2e.test.js b/test/e2e/iga-sod-policy-delete.e2e.test.js new file mode 100644 index 000000000..5ec933322 --- /dev/null +++ b/test/e2e/iga-sod-policy-delete.e2e.test.js @@ -0,0 +1,71 @@ +/** + * Follow this process to write e2e tests for the CLI project: + * + * 1. Test if all the necessary mocks for your tests already exist. + * In mock mode, run the command you want to test with the same arguments + * and parameters exactly as you want to test it, for example: + * + * $ FRODO_MOCK=1 frodo conn save https://openam-frodo-dev.forgeblocks.com/am volker.scheuber@forgerock.com Sup3rS3cr3t! + * + * If your command completes without errors and with the expected results, + * all the required mocks already exist and you are good to write your + * test and skip to step #4. + * + * If, however, your command fails and you see errors like the one below, + * you know you need to record the mock responses first: + * + * [Polly] [adapter:node-http] Recording for the following request is not found and `recordIfMissing` is `false`. + * + * 2. Record mock responses for your exact command. + * In mock record mode, run the command you want to test with the same arguments + * and parameters exactly as you want to test it, for example: + * + * $ FRODO_MOCK=record frodo conn save https://openam-frodo-dev.forgeblocks.com/am volker.scheuber@forgerock.com Sup3rS3cr3t! + * + * Wait until you see all the Polly instances (mock recording adapters) have + * shutdown before you try to run step #1 again. + * Messages like these indicate mock recording adapters shutting down: + * + * Polly instance 'conn/4' stopping in 3s... + * Polly instance 'conn/4' stopping in 2s... + * Polly instance 'conn/save/3' stopping in 3s... + * Polly instance 'conn/4' stopping in 1s... + * Polly instance 'conn/save/3' stopping in 2s... + * Polly instance 'conn/4' stopped. + * Polly instance 'conn/save/3' stopping in 1s... + * Polly instance 'conn/save/3' stopped. + * + * 3. Validate your freshly recorded mock responses are complete and working. + * Re-run the exact command you want to test in mock mode (see step #1). + * + * 4. Write your test. + * Make sure to use the exact command including number of arguments and params. + * + * 5. Commit both your test and your new recordings to the repository. + * Your tests are likely going to reside outside the frodo-lib project but + * the recordings must be committed to the frodo-lib project. + */ + +/* +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy delete -n delete-test + */ + +import cp from 'child_process'; +import { promisify } from 'util'; +import { getEnv, removeAnsiEscapeCodes } from './utils/TestUtils'; +import { iga_connection as ic } from './utils/TestConfig'; + +const exec = promisify(cp.exec); + +process.env['FRODO_MOCK'] = '1'; +const igaEnv = getEnv(ic); + +describe(`frodo iga policy delete`, () => { + + test(`"frodo iga policy delete -n delete-test": should delete the specified policy`, async () => { + const CMD = `frodo iga policy delete -n delete-test`; + const { stdout, stderr } = await exec(CMD, igaEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + expect(removeAnsiEscapeCodes(stderr)).toMatchSnapshot(); + }); +}); \ No newline at end of file diff --git a/test/e2e/iga-sod-policy-describe.e2e.test.js b/test/e2e/iga-sod-policy-describe.e2e.test.js new file mode 100644 index 000000000..31968165c --- /dev/null +++ b/test/e2e/iga-sod-policy-describe.e2e.test.js @@ -0,0 +1,84 @@ +/** + * Follow this process to write e2e tests for the CLI project: + * + * 1. Test if all the necessary mocks for your tests already exist. + * In mock mode, run the command you want to test with the same arguments + * and parameters exactly as you want to test it, for example: + * + * $ FRODO_MOCK=1 frodo conn save https://openam-frodo-dev.forgeblocks.com/am volker.scheuber@forgerock.com Sup3rS3cr3t! + * + * If your command completes without errors and with the expected results, + * all the required mocks already exist and you are good to write your + * test and skip to step #4. + * + * If, however, your command fails and you see errors like the one below, + * you know you need to record the mock responses first: + * + * [Polly] [adapter:node-http] Recording for the following request is not found and `recordIfMissing` is `false`. + * + * 2. Record mock responses for your exact command. + * In mock record mode, run the command you want to test with the same arguments + * and parameters exactly as you want to test it, for example: + * + * $ FRODO_MOCK=record frodo conn save https://openam-frodo-dev.forgeblocks.com/am volker.scheuber@forgerock.com Sup3rS3cr3t! + * + * Wait until you see all the Polly instances (mock recording adapters) have + * shutdown before you try to run step #1 again. + * Messages like these indicate mock recording adapters shutting down: + * + * Polly instance 'conn/4' stopping in 3s... + * Polly instance 'conn/4' stopping in 2s... + * Polly instance 'conn/save/3' stopping in 3s... + * Polly instance 'conn/4' stopping in 1s... + * Polly instance 'conn/save/3' stopping in 2s... + * Polly instance 'conn/4' stopped. + * Polly instance 'conn/save/3' stopping in 1s... + * Polly instance 'conn/save/3' stopped. + * + * 3. Validate your freshly recorded mock responses are complete and working. + * Re-run the exact command you want to test in mock mode (see step #1). + * + * 4. Write your test. + * Make sure to use the exact command including number of arguments and params. + * + * 5. Commit both your test and your new recordings to the repository. + * Your tests are likely going to reside outside the frodo-lib project but + * the recordings must be committed to the frodo-lib project. + */ + +/* +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy describe -n test -f test/e2e/exports/all/allPolicies.policy.json +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy describe --policy-name test +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy describe --file test/e2e/exports/all/allPolicies.policy.json + */ +import cp from 'child_process'; +import { promisify } from 'util'; +import { getEnv, removeAnsiEscapeCodes } from './utils/TestUtils'; +import { iga_connection as ic } from './utils/TestConfig'; + +const exec = promisify(cp.exec); + +process.env['FRODO_MOCK'] = '1'; +const igaEnv = getEnv(ic); + +const allPoliciesFile = "test/e2e/exports/all/allPolicies.policy.json"; + +describe(`frodo iga policy describe`, () => { + test(`"frodo iga policy describe -n test -f ${allPoliciesFile}": should describe policy 'contains-test' from file ${allPoliciesFile}`, async () => { + const CMD = `frodo iga policy describe -n test -f ${allPoliciesFile}`; + const { stdout } = await exec(CMD, igaEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + }); + + test(`"frodo iga policy describe --policy-name test ": should describe policy 'test'`, async () => { + const CMD = `frodo iga policy describe --policy-name test`; + const { stdout } = await exec(CMD, igaEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + }); + + test(`"frodo iga policy describe --file ${allPoliciesFile}": should describe first policy from file ${allPoliciesFile}`, async () => { + const CMD = `frodo iga policy describe --file ${allPoliciesFile}`; + const { stdout } = await exec(CMD, igaEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + }); +}); \ No newline at end of file diff --git a/test/e2e/iga-sod-policy-export.e2e.test.js b/test/e2e/iga-sod-policy-export.e2e.test.js new file mode 100644 index 000000000..e89d73506 --- /dev/null +++ b/test/e2e/iga-sod-policy-export.e2e.test.js @@ -0,0 +1,82 @@ +/** + * Follow this process to write e2e tests for the CLI project: + * + * 1. Test if all the necessary mocks for your tests already exist. + * In mock mode, run the command you want to test with the same arguments + * and parameters exactly as you want to test it, for example: + * + * $ FRODO_MOCK=1 frodo conn save https://openam-frodo-dev.forgeblocks.com/am volker.scheuber@forgerock.com Sup3rS3cr3t! + * + * If your command completes without errors and with the expected results, + * all the required mocks already exist and you are good to write your + * test and skip to step #4. + * + * If, however, your command fails and you see errors like the one below, + * you know you need to record the mock responses first: + * + * [Polly] [adapter:node-http] Recording for the following request is not found and `recordIfMissing` is `false`. + * + * 2. Record mock responses for your exact command. + * In mock record mode, run the command you want to test with the same arguments + * and parameters exactly as you want to test it, for example: + * + * $ FRODO_MOCK=record frodo conn save https://openam-frodo-dev.forgeblocks.com/am volker.scheuber@forgerock.com Sup3rS3cr3t! + * + * Wait until you see all the Polly instances (mock recording adapters) have + * shutdown before you try to run step #1 again. + * Messages like these indicate mock recording adapters shutting down: + * + * Polly instance 'conn/4' stopping in 3s... + * Polly instance 'conn/4' stopping in 2s... + * Polly instance 'conn/save/3' stopping in 3s... + * Polly instance 'conn/4' stopping in 1s... + * Polly instance 'conn/save/3' stopping in 2s... + * Polly instance 'conn/4' stopped. + * Polly instance 'conn/save/3' stopping in 1s... + * Polly instance 'conn/save/3' stopped. + * + * 3. Validate your freshly recorded mock responses are complete and working. + * Re-run the exact command you want to test in mock mode (see step #1). + * + * 4. Write your test. + * Make sure to use the exact command including number of arguments and params. + * + * 5. Commit both your test and your new recordings to the repository. + * Your tests are likely going to reside outside the frodo-lib project but + * the recordings must be committed to the frodo-lib project. + */ + +/* +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy export --no-metadata -a --directory testPolicyExportDir2 +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy export --all --file testPolicyExportFile2.json +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy export -NAD testPolicyExportDir3 + */ +import { getEnv, testExport } from './utils/TestUtils'; +import { iga_connection as ic } from './utils/TestConfig'; + +process.env['FRODO_MOCK'] = '1'; +const igaEnv = getEnv(ic); + +const type = 'policy'; + +describe(`frodo iga policy export`, () => { + test(`"frodo iga policy export --no-metadata -a --directory testPolicyExportDir2": should export all policies with no metadata`, async () => { + const exportFile = 'allPolicies.policy.json'; + const exportDirectory = "testPolicyExportDir2"; + const CMD = `frodo iga policy export --no-metadata -a --directory ${exportDirectory}`; + await testExport(CMD, igaEnv, type, exportFile, exportDirectory, false, true); + }); + + test(`"frodo iga policy export --all --file testPolicyExportFile2.json": should export all policy to file`, async () => { + const exportFile = 'testPolicyExportFile2.json'; + const CMD = `frodo iga policy export --all --file ${exportFile}`; + await testExport(CMD, igaEnv, type, exportFile, undefined, true, true); + }); + + test(`"frodo iga policy export -NAD testPolicyExportDir3": should export all policies separately with no metadata`, async () => { + const exportDirectory = "testPolicyExportDir3"; + const CMD = `frodo iga policy export -NAD ${exportDirectory}`; + await testExport(CMD, igaEnv, type, undefined, exportDirectory, false, true); + }); + +}); \ No newline at end of file diff --git a/test/e2e/iga-sod-policy-import.e2e.test.js b/test/e2e/iga-sod-policy-import.e2e.test.js new file mode 100644 index 000000000..b572488e3 --- /dev/null +++ b/test/e2e/iga-sod-policy-import.e2e.test.js @@ -0,0 +1,107 @@ +/** + * Follow this process to write e2e tests for the CLI project: + * + * 1. Test if all the necessary mocks for your tests already exist. + * In mock mode, run the command you want to test with the same arguments + * and parameters exactly as you want to test it, for example: + * + * $ FRODO_MOCK=1 frodo conn save https://openam-frodo-dev.forgeblocks.com/am volker.scheuber@forgerock.com Sup3rS3cr3t! + * + * If your command completes without errors and with the expected results, + * all the required mocks already exist and you are good to write your + * test and skip to step #4. + * + * If, however, your command fails and you see errors like the one below, + * you know you need to record the mock responses first: + * + * [Polly] [adapter:node-http] Recording for the following request is not found and `recordIfMissing` is `false`. + * + * 2. Record mock responses for your exact command. + * In mock record mode, run the command you want to test with the same arguments + * and parameters exactly as you want to test it, for example: + * + * $ FRODO_MOCK=record frodo conn save https://openam-frodo-dev.forgeblocks.com/am volker.scheuber@forgerock.com Sup3rS3cr3t! + * + * Wait until you see all the Polly instances (mock recording adapters) have + * shutdown before you try to run step #1 again. + * Messages like these indicate mock recording adapters shutting down: + * + * Polly instance 'conn/4' stopping in 3s... + * Polly instance 'conn/4' stopping in 2s... + * Polly instance 'conn/save/3' stopping in 3s... + * Polly instance 'conn/4' stopping in 1s... + * Polly instance 'conn/save/3' stopping in 2s... + * Polly instance 'conn/4' stopped. + * Polly instance 'conn/save/3' stopping in 1s... + * Polly instance 'conn/save/3' stopped. + * + * 3. Validate your freshly recorded mock responses are complete and working. + * Re-run the exact command you want to test in mock mode (see step #1). + * + * 4. Write your test. + * Make sure to use the exact command including number of arguments and params. + * + * 5. Commit both your test and your new recordings to the repository. + * Your tests are likely going to reside outside the frodo-lib project but + * the recordings must be committed to the frodo-lib project. + */ + +/* +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy import -n test -f test/e2e/exports/all/allPolicies.policy.json +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy import --policy-name test --file test/e2e/exports/all/allPolicies.policy.json +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy import -f test/e2e/exports/all/allPolicies.policy.json +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy import -af test/e2e/exports/all/allPolicies.policy.json +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy import -AD test/e2e/exports/all-separate/cloud/global/sod-policy +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy import --all-separate --directory test/e2e/exports/all-separate/cloud/global/sod-policy + */ +import cp from 'child_process'; +import { promisify } from 'util'; +import { getEnv, removeAnsiEscapeCodes } from './utils/TestUtils'; +import { iga_connection as ic } from './utils/TestConfig'; + +const exec = promisify(cp.exec); + +process.env['FRODO_MOCK'] = '1'; +const igaEnv = getEnv(ic); + +const allDirectory = "test/e2e/exports/all"; +const allPolicyFileName = "allPolicies.policy.json "; +const allPolicyExports = `${allDirectory}/${allPolicyFileName}`; +const allSeparatePolicyDirectory = `test/e2e/exports/all-separate/cloud/global/sod-policy`; + +describe(`frodo iga policy import`, () => { + test(`"frodo iga policy import -n test -f ${allPolicyExports}": should import test policy from the file "${allPolicyExports}" with dependencies`, async () => { + const CMD = `frodo iga policy import -n test -f ${allPolicyExports}`; + const { stdout, stderr } = await exec(CMD, igaEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + expect(removeAnsiEscapeCodes(stderr)).toMatchSnapshot(); + }); + + test(`"frodo iga policy import --policy-name test --file ${allPolicyExports} ": should import test test from the file "${allPolicyExports}"`, async () => { + const CMD = `frodo iga policy import --policy-name contains-test --file ${allPolicyExports} `; + const { stdout, stderr } = await exec(CMD, igaEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + expect(removeAnsiEscapeCodes(stderr)).toMatchSnapshot(); + }); + + test(`"frodo iga policy import -f ${allPolicyExports} ": should import first policy from the file "${allPolicyExports}"`, async () => { + const CMD = `frodo iga policy import -f ${allPolicyExports} `; + const { stdout, stderr } = await exec(CMD, igaEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + expect(removeAnsiEscapeCodes(stderr)).toMatchSnapshot(); + }); + + test(`"frodo iga policy import -af ${allPolicyExports}": should import all policies from the file "${allPolicyExports}" with dependencies`, async () => { + const CMD = `frodo iga policy import -af ${allPolicyExports}`; + const { stdout, stderr } = await exec(CMD, igaEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + expect(removeAnsiEscapeCodes(stderr)).toMatchSnapshot(); + }); + + test(`"frodo iga policy import -AD ${allSeparatePolicyDirectory}": should import all policies from the directory "${allSeparatePolicyDirectory}" with dependencies`, async () => { + const CMD = `frodo iga policy import -AD ${allSeparatePolicyDirectory}`; + const { stdout, stderr } = await exec(CMD, igaEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + expect(removeAnsiEscapeCodes(stderr)).toMatchSnapshot(); + }); +}); \ No newline at end of file diff --git a/test/e2e/iga-sod-policy-list.e2e.test.js b/test/e2e/iga-sod-policy-list.e2e.test.js new file mode 100644 index 000000000..0cf873dd9 --- /dev/null +++ b/test/e2e/iga-sod-policy-list.e2e.test.js @@ -0,0 +1,82 @@ +/** + * Follow this process to write e2e tests for the CLI project: + * + * 1. Test if all the necessary mocks for your tests already exist. + * In mock mode, run the command you want to test with the same arguments + * and parameters exactly as you want to test it, for example: + * + * $ FRODO_MOCK=1 frodo conn save https://openam-frodo-dev.forgeblocks.com/am volker.scheuber@forgerock.com Sup3rS3cr3t! + * + * If your command completes without errors and with the expected results, + * all the required mocks already exist and you are good to write your + * test and skip to step #4. + * + * If, however, your command fails and you see errors like the one below, + * you know you need to record the mock responses first: + * + * [Polly] [adapter:node-http] Recording for the following request is not found and `recordIfMissing` is `false`. + * + * 2. Record mock responses for your exact command. + * In mock record mode, run the command you want to test with the same arguments + * and parameters exactly as you want to test it, for example: + * + * $ FRODO_MOCK=record frodo conn save https://openam-frodo-dev.forgeblocks.com/am volker.scheuber@forgerock.com Sup3rS3cr3t! + * + * Wait until you see all the Polly instances (mock recording adapters) have + * shutdown before you try to run step #1 again. + * Messages like these indicate mock recording adapters shutting down: + * + * Polly instance 'conn/4' stopping in 3s... + * Polly instance 'conn/4' stopping in 2s... + * Polly instance 'conn/save/3' stopping in 3s... + * Polly instance 'conn/4' stopping in 1s... + * Polly instance 'conn/save/3' stopping in 2s... + * Polly instance 'conn/4' stopped. + * Polly instance 'conn/save/3' stopping in 1s... + * Polly instance 'conn/save/3' stopped. + * + * 3. Validate your freshly recorded mock responses are complete and working. + * Re-run the exact command you want to test in mock mode (see step #1). + * + * 4. Write your test. + * Make sure to use the exact command including number of arguments and params. + * + * 5. Commit both your test and your new recordings to the repository. + * Your tests are likely going to reside outside the frodo-lib project but + * the recordings must be committed to the frodo-lib project. + */ + +/* +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy list +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy list -l +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy list --long + */ +import cp from 'child_process'; +import { promisify } from 'util'; +import { getEnv, removeAnsiEscapeCodes } from './utils/TestUtils'; +import { iga_connection as ic } from './utils/TestConfig'; + +const exec = promisify(cp.exec); + +process.env['FRODO_MOCK'] = '1'; +const igaEnv = getEnv(ic); + +describe('frodo iga policy list', () => { + test('"frodo iga policy list": should list the ids of the policies', async () => { + const CMD = `frodo iga policy list`; + const { stdout } = await exec(CMD, igaEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + }); + + test('"frodo iga policy list -l": should list the ids, names, descriptions, status and owner of the policies.', async () => { + const CMD = `frodo iga policy list -l`; + const { stdout } = await exec(CMD, igaEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + }); + + test('"frodo iga policy list --long": should list the ids, names, descriptions, status and owner of the policies`.', async () => { + const CMD = `frodo iga policy list --long`; + const { stdout } = await exec(CMD, igaEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + }); +}); \ No newline at end of file diff --git a/test/e2e/iga-sod-policy-rule-delete.e2e.test.js b/test/e2e/iga-sod-policy-rule-delete.e2e.test.js new file mode 100644 index 000000000..2c1fb43b3 --- /dev/null +++ b/test/e2e/iga-sod-policy-rule-delete.e2e.test.js @@ -0,0 +1,72 @@ +/** + * Follow this process to write e2e tests for the CLI project: + * + * 1. Test if all the necessary mocks for your tests already exist. + * In mock mode, run the command you want to test with the same arguments + * and parameters exactly as you want to test it, for example: + * + * $ FRODO_MOCK=1 frodo conn save https://openam-frodo-dev.forgeblocks.com/am volker.scheuber@forgerock.com Sup3rS3cr3t! + * + * If your command completes without errors and with the expected results, + * all the required mocks already exist and you are good to write your + * test and skip to step #4. + * + * If, however, your command fails and you see errors like the one below, + * you know you need to record the mock responses first: + * + * [Polly] [adapter:node-http] Recording for the following request is not found and `recordIfMissing` is `false`. + * + * 2. Record mock responses for your exact command. + * In mock record mode, run the command you want to test with the same arguments + * and parameters exactly as you want to test it, for example: + * + * $ FRODO_MOCK=record frodo conn save https://openam-frodo-dev.forgeblocks.com/am volker.scheuber@forgerock.com Sup3rS3cr3t! + * + * Wait until you see all the Polly instances (mock recording adapters) have + * shutdown before you try to run step #1 again. + * Messages like these indicate mock recording adapters shutting down: + * + * Polly instance 'conn/4' stopping in 3s... + * Polly instance 'conn/4' stopping in 2s... + * Polly instance 'conn/save/3' stopping in 3s... + * Polly instance 'conn/4' stopping in 1s... + * Polly instance 'conn/save/3' stopping in 2s... + * Polly instance 'conn/4' stopped. + * Polly instance 'conn/save/3' stopping in 1s... + * Polly instance 'conn/save/3' stopped. + * + * 3. Validate your freshly recorded mock responses are complete and working. + * Re-run the exact command you want to test in mock mode (see step #1). + * + * 4. Write your test. + * Make sure to use the exact command including number of arguments and params. + * + * 5. Commit both your test and your new recordings to the repository. + * Your tests are likely going to reside outside the frodo-lib project but + * the recordings must be committed to the frodo-lib project. + */ + +/* +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy-rule delete -n delete-test + + */ + +import cp from 'child_process'; +import { promisify } from 'util'; +import { getEnv, removeAnsiEscapeCodes } from './utils/TestUtils'; +import { iga_connection as ic } from './utils/TestConfig'; + +const exec = promisify(cp.exec); + +process.env['FRODO_MOCK'] = '1'; +const igaEnv = getEnv(ic); + +describe(`frodo iga policy-rule delete`, () => { + + test(`"frodo iga policy-rule delete -n delete-test": Should delete policy rule delete-test by name`, async () => { + const CMD = `frodo iga policy-rule delete -n delete-test`; + const { stdout, stderr } = await exec(CMD, igaEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + expect(removeAnsiEscapeCodes(stderr)).toMatchSnapshot(); + }); +}); \ No newline at end of file diff --git a/test/e2e/iga-sod-policy-rule-describe.e2e.test.js b/test/e2e/iga-sod-policy-rule-describe.e2e.test.js new file mode 100644 index 000000000..c65b14816 --- /dev/null +++ b/test/e2e/iga-sod-policy-rule-describe.e2e.test.js @@ -0,0 +1,84 @@ +/** + * Follow this process to write e2e tests for the CLI project: + * + * 1. Test if all the necessary mocks for your tests already exist. + * In mock mode, run the command you want to test with the same arguments + * and parameters exactly as you want to test it, for example: + * + * $ FRODO_MOCK=1 frodo conn save https://openam-frodo-dev.forgeblocks.com/am volker.scheuber@forgerock.com Sup3rS3cr3t! + * + * If your command completes without errors and with the expected results, + * all the required mocks already exist and you are good to write your + * test and skip to step #4. + * + * If, however, your command fails and you see errors like the one below, + * you know you need to record the mock responses first: + * + * [Polly] [adapter:node-http] Recording for the following request is not found and `recordIfMissing` is `false`. + * + * 2. Record mock responses for your exact command. + * In mock record mode, run the command you want to test with the same arguments + * and parameters exactly as you want to test it, for example: + * + * $ FRODO_MOCK=record frodo conn save https://openam-frodo-dev.forgeblocks.com/am volker.scheuber@forgerock.com Sup3rS3cr3t! + * + * Wait until you see all the Polly instances (mock recording adapters) have + * shutdown before you try to run step #1 again. + * Messages like these indicate mock recording adapters shutting down: + * + * Polly instance 'conn/4' stopping in 3s... + * Polly instance 'conn/4' stopping in 2s... + * Polly instance 'conn/save/3' stopping in 3s... + * Polly instance 'conn/4' stopping in 1s... + * Polly instance 'conn/save/3' stopping in 2s... + * Polly instance 'conn/4' stopped. + * Polly instance 'conn/save/3' stopping in 1s... + * Polly instance 'conn/save/3' stopped. + * + * 3. Validate your freshly recorded mock responses are complete and working. + * Re-run the exact command you want to test in mock mode (see step #1). + * + * 4. Write your test. + * Make sure to use the exact command including number of arguments and params. + * + * 5. Commit both your test and your new recordings to the repository. + * Your tests are likely going to reside outside the frodo-lib project but + * the recordings must be committed to the frodo-lib project. + */ + +/* +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy-rule describe -n describe-test -f test/e2e/exports/all/allPolicyRules.rules.json +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy-rule describe --rule-name describe-test +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy-rule describe --file test/e2e/exports/all/allPolicyRules.rules.json + */ +import cp from 'child_process'; +import { promisify } from 'util'; +import { getEnv, removeAnsiEscapeCodes } from './utils/TestUtils'; +import { iga_connection as ic } from './utils/TestConfig'; + +const exec = promisify(cp.exec); + +process.env['FRODO_MOCK'] = '1'; +const igaEnv = getEnv(ic); + +const allPolicyRulesFile = "test/e2e/exports/all/allPolicyRules.rules.json"; + +describe(`frodo iga policy-rule describe`, () => { + test(`"frodo iga policy-rule describe -n describe-test -f ${allPolicyRulesFile}": should describe policy-rule 'describe-test' from file ${allPolicyRulesFile}`, async () => { + const CMD = `frodo iga policy-rule describe -n describe-test -f ${allPolicyRulesFile}`; + const { stdout } = await exec(CMD, igaEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + }); + + test(`"frodo iga policy-rule describe --rule-name describe-test ": should describe policy-rule 'describe-test'`, async () => { + const CMD = `frodo iga policy-rule describe --rule-name describe-test`; + const { stdout } = await exec(CMD, igaEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + }); + + test(`"frodo iga policy-rule describe --file ${allPolicyRulesFile}": should describe first policy-rule from file ${allPolicyRulesFile}`, async () => { + const CMD = `frodo iga policy-rule describe --file ${allPolicyRulesFile}`; + const { stdout } = await exec(CMD, igaEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + }); +}); \ No newline at end of file diff --git a/test/e2e/iga-sod-policy-rule-export.e2e.test.js b/test/e2e/iga-sod-policy-rule-export.e2e.test.js new file mode 100644 index 000000000..cd1e489e0 --- /dev/null +++ b/test/e2e/iga-sod-policy-rule-export.e2e.test.js @@ -0,0 +1,82 @@ +/** + * Follow this process to write e2e tests for the CLI project: + * + * 1. Test if all the necessary mocks for your tests already exist. + * In mock mode, run the command you want to test with the same arguments + * and parameters exactly as you want to test it, for example: + * + * $ FRODO_MOCK=1 frodo conn save https://openam-frodo-dev.forgeblocks.com/am volker.scheuber@forgerock.com Sup3rS3cr3t! + * + * If your command completes without errors and with the expected results, + * all the required mocks already exist and you are good to write your + * test and skip to step #4. + * + * If, however, your command fails and you see errors like the one below, + * you know you need to record the mock responses first: + * + * [Polly] [adapter:node-http] Recording for the following request is not found and `recordIfMissing` is `false`. + * + * 2. Record mock responses for your exact command. + * In mock record mode, run the command you want to test with the same arguments + * and parameters exactly as you want to test it, for example: + * + * $ FRODO_MOCK=record frodo conn save https://openam-frodo-dev.forgeblocks.com/am volker.scheuber@forgerock.com Sup3rS3cr3t! + * + * Wait until you see all the Polly instances (mock recording adapters) have + * shutdown before you try to run step #1 again. + * Messages like these indicate mock recording adapters shutting down: + * + * Polly instance 'conn/4' stopping in 3s... + * Polly instance 'conn/4' stopping in 2s... + * Polly instance 'conn/save/3' stopping in 3s... + * Polly instance 'conn/4' stopping in 1s... + * Polly instance 'conn/save/3' stopping in 2s... + * Polly instance 'conn/4' stopped. + * Polly instance 'conn/save/3' stopping in 1s... + * Polly instance 'conn/save/3' stopped. + * + * 3. Validate your freshly recorded mock responses are complete and working. + * Re-run the exact command you want to test in mock mode (see step #1). + * + * 4. Write your test. + * Make sure to use the exact command including number of arguments and params. + * + * 5. Commit both your test and your new recordings to the repository. + * Your tests are likely going to reside outside the frodo-lib project but + * the recordings must be committed to the frodo-lib project. + */ + +/* +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy-rule export --no-metadata -a --directory testPolicyRuleExportDir2 +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy-rule export --all --file allPolicyRule.rule.json +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy-rule export -NAD testPolicyRuleExportDir3 + */ +import { getEnv, testExport } from './utils/TestUtils'; +import { iga_connection as ic } from './utils/TestConfig'; + +process.env['FRODO_MOCK'] = '1'; +const igaEnv = getEnv(ic); + +const type = 'rule'; + +describe(`frodo iga policy-rule export`, () => { + test(`"frodo iga policy-rule export --no-metadata -a --directory testPolicyRuleExportDir2": should export all policy rules with no metadata`, async () => { + const exportFile = 'allPolicyRule.rule.json'; + const exportDirectory = "testPolicyRuleExportDir2"; + const CMD = `frodo iga policy-rule export --no-metadata -a --directory ${exportDirectory}`; + await testExport(CMD, igaEnv, type, exportFile, exportDirectory, false, true); + }); + + test(`"frodo iga policy-rule export --all --file allPolicyRule.rule.json": should export all policy rules to file`, async () => { + const exportFile = 'allPolicyRule.rule.json'; + const CMD = `frodo iga policy-rule export --all --file ${exportFile}`; + await testExport(CMD, igaEnv, type, exportFile, undefined, true, true); + }); + + test(`"frodo iga policy-rule export -NAD testPolicyRuleExportDir3": should export all policy rules separately with no metadata`, async () => { + const exportDirectory = "testPolicyRuleExportDir3"; + const CMD = `frodo iga policy-rule export -NAD ${exportDirectory}`; + await testExport(CMD, igaEnv, type, undefined, exportDirectory, false, true); + }); + +}); \ No newline at end of file diff --git a/test/e2e/iga-sod-policy-rule-import.e2e.test.js b/test/e2e/iga-sod-policy-rule-import.e2e.test.js new file mode 100644 index 000000000..825799b81 --- /dev/null +++ b/test/e2e/iga-sod-policy-rule-import.e2e.test.js @@ -0,0 +1,107 @@ +/** + * Follow this process to write e2e tests for the CLI project: + * + * 1. Test if all the necessary mocks for your tests already exist. + * In mock mode, run the command you want to test with the same arguments + * and parameters exactly as you want to test it, for example: + * + * $ FRODO_MOCK=1 frodo conn save https://openam-frodo-dev.forgeblocks.com/am volker.scheuber@forgerock.com Sup3rS3cr3t! + * + * If your command completes without errors and with the expected results, + * all the required mocks already exist and you are good to write your + * test and skip to step #4. + * + * If, however, your command fails and you see errors like the one below, + * you know you need to record the mock responses first: + * + * [Polly] [adapter:node-http] Recording for the following request is not found and `recordIfMissing` is `false`. + * + * 2. Record mock responses for your exact command. + * In mock record mode, run the command you want to test with the same arguments + * and parameters exactly as you want to test it, for example: + * + * $ FRODO_MOCK=record frodo conn save https://openam-frodo-dev.forgeblocks.com/am volker.scheuber@forgerock.com Sup3rS3cr3t! + * + * Wait until you see all the Polly instances (mock recording adapters) have + * shutdown before you try to run step #1 again. + * Messages like these indicate mock recording adapters shutting down: + * + * Polly instance 'conn/4' stopping in 3s... + * Polly instance 'conn/4' stopping in 2s... + * Polly instance 'conn/save/3' stopping in 3s... + * Polly instance 'conn/4' stopping in 1s... + * Polly instance 'conn/save/3' stopping in 2s... + * Polly instance 'conn/4' stopped. + * Polly instance 'conn/save/3' stopping in 1s... + * Polly instance 'conn/save/3' stopped. + * + * 3. Validate your freshly recorded mock responses are complete and working. + * Re-run the exact command you want to test in mock mode (see step #1). + * + * 4. Write your test. + * Make sure to use the exact command including number of arguments and params. + * + * 5. Commit both your test and your new recordings to the repository. + * Your tests are likely going to reside outside the frodo-lib project but + * the recordings must be committed to the frodo-lib project. + */ + +/* +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy-rule import -n describe-test -f test/e2e/exports/all/allPolicyRules.rules.json +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy-rule import --rule-name describe-test --file test/e2e/exports/all/allPolicyRules.rules.json +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy-rule import -f test/e2e/exports/all/allPolicyRules.rules.json +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy-rule import -af test/e2e/exports/all/allPolicyRules.rules.json +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy-rule import -AD test/e2e/exports/all-separate/cloud/global/sod-policy-rules +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy-rule import --all-separate --directory test/e2e/exports/all-separate/cloud/global/sod-policy-rules + */ +import cp from 'child_process'; +import { promisify } from 'util'; +import { getEnv, removeAnsiEscapeCodes } from './utils/TestUtils'; +import { iga_connection as ic } from './utils/TestConfig'; + +const exec = promisify(cp.exec); + +process.env['FRODO_MOCK'] = '1'; +const igaEnv = getEnv(ic); + +const allDirectory = "test/e2e/exports/all"; +const allPolicyRuleFileName = "allPolicyRules.rules.json"; +const allPolicyRuleExports = `${allDirectory}/${allPolicyRuleFileName}`; +const allSeparatePolicyRuleDirectory = `test/e2e/exports/all-separate/cloud/global/sod-policy-rules`; + +describe(`frodo iga policy-rule import`, () => { + test(`"frodo iga policy-rule import -n describe-test -f ${allPolicyRuleExports}": should import describe-test from the file "${allPolicyRuleExports}" with dependencies`, async () => { + const CMD = `frodo iga policy-rule import -n describe-test -f ${allPolicyRuleExports}`; + const { stdout, stderr } = await exec(CMD, igaEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + expect(removeAnsiEscapeCodes(stderr)).toMatchSnapshot(); + }); + + test(`"frodo iga policy-rule import --rule-name describe-test --file ${allPolicyRuleExports} ": should import describe-test from the file "${allPolicyRuleExports}"`, async () => { + const CMD = `frodo iga policy-rule import --rule-name describe-test --file ${allPolicyRuleExports} `; + const { stdout, stderr } = await exec(CMD, igaEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + expect(removeAnsiEscapeCodes(stderr)).toMatchSnapshot(); + }); + + test(`"frodo iga policy-rule import -f ${allPolicyRuleExports} ": should import first policy rule from the file "${allPolicyRuleExports}"`, async () => { + const CMD = `frodo iga policy-rule import -f ${allPolicyRuleExports} `; + const { stdout, stderr } = await exec(CMD, igaEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + expect(removeAnsiEscapeCodes(stderr)).toMatchSnapshot(); + }); + + test(`"frodo iga policy-rule import -af ${allPolicyRuleExports}": should import all policy rules from the file "${allPolicyRuleExports}" with dependencies`, async () => { + const CMD = `frodo iga policy-rule import -af ${allPolicyRuleExports}`; + const { stdout, stderr } = await exec(CMD, igaEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + expect(removeAnsiEscapeCodes(stderr)).toMatchSnapshot(); + }); + + test(`"frodo iga policy-rule import -AD ${allSeparatePolicyRuleDirectory}": should import all policy rules from the directory "${allSeparatePolicyRuleDirectory}" with dependencies`, async () => { + const CMD = `frodo iga policy-rule import -AD ${allSeparatePolicyRuleDirectory}`; + const { stdout, stderr } = await exec(CMD, igaEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + expect(removeAnsiEscapeCodes(stderr)).toMatchSnapshot(); + }); +}); \ No newline at end of file diff --git a/test/e2e/iga-sod-policy-rule-list.e2e.test.js b/test/e2e/iga-sod-policy-rule-list.e2e.test.js new file mode 100644 index 000000000..4dbc2ae55 --- /dev/null +++ b/test/e2e/iga-sod-policy-rule-list.e2e.test.js @@ -0,0 +1,82 @@ +/** + * Follow this process to write e2e tests for the CLI project: + * + * 1. Test if all the necessary mocks for your tests already exist. + * In mock mode, run the command you want to test with the same arguments + * and parameters exactly as you want to test it, for example: + * + * $ FRODO_MOCK=1 frodo conn save https://openam-frodo-dev.forgeblocks.com/am volker.scheuber@forgerock.com Sup3rS3cr3t! + * + * If your command completes without errors and with the expected results, + * all the required mocks already exist and you are good to write your + * test and skip to step #4. + * + * If, however, your command fails and you see errors like the one below, + * you know you need to record the mock responses first: + * + * [Polly] [adapter:node-http] Recording for the following request is not found and `recordIfMissing` is `false`. + * + * 2. Record mock responses for your exact command. + * In mock record mode, run the command you want to test with the same arguments + * and parameters exactly as you want to test it, for example: + * + * $ FRODO_MOCK=record frodo conn save https://openam-frodo-dev.forgeblocks.com/am volker.scheuber@forgerock.com Sup3rS3cr3t! + * + * Wait until you see all the Polly instances (mock recording adapters) have + * shutdown before you try to run step #1 again. + * Messages like these indicate mock recording adapters shutting down: + * + * Polly instance 'conn/4' stopping in 3s... + * Polly instance 'conn/4' stopping in 2s... + * Polly instance 'conn/save/3' stopping in 3s... + * Polly instance 'conn/4' stopping in 1s... + * Polly instance 'conn/save/3' stopping in 2s... + * Polly instance 'conn/4' stopped. + * Polly instance 'conn/save/3' stopping in 1s... + * Polly instance 'conn/save/3' stopped. + * + * 3. Validate your freshly recorded mock responses are complete and working. + * Re-run the exact command you want to test in mock mode (see step #1). + * + * 4. Write your test. + * Make sure to use the exact command including number of arguments and params. + * + * 5. Commit both your test and your new recordings to the repository. + * Your tests are likely going to reside outside the frodo-lib project but + * the recordings must be committed to the frodo-lib project. + */ + +/* +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy-rule list +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy-rule list -l +FRODO_MOCK=record FRODO_NO_CACHE=1 FRODO_HOST=https://openam-frodo-dev.forgeblocks.com/am frodo iga policy-rule list --long + */ +import cp from 'child_process'; +import { promisify } from 'util'; +import { getEnv, removeAnsiEscapeCodes } from './utils/TestUtils'; +import { iga_connection as ic } from './utils/TestConfig'; + +const exec = promisify(cp.exec); + +process.env['FRODO_MOCK'] = '1'; +const igaEnv = getEnv(ic); + +describe('frodo iga policy-rule list', () => { + test('"frodo iga policy-rule list": should list the ids of the policy rules', async () => { + const CMD = `frodo iga policy-rule list`; + const { stdout } = await exec(CMD, igaEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + }); + + test('"frodo iga policy-rule list -l": should list the ids, names, mutability, and statuses of the policy rules.', async () => { + const CMD = `frodo iga policy-rule list -l`; + const { stdout } = await exec(CMD, igaEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + }); + + test('"frodo iga policy-rule list --long": should list the ids, names, mutability, and statuses of the policy rules.', async () => { + const CMD = `frodo iga policy-rule list --long`; + const { stdout } = await exec(CMD, igaEnv); + expect(removeAnsiEscapeCodes(stdout)).toMatchSnapshot(); + }); +}); \ No newline at end of file diff --git a/test/e2e/mocks/iga_2664973160/policy-delete_2932273073/0_n_2861796890/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-delete_2932273073/0_n_2861796890/am_1076162899/recording.har new file mode 100644 index 000000000..ea1534d20 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-delete_2932273073/0_n_2861796890/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-delete/0_n/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ac41a3d1-49eb-4528-92ba-58eeb42f006b" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:10:10 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ac41a3d1-49eb-4528-92ba-58eeb42f006b" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 779, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:10:10.556Z", + "time": 145, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 145 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ac41a3d1-49eb-4528-92ba-58eeb42f006b" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:10:11 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ac41a3d1-49eb-4528-92ba-58eeb42f006b" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:10:11.437Z", + "time": 220, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 220 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-delete_2932273073/0_n_2861796890/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-delete_2932273073/0_n_2861796890/environment_1072573434/recording.har new file mode 100644 index 000000000..0789187dd --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-delete_2932273073/0_n_2861796890/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-delete/0_n/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:10:11 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "8e3d6d25-0837-4136-bd08-9862272a9edf" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:10:11.684Z", + "time": 152, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 152 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-delete_2932273073/0_n_2861796890/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-delete_2932273073/0_n_2861796890/iga_2664973160/recording.har new file mode 100644 index 000000000..cf54e81bb --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-delete_2932273073/0_n_2861796890/iga_2664973160/recording.har @@ -0,0 +1,257 @@ +{ + "log": { + "_recordingName": "iga/policy-delete/0_n/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "3c5b1dbbcfe863fba38fda960d8f1c67", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1897, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "name eq \"delete-test\"" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy?_queryFilter=name%20eq%20%22delete-test%22&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 510, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 510, + "text": "{\"result\":[{\"name\":\"delete-test\",\"description\":\"\",\"policyOwner\":{\"givenName\":\"csv\",\"id\":\"managed/user/9de92b26-e91e-44b7-ac81-7ae1c6adf9ad\",\"mail\":\"1csv@example.com\",\"sn\":\"one\",\"userName\":\"1csv\"},\"policyRuleIds\":[\"0434dcaa-7950-4f7a-b869-7a3d33c82396\"],\"active\":true,\"id\":\"23bc2aff-cc65-45cf-95db-2c4c16b0bff9\",\"metadata\":{\"modifiedDate\":\"2026-06-04T17:08:47.766133509Z\",\"createdDate\":\"2026-06-04T17:08:47.766125507Z\"}}],\"searchAfterKey\":[\"23bc2aff-cc65-45cf-95db-2c4c16b0bff9\"],\"totalCount\":1,\"resultCount\":1}" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "510" + }, + { + "name": "etag", + "value": "W/\"1fe-UYNI/S8zo5HT4tkZoOWaDVPMT34\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:10:12 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "368c0f6c-4c64-43bd-a3f1-b238e260954d" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 429, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:10:11.999Z", + "time": 280, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 280 + } + }, + { + "_id": "fddb9871d9c951fe6490a352b631325c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1856, + "httpVersion": "HTTP/1.1", + "method": "DELETE", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy/23bc2aff-cc65-45cf-95db-2c4c16b0bff9" + }, + "response": { + "bodySize": 408, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 408, + "text": "{\"name\":\"delete-test\",\"description\":\"\",\"policyOwner\":{\"givenName\":\"csv\",\"id\":\"managed/user/9de92b26-e91e-44b7-ac81-7ae1c6adf9ad\",\"mail\":\"1csv@example.com\",\"sn\":\"one\",\"userName\":\"1csv\"},\"policyRuleIds\":[\"0434dcaa-7950-4f7a-b869-7a3d33c82396\"],\"active\":true,\"id\":\"23bc2aff-cc65-45cf-95db-2c4c16b0bff9\",\"metadata\":{\"modifiedDate\":\"2026-06-04T17:08:47.766133509Z\",\"createdDate\":\"2026-06-04T17:08:47.766125507Z\"}}" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "408" + }, + { + "name": "etag", + "value": "W/\"198-SQOkMlnDIm2PDTyNP9YLmWqXCB4\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:10:13 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "3d8bb6c3-509a-422b-bc79-76876f465e3e" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 429, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:10:12.286Z", + "time": 1457, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 1457 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-delete_2932273073/0_n_2861796890/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-delete_2932273073/0_n_2861796890/oauth2_393036114/recording.har new file mode 100644 index 000000000..da167ee92 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-delete_2932273073/0_n_2861796890/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-delete/0_n/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ac41a3d1-49eb-4528-92ba-58eeb42f006b" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:10:11 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ac41a3d1-49eb-4528-92ba-58eeb42f006b" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 556, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:10:10.722Z", + "time": 682, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 682 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-delete_2932273073/0_n_2861796890/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-delete_2932273073/0_n_2861796890/openidm_3290118515/recording.har new file mode 100644 index 000000000..0df391905 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-delete_2932273073/0_n_2861796890/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-delete/0_n/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ac41a3d1-49eb-4528-92ba-58eeb42f006b" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:10:11 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ac41a3d1-49eb-4528-92ba-58eeb42f006b" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 683, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:10:11.474Z", + "time": 532, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 532 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ac41a3d1-49eb-4528-92ba-58eeb42f006b" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:10:11 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ac41a3d1-49eb-4528-92ba-58eeb42f006b" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:10:11.872Z", + "time": 119, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 119 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_file_174088422/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_file_174088422/am_1076162899/recording.har new file mode 100644 index 000000000..a8a966cdd --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_file_174088422/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-describe/0_file/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-fd82dc8d-527f-4048-b624-1518fdad9abf" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:21:00 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-fd82dc8d-527f-4048-b624-1518fdad9abf" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 779, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:21:00.269Z", + "time": 147, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 147 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-fd82dc8d-527f-4048-b624-1518fdad9abf" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:21:00 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-fd82dc8d-527f-4048-b624-1518fdad9abf" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:21:00.758Z", + "time": 113, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 113 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_file_174088422/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_file_174088422/environment_1072573434/recording.har new file mode 100644 index 000000000..a48bf6d5e --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_file_174088422/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-describe/0_file/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:21:00 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "68daaa8c-827e-4cd7-8dd5-50110655139a" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:21:00.879Z", + "time": 103, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 103 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_file_174088422/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_file_174088422/oauth2_393036114/recording.har new file mode 100644 index 000000000..e2415c69a --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_file_174088422/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-describe/0_file/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-fd82dc8d-527f-4048-b624-1518fdad9abf" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:21:00 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-fd82dc8d-527f-4048-b624-1518fdad9abf" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 556, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:21:00.453Z", + "time": 273, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 273 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_file_174088422/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_file_174088422/openidm_3290118515/recording.har new file mode 100644 index 000000000..5a9b4beb6 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_file_174088422/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-describe/0_file/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-fd82dc8d-527f-4048-b624-1518fdad9abf" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:21:00 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-fd82dc8d-527f-4048-b624-1518fdad9abf" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 683, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:21:00.792Z", + "time": 203, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 203 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-fd82dc8d-527f-4048-b624-1518fdad9abf" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:21:01 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-fd82dc8d-527f-4048-b624-1518fdad9abf" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:21:00.988Z", + "time": 105, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 105 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_n_f_4242328059/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_n_f_4242328059/am_1076162899/recording.har new file mode 100644 index 000000000..0d5bd9500 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_n_f_4242328059/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-describe/0_n_f/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-cc67dfa0-7c04-41b4-8ba4-3ad085e56eb9" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:18:06 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-cc67dfa0-7c04-41b4-8ba4-3ad085e56eb9" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 804, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:18:06.635Z", + "time": 148, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 148 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-cc67dfa0-7c04-41b4-8ba4-3ad085e56eb9" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:18:07 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-cc67dfa0-7c04-41b4-8ba4-3ad085e56eb9" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 805, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:18:07.035Z", + "time": 113, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 113 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_n_f_4242328059/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_n_f_4242328059/environment_1072573434/recording.har new file mode 100644 index 000000000..8576a8b93 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_n_f_4242328059/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-describe/0_n_f/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:18:07 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "a5293b3d-4d3e-4f4b-bebb-ac3fa26850b9" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 413, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:18:07.155Z", + "time": 107, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 107 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_n_f_4242328059/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_n_f_4242328059/oauth2_393036114/recording.har new file mode 100644 index 000000000..5902f9464 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_n_f_4242328059/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-describe/0_n_f/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-cc67dfa0-7c04-41b4-8ba4-3ad085e56eb9" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:18:06 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-cc67dfa0-7c04-41b4-8ba4-3ad085e56eb9" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 581, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:18:06.823Z", + "time": 182, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 182 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_n_f_4242328059/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_n_f_4242328059/openidm_3290118515/recording.har new file mode 100644 index 000000000..e966fd299 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_n_f_4242328059/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-describe/0_n_f/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-cc67dfa0-7c04-41b4-8ba4-3ad085e56eb9" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:18:07 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-cc67dfa0-7c04-41b4-8ba4-3ad085e56eb9" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:18:07.073Z", + "time": 199, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 199 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-cc67dfa0-7c04-41b4-8ba4-3ad085e56eb9" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:18:07 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-cc67dfa0-7c04-41b4-8ba4-3ad085e56eb9" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 683, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:18:07.270Z", + "time": 100, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 100 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_policy-name_3782453078/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_policy-name_3782453078/am_1076162899/recording.har new file mode 100644 index 000000000..2954807a6 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_policy-name_3782453078/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-describe/0_policy-name/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9d17f9ef-a950-46cf-a29b-109d1f2e7544" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:19:03 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9d17f9ef-a950-46cf-a29b-109d1f2e7544" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 779, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:19:03.598Z", + "time": 144, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 144 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9d17f9ef-a950-46cf-a29b-109d1f2e7544" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:19:04 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9d17f9ef-a950-46cf-a29b-109d1f2e7544" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:19:03.937Z", + "time": 241, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 241 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_policy-name_3782453078/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_policy-name_3782453078/environment_1072573434/recording.har new file mode 100644 index 000000000..746e06f63 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_policy-name_3782453078/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-describe/0_policy-name/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:19:04 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "49bc736d-ffbe-4724-949d-3d9026f52d41" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:19:04.185Z", + "time": 104, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 104 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_policy-name_3782453078/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_policy-name_3782453078/iga_2664973160/recording.har new file mode 100644 index 000000000..40e27a38e --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_policy-name_3782453078/iga_2664973160/recording.har @@ -0,0 +1,387 @@ +{ + "log": { + "_recordingName": "iga/policy-describe/0_policy-name/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "f9860e3f472eacb35ad7b49be982a09b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1872, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 788, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 788, + "text": "[\"G6sFAGRLVadVh5mQH1/alN6mdPAB2lShciIl10zeAqc9n+BAZ6OnNOzCfo8KOG2CAffTBEaRBACZnqSDoRJbqe/U9kXmHp7J6gX1xz1MvFeosOi8QAdybH7v3zIepgR4Ivns7cfrSY9Q7+FyPOv0QXVLm8/QwShQ4ZWhK8rFadbjRREttrcRtZCi931CbpkwsVKLLENhgQ72PO6gArX5/Ggjy8J1O+yhg3mCCodJoYPTrMcqFWrzGf636md+Oe30tcxQf4DxzktjxlSCQT8kxj7HgomdONeydSVCBzKUID4nZBsIfciC2ZaC5AfbkyMbfYNfHXBbxrNCXY4n7WAUqOCKBheyRclB0A9esBBnDF50CCb1pTjoYG5XKqedQp1Ou10He11YeGGo97A/yDiMKs94UahgjY1oIhr6RqlaU0NaJ4rfoYN2VF5UnvGiUMEaG9EEtOUbpWpC9WadUs42JOu/w///3T1MDGXxOF2yQxj8jHe7ceIogolZ2AVMJRH6gQh7bQP2nCj2kVn64sYWnZdHex53VDLr+daDOo0xLZTeGRkoN+cjxtz36HNTzNkbVBaKOQ+WowFUwgqVfA1xHWyMxRUTsDGpVFAmIr6auQZLm3I1zqtxXvEq57cBLUoNfeRsBJlY0YcwYHZGUBr1rUXqUxvMSr4WqAMjvophKYcxsfoQhuyMlOAMeeD2G8VKtvqyLiEYobc1NZjq3Dp6Q96l+B3+///VweWaT/B4WPT4Vm+h/uhh7lcHv5ugPz2cpgWq65ZnKKP/AQ==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"5ac-iUFp8hpOPGaREDLvHE9capaAixw\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:19:04 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "78459cc3-4109-4e4e-aaf7-13d02d22bd9c" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:19:04.429Z", + "time": 273, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 273 + } + }, + { + "_id": "2c957ecaf7bef40d8e58f30c3d9740f2", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1858, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy/rule/0434dcaa-7950-4f7a-b869-7a3d33c82396" + }, + "response": { + "bodySize": 1008, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 1008, + "text": "[\"G70HAMT/9tP+6zdzXmmY0mVLae4rncDVZVYhA9dscRyZ2/pz/V6LCSLWxJN7aNRHpEJiJBGthA6NURPDpsYcTI3OtMBRgJ98qis3cKoiSGQUuXPtS6tfIGBume9YsvVuHlg+uvPRUElMnYo+QcB4XVfkWLH17j6UkCi8L0rqal9BgHGR27qkqydHAbJBYVfkLhV/ch0osncQsAYShxN9sunVkUKvn4+GE52myTSdTpJxPp4kiwGNkzw1i0GuxkbnUwhUypaQYIq8zRRZOS9ibwYCdaSgdJ6To52MIt9HCmgFVtaXVvwtoIcqzXZFkBxqEohauexlSRGywTLQyhFRi+oNMXHpW4HvwmBVQS8bRBPGiR9IFiPUBPp9Clksxlap5wM2y34dFPviaV+gsmwLxdYVe95x8CUkLugy6jxrBXobD9JsvdsxK6sJEnsPfscRVRHqYXgHNYj6gSoVIX+hCMrxLVV+pUr8aTfPcmhLjjD8Zvc9fIDEzuU+BJHrDOSvBQ0Obu53zu/eIQ1YhYLYEVZrIKgd/6rKmiDh8Nfa9k8rEOqS9in/NwPE3gH4Ar8sCfIXyLHl8rQP3XIUlGP8EUDe7r2ry2zn5PIVrSK321YUno1rULCy+ij4ejlAnR6MNVe3AH77Awzn/CMQbHy80z4Q5ETgyYfHPFyZpnx4XXhj85d8YYU5XCyWlUvxt89tTvpFlwTZiMFbMegg0cmR/09FYCtAz0sb7UxDkVFME5x5jPH/nOcH6woImPSgZ0LwRJM16Eiizq0Wat97IP2YYDFY4VLEZIYwtVlxgkqdqSIhora3mI2R/X7wNkaewZZHzaEcSQvFvZVezWCG0A5rrVGSjkKcVrYYaFZr8OdCdY/+eDQ2Wqlklk76yTifqWQxn6bJTI3MaKTnw1Fa9vsRK6NYQTa4XtP79fQkDPvDadKfJv1BNpjJ/kiOxt00HfyEQMuPmMU7TpLBMBnMs0EqJwM5TLvpZD6bTabz0U+0LQ==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"7be-HWIKk3jSHo8fNPXJkVRCjN5ChYs\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:19:04 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "1907a258-f1dc-4256-a78e-5239c13ba8c0" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:19:04.729Z", + "time": 156, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 156 + } + }, + { + "_id": "e8bf87f14f4a5b76fdd0c2faa489d26e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1858, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy/rule/df95d487-a251-458d-8299-14f2b131264c" + }, + "response": { + "bodySize": 888, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 888, + "text": "[\"Gy8GAMT/1vR/tc2cX1aYp9j5pdcbvBomCBnEvOI4/b07/yxbaS1cq2VROMbALNAw/2CtAVbCTxvTqMvm2se5tZovBTA87JVYSy5wNDIUIk9xE2bLEOgWzL/gMRrvoBD3ZtqYaUMbuuW8nkd2kaLx7kuwUIDAguVzXX6cLb87dxygFgzmxO6tIoDHZK1xEDAdFPYieoLubJ44nJVp1XSUl0nd1llS9FmW7Fj3yY7qrNpVRN2uhcBIxvb4K+6PZOxW+xECk4PCxKdLCMwTB52pq8DJeFv+Sd/2JR3NiaFimFlg0uQ+Xx55glpwDHwycgHReMeRubxV4A0Xxtc9tQAjDCe7zVhGzFDgr06AxcRIF09K7PEciH2hNhUYTTQDReOGR97F4Ee6OEJxmI7GuwfdyWhuYYSTEvZaMOk9jzRB/cIQyMWPPPoTWfxZzRF7amwcDXaB+hAfoPDg9WuISiDXQf36swqE2fJj7v8MwHV4B/VrQbw8MtQvsIsm2p0zTHkWyEX8ERKH331MxdomPPnw5cHrT0fWgkhh4IjXQvnN2/icJJJlQfrsfCU7MxTI6GfBz8cM6/pnFR0cffD28e3+8AlJ0D8CwUyHT9oHhkpdY4bXpmd9qS1DLTj34dDDRlxASk4FS3T+n/Nxb9yAVYAvjgYt0lKTzhNUT3ZiEhaG6oIoHFZvtLLkoz3rA/xK+6b42Xykt7TE4FufaQBUgSk6uZOlm9YiL+VObpGZp6CN5qhYKMteW814JGEp/5mTztH1bdkVTZ2QLLOkKJsuaWTbJlnRy12WZ7IqNARGjtRRJKgFTwjxsa8fBZnKKkmrJM0+Z7WSUpX1ts6LnxAIMlGKeJsyke1nmaoyVancVrKt6zpt5U+sKw==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"630-SOWe5EMDjE9ndLTVbU4IV8NaJTI\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:19:05 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "b69d5158-e033-4ce9-be0e-712f75402507" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:19:04.891Z", + "time": 159, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 159 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_policy-name_3782453078/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_policy-name_3782453078/oauth2_393036114/recording.har new file mode 100644 index 000000000..f45ce7d17 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_policy-name_3782453078/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-describe/0_policy-name/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9d17f9ef-a950-46cf-a29b-109d1f2e7544" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:19:03 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9d17f9ef-a950-46cf-a29b-109d1f2e7544" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 556, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:19:03.760Z", + "time": 161, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 161 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_policy-name_3782453078/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_policy-name_3782453078/openidm_3290118515/recording.har new file mode 100644 index 000000000..53882569a --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-describe_4149149727/0_policy-name_3782453078/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-describe/0_policy-name/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9d17f9ef-a950-46cf-a29b-109d1f2e7544" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:19: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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9d17f9ef-a950-46cf-a29b-109d1f2e7544" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:19:03.973Z", + "time": 188, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 188 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9d17f9ef-a950-46cf-a29b-109d1f2e7544" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:19: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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9d17f9ef-a950-46cf-a29b-109d1f2e7544" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:19:04.299Z", + "time": 106, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 106 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_NAD_1312604927/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_NAD_1312604927/am_1076162899/recording.har new file mode 100644 index 000000000..b5d585d1f --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_NAD_1312604927/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-export/0_NAD/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e90be3d6-e774-486f-88de-26d4ee34dc37" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:52 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e90be3d6-e774-486f-88de-26d4ee34dc37" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 779, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:52.435Z", + "time": 143, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 143 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e90be3d6-e774-486f-88de-26d4ee34dc37" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:52 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e90be3d6-e774-486f-88de-26d4ee34dc37" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:52.788Z", + "time": 113, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 113 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_NAD_1312604927/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_NAD_1312604927/environment_1072573434/recording.har new file mode 100644 index 000000000..6b9add883 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_NAD_1312604927/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-export/0_NAD/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:52 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "f5725c52-3971-4a0e-b07f-b35610266533" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:52.919Z", + "time": 114, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 114 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_NAD_1312604927/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_NAD_1312604927/iga_2664973160/recording.har new file mode 100644 index 000000000..597277500 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_NAD_1312604927/iga_2664973160/recording.har @@ -0,0 +1,387 @@ +{ + "log": { + "_recordingName": "iga/policy-export/0_NAD/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "f9860e3f472eacb35ad7b49be982a09b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1872, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 788, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 788, + "text": "[\"G6sFAGRLVadVh5mQH1/alN6mdPAB2lShciIl10zeAqc9n+BAZ6OnNOzCfo8KOG2CAffTBEaRBACZnqSDoRJbqe/U9kXmHp7J6gX1xz1MvFeosOi8QAdybH7v3zIepgR4Ivns7cfrSY9Q7+FyPOv0QXVLm8/QwShQ4ZWhK8rFadbjRREttrcRtZCi931CbpkwsVKLLENhgQ72PO6gArX5/Ggjy8J1O+yhg3mCCodJoYPTrMcqFWrzGf636md+Oe30tcxQf4DxzktjxlSCQT8kxj7HgomdONeydSVCBzKUID4nZBsIfciC2ZaC5AfbkyMbfYNfHXBbxrNCXY4n7WAUqOCKBheyRclB0A9esBBnDF50CCb1pTjoYG5XKqedQp1Ou10He11YeGGo97A/yDiMKs94UahgjY1oIhr6RqlaU0NaJ4rfoYN2VF5UnvGiUMEaG9EEtOUbpWpC9WadUs42JOu/w///3T1MDGXxOF2yQxj8jHe7ceIogolZ2AVMJRH6gQh7bQP2nCj2kVn64sYWnZdHex53VDLr+daDOo0xLZTeGRkoN+cjxtz36HNTzNkbVBaKOQ+WowFUwgqVfA1xHWyMxRUTsDGpVFAmIr6auQZLm3I1zqtxXvEq57cBLUoNfeRsBJlY0YcwYHZGUBr1rUXqUxvMSr4WqAMjvophKYcxsfoQhuyMlOAMeeD2G8VKtvqyLiEYobc1NZjq3Dp6Q96l+B3+///VweWaT/B4WPT4Vm+h/uhh7lcHv5ugPz2cpgWq65ZnKKP/AQ==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"5ac-iUFp8hpOPGaREDLvHE9capaAixw\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:53 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "2962aad0-d2b4-4b5b-afba-e5ea39c02172" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:53.154Z", + "time": 256, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 256 + } + }, + { + "_id": "2c957ecaf7bef40d8e58f30c3d9740f2", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1858, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy/rule/0434dcaa-7950-4f7a-b869-7a3d33c82396" + }, + "response": { + "bodySize": 1008, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 1008, + "text": "[\"G70HAMT/9tP+6zdzXmmY0mVLae4rncDVZVYhA9dscRyZ2/pz/V6LCSLWxJN7aNRHpEJiJBGthA6NURPDpsYcTI3OtMBRgJ98qis3cKoiSGQUuXPtS6tfIGBume9YsvVuHlg+uvPRUElMnYo+QcB4XVfkWLH17j6UkCi8L0rqal9BgHGR27qkqydHAbJBYVfkLhV/ch0osncQsAYShxN9sunVkUKvn4+GE52myTSdTpJxPp4kiwGNkzw1i0GuxkbnUwhUypaQYIq8zRRZOS9ibwYCdaSgdJ6To52MIt9HCmgFVtaXVvwtoIcqzXZFkBxqEohauexlSRGywTLQyhFRi+oNMXHpW4HvwmBVQS8bRBPGiR9IFiPUBPp9Clksxlap5wM2y34dFPviaV+gsmwLxdYVe95x8CUkLugy6jxrBXobD9JsvdsxK6sJEnsPfscRVRHqYXgHNYj6gSoVIX+hCMrxLVV+pUr8aTfPcmhLjjD8Zvc9fIDEzuU+BJHrDOSvBQ0Obu53zu/eIQ1YhYLYEVZrIKgd/6rKmiDh8Nfa9k8rEOqS9in/NwPE3gH4Ar8sCfIXyLHl8rQP3XIUlGP8EUDe7r2ry2zn5PIVrSK321YUno1rULCy+ij4ejlAnR6MNVe3AH77Awzn/CMQbHy80z4Q5ETgyYfHPFyZpnx4XXhj85d8YYU5XCyWlUvxt89tTvpFlwTZiMFbMegg0cmR/09FYCtAz0sb7UxDkVFME5x5jPH/nOcH6woImPSgZ0LwRJM16Eiizq0Wat97IP2YYDFY4VLEZIYwtVlxgkqdqSIhora3mI2R/X7wNkaewZZHzaEcSQvFvZVezWCG0A5rrVGSjkKcVrYYaFZr8OdCdY/+eDQ2Wqlklk76yTifqWQxn6bJTI3MaKTnw1Fa9vsRK6NYQTa4XtP79fQkDPvDadKfJv1BNpjJ/kiOxt00HfyEQMuPmMU7TpLBMBnMs0EqJwM5TLvpZD6bTabz0U+0LQ==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"7be-HWIKk3jSHo8fNPXJkVRCjN5ChYs\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:53 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "1d77b2c8-40e1-4ae0-8529-dd2e3534dbc3" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:53.437Z", + "time": 162, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 162 + } + }, + { + "_id": "e8bf87f14f4a5b76fdd0c2faa489d26e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1858, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy/rule/df95d487-a251-458d-8299-14f2b131264c" + }, + "response": { + "bodySize": 888, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 888, + "text": "[\"Gy8GAMT/1vR/tc2cX1aYp9j5pdcbvBomCBnEvOI4/b07/yxbaS1cq2VROMbALNAw/2CtAVbCTxvTqMvm2se5tZovBTA87JVYSy5wNDIUIk9xE2bLEOgWzL/gMRrvoBD3ZtqYaUMbuuW8nkd2kaLx7kuwUIDAguVzXX6cLb87dxygFgzmxO6tIoDHZK1xEDAdFPYieoLubJ44nJVp1XSUl0nd1llS9FmW7Fj3yY7qrNpVRN2uhcBIxvb4K+6PZOxW+xECk4PCxKdLCMwTB52pq8DJeFv+Sd/2JR3NiaFimFlg0uQ+Xx55glpwDHwycgHReMeRubxV4A0Xxtc9tQAjDCe7zVhGzFDgr06AxcRIF09K7PEciH2hNhUYTTQDReOGR97F4Ee6OEJxmI7GuwfdyWhuYYSTEvZaMOk9jzRB/cIQyMWPPPoTWfxZzRF7amwcDXaB+hAfoPDg9WuISiDXQf36swqE2fJj7v8MwHV4B/VrQbw8MtQvsIsm2p0zTHkWyEX8ERKH331MxdomPPnw5cHrT0fWgkhh4IjXQvnN2/icJJJlQfrsfCU7MxTI6GfBz8cM6/pnFR0cffD28e3+8AlJ0D8CwUyHT9oHhkpdY4bXpmd9qS1DLTj34dDDRlxASk4FS3T+n/Nxb9yAVYAvjgYt0lKTzhNUT3ZiEhaG6oIoHFZvtLLkoz3rA/xK+6b42Xykt7TE4FufaQBUgSk6uZOlm9YiL+VObpGZp6CN5qhYKMteW814JGEp/5mTztH1bdkVTZ2QLLOkKJsuaWTbJlnRy12WZ7IqNARGjtRRJKgFTwjxsa8fBZnKKkmrJM0+Z7WSUpX1ts6LnxAIMlGKeJsyke1nmaoyVancVrKt6zpt5U+sKw==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"630-SOWe5EMDjE9ndLTVbU4IV8NaJTI\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:53 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "c3ce7d89-3d3f-4b89-b3f3-c540bb8a2849" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:53.605Z", + "time": 156, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 156 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_NAD_1312604927/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_NAD_1312604927/oauth2_393036114/recording.har new file mode 100644 index 000000000..d125f6f2f --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_NAD_1312604927/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-export/0_NAD/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e90be3d6-e774-486f-88de-26d4ee34dc37" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:52 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e90be3d6-e774-486f-88de-26d4ee34dc37" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 556, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:52.608Z", + "time": 168, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 168 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_NAD_1312604927/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_NAD_1312604927/openidm_3290118515/recording.har new file mode 100644 index 000000000..ed72e4dd1 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_NAD_1312604927/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-export/0_NAD/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e90be3d6-e774-486f-88de-26d4ee34dc37" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:52 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e90be3d6-e774-486f-88de-26d4ee34dc37" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:52.832Z", + "time": 210, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 210 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e90be3d6-e774-486f-88de-26d4ee34dc37" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:53 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-e90be3d6-e774-486f-88de-26d4ee34dc37" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:53.039Z", + "time": 108, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 108 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_all_file_3124693826/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_all_file_3124693826/am_1076162899/recording.har new file mode 100644 index 000000000..410392776 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_all_file_3124693826/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-export/0_all_file/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-f0d3fecb-9c0c-4354-80ae-95d6ba0944e7" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:29 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-f0d3fecb-9c0c-4354-80ae-95d6ba0944e7" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 779, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:29.024Z", + "time": 147, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 147 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-f0d3fecb-9c0c-4354-80ae-95d6ba0944e7" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:29 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-f0d3fecb-9c0c-4354-80ae-95d6ba0944e7" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:29.372Z", + "time": 132, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 132 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_all_file_3124693826/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_all_file_3124693826/environment_1072573434/recording.har new file mode 100644 index 000000000..ec09c2000 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_all_file_3124693826/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-export/0_all_file/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:29 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "cdfa5690-ccb8-45d1-bf68-df990a6b9eea" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:29.512Z", + "time": 115, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 115 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_all_file_3124693826/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_all_file_3124693826/iga_2664973160/recording.har new file mode 100644 index 000000000..9c41f84dc --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_all_file_3124693826/iga_2664973160/recording.har @@ -0,0 +1,387 @@ +{ + "log": { + "_recordingName": "iga/policy-export/0_all_file/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "f9860e3f472eacb35ad7b49be982a09b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1872, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 788, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 788, + "text": "[\"G6sFAGRLVadVh5mQH1/alN6mdPAB2lShciIl10zeAqc9n+BAZ6OnNOzCfo8KOG2CAffTBEaRBACZnqSDoRJbqe/U9kXmHp7J6gX1xz1MvFeosOi8QAdybH7v3zIepgR4Ivns7cfrSY9Q7+FyPOv0QXVLm8/QwShQ4ZWhK8rFadbjRREttrcRtZCi931CbpkwsVKLLENhgQ72PO6gArX5/Ggjy8J1O+yhg3mCCodJoYPTrMcqFWrzGf636md+Oe30tcxQf4DxzktjxlSCQT8kxj7HgomdONeydSVCBzKUID4nZBsIfciC2ZaC5AfbkyMbfYNfHXBbxrNCXY4n7WAUqOCKBheyRclB0A9esBBnDF50CCb1pTjoYG5XKqedQp1Ou10He11YeGGo97A/yDiMKs94UahgjY1oIhr6RqlaU0NaJ4rfoYN2VF5UnvGiUMEaG9EEtOUbpWpC9WadUs42JOu/w///3T1MDGXxOF2yQxj8jHe7ceIogolZ2AVMJRH6gQh7bQP2nCj2kVn64sYWnZdHex53VDLr+daDOo0xLZTeGRkoN+cjxtz36HNTzNkbVBaKOQ+WowFUwgqVfA1xHWyMxRUTsDGpVFAmIr6auQZLm3I1zqtxXvEq57cBLUoNfeRsBJlY0YcwYHZGUBr1rUXqUxvMSr4WqAMjvophKYcxsfoQhuyMlOAMeeD2G8VKtvqyLiEYobc1NZjq3Dp6Q96l+B3+///VweWaT/B4WPT4Vm+h/uhh7lcHv5ugPz2cpgWq65ZnKKP/AQ==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"5ac-iUFp8hpOPGaREDLvHE9capaAixw\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:29 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "d982361f-f87f-40f3-8b1f-fdaff453a00b" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:29.752Z", + "time": 168, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 168 + } + }, + { + "_id": "2c957ecaf7bef40d8e58f30c3d9740f2", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1858, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy/rule/0434dcaa-7950-4f7a-b869-7a3d33c82396" + }, + "response": { + "bodySize": 1008, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 1008, + "text": "[\"G70HAMT/9tP+6zdzXmmY0mVLae4rncDVZVYhA9dscRyZ2/pz/V6LCSLWxJN7aNRHpEJiJBGthA6NURPDpsYcTI3OtMBRgJ98qis3cKoiSGQUuXPtS6tfIGBume9YsvVuHlg+uvPRUElMnYo+QcB4XVfkWLH17j6UkCi8L0rqal9BgHGR27qkqydHAbJBYVfkLhV/ch0osncQsAYShxN9sunVkUKvn4+GE52myTSdTpJxPp4kiwGNkzw1i0GuxkbnUwhUypaQYIq8zRRZOS9ibwYCdaSgdJ6To52MIt9HCmgFVtaXVvwtoIcqzXZFkBxqEohauexlSRGywTLQyhFRi+oNMXHpW4HvwmBVQS8bRBPGiR9IFiPUBPp9Clksxlap5wM2y34dFPviaV+gsmwLxdYVe95x8CUkLugy6jxrBXobD9JsvdsxK6sJEnsPfscRVRHqYXgHNYj6gSoVIX+hCMrxLVV+pUr8aTfPcmhLjjD8Zvc9fIDEzuU+BJHrDOSvBQ0Obu53zu/eIQ1YhYLYEVZrIKgd/6rKmiDh8Nfa9k8rEOqS9in/NwPE3gH4Ar8sCfIXyLHl8rQP3XIUlGP8EUDe7r2ry2zn5PIVrSK321YUno1rULCy+ij4ejlAnR6MNVe3AH77Awzn/CMQbHy80z4Q5ETgyYfHPFyZpnx4XXhj85d8YYU5XCyWlUvxt89tTvpFlwTZiMFbMegg0cmR/09FYCtAz0sb7UxDkVFME5x5jPH/nOcH6woImPSgZ0LwRJM16Eiizq0Wat97IP2YYDFY4VLEZIYwtVlxgkqdqSIhora3mI2R/X7wNkaewZZHzaEcSQvFvZVezWCG0A5rrVGSjkKcVrYYaFZr8OdCdY/+eDQ2Wqlklk76yTifqWQxn6bJTI3MaKTnw1Fa9vsRK6NYQTa4XtP79fQkDPvDadKfJv1BNpjJ/kiOxt00HfyEQMuPmMU7TpLBMBnMs0EqJwM5TLvpZD6bTabz0U+0LQ==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"7be-HWIKk3jSHo8fNPXJkVRCjN5ChYs\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:30 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "65aacceb-0715-4991-bb61-27957e12e78f" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:29.936Z", + "time": 156, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 156 + } + }, + { + "_id": "e8bf87f14f4a5b76fdd0c2faa489d26e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1858, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy/rule/df95d487-a251-458d-8299-14f2b131264c" + }, + "response": { + "bodySize": 888, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 888, + "text": "[\"Gy8GAMT/1vR/tc2cX1aYp9j5pdcbvBomCBnEvOI4/b07/yxbaS1cq2VROMbALNAw/2CtAVbCTxvTqMvm2se5tZovBTA87JVYSy5wNDIUIk9xE2bLEOgWzL/gMRrvoBD3ZtqYaUMbuuW8nkd2kaLx7kuwUIDAguVzXX6cLb87dxygFgzmxO6tIoDHZK1xEDAdFPYieoLubJ44nJVp1XSUl0nd1llS9FmW7Fj3yY7qrNpVRN2uhcBIxvb4K+6PZOxW+xECk4PCxKdLCMwTB52pq8DJeFv+Sd/2JR3NiaFimFlg0uQ+Xx55glpwDHwycgHReMeRubxV4A0Xxtc9tQAjDCe7zVhGzFDgr06AxcRIF09K7PEciH2hNhUYTTQDReOGR97F4Ee6OEJxmI7GuwfdyWhuYYSTEvZaMOk9jzRB/cIQyMWPPPoTWfxZzRF7amwcDXaB+hAfoPDg9WuISiDXQf36swqE2fJj7v8MwHV4B/VrQbw8MtQvsIsm2p0zTHkWyEX8ERKH331MxdomPPnw5cHrT0fWgkhh4IjXQvnN2/icJJJlQfrsfCU7MxTI6GfBz8cM6/pnFR0cffD28e3+8AlJ0D8CwUyHT9oHhkpdY4bXpmd9qS1DLTj34dDDRlxASk4FS3T+n/Nxb9yAVYAvjgYt0lKTzhNUT3ZiEhaG6oIoHFZvtLLkoz3rA/xK+6b42Xykt7TE4FufaQBUgSk6uZOlm9YiL+VObpGZp6CN5qhYKMteW814JGEp/5mTztH1bdkVTZ2QLLOkKJsuaWTbJlnRy12WZ7IqNARGjtRRJKgFTwjxsa8fBZnKKkmrJM0+Z7WSUpX1ts6LnxAIMlGKeJsyke1nmaoyVancVrKt6zpt5U+sKw==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"630-SOWe5EMDjE9ndLTVbU4IV8NaJTI\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:30 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "8464ff5c-2942-4021-aac1-5ad2ee95dc93" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:30.100Z", + "time": 154, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 154 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_all_file_3124693826/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_all_file_3124693826/oauth2_393036114/recording.har new file mode 100644 index 000000000..a1317c207 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_all_file_3124693826/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-export/0_all_file/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-f0d3fecb-9c0c-4354-80ae-95d6ba0944e7" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:29 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-f0d3fecb-9c0c-4354-80ae-95d6ba0944e7" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 556, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:29.184Z", + "time": 174, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 174 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_all_file_3124693826/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_all_file_3124693826/openidm_3290118515/recording.har new file mode 100644 index 000000000..15e7f5c0c --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_all_file_3124693826/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-export/0_all_file/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-f0d3fecb-9c0c-4354-80ae-95d6ba0944e7" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:29 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-f0d3fecb-9c0c-4354-80ae-95d6ba0944e7" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:29.407Z", + "time": 200, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 200 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-f0d3fecb-9c0c-4354-80ae-95d6ba0944e7" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:29 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-f0d3fecb-9c0c-4354-80ae-95d6ba0944e7" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:29.649Z", + "time": 96, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 96 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_no-metadata_a_directory_3627220595/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_no-metadata_a_directory_3627220595/am_1076162899/recording.har new file mode 100644 index 000000000..ad2fddca0 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_no-metadata_a_directory_3627220595/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-export/0_no-metadata_a_directory/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-03f96439-ff78-44f7-b0b4-7bb9de503d2b" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:04 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-03f96439-ff78-44f7-b0b4-7bb9de503d2b" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 779, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:04.579Z", + "time": 148, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 148 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-03f96439-ff78-44f7-b0b4-7bb9de503d2b" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:05 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-03f96439-ff78-44f7-b0b4-7bb9de503d2b" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:04.943Z", + "time": 125, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 125 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_no-metadata_a_directory_3627220595/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_no-metadata_a_directory_3627220595/environment_1072573434/recording.har new file mode 100644 index 000000000..31cc9d5a9 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_no-metadata_a_directory_3627220595/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-export/0_no-metadata_a_directory/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:05 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "1eaa1edf-8bbd-44d1-8a06-007b3be49770" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:05.074Z", + "time": 111, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 111 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_no-metadata_a_directory_3627220595/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_no-metadata_a_directory_3627220595/iga_2664973160/recording.har new file mode 100644 index 000000000..57f8176f7 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_no-metadata_a_directory_3627220595/iga_2664973160/recording.har @@ -0,0 +1,387 @@ +{ + "log": { + "_recordingName": "iga/policy-export/0_no-metadata_a_directory/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "f9860e3f472eacb35ad7b49be982a09b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1872, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 788, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 788, + "text": "[\"G6sFAGRLVadVh5mQH1/alN6mdPAB2lShciIl10zeAqc9n+BAZ6OnNOzCfo8KOG2CAffTBEaRBACZnqSDoRJbqe/U9kXmHp7J6gX1xz1MvFeosOi8QAdybH7v3zIepgR4Ivns7cfrSY9Q7+FyPOv0QXVLm8/QwShQ4ZWhK8rFadbjRREttrcRtZCi931CbpkwsVKLLENhgQ72PO6gArX5/Ggjy8J1O+yhg3mCCodJoYPTrMcqFWrzGf636md+Oe30tcxQf4DxzktjxlSCQT8kxj7HgomdONeydSVCBzKUID4nZBsIfciC2ZaC5AfbkyMbfYNfHXBbxrNCXY4n7WAUqOCKBheyRclB0A9esBBnDF50CCb1pTjoYG5XKqedQp1Ou10He11YeGGo97A/yDiMKs94UahgjY1oIhr6RqlaU0NaJ4rfoYN2VF5UnvGiUMEaG9EEtOUbpWpC9WadUs42JOu/w///3T1MDGXxOF2yQxj8jHe7ceIogolZ2AVMJRH6gQh7bQP2nCj2kVn64sYWnZdHex53VDLr+daDOo0xLZTeGRkoN+cjxtz36HNTzNkbVBaKOQ+WowFUwgqVfA1xHWyMxRUTsDGpVFAmIr6auQZLm3I1zqtxXvEq57cBLUoNfeRsBJlY0YcwYHZGUBr1rUXqUxvMSr4WqAMjvophKYcxsfoQhuyMlOAMeeD2G8VKtvqyLiEYobc1NZjq3Dp6Q96l+B3+///VweWaT/B4WPT4Vm+h/uhh7lcHv5ugPz2cpgWq65ZnKKP/AQ==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"5ac-iUFp8hpOPGaREDLvHE9capaAixw\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:05 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "e35a2985-4d33-4574-af64-81fed61b441e" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 483, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:05.345Z", + "time": 306, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 306 + } + }, + { + "_id": "2c957ecaf7bef40d8e58f30c3d9740f2", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1858, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy/rule/0434dcaa-7950-4f7a-b869-7a3d33c82396" + }, + "response": { + "bodySize": 1008, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 1008, + "text": "[\"G70HAMT/9tP+6zdzXmmY0mVLae4rncDVZVYhA9dscRyZ2/pz/V6LCSLWxJN7aNRHpEJiJBGthA6NURPDpsYcTI3OtMBRgJ98qis3cKoiSGQUuXPtS6tfIGBume9YsvVuHlg+uvPRUElMnYo+QcB4XVfkWLH17j6UkCi8L0rqal9BgHGR27qkqydHAbJBYVfkLhV/ch0osncQsAYShxN9sunVkUKvn4+GE52myTSdTpJxPp4kiwGNkzw1i0GuxkbnUwhUypaQYIq8zRRZOS9ibwYCdaSgdJ6To52MIt9HCmgFVtaXVvwtoIcqzXZFkBxqEohauexlSRGywTLQyhFRi+oNMXHpW4HvwmBVQS8bRBPGiR9IFiPUBPp9Clksxlap5wM2y34dFPviaV+gsmwLxdYVe95x8CUkLugy6jxrBXobD9JsvdsxK6sJEnsPfscRVRHqYXgHNYj6gSoVIX+hCMrxLVV+pUr8aTfPcmhLjjD8Zvc9fIDEzuU+BJHrDOSvBQ0Obu53zu/eIQ1YhYLYEVZrIKgd/6rKmiDh8Nfa9k8rEOqS9in/NwPE3gH4Ar8sCfIXyLHl8rQP3XIUlGP8EUDe7r2ry2zn5PIVrSK321YUno1rULCy+ij4ejlAnR6MNVe3AH77Awzn/CMQbHy80z4Q5ETgyYfHPFyZpnx4XXhj85d8YYU5XCyWlUvxt89tTvpFlwTZiMFbMegg0cmR/09FYCtAz0sb7UxDkVFME5x5jPH/nOcH6woImPSgZ0LwRJM16Eiizq0Wat97IP2YYDFY4VLEZIYwtVlxgkqdqSIhora3mI2R/X7wNkaewZZHzaEcSQvFvZVezWCG0A5rrVGSjkKcVrYYaFZr8OdCdY/+eDQ2Wqlklk76yTifqWQxn6bJTI3MaKTnw1Fa9vsRK6NYQTa4XtP79fQkDPvDadKfJv1BNpjJ/kiOxt00HfyEQMuPmMU7TpLBMBnMs0EqJwM5TLvpZD6bTabz0U+0LQ==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"7be-HWIKk3jSHo8fNPXJkVRCjN5ChYs\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:05 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "ba6432bb-529a-4823-808d-4fc517d2d3e3" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 483, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:05.668Z", + "time": 172, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 172 + } + }, + { + "_id": "e8bf87f14f4a5b76fdd0c2faa489d26e", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1858, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy/rule/df95d487-a251-458d-8299-14f2b131264c" + }, + "response": { + "bodySize": 888, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 888, + "text": "[\"Gy8GAMT/1vR/tc2cX1aYp9j5pdcbvBomCBnEvOI4/b07/yxbaS1cq2VROMbALNAw/2CtAVbCTxvTqMvm2se5tZovBTA87JVYSy5wNDIUIk9xE2bLEOgWzL/gMRrvoBD3ZtqYaUMbuuW8nkd2kaLx7kuwUIDAguVzXX6cLb87dxygFgzmxO6tIoDHZK1xEDAdFPYieoLubJ44nJVp1XSUl0nd1llS9FmW7Fj3yY7qrNpVRN2uhcBIxvb4K+6PZOxW+xECk4PCxKdLCMwTB52pq8DJeFv+Sd/2JR3NiaFimFlg0uQ+Xx55glpwDHwycgHReMeRubxV4A0Xxtc9tQAjDCe7zVhGzFDgr06AxcRIF09K7PEciH2hNhUYTTQDReOGR97F4Ee6OEJxmI7GuwfdyWhuYYSTEvZaMOk9jzRB/cIQyMWPPPoTWfxZzRF7amwcDXaB+hAfoPDg9WuISiDXQf36swqE2fJj7v8MwHV4B/VrQbw8MtQvsIsm2p0zTHkWyEX8ERKH331MxdomPPnw5cHrT0fWgkhh4IjXQvnN2/icJJJlQfrsfCU7MxTI6GfBz8cM6/pnFR0cffD28e3+8AlJ0D8CwUyHT9oHhkpdY4bXpmd9qS1DLTj34dDDRlxASk4FS3T+n/Nxb9yAVYAvjgYt0lKTzhNUT3ZiEhaG6oIoHFZvtLLkoz3rA/xK+6b42Xykt7TE4FufaQBUgSk6uZOlm9YiL+VObpGZp6CN5qhYKMteW814JGEp/5mTztH1bdkVTZ2QLLOkKJsuaWTbJlnRy12WZ7IqNARGjtRRJKgFTwjxsa8fBZnKKkmrJM0+Z7WSUpX1ts6LnxAIMlGKeJsyke1nmaoyVancVrKt6zpt5U+sKw==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"630-SOWe5EMDjE9ndLTVbU4IV8NaJTI\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:05 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "5bdae5f6-5621-4e1a-a8ad-ffec8c8038dc" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 483, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:05.846Z", + "time": 168, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 168 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_no-metadata_a_directory_3627220595/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_no-metadata_a_directory_3627220595/oauth2_393036114/recording.har new file mode 100644 index 000000000..c2742fffc --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_no-metadata_a_directory_3627220595/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-export/0_no-metadata_a_directory/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-03f96439-ff78-44f7-b0b4-7bb9de503d2b" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:04 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-03f96439-ff78-44f7-b0b4-7bb9de503d2b" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 556, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:04.747Z", + "time": 159, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 159 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_no-metadata_a_directory_3627220595/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_no-metadata_a_directory_3627220595/openidm_3290118515/recording.har new file mode 100644 index 000000000..10f4b98f7 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-export_1534086044/0_no-metadata_a_directory_3627220595/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-export/0_no-metadata_a_directory/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-03f96439-ff78-44f7-b0b4-7bb9de503d2b" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:05 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-03f96439-ff78-44f7-b0b4-7bb9de503d2b" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 683, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:04.977Z", + "time": 343, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 343 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-03f96439-ff78-44f7-b0b4-7bb9de503d2b" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:29:05 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-03f96439-ff78-44f7-b0b4-7bb9de503d2b" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:29:05.220Z", + "time": 99, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 99 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_AD_3050885125/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_AD_3050885125/am_1076162899/recording.har new file mode 100644 index 000000000..5e0a99491 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_AD_3050885125/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_AD/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b61861ee-640b-49d8-bfa1-3e27d92a6572" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:37:58 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b61861ee-640b-49d8-bfa1-3e27d92a6572" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 779, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:37:58.116Z", + "time": 146, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 146 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b61861ee-640b-49d8-bfa1-3e27d92a6572" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:37:58 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b61861ee-640b-49d8-bfa1-3e27d92a6572" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:37:58.466Z", + "time": 109, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 109 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_AD_3050885125/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_AD_3050885125/environment_1072573434/recording.har new file mode 100644 index 000000000..3f44f246d --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_AD_3050885125/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_AD/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:37:58 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "16bd8c05-2a2c-4787-9b66-fbd47c3fe25e" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:37:58.582Z", + "time": 111, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 111 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_AD_3050885125/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_AD_3050885125/iga_2664973160/recording.har new file mode 100644 index 000000000..930c53142 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_AD_3050885125/iga_2664973160/recording.har @@ -0,0 +1,147 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_AD/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "f9860e3f472eacb35ad7b49be982a09b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1872, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 788, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 788, + "text": "[\"G6sFAGRLVadVh5mQH1/alN6mdPAB2lShciIl10zeAqc9n+BAZ6OnNOzCfo8KOG2CAffTBEaRBACZnqSDoRJbqe/U9kXmHp7J6gX1xz1MvFeosOi8QAdybH7v3zIepgR4Ivns7cfrSY9Q7+FyPOv0QXVLm8/QwShQ4ZWhK8rFadbjRREttrcRtZCi931CbpkwsVKLLENhgQ72PO6gArX5/Ggjy8J1O+yhg3mCCodJoYPTrMcqFWrzGf636md+Oe30tcxQf4DxzktjxlSCQT8kxj7HgomdONeydSVCBzKUID4nZBsIfciC2ZaC5AfbkyMbfYNfHXBbxrNCXY4n7WAUqOCKBheyRclB0A9esBBnDF50CCb1pTjoYG5XKqedQp1Ou10He11YeGGo97A/yDiMKs94UahgjY1oIhr6RqlaU0NaJ4rfoYN2VF5UnvGiUMEaG9EEtOUbpWpC9WadUs42JOu/w///3T1MDGXxOF2yQxj8jHe7ceIogolZ2AVMJRH6gQh7bQP2nCj2kVn64sYWnZdHex53VDLr+daDOo0xLZTeGRkoN+cjxtz36HNTzNkbVBaKOQ+WowFUwgqVfA1xHWyMxRUTsDGpVFAmIr6auQZLm3I1zqtxXvEq57cBLUoNfeRsBJlY0YcwYHZGUBr1rUXqUxvMSr4WqAMjvophKYcxsfoQhuyMlOAMeeD2G8VKtvqyLiEYobc1NZjq3Dp6Q96l+B3+///VweWaT/B4WPT4Vm+h/uhh7lcHv5ugPz2cpgWq65ZnKKP/AQ==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"5ac-iUFp8hpOPGaREDLvHE9capaAixw\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:37:58 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "82c51e7c-0fe3-4fa9-82e2-ddc7df4075d0" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:37:58.816Z", + "time": 207, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 207 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_AD_3050885125/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_AD_3050885125/oauth2_393036114/recording.har new file mode 100644 index 000000000..1fc5be212 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_AD_3050885125/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_AD/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b61861ee-640b-49d8-bfa1-3e27d92a6572" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:37:58 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b61861ee-640b-49d8-bfa1-3e27d92a6572" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 556, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:37:58.300Z", + "time": 156, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 156 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_AD_3050885125/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_AD_3050885125/openidm_3290118515/recording.har new file mode 100644 index 000000000..3fb37f63f --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_AD_3050885125/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_AD/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b61861ee-640b-49d8-bfa1-3e27d92a6572" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:37:58 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b61861ee-640b-49d8-bfa1-3e27d92a6572" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 683, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:37:58.503Z", + "time": 183, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 183 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b61861ee-640b-49d8-bfa1-3e27d92a6572" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:37:58 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b61861ee-640b-49d8-bfa1-3e27d92a6572" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:37:58.699Z", + "time": 108, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 108 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_af_3559436575/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_af_3559436575/am_1076162899/recording.har new file mode 100644 index 000000000..c9fb7590e --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_af_3559436575/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_af/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5aaa6aa9-2671-4763-b229-37d197e39cf2" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:37:32 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5aaa6aa9-2671-4763-b229-37d197e39cf2" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 779, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:37:32.076Z", + "time": 150, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 150 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5aaa6aa9-2671-4763-b229-37d197e39cf2" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:37:32 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5aaa6aa9-2671-4763-b229-37d197e39cf2" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:37:32.426Z", + "time": 131, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 131 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_af_3559436575/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_af_3559436575/environment_1072573434/recording.har new file mode 100644 index 000000000..b515eeed1 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_af_3559436575/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_af/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:37:32 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "34700300-1166-4ed1-a38b-aaef00d3e895" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:37:32.562Z", + "time": 127, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 127 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_af_3559436575/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_af_3559436575/iga_2664973160/recording.har new file mode 100644 index 000000000..34302c7f4 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_af_3559436575/iga_2664973160/recording.har @@ -0,0 +1,147 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_af/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "f9860e3f472eacb35ad7b49be982a09b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1872, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 788, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 788, + "text": "[\"G6sFAGRLVadVh5mQH1/alN6mdPAB2lShciIl10zeAqc9n+BAZ6OnNOzCfo8KOG2CAffTBEaRBACZnqSDoRJbqe/U9kXmHp7J6gX1xz1MvFeosOi8QAdybH7v3zIepgR4Ivns7cfrSY9Q7+FyPOv0QXVLm8/QwShQ4ZWhK8rFadbjRREttrcRtZCi931CbpkwsVKLLENhgQ72PO6gArX5/Ggjy8J1O+yhg3mCCodJoYPTrMcqFWrzGf636md+Oe30tcxQf4DxzktjxlSCQT8kxj7HgomdONeydSVCBzKUID4nZBsIfciC2ZaC5AfbkyMbfYNfHXBbxrNCXY4n7WAUqOCKBheyRclB0A9esBBnDF50CCb1pTjoYG5XKqedQp1Ou10He11YeGGo97A/yDiMKs94UahgjY1oIhr6RqlaU0NaJ4rfoYN2VF5UnvGiUMEaG9EEtOUbpWpC9WadUs42JOu/w///3T1MDGXxOF2yQxj8jHe7ceIogolZ2AVMJRH6gQh7bQP2nCj2kVn64sYWnZdHex53VDLr+daDOo0xLZTeGRkoN+cjxtz36HNTzNkbVBaKOQ+WowFUwgqVfA1xHWyMxRUTsDGpVFAmIr6auQZLm3I1zqtxXvEq57cBLUoNfeRsBJlY0YcwYHZGUBr1rUXqUxvMSr4WqAMjvophKYcxsfoQhuyMlOAMeeD2G8VKtvqyLiEYobc1NZjq3Dp6Q96l+B3+///VweWaT/B4WPT4Vm+h/uhh7lcHv5ugPz2cpgWq65ZnKKP/AQ==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"5ac-iUFp8hpOPGaREDLvHE9capaAixw\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:37:33 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "166e3e3c-a891-4b23-929c-010393b60c38" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:37:32.830Z", + "time": 267, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 267 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_af_3559436575/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_af_3559436575/oauth2_393036114/recording.har new file mode 100644 index 000000000..f018f82e1 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_af_3559436575/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_af/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5aaa6aa9-2671-4763-b229-37d197e39cf2" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:37:32 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5aaa6aa9-2671-4763-b229-37d197e39cf2" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 556, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:37:32.249Z", + "time": 163, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 163 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_af_3559436575/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_af_3559436575/openidm_3290118515/recording.har new file mode 100644 index 000000000..dc305d26c --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_af_3559436575/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_af/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5aaa6aa9-2671-4763-b229-37d197e39cf2" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:37:32 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5aaa6aa9-2671-4763-b229-37d197e39cf2" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:37:32.463Z", + "time": 206, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 206 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5aaa6aa9-2671-4763-b229-37d197e39cf2" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:37:32 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5aaa6aa9-2671-4763-b229-37d197e39cf2" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:37:32.697Z", + "time": 111, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 111 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_all-separate_directory_3135850579/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_all-separate_directory_3135850579/am_1076162899/recording.har new file mode 100644 index 000000000..812d8ceb7 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_all-separate_directory_3135850579/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_all-separate_directory/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-0eec0c1f-c833-4813-9ffc-8f937fb79e8a" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:38:24 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-0eec0c1f-c833-4813-9ffc-8f937fb79e8a" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 779, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:38:23.934Z", + "time": 148, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 148 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-0eec0c1f-c833-4813-9ffc-8f937fb79e8a" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:38:24 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-0eec0c1f-c833-4813-9ffc-8f937fb79e8a" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:38:24.266Z", + "time": 118, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 118 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_all-separate_directory_3135850579/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_all-separate_directory_3135850579/environment_1072573434/recording.har new file mode 100644 index 000000000..9f90c4fae --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_all-separate_directory_3135850579/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_all-separate_directory/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:38:24 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "a79e6ba0-1060-40c7-8d1c-8b311fe78903" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:38:24.390Z", + "time": 108, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 108 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_all-separate_directory_3135850579/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_all-separate_directory_3135850579/iga_2664973160/recording.har new file mode 100644 index 000000000..da196a927 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_all-separate_directory_3135850579/iga_2664973160/recording.har @@ -0,0 +1,147 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_all-separate_directory/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "f9860e3f472eacb35ad7b49be982a09b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1872, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 788, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 788, + "text": "[\"G6sFAGRLVadVh5mQH1/alN6mdPAB2lShciIl10zeAqc9n+BAZ6OnNOzCfo8KOG2CAffTBEaRBACZnqSDoRJbqe/U9kXmHp7J6gX1xz1MvFeosOi8QAdybH7v3zIepgR4Ivns7cfrSY9Q7+FyPOv0QXVLm8/QwShQ4ZWhK8rFadbjRREttrcRtZCi931CbpkwsVKLLENhgQ72PO6gArX5/Ggjy8J1O+yhg3mCCodJoYPTrMcqFWrzGf636md+Oe30tcxQf4DxzktjxlSCQT8kxj7HgomdONeydSVCBzKUID4nZBsIfciC2ZaC5AfbkyMbfYNfHXBbxrNCXY4n7WAUqOCKBheyRclB0A9esBBnDF50CCb1pTjoYG5XKqedQp1Ou10He11YeGGo97A/yDiMKs94UahgjY1oIhr6RqlaU0NaJ4rfoYN2VF5UnvGiUMEaG9EEtOUbpWpC9WadUs42JOu/w///3T1MDGXxOF2yQxj8jHe7ceIogolZ2AVMJRH6gQh7bQP2nCj2kVn64sYWnZdHex53VDLr+daDOo0xLZTeGRkoN+cjxtz36HNTzNkbVBaKOQ+WowFUwgqVfA1xHWyMxRUTsDGpVFAmIr6auQZLm3I1zqtxXvEq57cBLUoNfeRsBJlY0YcwYHZGUBr1rUXqUxvMSr4WqAMjvophKYcxsfoQhuyMlOAMeeD2G8VKtvqyLiEYobc1NZjq3Dp6Q96l+B3+///VweWaT/B4WPT4Vm+h/uhh7lcHv5ugPz2cpgWq65ZnKKP/AQ==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"5ac-iUFp8hpOPGaREDLvHE9capaAixw\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:38:24 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "64dca32f-2b22-439b-9d22-a0ff516781c7" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:38:24.617Z", + "time": 294, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 294 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_all-separate_directory_3135850579/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_all-separate_directory_3135850579/oauth2_393036114/recording.har new file mode 100644 index 000000000..d028dee85 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_all-separate_directory_3135850579/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_all-separate_directory/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-0eec0c1f-c833-4813-9ffc-8f937fb79e8a" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:38:24 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-0eec0c1f-c833-4813-9ffc-8f937fb79e8a" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 556, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:38:24.112Z", + "time": 148, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 148 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_all-separate_directory_3135850579/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_all-separate_directory_3135850579/openidm_3290118515/recording.har new file mode 100644 index 000000000..a0dea7016 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_all-separate_directory_3135850579/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_all-separate_directory/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-0eec0c1f-c833-4813-9ffc-8f937fb79e8a" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:38:24 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-0eec0c1f-c833-4813-9ffc-8f937fb79e8a" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:38:24.302Z", + "time": 198, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 198 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-0eec0c1f-c833-4813-9ffc-8f937fb79e8a" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:38:24 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-0eec0c1f-c833-4813-9ffc-8f937fb79e8a" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:38:24.502Z", + "time": 107, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 107 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_f_2727575938/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_f_2727575938/am_1076162899/recording.har new file mode 100644 index 000000000..e8b4b05d1 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_f_2727575938/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_f/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b62a865b-32c4-4c2b-8f3b-35ba7e2731a0" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:36:53 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b62a865b-32c4-4c2b-8f3b-35ba7e2731a0" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 779, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:36:53.786Z", + "time": 142, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 142 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b62a865b-32c4-4c2b-8f3b-35ba7e2731a0" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:36:54 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b62a865b-32c4-4c2b-8f3b-35ba7e2731a0" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:36:54.118Z", + "time": 115, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 115 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_f_2727575938/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_f_2727575938/environment_1072573434/recording.har new file mode 100644 index 000000000..9dee3587f --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_f_2727575938/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_f/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:36:54 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "e490495f-bfe0-4b97-b421-9bc6ed390d91" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:36:54.241Z", + "time": 103, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 103 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_f_2727575938/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_f_2727575938/iga_2664973160/recording.har new file mode 100644 index 000000000..e01e61006 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_f_2727575938/iga_2664973160/recording.har @@ -0,0 +1,147 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_f/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "f9860e3f472eacb35ad7b49be982a09b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1872, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 788, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 788, + "text": "[\"G6sFAGRLVadVh5mQH1/alN6mdPAB2lShciIl10zeAqc9n+BAZ6OnNOzCfo8KOG2CAffTBEaRBACZnqSDoRJbqe/U9kXmHp7J6gX1xz1MvFeosOi8QAdybH7v3zIepgR4Ivns7cfrSY9Q7+FyPOv0QXVLm8/QwShQ4ZWhK8rFadbjRREttrcRtZCi931CbpkwsVKLLENhgQ72PO6gArX5/Ggjy8J1O+yhg3mCCodJoYPTrMcqFWrzGf636md+Oe30tcxQf4DxzktjxlSCQT8kxj7HgomdONeydSVCBzKUID4nZBsIfciC2ZaC5AfbkyMbfYNfHXBbxrNCXY4n7WAUqOCKBheyRclB0A9esBBnDF50CCb1pTjoYG5XKqedQp1Ou10He11YeGGo97A/yDiMKs94UahgjY1oIhr6RqlaU0NaJ4rfoYN2VF5UnvGiUMEaG9EEtOUbpWpC9WadUs42JOu/w///3T1MDGXxOF2yQxj8jHe7ceIogolZ2AVMJRH6gQh7bQP2nCj2kVn64sYWnZdHex53VDLr+daDOo0xLZTeGRkoN+cjxtz36HNTzNkbVBaKOQ+WowFUwgqVfA1xHWyMxRUTsDGpVFAmIr6auQZLm3I1zqtxXvEq57cBLUoNfeRsBJlY0YcwYHZGUBr1rUXqUxvMSr4WqAMjvophKYcxsfoQhuyMlOAMeeD2G8VKtvqyLiEYobc1NZjq3Dp6Q96l+B3+///VweWaT/B4WPT4Vm+h/uhh7lcHv5ugPz2cpgWq65ZnKKP/AQ==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"5ac-iUFp8hpOPGaREDLvHE9capaAixw\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:36:54 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "42a43296-8f6c-41a5-a979-8e1a1104ad29" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:36:54.477Z", + "time": 338, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 338 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_f_2727575938/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_f_2727575938/oauth2_393036114/recording.har new file mode 100644 index 000000000..8a9cca639 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_f_2727575938/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_f/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b62a865b-32c4-4c2b-8f3b-35ba7e2731a0" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:36:54 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b62a865b-32c4-4c2b-8f3b-35ba7e2731a0" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 556, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:36:53.952Z", + "time": 159, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 159 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_f_2727575938/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_f_2727575938/openidm_3290118515/recording.har new file mode 100644 index 000000000..64a6706c2 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_f_2727575938/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_f/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b62a865b-32c4-4c2b-8f3b-35ba7e2731a0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:36:54 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b62a865b-32c4-4c2b-8f3b-35ba7e2731a0" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:36:54.153Z", + "time": 183, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 183 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b62a865b-32c4-4c2b-8f3b-35ba7e2731a0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:36:54 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b62a865b-32c4-4c2b-8f3b-35ba7e2731a0" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:36:54.358Z", + "time": 111, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 111 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_n_f_4242328059/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_n_f_4242328059/am_1076162899/recording.har new file mode 100644 index 000000000..003e63e79 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_n_f_4242328059/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_n_f/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40bb9fe1-3ca0-4375-9257-3aacfe83269c" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:34:10 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40bb9fe1-3ca0-4375-9257-3aacfe83269c" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 779, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:34:10.050Z", + "time": 147, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 147 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40bb9fe1-3ca0-4375-9257-3aacfe83269c" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:34:10 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40bb9fe1-3ca0-4375-9257-3aacfe83269c" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:34:10.418Z", + "time": 123, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 123 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_n_f_4242328059/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_n_f_4242328059/environment_1072573434/recording.har new file mode 100644 index 000000000..6542a4b7f --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_n_f_4242328059/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_n_f/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:34:10 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "37369948-730a-4f53-8c89-342f5b6778b3" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:34:10.548Z", + "time": 131, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 131 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_n_f_4242328059/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_n_f_4242328059/iga_2664973160/recording.har new file mode 100644 index 000000000..1761831cd --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_n_f_4242328059/iga_2664973160/recording.har @@ -0,0 +1,147 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_n_f/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "f9860e3f472eacb35ad7b49be982a09b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1872, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 788, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 788, + "text": "[\"G6sFAGRLVadVh5mQH1/alN6mdPAB2lShciIl10zeAqc9n+BAZ6OnNOzCfo8KOG2CAffTBEaRBACZnqSDoRJbqe/U9kXmHp7J6gX1xz1MvFeosOi8QAdybH7v3zIepgR4Ivns7cfrSY9Q7+FyPOv0QXVLm8/QwShQ4ZWhK8rFadbjRREttrcRtZCi931CbpkwsVKLLENhgQ72PO6gArX5/Ggjy8J1O+yhg3mCCodJoYPTrMcqFWrzGf636md+Oe30tcxQf4DxzktjxlSCQT8kxj7HgomdONeydSVCBzKUID4nZBsIfciC2ZaC5AfbkyMbfYNfHXBbxrNCXY4n7WAUqOCKBheyRclB0A9esBBnDF50CCb1pTjoYG5XKqedQp1Ou10He11YeGGo97A/yDiMKs94UahgjY1oIhr6RqlaU0NaJ4rfoYN2VF5UnvGiUMEaG9EEtOUbpWpC9WadUs42JOu/w///3T1MDGXxOF2yQxj8jHe7ceIogolZ2AVMJRH6gQh7bQP2nCj2kVn64sYWnZdHex53VDLr+daDOo0xLZTeGRkoN+cjxtz36HNTzNkbVBaKOQ+WowFUwgqVfA1xHWyMxRUTsDGpVFAmIr6auQZLm3I1zqtxXvEq57cBLUoNfeRsBJlY0YcwYHZGUBr1rUXqUxvMSr4WqAMjvophKYcxsfoQhuyMlOAMeeD2G8VKtvqyLiEYobc1NZjq3Dp6Q96l+B3+///VweWaT/B4WPT4Vm+h/uhh7lcHv5ugPz2cpgWq65ZnKKP/AQ==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"5ac-iUFp8hpOPGaREDLvHE9capaAixw\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:34:11 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "b5e76b5c-c201-4728-bb8d-40bde0753432" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:34:10.811Z", + "time": 308, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 308 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_n_f_4242328059/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_n_f_4242328059/oauth2_393036114/recording.har new file mode 100644 index 000000000..d48d1d068 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_n_f_4242328059/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_n_f/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40bb9fe1-3ca0-4375-9257-3aacfe83269c" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:34:10 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40bb9fe1-3ca0-4375-9257-3aacfe83269c" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 556, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:34:10.225Z", + "time": 173, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 173 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_n_f_4242328059/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_n_f_4242328059/openidm_3290118515/recording.har new file mode 100644 index 000000000..7bb4491de --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_n_f_4242328059/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_n_f/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40bb9fe1-3ca0-4375-9257-3aacfe83269c" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:34:10 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40bb9fe1-3ca0-4375-9257-3aacfe83269c" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:34:10.457Z", + "time": 225, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 225 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40bb9fe1-3ca0-4375-9257-3aacfe83269c" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:34:10 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-40bb9fe1-3ca0-4375-9257-3aacfe83269c" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:34:10.685Z", + "time": 107, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 107 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_policy-name_file_3260601541/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_policy-name_file_3260601541/am_1076162899/recording.har new file mode 100644 index 000000000..bcbc40132 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_policy-name_file_3260601541/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_policy-name_file/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-95f18c16-3b7f-4799-97b6-2570b7d0649a" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:34:41 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-95f18c16-3b7f-4799-97b6-2570b7d0649a" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 779, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:34:41.501Z", + "time": 161, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 161 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-95f18c16-3b7f-4799-97b6-2570b7d0649a" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:34:41 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-95f18c16-3b7f-4799-97b6-2570b7d0649a" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:34:41.873Z", + "time": 113, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 113 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_policy-name_file_3260601541/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_policy-name_file_3260601541/environment_1072573434/recording.har new file mode 100644 index 000000000..2a1b8f6aa --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_policy-name_file_3260601541/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_policy-name_file/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:34:42 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "65e2cf3e-855b-47a2-b672-4a7aa1b298cb" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:34:41.990Z", + "time": 105, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 105 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_policy-name_file_3260601541/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_policy-name_file_3260601541/iga_2664973160/recording.har new file mode 100644 index 000000000..8543ee77d --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_policy-name_file_3260601541/iga_2664973160/recording.har @@ -0,0 +1,147 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_policy-name_file/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "f9860e3f472eacb35ad7b49be982a09b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1872, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 788, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 788, + "text": "[\"G6sFAGRLVadVh5mQH1/alN6mdPAB2lShciIl10zeAqc9n+BAZ6OnNOzCfo8KOG2CAffTBEaRBACZnqSDoRJbqe/U9kXmHp7J6gX1xz1MvFeosOi8QAdybH7v3zIepgR4Ivns7cfrSY9Q7+FyPOv0QXVLm8/QwShQ4ZWhK8rFadbjRREttrcRtZCi931CbpkwsVKLLENhgQ72PO6gArX5/Ggjy8J1O+yhg3mCCodJoYPTrMcqFWrzGf636md+Oe30tcxQf4DxzktjxlSCQT8kxj7HgomdONeydSVCBzKUID4nZBsIfciC2ZaC5AfbkyMbfYNfHXBbxrNCXY4n7WAUqOCKBheyRclB0A9esBBnDF50CCb1pTjoYG5XKqedQp1Ou10He11YeGGo97A/yDiMKs94UahgjY1oIhr6RqlaU0NaJ4rfoYN2VF5UnvGiUMEaG9EEtOUbpWpC9WadUs42JOu/w///3T1MDGXxOF2yQxj8jHe7ceIogolZ2AVMJRH6gQh7bQP2nCj2kVn64sYWnZdHex53VDLr+daDOo0xLZTeGRkoN+cjxtz36HNTzNkbVBaKOQ+WowFUwgqVfA1xHWyMxRUTsDGpVFAmIr6auQZLm3I1zqtxXvEq57cBLUoNfeRsBJlY0YcwYHZGUBr1rUXqUxvMSr4WqAMjvophKYcxsfoQhuyMlOAMeeD2G8VKtvqyLiEYobc1NZjq3Dp6Q96l+B3+///VweWaT/B4WPT4Vm+h/uhh7lcHv5ugPz2cpgWq65ZnKKP/AQ==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"5ac-iUFp8hpOPGaREDLvHE9capaAixw\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:34:42 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "c6ce7183-199e-4d73-971e-fab062ee3b0b" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:34:42.230Z", + "time": 201, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 201 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_policy-name_file_3260601541/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_policy-name_file_3260601541/oauth2_393036114/recording.har new file mode 100644 index 000000000..a96e72d3b --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_policy-name_file_3260601541/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_policy-name_file/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-95f18c16-3b7f-4799-97b6-2570b7d0649a" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:34:41 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-95f18c16-3b7f-4799-97b6-2570b7d0649a" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 556, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:34:41.694Z", + "time": 169, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 169 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_policy-name_file_3260601541/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_policy-name_file_3260601541/openidm_3290118515/recording.har new file mode 100644 index 000000000..dd9d82988 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-import_4277423995/0_policy-name_file_3260601541/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-import/0_policy-name_file/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-95f18c16-3b7f-4799-97b6-2570b7d0649a" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:34:42 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-95f18c16-3b7f-4799-97b6-2570b7d0649a" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:34:41.906Z", + "time": 194, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 194 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-95f18c16-3b7f-4799-97b6-2570b7d0649a" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:34:42 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-95f18c16-3b7f-4799-97b6-2570b7d0649a" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:34:42.106Z", + "time": 114, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 114 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_890022063/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_890022063/am_1076162899/recording.har new file mode 100644 index 000000000..62dcc875e --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_890022063/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-list/0/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-fbaf68c4-2d9e-4bed-b67f-5017fd77f9b3" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:51:57 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-fbaf68c4-2d9e-4bed-b67f-5017fd77f9b3" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 779, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:51:57.831Z", + "time": 156, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 156 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-fbaf68c4-2d9e-4bed-b67f-5017fd77f9b3" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:51:58 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-fbaf68c4-2d9e-4bed-b67f-5017fd77f9b3" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:51:58.194Z", + "time": 114, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 114 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_890022063/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_890022063/environment_1072573434/recording.har new file mode 100644 index 000000000..42763974a --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_890022063/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-list/0/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:51:58 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "9fa7d094-4f34-433e-bc64-e575a7d2527d" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:51:58.316Z", + "time": 100, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 100 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_890022063/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_890022063/iga_2664973160/recording.har new file mode 100644 index 000000000..747e07d08 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_890022063/iga_2664973160/recording.har @@ -0,0 +1,147 @@ +{ + "log": { + "_recordingName": "iga/policy-list/0/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "f9860e3f472eacb35ad7b49be982a09b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1872, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 788, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 788, + "text": "[\"G6sFAGRLVadVh5mQH1/alN6mdPAB2lShciIl10zeAqc9n+BAZ6OnNOzCfo8KOG2CAffTBEaRBACZnqSDoRJbqe/U9kXmHp7J6gX1xz1MvFeosOi8QAdybH7v3zIepgR4Ivns7cfrSY9Q7+FyPOv0QXVLm8/QwShQ4ZWhK8rFadbjRREttrcRtZCi931CbpkwsVKLLENhgQ72PO6gArX5/Ggjy8J1O+yhg3mCCodJoYPTrMcqFWrzGf636md+Oe30tcxQf4DxzktjxlSCQT8kxj7HgomdONeydSVCBzKUID4nZBsIfciC2ZaC5AfbkyMbfYNfHXBbxrNCXY4n7WAUqOCKBheyRclB0A9esBBnDF50CCb1pTjoYG5XKqedQp1Ou10He11YeGGo97A/yDiMKs94UahgjY1oIhr6RqlaU0NaJ4rfoYN2VF5UnvGiUMEaG9EEtOUbpWpC9WadUs42JOu/w///3T1MDGXxOF2yQxj8jHe7ceIogolZ2AVMJRH6gQh7bQP2nCj2kVn64sYWnZdHex53VDLr+daDOo0xLZTeGRkoN+cjxtz36HNTzNkbVBaKOQ+WowFUwgqVfA1xHWyMxRUTsDGpVFAmIr6auQZLm3I1zqtxXvEq57cBLUoNfeRsBJlY0YcwYHZGUBr1rUXqUxvMSr4WqAMjvophKYcxsfoQhuyMlOAMeeD2G8VKtvqyLiEYobc1NZjq3Dp6Q96l+B3+///VweWaT/B4WPT4Vm+h/uhh7lcHv5ugPz2cpgWq65ZnKKP/AQ==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"5ac-iUFp8hpOPGaREDLvHE9capaAixw\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:51:58 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "adc146e6-0345-4e66-9b17-2f2e370df058" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:51:58.538Z", + "time": 250, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 250 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_890022063/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_890022063/oauth2_393036114/recording.har new file mode 100644 index 000000000..bdc66975e --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_890022063/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-list/0/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-fbaf68c4-2d9e-4bed-b67f-5017fd77f9b3" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:51:58 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-fbaf68c4-2d9e-4bed-b67f-5017fd77f9b3" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 556, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:51:58.008Z", + "time": 159, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 159 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_890022063/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_890022063/openidm_3290118515/recording.har new file mode 100644 index 000000000..ec10179f0 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_890022063/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-list/0/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-fbaf68c4-2d9e-4bed-b67f-5017fd77f9b3" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:51:58 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-fbaf68c4-2d9e-4bed-b67f-5017fd77f9b3" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 683, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:51:58.232Z", + "time": 206, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 206 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-fbaf68c4-2d9e-4bed-b67f-5017fd77f9b3" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:51:58 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-fbaf68c4-2d9e-4bed-b67f-5017fd77f9b3" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:51:58.423Z", + "time": 107, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 107 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_l_2828241652/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_l_2828241652/am_1076162899/recording.har new file mode 100644 index 000000000..9716f53e8 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_l_2828241652/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-list/0_l/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b1d352fc-6d17-4786-a1e3-3e003d2aa0f9" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:52:55 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b1d352fc-6d17-4786-a1e3-3e003d2aa0f9" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 779, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:52:55.543Z", + "time": 138, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 138 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b1d352fc-6d17-4786-a1e3-3e003d2aa0f9" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:52:55 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b1d352fc-6d17-4786-a1e3-3e003d2aa0f9" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:52:55.872Z", + "time": 112, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 112 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_l_2828241652/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_l_2828241652/environment_1072573434/recording.har new file mode 100644 index 000000000..5c5fe6e16 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_l_2828241652/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-list/0_l/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:52:56 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "86bc21c4-41a0-4978-b9ed-b42f212e86ab" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:52:55.992Z", + "time": 109, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 109 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_l_2828241652/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_l_2828241652/iga_2664973160/recording.har new file mode 100644 index 000000000..ab7327297 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_l_2828241652/iga_2664973160/recording.har @@ -0,0 +1,147 @@ +{ + "log": { + "_recordingName": "iga/policy-list/0_l/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "f9860e3f472eacb35ad7b49be982a09b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1872, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 788, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 788, + "text": "[\"G6sFAGRLVadVh5mQH1/alN6mdPAB2lShciIl10zeAqc9n+BAZ6OnNOzCfo8KOG2CAffTBEaRBACZnqSDoRJbqe/U9kXmHp7J6gX1xz1MvFeosOi8QAdybH7v3zIepgR4Ivns7cfrSY9Q7+FyPOv0QXVLm8/QwShQ4ZWhK8rFadbjRREttrcRtZCi931CbpkwsVKLLENhgQ72PO6gArX5/Ggjy8J1O+yhg3mCCodJoYPTrMcqFWrzGf636md+Oe30tcxQf4DxzktjxlSCQT8kxj7HgomdONeydSVCBzKUID4nZBsIfciC2ZaC5AfbkyMbfYNfHXBbxrNCXY4n7WAUqOCKBheyRclB0A9esBBnDF50CCb1pTjoYG5XKqedQp1Ou10He11YeGGo97A/yDiMKs94UahgjY1oIhr6RqlaU0NaJ4rfoYN2VF5UnvGiUMEaG9EEtOUbpWpC9WadUs42JOu/w///3T1MDGXxOF2yQxj8jHe7ceIogolZ2AVMJRH6gQh7bQP2nCj2kVn64sYWnZdHex53VDLr+daDOo0xLZTeGRkoN+cjxtz36HNTzNkbVBaKOQ+WowFUwgqVfA1xHWyMxRUTsDGpVFAmIr6auQZLm3I1zqtxXvEq57cBLUoNfeRsBJlY0YcwYHZGUBr1rUXqUxvMSr4WqAMjvophKYcxsfoQhuyMlOAMeeD2G8VKtvqyLiEYobc1NZjq3Dp6Q96l+B3+///VweWaT/B4WPT4Vm+h/uhh7lcHv5ugPz2cpgWq65ZnKKP/AQ==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"5ac-iUFp8hpOPGaREDLvHE9capaAixw\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:52:56 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "c95d229e-e265-474b-9a94-352ab1b987e2" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:52:56.241Z", + "time": 341, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 341 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_l_2828241652/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_l_2828241652/oauth2_393036114/recording.har new file mode 100644 index 000000000..5e8a2088d --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_l_2828241652/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-list/0_l/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b1d352fc-6d17-4786-a1e3-3e003d2aa0f9" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:52:55 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b1d352fc-6d17-4786-a1e3-3e003d2aa0f9" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 556, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:52:55.695Z", + "time": 149, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 149 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_l_2828241652/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_l_2828241652/openidm_3290118515/recording.har new file mode 100644 index 000000000..ede517e35 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_l_2828241652/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-list/0_l/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b1d352fc-6d17-4786-a1e3-3e003d2aa0f9" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:52:56 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b1d352fc-6d17-4786-a1e3-3e003d2aa0f9" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:52:55.906Z", + "time": 197, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 197 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b1d352fc-6d17-4786-a1e3-3e003d2aa0f9" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:52:56 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-b1d352fc-6d17-4786-a1e3-3e003d2aa0f9" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:52:56.110Z", + "time": 100, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 100 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_long_276218670/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_long_276218670/am_1076162899/recording.har new file mode 100644 index 000000000..35627fef5 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_long_276218670/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-list/0_long/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ddfb652a-de68-404b-a6b5-d8bfc56e6c15" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:53:54 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ddfb652a-de68-404b-a6b5-d8bfc56e6c15" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 804, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:53:54.814Z", + "time": 159, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 159 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ddfb652a-de68-404b-a6b5-d8bfc56e6c15" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:53:55 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ddfb652a-de68-404b-a6b5-d8bfc56e6c15" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 805, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:53:55.163Z", + "time": 118, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 118 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_long_276218670/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_long_276218670/environment_1072573434/recording.har new file mode 100644 index 000000000..863946e65 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_long_276218670/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-list/0_long/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:53:55 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "5301717a-f16b-46af-8dd3-0984c9938530" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:53:55.286Z", + "time": 136, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 136 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_long_276218670/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_long_276218670/iga_2664973160/recording.har new file mode 100644 index 000000000..12e43f76a --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_long_276218670/iga_2664973160/recording.har @@ -0,0 +1,147 @@ +{ + "log": { + "_recordingName": "iga/policy-list/0_long/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "f9860e3f472eacb35ad7b49be982a09b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1872, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 788, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 788, + "text": "[\"G6sFAGRLVadVh5mQH1/alN6mdPAB2lShciIl10zeAqc9n+BAZ6OnNOzCfo8KOG2CAffTBEaRBACZnqSDoRJbqe/U9kXmHp7J6gX1xz1MvFeosOi8QAdybH7v3zIepgR4Ivns7cfrSY9Q7+FyPOv0QXVLm8/QwShQ4ZWhK8rFadbjRREttrcRtZCi931CbpkwsVKLLENhgQ72PO6gArX5/Ggjy8J1O+yhg3mCCodJoYPTrMcqFWrzGf636md+Oe30tcxQf4DxzktjxlSCQT8kxj7HgomdONeydSVCBzKUID4nZBsIfciC2ZaC5AfbkyMbfYNfHXBbxrNCXY4n7WAUqOCKBheyRclB0A9esBBnDF50CCb1pTjoYG5XKqedQp1Ou10He11YeGGo97A/yDiMKs94UahgjY1oIhr6RqlaU0NaJ4rfoYN2VF5UnvGiUMEaG9EEtOUbpWpC9WadUs42JOu/w///3T1MDGXxOF2yQxj8jHe7ceIogolZ2AVMJRH6gQh7bQP2nCj2kVn64sYWnZdHex53VDLr+daDOo0xLZTeGRkoN+cjxtz36HNTzNkbVBaKOQ+WowFUwgqVfA1xHWyMxRUTsDGpVFAmIr6auQZLm3I1zqtxXvEq57cBLUoNfeRsBJlY0YcwYHZGUBr1rUXqUxvMSr4WqAMjvophKYcxsfoQhuyMlOAMeeD2G8VKtvqyLiEYobc1NZjq3Dp6Q96l+B3+///VweWaT/B4WPT4Vm+h/uhh7lcHv5ugPz2cpgWq65ZnKKP/AQ==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"5ac-iUFp8hpOPGaREDLvHE9capaAixw\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:53:55 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "ac259b31-1862-4074-ad48-dd480de9af96" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 483, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:53:55.540Z", + "time": 326, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 326 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_long_276218670/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_long_276218670/oauth2_393036114/recording.har new file mode 100644 index 000000000..07d57b96b --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_long_276218670/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-list/0_long/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ddfb652a-de68-404b-a6b5-d8bfc56e6c15" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:53:55 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ddfb652a-de68-404b-a6b5-d8bfc56e6c15" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 581, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:53:55.007Z", + "time": 148, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 148 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_long_276218670/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_long_276218670/openidm_3290118515/recording.har new file mode 100644 index 000000000..efa0e5821 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-list_3823065250/0_long_276218670/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-list/0_long/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ddfb652a-de68-404b-a6b5-d8bfc56e6c15" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:53:55 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ddfb652a-de68-404b-a6b5-d8bfc56e6c15" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:53:55.200Z", + "time": 230, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 230 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ddfb652a-de68-404b-a6b5-d8bfc56e6c15" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:53:55 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-ddfb652a-de68-404b-a6b5-d8bfc56e6c15" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 683, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:53:55.428Z", + "time": 104, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 104 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-delete_3777581556/0_n_2861796890/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-delete_3777581556/0_n_2861796890/am_1076162899/recording.har new file mode 100644 index 000000000..54d552ee3 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-delete_3777581556/0_n_2861796890/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-delete/0_n/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5562aae9-f031-4d52-8d26-2b19a715f9a1" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:57:30 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5562aae9-f031-4d52-8d26-2b19a715f9a1" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 804, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:57:30.514Z", + "time": 253, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 253 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5562aae9-f031-4d52-8d26-2b19a715f9a1" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:57:31 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5562aae9-f031-4d52-8d26-2b19a715f9a1" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:57:30.967Z", + "time": 116, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 116 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-delete_3777581556/0_n_2861796890/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-delete_3777581556/0_n_2861796890/environment_1072573434/recording.har new file mode 100644 index 000000000..e5ea18584 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-delete_3777581556/0_n_2861796890/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-delete/0_n/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:57:31 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "8e94f7b5-6a1b-45b0-b4c8-8e2b8c9758f2" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 413, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:57:31.091Z", + "time": 100, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 100 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-delete_3777581556/0_n_2861796890/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-delete_3777581556/0_n_2861796890/iga_2664973160/recording.har new file mode 100644 index 000000000..6469e794c --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-delete_3777581556/0_n_2861796890/iga_2664973160/recording.har @@ -0,0 +1,267 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-delete/0_n/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "6dd71111cb9c1f808e9c13422aa07727", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1902, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "name eq \"delete-test\"" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy/rule?_queryFilter=name%20eq%20%22delete-test%22&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 1000, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 1000, + "text": "[\"GxMHAMRPm/mna/R+OZltbPWvKbUYM2ysGBvZwyYIMTW30MNUcGlUcYlUaKJ9RyMN2u5DJHHdpEZ06PBR/XaxkmYS6rVSbWqxTFYQyMcWTpUEiZwsMSVMkSGQz55/ecXGO0iE2tLaAybSa00BcgjkXtclOVZsvLsOFhIQmLz8oOaitnT66ShAtliaFbmTnj7Y9Ja9g4DJIbEu0fPP+3Wk0J+OJ+k0zdJkprMsGc9UmmTFIk3yxVRPFjqdz/IFBEplLCR0pUJo/nMwKxN62pcQiA4SZyqEBgJ1pHCiSoJEx3L2d9evKPJ1pIBOYGW8pf/PuCpVms2KIDnUJBC1cldNRRGyRRVoFYSkRqM5MXnZOoF/w6Djgk220BPqiS1JFjW0BHpChSKG8Zbqa9vNvVUH5X7UYiBQGjZLxcYtN73j4JWQWs1YSrPxbj1fGU36QMEhBEUton6nUkXIRyyDcnxBpV8pi+cugu4dY1lF2GT2Ej5AYv3oCMIY4XLIx+dOSHRoi4q3CKDyTtg/4KYiyEeQY8N2lQ1bdoNyjGeB2Hp6saX2NmX7/Hr96LJNTAtWYUkcsmR8tjdw7u9lodHkrijyPlMJ4ea6Ubbe33xZcYOue+4E0dXdPD25Wt8/OVNyPO2HshxlPgsEEz8utQ8EORH49OGjkArdZrDfhopG36RS7FnwmmKE+GnjyKrSJdvVR6Yg3WhLkC0iVhPBComSitzr9/6dAH1VRnR0a4mkCFkoG6kJpmZti8IfpsJoTr7Nd9IfKk6f8vQVzYl1pAANma7UUpdJF7LWP9Eu/nnQf47Uawvb6/gTGIPJ0ik5mKk0ylkK/bI/0TR4HqRPUQxGw7TQOsn0iJJxPhwlCzWfJflgmM3mRItxkUKgJFa5YgXZ4jZFbQ0i4BgNRtNkME0G46vhTE4mcjzpDQZpOh8u5g8QKHeRm8eu6WiaPqDrngWKmL6C9YIpHFID+Uh06FngLTLEbvraMeRQ3AZRG9kB\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"714-Eo+6H762JUdRlpHmfscEZwD8IJs\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:57:31 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "7c473399-699e-46b2-9841-e010d6e402ca" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 483, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:57:31.306Z", + "time": 271, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 271 + } + }, + { + "_id": "b379a772b2279c9962e99dba0ad01675", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1861, + "httpVersion": "HTTP/1.1", + "method": "DELETE", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy/rule/f0213fcc-bc2e-4d12-9a87-d01b78ee94f3" + }, + "response": { + "bodySize": 960, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 960, + "text": "[\"G60GAMTPpfmna/R+OeFthZTSdvNrCsbjDQoGC8abWJYnLgcOvxbNba+jMZZFXVo2pr9Gi/4eMOq8qDjETOdafDYn0i/cFScpeHcDpwqCREaWmBKmyBDIpsx/vWTjHSRCZWljV4nkhmiKDAKZ11VBjhUb75bBQgICM5ZfVT9Ulm4/HQXIBiuzJnfj6YtDb9k7CJgMEosRff6sW0UK3cloPJwM02Ey1WmajKZqmKT5fJhk84kez/VwNs3mECiUsZDQpQqh3uNg1iZ0tC8gEB0k7lQINQSqSOFGFQQJx5ecn+4vKPIyUkArsDbehv/PYk2qNJs1QXKoSCBq5RZ1SRGyQRloDUKZ0HxGTFp6K/AJDDwY6LIBiWDTyDpkYT8Tgbal0MZmvEJ9Has5R1VQ6jfNewKFYbNSbNzq0DsOngmVJYzjNBvv9rO10cQP2DhgIVGDqN+pUBHyH1ZBOX6gwq+VxXOLoHNiLKODzGAf4wMk9q+uIBpzXAb577kVFJ06ovzXAfyGd5D/GnBdEuQ/kGPDdmkNJ06DcoxnYXHy9uGo9Lbi+H65f/UoU9CAVVgRQ1Zun+6Mluc7aag1uQVFPmcqINTsJ2Wr88MXJddo2+dWBLq/h7c3i/3zm7six6s+hI3xwmeBYOLHo/aBIMcCnz585FQhmwwOHKho9FMqFd4FrylGiP5fRFoWLtnevjI56VpbgmwsIoUQNEjUUWRevQVbAfoqDenIpiWXImSubCQRhM1cg2ofcm60in/4TvqDxdVTnlyEubSKFMAheaFWvCzDe9Dtq/1nP5LbSFf2Ldje9hOdoW1TqM5IysHs+Omyi4V2Vtv2pzUWz4P0I/LeoD/MtU5SPaBklPUHyVzNpknW66fTGdF8lA8hUBCrTLGCbPBuIo4GkfQY9AaTpDdJeqNFfyrHYzkad3q94XDWn8/+QqDGRWMaWZPBZPgXbQs=\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"6ae-f+p3n5aTvnpsMjKPAjd28teIkZE\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:57:32 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "e8a049b1-5a91-41b0-a8a3-cb0e71a16a87" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 483, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:57:31.582Z", + "time": 1299, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 1299 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-delete_3777581556/0_n_2861796890/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-delete_3777581556/0_n_2861796890/oauth2_393036114/recording.har new file mode 100644 index 000000000..824f1ff4c --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-delete_3777581556/0_n_2861796890/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-delete/0_n/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5562aae9-f031-4d52-8d26-2b19a715f9a1" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:57:30 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5562aae9-f031-4d52-8d26-2b19a715f9a1" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 556, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:57:30.801Z", + "time": 160, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 160 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-delete_3777581556/0_n_2861796890/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-delete_3777581556/0_n_2861796890/openidm_3290118515/recording.har new file mode 100644 index 000000000..f46f89624 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-delete_3777581556/0_n_2861796890/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-delete/0_n/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5562aae9-f031-4d52-8d26-2b19a715f9a1" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:57:31 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5562aae9-f031-4d52-8d26-2b19a715f9a1" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 683, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:57:31.007Z", + "time": 189, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 189 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5562aae9-f031-4d52-8d26-2b19a715f9a1" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 17:57:31 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-5562aae9-f031-4d52-8d26-2b19a715f9a1" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 683, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T17:57:31.199Z", + "time": 96, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 96 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_file_174088422/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_file_174088422/am_1076162899/recording.har new file mode 100644 index 000000000..6ac60c312 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_file_174088422/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-describe/0_file/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-909a4208-dd3b-4e58-8494-f32f715464f2" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:05:18 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-909a4208-dd3b-4e58-8494-f32f715464f2" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 804, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:05:18.620Z", + "time": 151, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 151 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-909a4208-dd3b-4e58-8494-f32f715464f2" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:05:19 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-909a4208-dd3b-4e58-8494-f32f715464f2" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:05:18.985Z", + "time": 109, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 109 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_file_174088422/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_file_174088422/environment_1072573434/recording.har new file mode 100644 index 000000000..6000039aa --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_file_174088422/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-describe/0_file/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:05:19 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "16227fee-0ced-41ff-bc8c-816f17bfd015" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 413, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:05:19.100Z", + "time": 102, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 102 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_file_174088422/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_file_174088422/oauth2_393036114/recording.har new file mode 100644 index 000000000..0d60c345f --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_file_174088422/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-describe/0_file/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-909a4208-dd3b-4e58-8494-f32f715464f2" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:05:18 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-909a4208-dd3b-4e58-8494-f32f715464f2" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 581, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:05:18.809Z", + "time": 154, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 154 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_file_174088422/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_file_174088422/openidm_3290118515/recording.har new file mode 100644 index 000000000..47f246c2f --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_file_174088422/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-describe/0_file/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-909a4208-dd3b-4e58-8494-f32f715464f2" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:05:19 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-909a4208-dd3b-4e58-8494-f32f715464f2" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 683, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:05:19.021Z", + "time": 194, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 194 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-909a4208-dd3b-4e58-8494-f32f715464f2" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:05:19 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-909a4208-dd3b-4e58-8494-f32f715464f2" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 683, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:05:19.233Z", + "time": 112, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 112 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_n_f_4242328059/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_n_f_4242328059/am_1076162899/recording.har new file mode 100644 index 000000000..ba16820f9 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_n_f_4242328059/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-describe/0_n_f/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-120c9657-d9f6-42c5-b720-a00b208baba3" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:03:50 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-120c9657-d9f6-42c5-b720-a00b208baba3" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 779, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:03:50.260Z", + "time": 147, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 147 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-120c9657-d9f6-42c5-b720-a00b208baba3" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:03:50 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-120c9657-d9f6-42c5-b720-a00b208baba3" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:03:50.629Z", + "time": 119, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 119 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_n_f_4242328059/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_n_f_4242328059/environment_1072573434/recording.har new file mode 100644 index 000000000..cdfb3e2dc --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_n_f_4242328059/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-describe/0_n_f/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:03:50 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "7db22d06-4e7a-4853-b4bd-b4bd3eaeb8db" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:03:50.753Z", + "time": 104, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 104 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_n_f_4242328059/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_n_f_4242328059/oauth2_393036114/recording.har new file mode 100644 index 000000000..b217d57bf --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_n_f_4242328059/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-describe/0_n_f/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-120c9657-d9f6-42c5-b720-a00b208baba3" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:03:50 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-120c9657-d9f6-42c5-b720-a00b208baba3" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 556, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:03:50.436Z", + "time": 163, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 163 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_n_f_4242328059/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_n_f_4242328059/openidm_3290118515/recording.har new file mode 100644 index 000000000..cd3161961 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_n_f_4242328059/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-describe/0_n_f/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-120c9657-d9f6-42c5-b720-a00b208baba3" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:03:50 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-120c9657-d9f6-42c5-b720-a00b208baba3" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:03:50.663Z", + "time": 194, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 194 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-120c9657-d9f6-42c5-b720-a00b208baba3" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:03:50 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-120c9657-d9f6-42c5-b720-a00b208baba3" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:03:50.865Z", + "time": 105, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 105 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_rule-name_4160298258/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_rule-name_4160298258/am_1076162899/recording.har new file mode 100644 index 000000000..39c946257 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_rule-name_4160298258/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-describe/0_rule-name/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-090ef532-0c1c-4f26-9b3c-9733577ec9b1" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:04:44 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-090ef532-0c1c-4f26-9b3c-9733577ec9b1" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 779, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:04:44.083Z", + "time": 157, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 157 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-090ef532-0c1c-4f26-9b3c-9733577ec9b1" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:04:44 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-090ef532-0c1c-4f26-9b3c-9733577ec9b1" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:04:44.446Z", + "time": 116, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 116 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_rule-name_4160298258/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_rule-name_4160298258/environment_1072573434/recording.har new file mode 100644 index 000000000..1dbeb6707 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_rule-name_4160298258/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-describe/0_rule-name/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:04:44 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "62b98f34-78e4-4780-af96-76b7040e88cc" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:04:44.570Z", + "time": 101, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 101 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_rule-name_4160298258/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_rule-name_4160298258/iga_2664973160/recording.har new file mode 100644 index 000000000..8d1897b70 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_rule-name_4160298258/iga_2664973160/recording.har @@ -0,0 +1,147 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-describe/0_rule-name/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "a18611466a6b7dfdf9ec81d4b6c5cd09", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1904, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "name eq \"describe-test\"" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy/rule?_queryFilter=name%20eq%20%22describe-test%22&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 1032, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 1032, + "text": "[\"G+sHAMRem/mnazS/nOxQulN6NeaxsUJZGbMJQkxcDhx+zB0V0BjDwkCz8r8HWfQcRgFPSjDBYZuJhUJhf6d6jad5rcm6MWKbrMkQLyMaWRMEivXymohb6izY+ca51W0DAfuluyXdLcml7+gl9WKt6mtqrLS6be5MBQEwPMY803DdV3Tx05CBGDHTC2rOYz6w01a2bcCgCwjsUPT6C6fvyDhxGAVxkAc8UXnOw0QGPC+zgBdZrKJMBWlSZGCopa4goObSmGHTGr3QZlm1NRi6BgKX0pgBDH1H5lzWBIHAaY4Otm6ps3cdGUwMC91W8P8Z1rJSWb0gCGt6YuiUbG6HOXUQI+aGFknoUNovyJKVMzH8LgbuEI4YwSzYEtmcLCzYMvRfFSasm0otf/fMwt3eSPPcmctQa6tn0upmttM21rQVBDjSvbZxnLK6bbaKhVZ0wAEAL6VGdOqLatlBvGBmZGOvqW4XssLblMVwX1eWScij7WNaA4Gt810wodAUjO5UOLB3dbd1evNpGmGlmZFNb6QLMOkH3cuqJwhEbpwWMoh4kiUeD0vP4zmpkucy8eI8lrLIM0zT28Rg+op2qXx3AULblNML7DAniBdQY7Wt9vZw4sDIxuKNgdu6uAY2SuCd/unldj21XLA9b6tK9dwOuH8V5bGdS77b1/WwF3xQtI+/MRjdfd+o1hCE57qVmuJUl6QGVRHEiJ/WfJesJcYaARpWgaL9aFr7pZsZJgb6nWuykqOknjqIUlYdqSBVII9YOsQotWJmbeeL1HcB9W4VxO1gAuycCT4Yt3LG5Y6Rmb92dbbZyf+jQa5lrXuEQDmkObxXxMeAGPrl5RuwDJxxwHJbF3c9fOn1ADO02fT/qBLeJpxL+BTmKg0zHid5xEOVSp6lWciD0FOlX0rPy3ww1GRlIa2EGDH5ErsN8QzwXT/mbszd8NZLheuKIF5OwiByAz+On8GwiseQJkmenwTPmKY3hsVZb8FWacmc0ADxAnXnjeHtODTvtH1jITw2vcMyfAI=\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"7ec-qCNy6aXDHYZIUtBQrio7Uexyduo\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:04:45 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "734aaff2-a5bb-4944-b5b1-69e190df6d83" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 458, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:04:44.783Z", + "time": 258, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 258 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_rule-name_4160298258/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_rule-name_4160298258/oauth2_393036114/recording.har new file mode 100644 index 000000000..47ebca917 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_rule-name_4160298258/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-describe/0_rule-name/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-090ef532-0c1c-4f26-9b3c-9733577ec9b1" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:04:44 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-090ef532-0c1c-4f26-9b3c-9733577ec9b1" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 556, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:04:44.266Z", + "time": 155, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 155 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_rule-name_4160298258/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_rule-name_4160298258/openidm_3290118515/recording.har new file mode 100644 index 000000000..9ac8bf70e --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-describe_405834122/0_rule-name_4160298258/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-describe/0_rule-name/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-090ef532-0c1c-4f26-9b3c-9733577ec9b1" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:04:44 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-090ef532-0c1c-4f26-9b3c-9733577ec9b1" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:04:44.484Z", + "time": 186, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 186 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-090ef532-0c1c-4f26-9b3c-9733577ec9b1" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:04:44 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-090ef532-0c1c-4f26-9b3c-9733577ec9b1" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:04:44.677Z", + "time": 102, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 102 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_NAD_1312604927/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_NAD_1312604927/am_1076162899/recording.har new file mode 100644 index 000000000..9c9f043bf --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_NAD_1312604927/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-export/0_NAD/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-bcb1f04e-40d0-4101-bc0f-6b23d374c6d3" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:42:56 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-bcb1f04e-40d0-4101-bc0f-6b23d374c6d3" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 804, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:42:55.930Z", + "time": 150, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 150 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-bcb1f04e-40d0-4101-bc0f-6b23d374c6d3" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:42:56 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-bcb1f04e-40d0-4101-bc0f-6b23d374c6d3" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 805, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:42:56.279Z", + "time": 117, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 117 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_NAD_1312604927/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_NAD_1312604927/environment_1072573434/recording.har new file mode 100644 index 000000000..c83c4129d --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_NAD_1312604927/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-export/0_NAD/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:42:56 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "aea0fc27-1e61-43ae-b39f-49a3e826b6a7" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 413, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:42:56.404Z", + "time": 112, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 112 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_NAD_1312604927/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_NAD_1312604927/iga_2664973160/recording.har new file mode 100644 index 000000000..1f2b221df --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_NAD_1312604927/iga_2664973160/recording.har @@ -0,0 +1,147 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-export/0_NAD/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "e96c9157e11f0be3fd8dc025a80986b6", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy/rule?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 2019, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 2019, + "text": "[\"G4EcAOR3r2Jfv9Hr3YbULGO4mc6Z9mZUYXhOUG0TAU4bRb5a0/FxkbKahazSTwViB6xoDwPsSqCYVacKUALaCk+sKkzU11gC1yjVQgxzlb3zd4WGGAOVNbsbPE3WrYD97wazmxAs7LHUzZs0Rn8FAuHe8/PONaZ5ueZ80JsfAo5YcTPhj0AgJL9MOFdXY5o/5BEsHFM6jrj1aQICgut5t4z4+suMGewNjvGC86uMr/ImY6lpBgIxgIXnKXrI4e5SMN9tBsGVN4a2plVUDlLRnqGkgwk9G5wMfmiBwOTiCBYqlvpnxVIzDym6DwQILAVzpmt5+ni3x1I/FMywErjENJbixVJ0o87XeEGwNS9IoHg3769nLGBvcM54aQiwUvOAFaVSVwKXxcgGItXeoGPJkspzk5VnOGR8qQp6dTM5k/v6UCzrwZKd+PpNQ2CKNR5djfPxfpprTiNYeDk/BjdfjgQe5ng+X2Oad+ESPYKF+yl00xB2BbIX8tjQDYo/4eQK2P/gmN1c3+GULm6Ew9rCWY/iWHuYcr/3s6QMFnavHgCZGTmH7g5X6Ofh2w+7F+//K9ygunzE2vLZMQCZO+0f3bggWOiVR1vXw0ogLyM+wOGNDYhM81i7gXo9I9j/AOca6/jEH2bM4+zmCgei+VDff/1qv3v66hdmYbh9hFGhL2MLVN5F/zin5cy05qPj73n97kvD13ggkGP5/N6njGAVgS8pfx66a9BtZBZ7mUIcruMlmBSnPfTnaR7ix34RB/RXPyLY22aUR2VIAQsP6hj6aXnZlQB+PcfeHnSbE4NlmCjCS4T0aU71FOcjEAjDI1BvRBloMTd4cJLEIfp1cu+f0H8eo4iugr0M2hckaCkWplMl7t1xQIDqNee3H/3vfkJ++zHCujdYJklQb1QR55uze7jncscYMuFBC65iiGrZMcCBAfvRSCGDd45qoxoqB+1o37WGaieCEL7jwpj9ubC64KoDewN0Bz6wp1sC3vCWNi1t2J5p2wgr5NYY9i8QePQPZOXtKso4Zd2eGauY5WZrVKe1ajvxL6wrQbgI7aweaUUKBuJHrKdYNrFs3GZZyGZ1AscZ6V2v+2n8copWKtGKXlDt+55K7QTtByNoMK1XxotOB5OO588u5+ufNcdLzGzs4I3L+UpwMWPcB2bkvFC6vrAMl/o=\",\"CInbLxKlH2VV03bBCUW10YzKgTHaox9o7zRr+9a50JtETUE2xRHLKkdbBtsBiy3WH4LTuV6B0zrQcqz7b+iDZZquDzOn1RaD7OqsaUYqI4chTs1bEfzPDW4suAKW2HL639VG0G+thmGO0JJUrKPvC5Q6kNrlC3ynC3WLm3oFYfahh1GGWQzxDSCEVQmOsvedNLTVvaLSd46azkgqJPMDHxxjhqcHLfess01jRbvVUqhG8LZFMYVICuP6hrHwFGZT10YcsRYI2qeuYqmbvIzIdIHV6qhvhHOOaeqRcypNx2jfOE991/ei9zz0QweoiAHiiORWLJVqwuRDDP4Ux7D/kn6dYkA5aMUMFdwglcEL6vpOUYmu4QI591ylGzif0hgwz1jKz54/xyGSS4F5OkRu5JxPJ/rIaMU4TflIpe1grXoLI94QU2dagUUxtcg0rdk1FRxfYx8Do7YYrASXptZojZJrLmslCrr8Awl7dBdsWf/gKZIcLiFYx0TyNXcvXvjPKJmhYaLlKhueyYDHB9kvpRdP7UYg3oxg1MrccyX6j3U8mDc5eSxl/wQfUt0nZawSWyXaVkrVqQRFtEwjASNKDN1QhcXKd+GBG8cYJfLwGZA9p74mF8faCl4CRClPtj71THXD+AkvXhT4hCNAny9e/ACHyIxo/Emc47fjVIe7o6kgQUVh4n7T10MY9vME4OtuH6cc4KgSYTAqyE5TxxWjUnWBdtwYyuTAeyYYb6VPwh7GqeLcKr3VQkJjtYpys+eNVY1t+LblRmvdGJ5SDgSeMspFsBsq5ud4BfufktUOBN6zm4r30zJXsJIcdJTnBaw=\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"1c82-D06us1reYoQzK+YZAjxX5dXa8uc\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:42:56 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "75938f99-999c-40f5-8227-9717c7fd5eca" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 484, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:42:56.664Z", + "time": 277, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 277 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_NAD_1312604927/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_NAD_1312604927/oauth2_393036114/recording.har new file mode 100644 index 000000000..a9eca8f0f --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_NAD_1312604927/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-export/0_NAD/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-bcb1f04e-40d0-4101-bc0f-6b23d374c6d3" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:42:56 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-bcb1f04e-40d0-4101-bc0f-6b23d374c6d3" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 581, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:42:56.110Z", + "time": 163, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 163 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_NAD_1312604927/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_NAD_1312604927/openidm_3290118515/recording.har new file mode 100644 index 000000000..bf9a33850 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_NAD_1312604927/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-export/0_NAD/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-bcb1f04e-40d0-4101-bc0f-6b23d374c6d3" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:42:56 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-bcb1f04e-40d0-4101-bc0f-6b23d374c6d3" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 683, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:42:56.314Z", + "time": 197, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 197 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-bcb1f04e-40d0-4101-bc0f-6b23d374c6d3" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:42:56 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-bcb1f04e-40d0-4101-bc0f-6b23d374c6d3" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 683, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:42:56.525Z", + "time": 114, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 114 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_all_file_3124693826/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_all_file_3124693826/am_1076162899/recording.har new file mode 100644 index 000000000..e926586fc --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_all_file_3124693826/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-export/0_all_file/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-d8e7ec55-d399-4469-801a-ed55eb5075a3" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:36:36 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-d8e7ec55-d399-4469-801a-ed55eb5075a3" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 804, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:36:36.714Z", + "time": 152, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 152 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-d8e7ec55-d399-4469-801a-ed55eb5075a3" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:36:37 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-d8e7ec55-d399-4469-801a-ed55eb5075a3" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 805, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:36:37.098Z", + "time": 163, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 163 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_all_file_3124693826/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_all_file_3124693826/environment_1072573434/recording.har new file mode 100644 index 000000000..5a3e5abb5 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_all_file_3124693826/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-export/0_all_file/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:36:37 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "0eed9c96-c719-4b40-aec7-09a4590c1be2" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:36:37.273Z", + "time": 99, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 99 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_all_file_3124693826/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_all_file_3124693826/iga_2664973160/recording.har new file mode 100644 index 000000000..ccac73795 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_all_file_3124693826/iga_2664973160/recording.har @@ -0,0 +1,147 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-export/0_all_file/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "e96c9157e11f0be3fd8dc025a80986b6", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy/rule?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 2019, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 2019, + "text": "[\"G4EcAOR3r2Jfv9Hr3YbULGO4mc6Z9mZUYXhOUG0TAU4bRb5a0/FxkbKahazSTwViB6xoDwPsSqCYVacKUALaCk+sKkzU11gC1yjVQgxzlb3zd4WGGAOVNbsbPE3WrYD97wazmxAs7LHUzZs0Rn8FAuHe8/PONaZ5ueZ80JsfAo5YcTPhj0AgJL9MOFdXY5o/5BEsHFM6jrj1aQICgut5t4z4+suMGewNjvGC86uMr/ImY6lpBgIxgIXnKXrI4e5SMN9tBsGVN4a2plVUDlLRnqGkgwk9G5wMfmiBwOTiCBYqlvpnxVIzDym6DwQILAVzpmt5+ni3x1I/FMywErjENJbixVJ0o87XeEGwNS9IoHg3769nLGBvcM54aQiwUvOAFaVSVwKXxcgGItXeoGPJkspzk5VnOGR8qQp6dTM5k/v6UCzrwZKd+PpNQ2CKNR5djfPxfpprTiNYeDk/BjdfjgQe5ng+X2Oad+ESPYKF+yl00xB2BbIX8tjQDYo/4eQK2P/gmN1c3+GULm6Ew9rCWY/iWHuYcr/3s6QMFnavHgCZGTmH7g5X6Ofh2w+7F+//K9ygunzE2vLZMQCZO+0f3bggWOiVR1vXw0ogLyM+wOGNDYhM81i7gXo9I9j/AOca6/jEH2bM4+zmCgei+VDff/1qv3v66hdmYbh9hFGhL2MLVN5F/zin5cy05qPj73n97kvD13ggkGP5/N6njGAVgS8pfx66a9BtZBZ7mUIcruMlmBSnPfTnaR7ix34RB/RXPyLY22aUR2VIAQsP6hj6aXnZlQB+PcfeHnSbE4NlmCjCS4T0aU71FOcjEAjDI1BvRBloMTd4cJLEIfp1cu+f0H8eo4iugr0M2hckaCkWplMl7t1xQIDqNee3H/3vfkJ++zHCujdYJklQb1QR55uze7jncscYMuFBC65iiGrZMcCBAfvRSCGDd45qoxoqB+1o37WGaieCEL7jwpj9ubC64KoDewN0Bz6wp1sC3vCWNi1t2J5p2wgr5NYY9i8QePQPZOXtKso4Zd2eGauY5WZrVKe1ajvxL6w=\",\"K0G4CO2sHmlFCgbiR6ynWDaxbNxmWchmdQLHGeldr/tp/HKKVirRil5Q7fueSu0E7QcjaDCtV8aLTgeTjufPLufrnzXHS8xs7OCNy/lKcDFj3Adm5LxQur6wDJf6CInbLxKlH2VV03bBCUW10YzKgTHaox9o7zRr+9a50JtETUE2xRHLKkdbBtsBiy3WH4LTuV6B0zrQcqz7b+iDZZquDzOn1RaD7OqsaUYqI4chTs1bEfzPDW4suAKW2HL639VG0G+thmGO0JJUrKPvC5Q6kNrlC3ynC3WLm3oFYfahh1GGWQzxDSCEVQmOsvedNLTVvaLSd46azkgqJPMDHxxjhqcHLfess01jRbvVUqhG8LZFMYVICuP6hrHwFGZT10YcsRYI2qeuYqmbvIzIdIHV6qhvhHOOaeqRcypNx2jfOE991/ei9zz0QweoiAHiiORWLJVqwuRDDP4Ux7D/kn6dYkA5aMUMFdwglcEL6vpOUYmu4QI591ylGzif0hgwz1jKz54/xyGSS4F5OkRu5JxPJ/rIaMU4TflIpe1grXoLI94QU2dagUUxtcg0rdk1FRxfYx8Do7YYrASXptZojZJrLmslCrr8Awl7dBdsWf/gKZIcLiFYx0TyNXcvXvjPKJmhYaLlKhueyYDHB9kvpRdP7UYg3oxg1MrccyX6j3U8mDc5eSxl/wQfUt0nZawSWyXaVkrVqQRFtEwjASNKDN1QhcXKd+GBG8cYJfLwGZA9p74mF8faCl4CRClPtj71THXD+AkvXhT4hCNAny9e/ACHyIxo/Emc47fjVIe7o6kgQUVh4n7T10MY9vME4OtuH6cc4KgSYTAqyE5TxxWjUnWBdtwYyuTAeyYYb6VPwh7GqeLcKr3VQkJjtYpys+eNVY1t+LblRmvdGJ5SDgSeMspFsBsq5ud4BfufktUOBN6zm4r30zJXsJIcdJTnBaw=\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"1c82-D06us1reYoQzK+YZAjxX5dXa8uc\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:36:37 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "5723c022-b8a7-445a-b7cb-564f1753ca92" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:36:37.495Z", + "time": 240, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 240 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_all_file_3124693826/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_all_file_3124693826/oauth2_393036114/recording.har new file mode 100644 index 000000000..bfb11c8cc --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_all_file_3124693826/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-export/0_all_file/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-d8e7ec55-d399-4469-801a-ed55eb5075a3" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":898}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:36:37 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-d8e7ec55-d399-4469-801a-ed55eb5075a3" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 581, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:36:36.903Z", + "time": 167, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 167 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_all_file_3124693826/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_all_file_3124693826/openidm_3290118515/recording.har new file mode 100644 index 000000000..0b464e0b4 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_all_file_3124693826/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-export/0_all_file/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-d8e7ec55-d399-4469-801a-ed55eb5075a3" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:36:37 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-d8e7ec55-d399-4469-801a-ed55eb5075a3" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:36:37.132Z", + "time": 177, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 177 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-d8e7ec55-d399-4469-801a-ed55eb5075a3" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:36:37 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-d8e7ec55-d399-4469-801a-ed55eb5075a3" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 683, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:36:37.378Z", + "time": 111, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 111 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_no-metadata_a_directory_3627220595/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_no-metadata_a_directory_3627220595/am_1076162899/recording.har new file mode 100644 index 000000000..f9c194fc2 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_no-metadata_a_directory_3627220595/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-export/0_no-metadata_a_directory/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-55da8ece-a8d2-4532-a6c6-e78c197148a7" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:41:21 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-55da8ece-a8d2-4532-a6c6-e78c197148a7" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 779, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:41:21.239Z", + "time": 144, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 144 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-55da8ece-a8d2-4532-a6c6-e78c197148a7" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:41:21 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-55da8ece-a8d2-4532-a6c6-e78c197148a7" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:41:21.624Z", + "time": 115, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 115 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_no-metadata_a_directory_3627220595/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_no-metadata_a_directory_3627220595/environment_1072573434/recording.har new file mode 100644 index 000000000..61018c92d --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_no-metadata_a_directory_3627220595/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-export/0_no-metadata_a_directory/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:41:21 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "77bbc93c-bbfd-42f4-bee9-6333fb8e2197" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:41:21.746Z", + "time": 117, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 117 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_no-metadata_a_directory_3627220595/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_no-metadata_a_directory_3627220595/iga_2664973160/recording.har new file mode 100644 index 000000000..9a3a61a5a --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_no-metadata_a_directory_3627220595/iga_2664973160/recording.har @@ -0,0 +1,147 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-export/0_no-metadata_a_directory/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "e96c9157e11f0be3fd8dc025a80986b6", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy/rule?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 2019, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 2019, + "text": "[\"G4EcAOR3r2Jfv9Hr3YbULGO4mc6Z9mZUYXhOUG0TAU4bRb5a0/FxkbKahazSTwViB6xoDwPsSqCYVacKUALaCk+sKkzU11gC1yjVQgxzlb3zd4WGGAOVNbsbPE3WrYD97wazmxAs7LHUzZs0Rn8FAuHe8/PONaZ5ueZ80JsfAo5YcTPhj0AgJL9MOFdXY5o/5BEsHFM6jrj1aQICgut5t4z4+suMGewNjvGC86uMr/ImY6lpBgIxgIXnKXrI4e5SMN9tBsGVN4a2plVUDlLRnqGkgwk9G5wMfmiBwOTiCBYqlvpnxVIzDym6DwQILAVzpmt5+ni3x1I/FMywErjENJbixVJ0o87XeEGwNS9IoHg3769nLGBvcM54aQiwUvOAFaVSVwKXxcgGItXeoGPJkspzk5VnOGR8qQp6dTM5k/v6UCzrwZKd+PpNQ2CKNR5djfPxfpprTiNYeDk/BjdfjgQe5ng+X2Oad+ESPYKF+yl00xB2BbIX8tjQDYo/4eQK2P/gmN1c3+GULm6Ew9rCWY/iWHuYcr/3s6QMFnavHgCZGTmH7g5X6Ofh2w+7F+//K9ygunzE2vLZMQCZO+0f3bggWOiVR1vXw0ogLyM+wOGNDYhM81i7gXo9I9j/AOca6/jEH2bM4+zmCgei+VDff/1qv3v66hdmYbh9hFGhL2MLVN5F/zin5cy05qPj73n97kvD13ggkGP5/N6njGAVgS8pfx66a9BtZBZ7mUIcruMlmBSnPfTnaR7ix34RB/RXPyLY22aUR2VIAQsP6hj6aXnZlQB+PcfeHnSbE4NlmCjCS4T0aU71FOcjEAjDI1BvRBloMTd4cJLEIfp1cu+f0H8eo4iugr0M2hckaCkWplMl7t1xQIDqNee3H/3vfkJ++zHCujdYJklQb1QR55uze7jncscYMuFBC65iiGrZMcCBAfvRSCGDd45qoxoqB+1o37WGaieCEL7jwpj9ubC64KoDewN0Bz6wp1sC3vCWNi1t2J5p2wgr5NYY9i8QePQPZOXtKso4Zd2eGauY5WZrVKe1ajvxL6wrQbg=\",\"CO2sHmlFCgbiR6ynWDaxbNxmWchmdQLHGeldr/tp/HKKVirRil5Q7fueSu0E7QcjaDCtV8aLTgeTjufPLufrnzXHS8xs7OCNy/lKcDFj3Adm5LxQur6wDJf6CInbLxKlH2VV03bBCUW10YzKgTHaox9o7zRr+9a50JtETUE2xRHLKkdbBtsBiy3WH4LTuV6B0zrQcqz7b+iDZZquDzOn1RaD7OqsaUYqI4chTs1bEfzPDW4suAKW2HL639VG0G+thmGO0JJUrKPvC5Q6kNrlC3ynC3WLm3oFYfahh1GGWQzxDSCEVQmOsvedNLTVvaLSd46azkgqJPMDHxxjhqcHLfess01jRbvVUqhG8LZFMYVICuP6hrHwFGZT10YcsRYI2qeuYqmbvIzIdIHV6qhvhHOOaeqRcypNx2jfOE991/ei9zz0QweoiAHiiORWLJVqwuRDDP4Ux7D/kn6dYkA5aMUMFdwglcEL6vpOUYmu4QI591ylGzif0hgwz1jKz54/xyGSS4F5OkRu5JxPJ/rIaMU4TflIpe1grXoLI94QU2dagUUxtcg0rdk1FRxfYx8Do7YYrASXptZojZJrLmslCrr8Awl7dBdsWf/gKZIcLiFYx0TyNXcvXvjPKJmhYaLlKhueyYDHB9kvpRdP7UYg3oxg1MrccyX6j3U8mDc5eSxl/wQfUt0nZawSWyXaVkrVqQRFtEwjASNKDN1QhcXKd+GBG8cYJfLwGZA9p74mF8faCl4CRClPtj71THXD+AkvXhT4hCNAny9e/ACHyIxo/Emc47fjVIe7o6kgQUVh4n7T10MY9vME4OtuH6cc4KgSYTAqyE5TxxWjUnWBdtwYyuTAeyYYb6VPwh7GqeLcKr3VQkJjtYpys+eNVY1t+LblRmvdGJ5SDgSeMspFsBsq5ud4BfufktUOBN6zm4r30zJXsJIcdJTnBaw=\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"1c82-D06us1reYoQzK+YZAjxX5dXa8uc\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:41:22 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "e121ccd0-9886-430a-a7d9-f5bcd56a368f" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:41:21.998Z", + "time": 300, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 300 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_no-metadata_a_directory_3627220595/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_no-metadata_a_directory_3627220595/oauth2_393036114/recording.har new file mode 100644 index 000000000..50b7bfb63 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_no-metadata_a_directory_3627220595/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-export/0_no-metadata_a_directory/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-55da8ece-a8d2-4532-a6c6-e78c197148a7" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:41:21 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-55da8ece-a8d2-4532-a6c6-e78c197148a7" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 556, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:41:21.425Z", + "time": 178, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 178 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_no-metadata_a_directory_3627220595/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_no-metadata_a_directory_3627220595/openidm_3290118515/recording.har new file mode 100644 index 000000000..37b096471 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-export_2437381653/0_no-metadata_a_directory_3627220595/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-export/0_no-metadata_a_directory/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-55da8ece-a8d2-4532-a6c6-e78c197148a7" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:41:21 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-55da8ece-a8d2-4532-a6c6-e78c197148a7" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 683, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:41:21.658Z", + "time": 185, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 185 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-55da8ece-a8d2-4532-a6c6-e78c197148a7" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:41:21 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-55da8ece-a8d2-4532-a6c6-e78c197148a7" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:41:21.886Z", + "time": 107, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 107 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_AD_3050885125/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_AD_3050885125/am_1076162899/recording.har new file mode 100644 index 000000000..af72ed232 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_AD_3050885125/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_AD/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-66deb497-6b9a-4ef1-89e9-410d3fb02189" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:22:25 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-66deb497-6b9a-4ef1-89e9-410d3fb02189" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 779, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:22:25.266Z", + "time": 153, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 153 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-66deb497-6b9a-4ef1-89e9-410d3fb02189" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:22:25 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-66deb497-6b9a-4ef1-89e9-410d3fb02189" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:22:25.638Z", + "time": 114, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 114 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_AD_3050885125/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_AD_3050885125/environment_1072573434/recording.har new file mode 100644 index 000000000..9fe12797b --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_AD_3050885125/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_AD/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:22:25 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "e8994f1b-4e97-472d-98ac-864ff3793e1a" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:22:25.757Z", + "time": 104, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 104 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_AD_3050885125/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_AD_3050885125/iga_2664973160/recording.har new file mode 100644 index 000000000..79d144d27 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_AD_3050885125/iga_2664973160/recording.har @@ -0,0 +1,147 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_AD/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "e96c9157e11f0be3fd8dc025a80986b6", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy/rule?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 2019, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 2019, + "text": "[\"G4EcAOR3r2Jfv9Hr3YbULGO4mc6Z9mZUYXhOUG0TAU4bRb5a0/FxkbKahazSTwViB6xoDwPsSqCYVacKUALaCk+sKkzU11gC1yjVQgxzlb3zd4WGGAOVNbsbPE3WrYD97wazmxAs7LHUzZs0Rn8FAuHe8/PONaZ5ueZ80JsfAo5YcTPhj0AgJL9MOFdXY5o/5BEsHFM6jrj1aQICgut5t4z4+suMGewNjvGC86uMr/ImY6lpBgIxgIXnKXrI4e5SMN9tBsGVN4a2plVUDlLRnqGkgwk9G5wMfmiBwOTiCBYqlvpnxVIzDym6DwQILAVzpmt5+ni3x1I/FMywErjENJbixVJ0o87XeEGwNS9IoHg3769nLGBvcM54aQiwUvOAFaVSVwKXxcgGItXeoGPJkspzk5VnOGR8qQp6dTM5k/v6UCzrwZKd+PpNQ2CKNR5djfPxfpprTiNYeDk/BjdfjgQe5ng+X2Oad+ESPYKF+yl00xB2BbIX8tjQDYo/4eQK2P/gmN1c3+GULm6Ew9rCWY/iWHuYcr/3s6QMFnavHgCZGTmH7g5X6Ofh2w+7F+//K9ygunzE2vLZMQCZO+0f3bggWOiVR1vXw0ogLyM+wOGNDYhM81i7gXo9I9j/AOca6/jEH2bM4+zmCgei+VDff/1qv3v66hdmYbh9hFGhL2MLVN5F/zin5cy05qPj73n97kvD13ggkGP5/N6njGAVgS8pfx66a9BtZBZ7mUIcruMlmBSnPfTnaR7ix34RB/RXPyLY22aUR2VIAQsP6hj6aXnZlQB+PcfeHnSbE4NlmCjCS4T0aU71FOcjEAjDI1BvRBloMTd4cJLEIfp1cu+f0H8eo4iugr0M2hckaCkWplMl7t1xQIDqNee3H/3vfkJ++zHCujdYJklQb1QR55uze7jncscYMuFBC65iiGrZMcCBAfvRSCGDd45qoxoqB+1o37WGaieCEL7jwpj9ubC64KoDewN0Bz6wp1sC3vCWNi1t2J5p2wgr5NYY9i8QePQPZOXtKso4Zd2eGauY5WZrVKe1ajvxLw==\",\"rCtBuAjtrB5pRQoG4kesp1g2sWzcZlnIZnUCxxnpXa/7afxyilYq0YpeUO37nkrtBO0HI2gwrVfGi04Hk47nzy7n6581x0vMbOzgjcv5SnAxY9wHZuS8ULq+sAyX+giJ2y8SpR9lVdN2wQlFtdGMyoEx2qMfaO80a/vWudCbRE1BNsURyypHWwbbAYst1h+C07legdM60HKs+2/og2Warg8zp9UWg+zqrGlGKiOHIU7NWxH8zw1uLLgClthy+t/VRtBvrYZhjtCSVKyj7wuUOpDa5Qt8pwt1i5t6BWH2oYdRhlkM8Q0ghFUJjrL3nTS01b2i0neOms5IKiTzAx8cY4anBy33rLNNY0W71VKoRvC2RTGFSArj+oax8BRmU9dGHLEWCNqnrmKpm7yMyHSB1eqob4RzjmnqkXMqTcdo3zhPfdf3ovc89EMHqIgB4ojkViyVasLkQwz+FMew/5J+nWJAOWjFDBXcIJXBC+r6TlGJruECOfdcpRs4n9IYMM9Yys+eP8chkkuBeTpEbuScTyf6yGjFOE35SKXtYK16CyPeEFNnWoFFMbXINK3ZNRUcX2MfA6O2GKwEl6bWaI2Say5rJQq6/AMJe3QXbFn/4CmSHC4hWMdE8jV3L174zyiZoWGi5SobnsmAxwfZL6UXT+1GIN6MYNTK3HMl+o91PJg3OXksZf8EH1LdJ2WsElsl2lZK1akERbRMIwEjSgzdUIXFynfhgRvHGCXy8BmQPae+JhfH2gpeAkQpT7Y+9Ux1w/gJL14U+IQjQJ8vXvwAh8iMaPxJnOO341SHu6OpIEFFYeJ+09dDGPbzBODrbh+nHOCoEmEwKshOU8cVo1J1gXbcGMrkwHsmGG+lT8Iexqni3Cq91UJCY7WKcrPnjVWNbfi25UZr3RieUg4EnjLKRbAbKubneAX7n5LVDgTes5uK99MyV7CSHHSU5wWs\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"1c82-D06us1reYoQzK+YZAjxX5dXa8uc\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:22:26 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "bda806cc-a47f-49ef-8e15-ba283dd354e5" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 484, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:22:25.983Z", + "time": 190, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 190 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_AD_3050885125/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_AD_3050885125/oauth2_393036114/recording.har new file mode 100644 index 000000000..19066ea8e --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_AD_3050885125/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_AD/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-66deb497-6b9a-4ef1-89e9-410d3fb02189" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:22:25 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-66deb497-6b9a-4ef1-89e9-410d3fb02189" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 556, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:22:25.460Z", + "time": 144, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 144 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_AD_3050885125/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_AD_3050885125/openidm_3290118515/recording.har new file mode 100644 index 000000000..b6cbbe1c3 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_AD_3050885125/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_AD/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-66deb497-6b9a-4ef1-89e9-410d3fb02189" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:22:25 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-66deb497-6b9a-4ef1-89e9-410d3fb02189" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 683, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:22:25.674Z", + "time": 190, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 190 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-66deb497-6b9a-4ef1-89e9-410d3fb02189" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:22:25 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-66deb497-6b9a-4ef1-89e9-410d3fb02189" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 683, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:22:25.869Z", + "time": 105, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 105 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_af_3559436575/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_af_3559436575/am_1076162899/recording.har new file mode 100644 index 000000000..0c7977b67 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_af_3559436575/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_af/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-708f6512-03ab-42c5-b988-f4dab390b89f" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:59:29 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-708f6512-03ab-42c5-b988-f4dab390b89f" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 804, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:59:29.501Z", + "time": 139, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 139 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-708f6512-03ab-42c5-b988-f4dab390b89f" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:59:29 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-708f6512-03ab-42c5-b988-f4dab390b89f" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 805, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:59:29.819Z", + "time": 109, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 109 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_af_3559436575/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_af_3559436575/environment_1072573434/recording.har new file mode 100644 index 000000000..ba8202732 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_af_3559436575/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_af/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:59:30 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "71a62b35-d551-4d9e-97b4-fed349e5b0cd" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 413, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:59:29.945Z", + "time": 99, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 99 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_af_3559436575/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_af_3559436575/iga_2664973160/recording.har new file mode 100644 index 000000000..cfacea4dd --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_af_3559436575/iga_2664973160/recording.har @@ -0,0 +1,147 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_af/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "e96c9157e11f0be3fd8dc025a80986b6", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy/rule?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 1659, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 1659, + "text": "[\"G9sVAORvr2Zfv56Xuw6OqBJc9dbqzdUUBE9eJioehJx4NJ7/Y/n8WBvw/MQic5tFU/2+aFuUblZNe6NIjNSBV+hARjfRKhrZBgbmtjn8q1cNRSxvhq/Juh2w/83Quw7BwhrHvHgY2uj3QCC8e37FNseht+dsD3vxQ8AWMy46/BEIhMFPHfbZ5Tj0L6kFC5th2LS49EMHBDxu5Glq8f5LjwnsDJu4w/4u4us8JBzz0AOBGMDC9xQ94vB2GjG9LRrBlTeGaqMVlY1UtGYoaWNCzRong280EOhcbMFCxjH/mXHMkRtG7YMBAtOIKdL1XJ6v1jjmlxETHAjs4tCm4tkSulnnc9wh2JwmJDB616/3WxzBzrBNuCsIwFHvgBl9BQ8EXhaj6CCCdoaKpfCp/G6yCoOChD9VIS4HU9a5r6feSk6m5Lxv3BQEupjjxuXYb46HPqehBQu35g5cbIUEPuZ4IZ/j0K/CLnoEC8eTcVEQeSNEL41jUzOM/hU7N4L9DzbJ9fkJu2HnWnh/KOGSs9jmGqZ83/s5hgQWVncnQAytfajuoIMBTh9fVjfP1yYzZJc2mEu+NAYgpjP+zrUTgoVaebzD4f2BQJpaPMHmjw2wDn1bu4W83yLY/wD7HHP7xR9mzXlyfYb3RPlwH9/frVeXdycYReLyE0aldRmZoMYu+vM0TFummo3G33P/tHH4Ot8TSHH8/OyHhGAVgS9D+txUV93cMmvdDiE2+/aiJ8npC/W265v4iW9ig37vWwQ7B6P8VIYAWPhQR+NH+4YHAvh1G2u7bjZx4NhMlJ6XCcPHfsivsd8AgdA8tGUgyobmmOHDSbxN9G7Kj1/Rf26jkFZpf6lbJ0Q3JQtRqbxrt2kQQPam89sR/91h+O1Iwqo3YCf3QRyo0jvbmLnh/OWFMUTCghZMvUHSSmOA9ww4iEIKGbxztDSqoLIpHa0rbWjpRBDCV1yYbn8+zC647MDOgG7tSX+6LeAF17TQtGBrVtpCWCGXxrB/gcCnf0COd6oo45RVa2asYpabpVFVWSpdiX/hcCAIl0G7pEaakYKA\",\"+DHzaxwXcVy4hZ1h4RzDcUp6d+p4aLd7oaUSWtSClr6uqSydoHVjBA1Ge2W8qMpgppP5rUtp/2dOcRcTG/t5cCntCS6LGLUgWs4zpfWZZbi8juC4/SxR+kFWFboKTihampJR2TBGa/QNrV3JdK2dC7WZiClIJxzqWRWjrYRlg0Um6w/Bbpv3wOkYqBzv+IGeTF23P42cVC0C2a1ZUbRUSg6DOE3vgOB/rnHtiAfAYksu/rvc0P1WagjmSEuSiHXkdYFQA65cPsF3WohLPNUdhOmbHkIMtTfotgEI4aIER1n7Shqqy1pR6StHTWUkFZL5hjeOMcOnOy3XrLJFYYVellKoQnCtUUzgpT3Gy3l6M455kaYWMQy7Y85fCU5c20YWpQGNScU6F9v2RtyhVx4nHW+fqLZnlq+PmK2iNzfPAfNShdv0yd6N+ZgOSWM40Id6YmqF2BHpywFwP4wwelSgoygRGqOCrErquGJUqirQihtDmWx4zQTjWvpJOnabLs6tKpelkNBYq6LcrHlhVWELvtTclGVZGD4F3hP4Mg6XwarJmK5xD/Y/ka3eE/g3VJoeD1OfwQpyd67CTHMA\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"15dc-k38/TFyGXNKRREYnqUfoXZoEHYc\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:59:30 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "63c5a9d8-e38f-482b-8c80-b4672f973064" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 484, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:59:30.172Z", + "time": 170, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 170 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_af_3559436575/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_af_3559436575/oauth2_393036114/recording.har new file mode 100644 index 000000000..f00441b73 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_af_3559436575/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_af/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-708f6512-03ab-42c5-b988-f4dab390b89f" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:59:29 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-708f6512-03ab-42c5-b988-f4dab390b89f" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 581, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:59:29.673Z", + "time": 140, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 140 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_af_3559436575/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_af_3559436575/openidm_3290118515/recording.har new file mode 100644 index 000000000..5bb4b9ef2 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_af_3559436575/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_af/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-708f6512-03ab-42c5-b988-f4dab390b89f" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:59:29 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-708f6512-03ab-42c5-b988-f4dab390b89f" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:59:29.857Z", + "time": 197, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 197 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-708f6512-03ab-42c5-b988-f4dab390b89f" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:59:30 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-708f6512-03ab-42c5-b988-f4dab390b89f" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 683, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:59:30.052Z", + "time": 111, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 111 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_all-separate_directory_3135850579/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_all-separate_directory_3135850579/am_1076162899/recording.har new file mode 100644 index 000000000..e9fffd0a6 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_all-separate_directory_3135850579/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_all-separate_directory/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-78f2200d-d3f5-483d-a335-2d311d3c6c83" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:22:51 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-78f2200d-d3f5-483d-a335-2d311d3c6c83" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 779, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:22:51.610Z", + "time": 151, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 151 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-78f2200d-d3f5-483d-a335-2d311d3c6c83" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:22:52 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-78f2200d-d3f5-483d-a335-2d311d3c6c83" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:22:51.943Z", + "time": 104, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 104 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_all-separate_directory_3135850579/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_all-separate_directory_3135850579/environment_1072573434/recording.har new file mode 100644 index 000000000..a6e185b16 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_all-separate_directory_3135850579/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_all-separate_directory/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:22:52 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "49745a96-5961-4b3b-969d-b12e276f9af6" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:22:52.057Z", + "time": 105, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 105 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_all-separate_directory_3135850579/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_all-separate_directory_3135850579/iga_2664973160/recording.har new file mode 100644 index 000000000..086ed8463 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_all-separate_directory_3135850579/iga_2664973160/recording.har @@ -0,0 +1,147 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_all-separate_directory/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "e96c9157e11f0be3fd8dc025a80986b6", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy/rule?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 2019, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 2019, + "text": "[\"G4EcAOR3r2Jfv9Hr3YbULGO4mc6Z9mZUYXhOUG0TAU4bRb5a0/FxkbKahazSTwViB6xoDwPsSqCYVacKUALaCk+sKkzU11gC1yjVQgxzlb3zd4WGGAOVNbsbPE3WrYD97wazmxAs7LHUzZs0Rn8FAuHe8/PONaZ5ueZ80JsfAo5YcTPhj0AgJL9MOFdXY5o/5BEsHFM6jrj1aQICgut5t4z4+suMGewNjvGC86uMr/ImY6lpBgIxgIXnKXrI4e5SMN9tBsGVN4a2plVUDlLRnqGkgwk9G5wMfmiBwOTiCBYqlvpnxVIzDym6DwQILAVzpmt5+ni3x1I/FMywErjENJbixVJ0o87XeEGwNS9IoHg3769nLGBvcM54aQiwUvOAFaVSVwKXxcgGItXeoGPJkspzk5VnOGR8qQp6dTM5k/v6UCzrwZKd+PpNQ2CKNR5djfPxfpprTiNYeDk/BjdfjgQe5ng+X2Oad+ESPYKF+yl00xB2BbIX8tjQDYo/4eQK2P/gmN1c3+GULm6Ew9rCWY/iWHuYcr/3s6QMFnavHgCZGTmH7g5X6Ofh2w+7F+//K9ygunzE2vLZMQCZO+0f3bggWOiVR1vXw0ogLyM+wOGNDYhM81i7gXo9I9j/AOca6/jEH2bM4+zmCgei+VDff/1qv3v66hdmYbh9hFGhL2MLVN5F/zin5cy05qPj73n97kvD13ggkGP5/N6njGAVgS8pfx66a9BtZBZ7mUIcruMlmBSnPfTnaR7ix34RB/RXPyLY22aUR2VIAQsP6hj6aXnZlQB+PcfeHnSbE4NlmCjCS4T0aU71FOcjEAjDI1BvRBloMTd4cJLEIfp1cu+f0H8eo4iugr0M2hckaCkWplMl7t1xQIDqNee3H/3vfkJ++zHCujdYJklQb1QR55uze7jncscYMuFBC65iiGrZMcCBAfvRSCGDd45qoxoqB+1o37WGaieCEL7jwpj9ubC64KoDewN0Bz6wp1sC3vCWNi1t2J5p2wgr5NYY9i8QePQPZOXtKso4Zd2eGauY5WZrVKe1ajvxL6wrQQ==\",\"uAjtrB5pRQoG4kesp1g2sWzcZlnIZnUCxxnpXa/7afxyilYq0YpeUO37nkrtBO0HI2gwrVfGi04Hk47nzy7n6581x0vMbOzgjcv5SnAxY9wHZuS8ULq+sAyX+giJ2y8SpR9lVdN2wQlFtdGMyoEx2qMfaO80a/vWudCbRE1BNsURyypHWwbbAYst1h+C07legdM60HKs+2/og2Warg8zp9UWg+zqrGlGKiOHIU7NWxH8zw1uLLgClthy+t/VRtBvrYZhjtCSVKyj7wuUOpDa5Qt8pwt1i5t6BWH2oYdRhlkM8Q0ghFUJjrL3nTS01b2i0neOms5IKiTzAx8cY4anBy33rLNNY0W71VKoRvC2RTGFSArj+oax8BRmU9dGHLEWCNqnrmKpm7yMyHSB1eqob4RzjmnqkXMqTcdo3zhPfdf3ovc89EMHqIgB4ojkViyVasLkQwz+FMew/5J+nWJAOWjFDBXcIJXBC+r6TlGJruECOfdcpRs4n9IYMM9Yys+eP8chkkuBeTpEbuScTyf6yGjFOE35SKXtYK16CyPeEFNnWoFFMbXINK3ZNRUcX2MfA6O2GKwEl6bWaI2Say5rJQq6/AMJe3QXbFn/4CmSHC4hWMdE8jV3L174zyiZoWGi5SobnsmAxwfZL6UXT+1GIN6MYNTK3HMl+o91PJg3OXksZf8EH1LdJ2WsElsl2lZK1akERbRMIwEjSgzdUIXFynfhgRvHGCXy8BmQPae+JhfH2gpeAkQpT7Y+9Ux1w/gJL14U+IQjQJ8vXvwAh8iMaPxJnOO341SHu6OpIEFFYeJ+09dDGPbzBODrbh+nHOCoEmEwKshOU8cVo1J1gXbcGMrkwHsmGG+lT8Iexqni3Cq91UJCY7WKcrPnjVWNbfi25UZr3RieUg4EnjLKRbAbKubneAX7n5LVDgTes5uK99MyV7CSHHSU5wWs\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"1c82-D06us1reYoQzK+YZAjxX5dXa8uc\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:22:52 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "6dcadacc-db45-426d-8010-bd8b76bcc6ad" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:22:52.279Z", + "time": 185, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 185 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_all-separate_directory_3135850579/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_all-separate_directory_3135850579/oauth2_393036114/recording.har new file mode 100644 index 000000000..717fd5a32 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_all-separate_directory_3135850579/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_all-separate_directory/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-78f2200d-d3f5-483d-a335-2d311d3c6c83" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:22:51 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-78f2200d-d3f5-483d-a335-2d311d3c6c83" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 556, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:22:51.798Z", + "time": 133, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 133 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_all-separate_directory_3135850579/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_all-separate_directory_3135850579/openidm_3290118515/recording.har new file mode 100644 index 000000000..088f8bd2f --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_all-separate_directory_3135850579/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_all-separate_directory/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-78f2200d-d3f5-483d-a335-2d311d3c6c83" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:22:52 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-78f2200d-d3f5-483d-a335-2d311d3c6c83" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 683, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:22:51.983Z", + "time": 176, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 176 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-78f2200d-d3f5-483d-a335-2d311d3c6c83" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 19:22:52 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-78f2200d-d3f5-483d-a335-2d311d3c6c83" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T19:22:52.168Z", + "time": 103, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 103 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_f_2727575938/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_f_2727575938/am_1076162899/recording.har new file mode 100644 index 000000000..8ab85922c --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_f_2727575938/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_f/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-7efe9753-17c6-415d-a4b5-78178eafb516" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:59:05 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-7efe9753-17c6-415d-a4b5-78178eafb516" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 779, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:59:05.295Z", + "time": 152, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 152 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-7efe9753-17c6-415d-a4b5-78178eafb516" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:59:05 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-7efe9753-17c6-415d-a4b5-78178eafb516" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:59:05.643Z", + "time": 114, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 114 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_f_2727575938/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_f_2727575938/environment_1072573434/recording.har new file mode 100644 index 000000000..c94b5a9b4 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_f_2727575938/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_f/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:59:05 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "d8500f7c-5a3d-49dd-bad5-303a90df2273" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:59:05.776Z", + "time": 100, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 100 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_f_2727575938/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_f_2727575938/iga_2664973160/recording.har new file mode 100644 index 000000000..a39db6e71 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_f_2727575938/iga_2664973160/recording.har @@ -0,0 +1,147 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_f/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "e96c9157e11f0be3fd8dc025a80986b6", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy/rule?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 1659, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 1659, + "text": "[\"G9sVAORvr2Zfv56Xuw6OqBJc9dbqzdUUBE9eJioehJx4NJ7/Y/n8WBvw/MQic5tFU/2+aFuUblZNe6NIjNSBV+hARjfRKhrZBgbmtjn8q1cNRSxvhq/Juh2w/83Quw7BwhrHvHgY2uj3QCC8e37FNseht+dsD3vxQ8AWMy46/BEIhMFPHfbZ5Tj0L6kFC5th2LS49EMHBDxu5Glq8f5LjwnsDJu4w/4u4us8JBzz0AOBGMDC9xQ94vB2GjG9LRrBlTeGaqMVlY1UtGYoaWNCzRong280EOhcbMFCxjH/mXHMkRtG7YMBAtOIKdL1XJ6v1jjmlxETHAjs4tCm4tkSulnnc9wh2JwmJDB616/3WxzBzrBNuCsIwFHvgBl9BQ8EXhaj6CCCdoaKpfCp/G6yCoOChD9VIS4HU9a5r6feSk6m5Lxv3BQEupjjxuXYb46HPqehBQu35g5cbIUEPuZ4IZ/j0K/CLnoEC8eTcVEQeSNEL41jUzOM/hU7N4L9DzbJ9fkJu2HnWnh/KOGSs9jmGqZ83/s5hgQWVncnQAytfajuoIMBTh9fVjfP1yYzZJc2mEu+NAYgpjP+zrUTgoVaebzD4f2BQJpaPMHmjw2wDn1bu4W83yLY/wD7HHP7xR9mzXlyfYb3RPlwH9/frVeXdycYReLyE0aldRmZoMYu+vM0TFummo3G33P/tHH4Ot8TSHH8/OyHhGAVgS9D+txUV93cMmvdDiE2+/aiJ8npC/W265v4iW9ig37vWwQ7B6P8VIYAWPhQR+NH+4YHAvh1G2u7bjZx4NhMlJ6XCcPHfsivsd8AgdA8tGUgyobmmOHDSbxN9G7Kj1/Rf26jkFZpf6lbJ0Q3JQtRqbxrt2kQQPam89sR/91h+O1Iwqo3YCf3QRyo0jvbmLnh/OWFMUTCghZMvUHSSmOA9ww4iEIKGbxztDSqoLIpHa0rbWjpRBDCV1yYbn8+zC647MDOgG7tSX+6LeAF17TQtGBrVtpCWCGXxrB/gcCnf0COd6oo45RVa2asYpabpVFVWSpdiX/hcCAIl0G7pEaakYKA+DHzaxwXcVy4hZ1h4RzDcUp6d+p4aLd7oaUSWtSClr6uqSydoHVjBA1Ge2W8qMpgppP5rUtp/2dOcRcTG/t5cCntCS6LGLUgWs4zpfWZZbi8juC4/SxR+kFWFboKTihampJR2TBGa/QNrV3JdK2dC7WZ\",\"iClIJxzqWRWjrYRlg0Um6w/Bbpv3wOkYqBzv+IGeTF23P42cVC0C2a1ZUbRUSg6DOE3vgOB/rnHtiAfAYksu/rvc0P1WagjmSEuSiHXkdYFQA65cPsF3WohLPNUdhOmbHkIMtTfotgEI4aIER1n7Shqqy1pR6StHTWUkFZL5hjeOMcOnOy3XrLJFYYVellKoQnCtUUzgpT3Gy3l6M455kaYWMQy7Y85fCU5c20YWpQGNScU6F9v2RtyhVx4nHW+fqLZnlq+PmK2iNzfPAfNShdv0yd6N+ZgOSWM40Id6YmqF2BHpywFwP4wwelSgoygRGqOCrErquGJUqirQihtDmWx4zQTjWvpJOnabLs6tKpelkNBYq6LcrHlhVWELvtTclGVZGD4F3hP4Mg6XwarJmK5xD/Y/ka3eE/g3VJoeD1OfwQpyd67CTHMA\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"15dc-k38/TFyGXNKRREYnqUfoXZoEHYc\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:59:06 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "45d194e5-cadb-4727-8872-b83019017739" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:59:06.007Z", + "time": 330, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 330 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_f_2727575938/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_f_2727575938/oauth2_393036114/recording.har new file mode 100644 index 000000000..4ebdb5d82 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_f_2727575938/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_f/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-7efe9753-17c6-415d-a4b5-78178eafb516" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:59:05 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-7efe9753-17c6-415d-a4b5-78178eafb516" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 556, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:59:05.485Z", + "time": 143, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 143 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_f_2727575938/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_f_2727575938/openidm_3290118515/recording.har new file mode 100644 index 000000000..e0884cb61 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_f_2727575938/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_f/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-7efe9753-17c6-415d-a4b5-78178eafb516" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:59:05 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-7efe9753-17c6-415d-a4b5-78178eafb516" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:59:05.678Z", + "time": 201, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 201 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-7efe9753-17c6-415d-a4b5-78178eafb516" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:59:05 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-7efe9753-17c6-415d-a4b5-78178eafb516" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:59:05.883Z", + "time": 114, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 114 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_n_f_4242328059/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_n_f_4242328059/am_1076162899/recording.har new file mode 100644 index 000000000..a50fb60fd --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_n_f_4242328059/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_n_f/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-d7e31f21-c738-4c27-a213-669f7b134a9f" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:58:16 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-d7e31f21-c738-4c27-a213-669f7b134a9f" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 804, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:58:16.145Z", + "time": 153, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 153 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-d7e31f21-c738-4c27-a213-669f7b134a9f" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:58:16 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-d7e31f21-c738-4c27-a213-669f7b134a9f" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 805, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:58:16.500Z", + "time": 108, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 108 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_n_f_4242328059/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_n_f_4242328059/environment_1072573434/recording.har new file mode 100644 index 000000000..52c916bf5 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_n_f_4242328059/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_n_f/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:58:16 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "cff7aba5-aad3-46ec-b28f-65de7ee17470" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:58:16.615Z", + "time": 100, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 100 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_n_f_4242328059/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_n_f_4242328059/iga_2664973160/recording.har new file mode 100644 index 000000000..78a7898bb --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_n_f_4242328059/iga_2664973160/recording.har @@ -0,0 +1,147 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_n_f/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "e96c9157e11f0be3fd8dc025a80986b6", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy/rule?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 1663, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 1663, + "text": "[\"G9sVAORvr2Zfv56Xuw6OqBJc9dbqzdUUBE9eJioehJx4NJ7/Y/n8WBvw/MQic5tFU/2+aFuUblZNe6NIjNSBV+hARjfRKhrZBgbmtjn8q1cNRSxvhq/Juh2w/83Quw7BwhrHvHgY2uj3QCC8e37FNseht+dsD3vxQ8AWMy46/BEIhMFPHfbZ5Tj0L6kFC5th2LS49EMHBDxu5Glq8f5LjwnsDJu4w/4u4us8JBzz0AOBGMDC9xQ94vB2GjG9LRrBlTeGaqMVlY1UtGYoaWNCzRong280EOhcbMFCxjH/mXHMkRtG7YMBAtOIKdL1XJ6v1jjmlxETHAjs4tCm4tkSulnnc9wh2JwmJDB616/3WxzBzrBNuCsIwFHvgBl9BQ8EXhaj6CCCdoaKpfCp/G6yCoOChD9VIS4HU9a5r6feSk6m5Lxv3BQEupjjxuXYb46HPqehBQu35g5cbIUEPuZ4IZ/j0K/CLnoEC8eTcVEQeSNEL41jUzOM/hU7N4L9DzbJ9fkJu2HnWnh/KOGSs9jmGqZ83/s5hgQWVncnQAytfajuoIMBTh9fVjfP1yYzZJc2mEu+NAYgpjP+zrUTgoVaebzD4f2BQJpaPMHmjw2wDn1bu4W83yLY/wD7HHP7xR9mzXlyfYb3RPlwH9/frVeXdycYReLyE0aldRmZoMYu+vM0TFummo3G33P/tHH4Ot8TSHH8/OyHhGAVgS9D+txUV93cMmvdDiE2+/aiJ8npC/W265v4iW9ig37vWwQ7B6P8VIYAWPhQR+NH+4YHAvh1G2u7bjZx4NhMlJ6XCcPHfsivsd8AgdA8tGUgyobmmOHDSbxN9G7Kj1/Rf26jkFZpf6lbJ0Q3JQtRqbxrt2kQQPam89sR/91h+O1Iwqo3YCf3QRyo0jvbmLnh/OWFMUTCghZMvUHSSmOA9ww4iEIKGbxztDSqoLIpHa0rbWjpRBDCV1yYbn8+zC647MDOgG7tSX+6LeAF17TQtGBrVtpCWCGXxrB/gcCnf0COd6oo45RVa2asYpabpVFVWSpdiX/hcCAIl0G7pEaakYKA+A==\",\"MfNrHBdxXLiFnWHhHMNxSnp36nhot3uhpRJa1IKWvq6pLJ2gdWMEDUZ7ZbyoymCmk/mtS2n/Z05xFxMb+3lwKe0JLosYtSBazjOl9ZlluLyO4Lj9LFH6QVYVugpOKFqaklHZMEZr9A2tXcl0rZ0LtZmIKUgnHOpZFaOthGWDRSbrD8Fum/fA6RioHO/4gZ5MXbc/jZxULQLZrVlRtFRKDoM4Te+A4H+uce2IB8BiSy7+u9zQ/VZqCOZIS5KIdeR1gVADrlw+wXdaiEs81R2E6ZseQgy1N+i2AQjhogRHWftKGqrLWlHpK0dNZSQVkvmGN44xw6c7LdesskVhhV6WUqhCcK1RTOClPcbLeXozjnmRphYxDLtjzl8JTlzbRhalAY1JxToX2/ZG3KFXHicdb5+otmeWr4+YraI3N88B81KF2/TJ3o35mA5JYzjQh3piaoXYEenLAXA/jDB6VKCjKBEao4KsSuq4YlSqKtCKG0OZbHjNBONa+kk6dpsuzq0ql6WQ0FirotyseWFVYQu+1NyUZVkYPgXeE/gyDpfBqsmYrnEP9j+Rrd4T+DdUmh4PU5/BCnJ3rsJMcwA=\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"15dc-k38/TFyGXNKRREYnqUfoXZoEHYc\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:58:17 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "ad0e6e4c-33cd-4b39-9e97-975de65f3423" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 484, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:58:16.840Z", + "time": 334, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 334 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_n_f_4242328059/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_n_f_4242328059/oauth2_393036114/recording.har new file mode 100644 index 000000000..7367a1e6b --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_n_f_4242328059/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_n_f/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-d7e31f21-c738-4c27-a213-669f7b134a9f" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:58:16 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-d7e31f21-c738-4c27-a213-669f7b134a9f" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 581, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:58:16.332Z", + "time": 157, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 157 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_n_f_4242328059/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_n_f_4242328059/openidm_3290118515/recording.har new file mode 100644 index 000000000..3eb2d127d --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_n_f_4242328059/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_n_f/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-d7e31f21-c738-4c27-a213-669f7b134a9f" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:58: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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-d7e31f21-c738-4c27-a213-669f7b134a9f" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:58:16.540Z", + "time": 193, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 193 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-d7e31f21-c738-4c27-a213-669f7b134a9f" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:58: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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-d7e31f21-c738-4c27-a213-669f7b134a9f" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 683, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:58:16.723Z", + "time": 108, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 108 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_rule-name_file_754998057/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_rule-name_file_754998057/am_1076162899/recording.har new file mode 100644 index 000000000..a76a25a51 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_rule-name_file_754998057/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_rule-name_file/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-192dff6e-08c1-4fb4-9a8f-b9ca3e9f8be0" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:58:39 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-192dff6e-08c1-4fb4-9a8f-b9ca3e9f8be0" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 804, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:58:39.191Z", + "time": 150, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 150 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-192dff6e-08c1-4fb4-9a8f-b9ca3e9f8be0" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:58:39 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-192dff6e-08c1-4fb4-9a8f-b9ca3e9f8be0" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 805, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:58:39.536Z", + "time": 115, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 115 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_rule-name_file_754998057/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_rule-name_file_754998057/environment_1072573434/recording.har new file mode 100644 index 000000000..c0d940775 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_rule-name_file_754998057/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_rule-name_file/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:58:42 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "2f2977ef-4e97-41f2-93e9-4ab0531a939b" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 413, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:58:39.657Z", + "time": 3152, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 3152 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_rule-name_file_754998057/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_rule-name_file_754998057/iga_2664973160/recording.har new file mode 100644 index 000000000..19f214f66 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_rule-name_file_754998057/iga_2664973160/recording.har @@ -0,0 +1,147 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_rule-name_file/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "e96c9157e11f0be3fd8dc025a80986b6", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy/rule?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 1663, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 1663, + "text": "[\"G9sVAORvr2Zfv56Xuw6OqBJc9dbqzdUUBE9eJioehJx4NJ7/Y/n8WBvw/MQic5tFU/2+aFuUblZNe6NIjNSBV+hARjfRKhrZBgbmtjn8q1cNRSxvhq/Juh2w/83Quw7BwhrHvHgY2uj3QCC8e37FNseht+dsD3vxQ8AWMy46/BEIhMFPHfbZ5Tj0L6kFC5th2LS49EMHBDxu5Glq8f5LjwnsDJu4w/4u4us8JBzz0AOBGMDC9xQ94vB2GjG9LRrBlTeGaqMVlY1UtGYoaWNCzRong280EOhcbMFCxjH/mXHMkRtG7YMBAtOIKdL1XJ6v1jjmlxETHAjs4tCm4tkSulnnc9wh2JwmJDB616/3WxzBzrBNuCsIwFHvgBl9BQ8EXhaj6CCCdoaKpfCp/G6yCoOChD9VIS4HU9a5r6feSk6m5Lxv3BQEupjjxuXYb46HPqehBQu35g5cbIUEPuZ4IZ/j0K/CLnoEC8eTcVEQeSNEL41jUzOM/hU7N4L9DzbJ9fkJu2HnWnh/KOGSs9jmGqZ83/s5hgQWVncnQAytfajuoIMBTh9fVjfP1yYzZJc2mEu+NAYgpjP+zrUTgoVaebzD4f2BQJpaPMHmjw2wDn1bu4W83yLY/wD7HHP7xR9mzXlyfYb3RPlwH9/frVeXdycYReLyE0aldRmZoMYu+vM0TFummo3G33P/tHH4Ot8TSHH8/OyHhGAVgS9D+txUV93cMmvdDiE2+/aiJ8npC/W265v4iW9ig37vWwQ7B6P8VIYAWPhQR+NH+4YHAvh1G2u7bjZx4NhMlJ6XCcPHfsivsd8AgdA8tGUgyobmmOHDSbxN9G7Kj1/Rf26jkFZpf6lbJ0Q3JQtRqbxrt2kQQPam89sR/91h+O1Iwqo3YCf3QRyo0jvbmLnh/OWFMUTCghZMvUHSSmOA9ww4iEIKGbxztDSqoLIpHa0rbWjpRBDCV1yYbn8+zC647MDOgG7tSX+6LeAF17TQtGBrVtpCWCGXxrB/gcCnf0COd6oo45RVa2asYpabpVFVWSpdiX/hcCAIl0G7pEaakYKA+DHzaxwXcVy4hZ1h4RzDcUp6d+p4aLd7oaUSWtSClr6uqSydoHVjBA1Ge2W8qMpgppP5rUtp/2dOcRcTG/t5cCntCS6LGLUgWs4zpfWZZbi8juC4/SxR+kE=\",\"VhW6Ck4oWpqSUdkwRmv0Da1dyXStnQu1mYgpSCcc6lkVo62EZYNFJusPwW6b98DpGKgc7/iBnkxdtz+NnFQtAtmtWVG0VEoOgzhN74Dgf65x7YgHwGJLLv673ND9VmoI5khLkoh15HWBUAOuXD7Bd1qISzzVHYTpmx5CDLU36LYBCOGiBEdZ+0oaqstaUekrR01lJBWS+YY3jjHDpzst16yyRWGFXpZSqEJwrVFM4KU9xst5ejOOeZGmFjEMu2POXwlOXNtGFqUBjUnFOhfb9kbcoVceJx1vn6i2Z5avj5itojc3zwHzUoXb9MnejfmYDkljONCHemJqhdgR6csBcD+MMHpUoKMoERqjgqxK6rhiVKoq0IobQ5lseM0E41r6STp2my7OrSqXpZDQWKui3Kx5YVVhC77U3JRlWRg+Bd4T+DIOl8GqyZiucQ/2P5Gt3hP4N1SaHg9Tn8EKcneuwkxzAA==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"15dc-k38/TFyGXNKRREYnqUfoXZoEHYc\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:58:43 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "06fd7480-f1e0-474e-93ac-d30132be76e9" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 484, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:58:42.931Z", + "time": 181, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 181 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_rule-name_file_754998057/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_rule-name_file_754998057/oauth2_393036114/recording.har new file mode 100644 index 000000000..0b37d5dc0 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_rule-name_file_754998057/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_rule-name_file/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-192dff6e-08c1-4fb4-9a8f-b9ca3e9f8be0" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:58:39 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-192dff6e-08c1-4fb4-9a8f-b9ca3e9f8be0" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 581, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:58:39.355Z", + "time": 156, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 156 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_rule-name_file_754998057/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_rule-name_file_754998057/openidm_3290118515/recording.har new file mode 100644 index 000000000..466ba26a9 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-import_151688422/0_rule-name_file_754998057/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-import/0_rule-name_file/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-192dff6e-08c1-4fb4-9a8f-b9ca3e9f8be0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:58:39 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-192dff6e-08c1-4fb4-9a8f-b9ca3e9f8be0" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:58:39.572Z", + "time": 189, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 189 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-192dff6e-08c1-4fb4-9a8f-b9ca3e9f8be0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 18:58:42 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-192dff6e-08c1-4fb4-9a8f-b9ca3e9f8be0" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 683, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T18:58:42.827Z", + "time": 98, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 98 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_890022063/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_890022063/am_1076162899/recording.har new file mode 100644 index 000000000..16f40421a --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_890022063/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-list/0/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-281d34a9-b4f8-4a9f-bc07-978b7f8e3c07" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 20:20:20 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-281d34a9-b4f8-4a9f-bc07-978b7f8e3c07" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 779, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T20:20:20.497Z", + "time": 170, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 170 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-281d34a9-b4f8-4a9f-bc07-978b7f8e3c07" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 20:20:21 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-281d34a9-b4f8-4a9f-bc07-978b7f8e3c07" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T20:20:20.925Z", + "time": 129, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 129 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_890022063/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_890022063/environment_1072573434/recording.har new file mode 100644 index 000000000..da731e8c0 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_890022063/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-list/0/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 20:20:21 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "7dc6a9fc-8973-487e-9047-5ff15ce903fa" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T20:20:21.063Z", + "time": 103, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 103 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_890022063/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_890022063/iga_2664973160/recording.har new file mode 100644 index 000000000..0b1ceb216 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_890022063/iga_2664973160/recording.har @@ -0,0 +1,147 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-list/0/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "e96c9157e11f0be3fd8dc025a80986b6", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy/rule?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 2019, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 2019, + "text": "[\"G4EcAOR3r2Jfv9Hr3YbULGO4mc6Z9mZUYXhOUG0TAU4bRb5a0/FxkbKahazSTwViB6xoDwPsSqCYVacKUALaCk+sKkzU11gC1yjVQgxzlb3zd4WGGAOVNbsbPE3WrYD97wazmxAs7LHUzZs0Rn8FAuHe8/PONaZ5ueZ80JsfAo5YcTPhj0AgJL9MOFdXY5o/5BEsHFM6jrj1aQICgut5t4z4+suMGewNjvGC86uMr/ImY6lpBgIxgIXnKXrI4e5SMN9tBsGVN4a2plVUDlLRnqGkgwk9G5wMfmiBwOTiCBYqlvpnxVIzDym6DwQILAVzpmt5+ni3x1I/FMywErjENJbixVJ0o87XeEGwNS9IoHg3769nLGBvcM54aQiwUvOAFaVSVwKXxcgGItXeoGPJkspzk5VnOGR8qQp6dTM5k/v6UCzrwZKd+PpNQ2CKNR5djfPxfpprTiNYeDk/BjdfjgQe5ng+X2Oad+ESPYKF+yl00xB2BbIX8tjQDYo/4eQK2P/gmN1c3+GULm6Ew9rCWY/iWHuYcr/3s6QMFnavHgCZGTmH7g5X6Ofh2w+7F+//K9ygunzE2vLZMQCZO+0f3bggWOiVR1vXw0ogLyM+wOGNDYhM81i7gXo9I9j/AOca6/jEH2bM4+zmCgei+VDff/1qv3v66hdmYbh9hFGhL2MLVN5F/zin5cy05qPj73n97kvD13ggkGP5/N6njGAVgS8pfx66a9BtZBZ7mUIcruMlmBSnPfTnaR7ix34RB/RXPyLY22aUR2VIAQsP6hj6aXnZlQB+PcfeHnSbE4NlmCjCS4T0aU71FOcjEAjDI1BvRBloMTd4cJLEIfp1cu+f0H8eo4iugr0M2hckaCkWplMl7t1xQIDqNee3H/3vfkJ++zHCujdYJklQb1QR55uze7jncscYMuFBC65iiGrZMcCBAfvRSCGDd45qoxoqB+1o37WGaieCEL7jwpj9ubC64KoDewN0Bz6wp1sC3vCWNi1t2J5p2wgr5NYY9i8QePQPZOXtKso4Zd2eGauY5WZrVKe1\",\"ajvxL6wrQbgI7aweaUUKBuJHrKdYNrFs3GZZyGZ1AscZ6V2v+2n8copWKtGKXlDt+55K7QTtByNoMK1XxotOB5OO588u5+ufNcdLzGzs4I3L+UpwMWPcB2bkvFC6vrAMl/oIidsvEqUfZVXTdsEJRbXRjMqBMdqjH2jvNGv71rnQm0RNQTbFEcsqR1sG2wGLLdYfgtO5XoHTOtByrPtv6INlmq4PM6fVFoPs6qxpRiojhyFOzVsR/M8Nbiy4ApbYcvrf1UbQb62GYY7QklSso+8LlDqQ2uULfKcLdYubegVh9qGHUYZZDPENIIRVCY6y9500tNW9otJ3jprOSCok8wMfHGOGpwct96yzTWNFu9VSqEbwtkUxhUgK4/qGsfAUZlPXRhyxFgjap65iqZu8jMh0gdXqqG+Ec45p6pFzKk3HaN84T33X96L3PPRDB6iIAeKI5FYslWrC5EMM/hTHsP+Sfp1iQDloxQwV3CCVwQvq+k5Ria7hAjn3XKUbOJ/SGDDPWMrPnj/HIZJLgXk6RG7knE8n+shoxThN+Uil7WCtegsj3hBTZ1qBRTG1yDSt2TUVHF9jHwOjthisBJem1miNkmsuayUKuvwDCXt0F2xZ/+ApkhwuIVjHRPI1dy9e+M8omaFhouUqG57JgMcH2S+lF0/tRiDejGDUytxzJfqPdTyYNzl5LGX/BB9S3SdlrBJbJdpWStWpBEW0TCMBI0oM3VCFxcp34YEbxxgl8vAZkD2nviYXx9oKXgJEKU+2PvVMdcP4CS9eFPiEI0CfL178AIfIjGj8SZzjt+NUh7ujqSBBRWHiftPXQxj28wTg624fpxzgqBJhMCrITlPHFaNSdYF23BjK5MB7JhhvpU/CHsap4twqvdVCQmO1inKz541VjW34tuVGa90YnlIOBJ4yykWwGyrm53gF+5+S1Q4E3rObivfTMlewkhx0lOcFrA==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"1c82-D06us1reYoQzK+YZAjxX5dXa8uc\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 20:20:21 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "e1143e1e-771d-4831-9e31-229a18b3238c" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T20:20:21.278Z", + "time": 320, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 320 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_890022063/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_890022063/oauth2_393036114/recording.har new file mode 100644 index 000000000..78d1c04f3 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_890022063/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-list/0/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-281d34a9-b4f8-4a9f-bc07-978b7f8e3c07" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 20:20:20 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-281d34a9-b4f8-4a9f-bc07-978b7f8e3c07" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 556, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T20:20:20.701Z", + "time": 213, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 213 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_890022063/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_890022063/openidm_3290118515/recording.har new file mode 100644 index 000000000..007423224 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_890022063/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-list/0/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-281d34a9-b4f8-4a9f-bc07-978b7f8e3c07" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 20:20:21 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-281d34a9-b4f8-4a9f-bc07-978b7f8e3c07" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T20:20:20.963Z", + "time": 303, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 303 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-281d34a9-b4f8-4a9f-bc07-978b7f8e3c07" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 20:20:21 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-281d34a9-b4f8-4a9f-bc07-978b7f8e3c07" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T20:20:21.173Z", + "time": 95, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 95 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_l_2828241652/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_l_2828241652/am_1076162899/recording.har new file mode 100644 index 000000000..d84039258 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_l_2828241652/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-list/0_l/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-02a2d578-2cef-479f-b00d-876784845d2c" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 20:20:45 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-02a2d578-2cef-479f-b00d-876784845d2c" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 779, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T20:20:45.593Z", + "time": 158, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 158 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-02a2d578-2cef-479f-b00d-876784845d2c" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 20:20:46 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-02a2d578-2cef-479f-b00d-876784845d2c" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T20:20:45.944Z", + "time": 125, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 125 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_l_2828241652/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_l_2828241652/environment_1072573434/recording.har new file mode 100644 index 000000000..6f7effa94 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_l_2828241652/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-list/0_l/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 20:20:46 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "55782809-6d93-4cd3-9421-edf217357a21" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T20:20:46.075Z", + "time": 116, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 116 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_l_2828241652/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_l_2828241652/iga_2664973160/recording.har new file mode 100644 index 000000000..8e2859980 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_l_2828241652/iga_2664973160/recording.har @@ -0,0 +1,147 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-list/0_l/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "e96c9157e11f0be3fd8dc025a80986b6", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy/rule?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 2019, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 2019, + "text": "[\"G4EcAOR3r2Jfv9Hr3YbULGO4mc6Z9mZUYXhOUG0TAU4bRb5a0/FxkbKahazSTwViB6xoDwPsSqCYVacKUALaCk+sKkzU11gC1yjVQgxzlb3zd4WGGAOVNbsbPE3WrYD97wazmxAs7LHUzZs0Rn8FAuHe8/PONaZ5ueZ80JsfAo5YcTPhj0AgJL9MOFdXY5o/5BEsHFM6jrj1aQICgut5t4z4+suMGewNjvGC86uMr/ImY6lpBgIxgIXnKXrI4e5SMN9tBsGVN4a2plVUDlLRnqGkgwk9G5wMfmiBwOTiCBYqlvpnxVIzDym6DwQILAVzpmt5+ni3x1I/FMywErjENJbixVJ0o87XeEGwNS9IoHg3769nLGBvcM54aQiwUvOAFaVSVwKXxcgGItXeoGPJkspzk5VnOGR8qQp6dTM5k/v6UCzrwZKd+PpNQ2CKNR5djfPxfpprTiNYeDk/BjdfjgQe5ng+X2Oad+ESPYKF+yl00xB2BbIX8tjQDYo/4eQK2P/gmN1c3+GULm6Ew9rCWY/iWHuYcr/3s6QMFnavHgCZGTmH7g5X6Ofh2w+7F+//K9ygunzE2vLZMQCZO+0f3bggWOiVR1vXw0ogLyM+wOGNDYhM81i7gXo9I9j/AOca6/jEH2bM4+zmCgei+VDff/1qv3v66hdmYbh9hFGhL2MLVN5F/zin5cy05qPj73n97kvD13ggkGP5/N6njGAVgS8pfx66a9BtZBZ7mUIcruMlmBSnPfTnaR7ix34RB/RXPyLY22aUR2VIAQsP6hj6aXnZlQB+PcfeHnSbE4NlmCjCS4T0aU71FOcjEAjDI1BvRBloMTd4cJLEIfp1cu+f0H8eo4iugr0M2hckaCkWplMl7t1xQIDqNee3H/3vfkJ++zHCujdYJklQb1QR55uze7jncscYMuFBC65iiGrZMcCBAfvRSCGDd45qoxoqB+1o37WGaieCEL7jwpj9ubC64KoDewN0Bz6wp1sC3vCWNi1t2J5p2wgr5NYY9i8QePQPZOXtKso4Zd2eGauY5WZrVKe1ajvxL6wrQbgI7aweaUUKBuJHrKdYNrFs3GZZyGZ1AscZ6V2v+2n8copWKtGKXlDt+55K7QTtByNoMK1XxotOB5OO588u5+ufNcdLzGzs4I3L+UpwMWPcB2bkvFC6vrAMl/oIidsvEqUfZVXTdsEJRbXRjMqBMdqjH2jv\",\"NGv71rnQm0RNQTbFEcsqR1sG2wGLLdYfgtO5XoHTOtByrPtv6INlmq4PM6fVFoPs6qxpRiojhyFOzVsR/M8Nbiy4ApbYcvrf1UbQb62GYY7QklSso+8LlDqQ2uULfKcLdYubegVh9qGHUYZZDPENIIRVCY6y9500tNW9otJ3jprOSCok8wMfHGOGpwct96yzTWNFu9VSqEbwtkUxhUgK4/qGsfAUZlPXRhyxFgjap65iqZu8jMh0gdXqqG+Ec45p6pFzKk3HaN84T33X96L3PPRDB6iIAeKI5FYslWrC5EMM/hTHsP+Sfp1iQDloxQwV3CCVwQvq+k5Ria7hAjn3XKUbOJ/SGDDPWMrPnj/HIZJLgXk6RG7knE8n+shoxThN+Uil7WCtegsj3hBTZ1qBRTG1yDSt2TUVHF9jHwOjthisBJem1miNkmsuayUKuvwDCXt0F2xZ/+ApkhwuIVjHRPI1dy9e+M8omaFhouUqG57JgMcH2S+lF0/tRiDejGDUytxzJfqPdTyYNzl5LGX/BB9S3SdlrBJbJdpWStWpBEW0TCMBI0oM3VCFxcp34YEbxxgl8vAZkD2nviYXx9oKXgJEKU+2PvVMdcP4CS9eFPiEI0CfL178AIfIjGj8SZzjt+NUh7ujqSBBRWHiftPXQxj28wTg624fpxzgqBJhMCrITlPHFaNSdYF23BjK5MB7JhhvpU/CHsap4twqvdVCQmO1inKz541VjW34tuVGa90YnlIOBJ4yykWwGyrm53gF+5+S1Q4E3rObivfTMlewkhx0lOcFrA==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"1c82-D06us1reYoQzK+YZAjxX5dXa8uc\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 20:20:46 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "67b39d99-5e71-4d03-b39f-922db67d0414" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T20:20:46.330Z", + "time": 181, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 181 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_l_2828241652/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_l_2828241652/oauth2_393036114/recording.har new file mode 100644 index 000000000..b8067a534 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_l_2828241652/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-list/0_l/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-02a2d578-2cef-479f-b00d-876784845d2c" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 20:20:45 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-02a2d578-2cef-479f-b00d-876784845d2c" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 556, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T20:20:45.782Z", + "time": 155, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 155 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_l_2828241652/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_l_2828241652/openidm_3290118515/recording.har new file mode 100644 index 000000000..2581113ee --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_l_2828241652/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-list/0_l/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-02a2d578-2cef-479f-b00d-876784845d2c" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 20:20:46 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-02a2d578-2cef-479f-b00d-876784845d2c" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T20:20:45.979Z", + "time": 188, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 188 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-02a2d578-2cef-479f-b00d-876784845d2c" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 20:20:46 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-02a2d578-2cef-479f-b00d-876784845d2c" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T20:20:46.197Z", + "time": 103, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 103 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_long_276218670/am_1076162899/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_long_276218670/am_1076162899/recording.har new file mode 100644 index 000000000..d36898612 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_long_276218670/am_1076162899/recording.har @@ -0,0 +1,312 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-list/0_long/am", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccd7a5defd0fdeaa986a2b54642d911a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9344671c-6b2e-48c1-a892-cd5f897a3c7e" + }, + { + "name": "accept-api-version", + "value": "resource=1.1" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 398, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/*" + }, + "response": { + "bodySize": 614, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 614, + "text": "{\"_id\":\"*\",\"_rev\":\"959929574\",\"domains\":[],\"protectedUserAttributes\":[\"telephoneNumber\",\"mail\"],\"cookieName\":\"311468432e97f1f\",\"secureCookie\":true,\"forgotPassword\":\"false\",\"forgotUsername\":\"false\",\"kbaEnabled\":\"false\",\"selfRegistration\":\"false\",\"lang\":\"en-US\",\"successfulUserRegistrationDestination\":\"default\",\"socialImplementations\":[],\"referralsEnabled\":\"false\",\"zeroPageLogin\":{\"enabled\":false,\"refererWhitelist\":[],\"allowedWithoutReferer\":true},\"realm\":\"/\",\"xuiUserSessionValidationEnabled\":true,\"fileBasedConfiguration\":true,\"userIdAttributes\":[],\"cloudOnlyFeaturesEnabled\":true,\"oauth2AIAgentsEnabled\":false}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.1" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"959929574\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "614" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 20:21:08 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9344671c-6b2e-48c1-a892-cd5f897a3c7e" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 779, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T20:21:08.387Z", + "time": 152, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 152 + } + }, + { + "_id": "6125d0328ad0dcaee55f73fd8b22ca14", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9344671c-6b2e-48c1-a892-cd5f897a3c7e" + }, + { + "name": "accept-api-version", + "value": "resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1926, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/json/serverinfo/version" + }, + "response": { + "bodySize": 273, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 273, + "text": "{\"_id\":\"version\",\"_rev\":\"1245987628\",\"version\":\"9.0.0-SNAPSHOT\",\"fullVersion\":\"ForgeRock Access Management 9.0.0-SNAPSHOT Build 96952edaffd9295f1b26b1145ff158e577b2ecb0 (2026-June-02 12:57)\",\"revision\":\"96952edaffd9295f1b26b1145ff158e577b2ecb0\",\"date\":\"2026-June-02 12:57\"}" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-security-policy", + "value": "frame-ancestors 'self', default-src 'none';frame-ancestors 'none';sandbox" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-api-version", + "value": "resource=1.0" + }, + { + "name": "cross-origin-opener-policy", + "value": "same-origin" + }, + { + "name": "cross-origin-resource-policy", + "value": "same-origin" + }, + { + "name": "etag", + "value": "\"1245987628\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "273" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 20:21:08 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9344671c-6b2e-48c1-a892-cd5f897a3c7e" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 780, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T20:21:08.746Z", + "time": 127, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 127 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_long_276218670/environment_1072573434/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_long_276218670/environment_1072573434/recording.har new file mode 100644 index 000000000..834403373 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_long_276218670/environment_1072573434/recording.har @@ -0,0 +1,125 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-list/0_long/environment", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ccc7ec61c2094114d7917814bb19b83b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/environment/scopes/service-accounts" + }, + "response": { + "bodySize": 1910, + "content": { + "mimeType": "application/json; charset=utf-8", + "size": 1910, + "text": "[{\"scope\":\"fr:am:*\",\"description\":\"All Access Management APIs\"},{\"scope\":\"fr:idc:analytics:*\",\"description\":\"All Analytics APIs\"},{\"scope\":\"fr:idc:certificate:*\",\"description\":\"All TLS certificate APIs\",\"childScopes\":[{\"scope\":\"fr:idc:certificate:read\",\"description\":\"Read TLS certificates\"}]},{\"scope\":\"fr:idc:content-security-policy:*\",\"description\":\"All content security policy APIs\",\"childScopes\":[{\"scope\":\"fr:idc:content-security-policy:read\",\"description\":\"Read content security policy\"}]},{\"scope\":\"fr:idc:cookie-domain:*\",\"description\":\"All cookie domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:cookie-domain:read\",\"description\":\"Read cookie domains\"}]},{\"scope\":\"fr:idc:custom-domain:*\",\"description\":\"All custom domain APIs\",\"childScopes\":[{\"scope\":\"fr:idc:custom-domain:read\",\"description\":\"Read custom domains\"}]},{\"scope\":\"fr:idc:dataset:*\",\"description\":\"All dataset deletion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:dataset:read\",\"description\":\"Read dataset deletions\"}]},{\"scope\":\"fr:idc:esv:*\",\"description\":\"All ESV APIs\",\"childScopes\":[{\"scope\":\"fr:idc:esv:read\",\"description\":\"Read ESVs, excluding values of secrets\"},{\"scope\":\"fr:idc:esv:update\",\"description\":\"Create, modify, and delete ESVs\"},{\"scope\":\"fr:idc:esv:restart\",\"description\":\"Restart workloads that consume ESVs\"}]},{\"scope\":\"fr:idc:promotion:*\",\"description\":\"All configuration promotion APIs\",\"childScopes\":[{\"scope\":\"fr:idc:promotion:read\",\"description\":\"Read configuration promotion\"}]},{\"scope\":\"fr:idc:release:*\",\"description\":\"All product release APIs\",\"childScopes\":[{\"scope\":\"fr:idc:release:read\",\"description\":\"Read product release\"}]},{\"scope\":\"fr:idc:sso-cookie:*\",\"description\":\"All SSO cookie APIs\",\"childScopes\":[{\"scope\":\"fr:idc:sso-cookie:read\",\"description\":\"Read SSO cookie\"}]},{\"scope\":\"fr:idm:*\",\"description\":\"All Identity Management APIs\"},{\"scope\":\"fr:iga:*\",\"description\":\"All Identity Governance APIs\"}]" + }, + "cookies": [], + "headers": [ + { + "name": "x-frame-options", + "value": "SAMEORIGIN" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "content-length", + "value": "1910" + }, + { + "name": "etag", + "value": "W/\"776-b2xCO2Gdrqb/5HdcH8WdC8M9zoM\"" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 20:21:08 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "511ac621-e4be-4be8-a96b-bf16b8587741" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 388, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T20:21:08.880Z", + "time": 118, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 118 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_long_276218670/iga_2664973160/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_long_276218670/iga_2664973160/recording.har new file mode 100644 index 000000000..e310efcf7 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_long_276218670/iga_2664973160/recording.har @@ -0,0 +1,147 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-list/0_long/iga", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "e96c9157e11f0be3fd8dc025a80986b6", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1877, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_queryFilter", + "value": "true" + }, + { + "name": "_pageSize", + "value": "10000" + }, + { + "name": "_pagedResultsOffset", + "value": "0" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/iga/governance/policy/rule?_queryFilter=true&_pageSize=10000&_pagedResultsOffset=0" + }, + "response": { + "bodySize": 2019, + "content": { + "encoding": "base64", + "mimeType": "application/json; charset=utf-8", + "size": 2019, + "text": "[\"G4EcAOR3r2Jfv9Hr3YbULGO4mc6Z9mZUYXhOUG0TAU4bRb5a0/FxkbKahazSTwViB6xoDwPsSqCYVacKUALaCk+sKkzU11gC1yjVQgxzlb3zd4WGGAOVNbsbPE3WrYD97wazmxAs7LHUzZs0Rn8FAuHe8/PONaZ5ueZ80JsfAo5YcTPhj0AgJL9MOFdXY5o/5BEsHFM6jrj1aQICgut5t4z4+suMGewNjvGC86uMr/ImY6lpBgIxgIXnKXrI4e5SMN9tBsGVN4a2plVUDlLRnqGkgwk9G5wMfmiBwOTiCBYqlvpnxVIzDym6DwQILAVzpmt5+ni3x1I/FMywErjENJbixVJ0o87XeEGwNS9IoHg3769nLGBvcM54aQiwUvOAFaVSVwKXxcgGItXeoGPJkspzk5VnOGR8qQp6dTM5k/v6UCzrwZKd+PpNQ2CKNR5djfPxfpprTiNYeDk/BjdfjgQe5ng+X2Oad+ESPYKF+yl00xB2BbIX8tjQDYo/4eQK2P/gmN1c3+GULm6Ew9rCWY/iWHuYcr/3s6QMFnavHgCZGTmH7g5X6Ofh2w+7F+//K9ygunzE2vLZMQCZO+0f3bggWOiVR1vXw0ogLyM+wOGNDYhM81i7gXo9I9j/AOca6/jEH2bM4+zmCgei+VDff/1qv3v66hdmYbh9hFGhL2MLVN5F/zin5cy05qPj73n97kvD13ggkGP5/N6njGAVgS8pfx66a9BtZBZ7mUIcruMlmBSnPfTnaR7ix34RB/RXPyLY22aUR2VIAQsP6hj6aXnZlQB+PcfeHnSbE4NlmCjCS4T0aU71FOcjEAjDI1BvRBloMTd4cJLEIfp1cu+f0H8eo4iugr0M2hckaCkWplMl7t1xQIDqNee3H/3vfkJ++zHCujdYJklQb1QR55uze7jncscYMuFBC65iiGrZMcCBAfvRSCGDd45qoxoqB+1o37WGaieCEL7jwpj9ubC64KoDewN0Bz6wp1sC3vCWNi1t2J5p2wgr5NYY9i8QePQPZOXtKso4Zd2eGauY5WZrVKe1ajvxL6wr\",\"QbgI7aweaUUKBuJHrKdYNrFs3GZZyGZ1AscZ6V2v+2n8copWKtGKXlDt+55K7QTtByNoMK1XxotOB5OO588u5+ufNcdLzGzs4I3L+UpwMWPcB2bkvFC6vrAMl/oIidsvEqUfZVXTdsEJRbXRjMqBMdqjH2jvNGv71rnQm0RNQTbFEcsqR1sG2wGLLdYfgtO5XoHTOtByrPtv6INlmq4PM6fVFoPs6qxpRiojhyFOzVsR/M8Nbiy4ApbYcvrf1UbQb62GYY7QklSso+8LlDqQ2uULfKcLdYubegVh9qGHUYZZDPENIIRVCY6y9500tNW9otJ3jprOSCok8wMfHGOGpwct96yzTWNFu9VSqEbwtkUxhUgK4/qGsfAUZlPXRhyxFgjap65iqZu8jMh0gdXqqG+Ec45p6pFzKk3HaN84T33X96L3PPRDB6iIAeKI5FYslWrC5EMM/hTHsP+Sfp1iQDloxQwV3CCVwQvq+k5Ria7hAjn3XKUbOJ/SGDDPWMrPnj/HIZJLgXk6RG7knE8n+shoxThN+Uil7WCtegsj3hBTZ1qBRTG1yDSt2TUVHF9jHwOjthisBJem1miNkmsuayUKuvwDCXt0F2xZ/+ApkhwuIVjHRPI1dy9e+M8omaFhouUqG57JgMcH2S+lF0/tRiDejGDUytxzJfqPdTyYNzl5LGX/BB9S3SdlrBJbJdpWStWpBEW0TCMBI0oM3VCFxcp34YEbxxgl8vAZkD2nviYXx9oKXgJEKU+2PvVMdcP4CS9eFPiEI0CfL178AIfIjGj8SZzjt+NUh7ujqSBBRWHiftPXQxj28wTg624fpxzgqBJhMCrITlPHFaNSdYF23BjK5MB7JhhvpU/CHsap4twqvdVCQmO1inKz541VjW34tuVGa90YnlIOBJ4yykWwGyrm53gF+5+S1Q4E3rObivfTMlewkhx0lOcFrA==\"]" + }, + "cookies": [], + "headers": [ + { + "name": "x-powered-by", + "value": "Express" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "content-type", + "value": "application/json; charset=utf-8" + }, + { + "name": "etag", + "value": "W/\"1c82-D06us1reYoQzK+YZAjxX5dXa8uc\"" + }, + { + "name": "vary", + "value": "Accept-Encoding" + }, + { + "name": "content-encoding", + "value": "br" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 20:21:09 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "0a51d482-007e-43af-ae6a-0aa75a1cc8d6" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + }, + { + "name": "transfer-encoding", + "value": "chunked" + } + ], + "headersSize": 459, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T20:21:09.114Z", + "time": 252, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 252 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_long_276218670/oauth2_393036114/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_long_276218670/oauth2_393036114/recording.har new file mode 100644 index 000000000..4b1f02717 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_long_276218670/oauth2_393036114/recording.har @@ -0,0 +1,146 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-list/0_long/oauth2", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ff75519a93ccab829f8ee8cf5e92b49f", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 1328, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/x-www-form-urlencoded" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9344671c-6b2e-48c1-a892-cd5f897a3c7e" + }, + { + "name": "accept-api-version", + "value": "protocol=2.1,resource=1.0" + }, + { + "name": "content-length", + "value": "1328" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 453, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/x-www-form-urlencoded", + "params": [], + "text": "assertion=&client_id=service-account&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&scope=fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*" + }, + "queryString": [], + "url": "https://openam-trivir-fairfax.forgeblocks.com/am/oauth2/access_token" + }, + "response": { + "bodySize": 1780, + "content": { + "mimeType": "application/json;charset=UTF-8", + "size": 1780, + "text": "{\"access_token\":\"\",\"scope\":\"fr:idc:custom-domain:* fr:idc:release:* fr:idc:sso-cookie:* fr:am:* fr:idc:esv:* fr:idc:content-security-policy:* fr:iga:* fr:idc:certificate:* fr:idm:* fr:idc:analytics:* fr:idc:cookie-domain:* fr:idc:promotion:*\",\"token_type\":\"Bearer\",\"expires_in\":899}" + }, + "cookies": [], + "headers": [ + { + "name": "content-security-policy", + "value": "frame-ancestors 'self'" + }, + { + "name": "content-security-policy-report-only", + "value": "frame-ancestors 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "cache-control", + "value": "no-store" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "content-type", + "value": "application/json;charset=UTF-8" + }, + { + "name": "content-length", + "value": "1780" + }, + { + "name": "date", + "value": "Thu, 04 Jun 2026 20:21:08 GMT" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9344671c-6b2e-48c1-a892-cd5f897a3c7e" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 556, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T20:21:08.567Z", + "time": 157, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 157 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_long_276218670/openidm_3290118515/recording.har b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_long_276218670/openidm_3290118515/recording.har new file mode 100644 index 000000000..60889e515 --- /dev/null +++ b/test/e2e/mocks/iga_2664973160/policy-rule-list_3343330639/0_long_276218670/openidm_3290118515/recording.har @@ -0,0 +1,310 @@ +{ + "log": { + "_recordingName": "iga/policy-rule-list/0_long/openidm", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9344671c-6b2e-48c1-a892-cd5f897a3c7e" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 20:21:08 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9344671c-6b2e-48c1-a892-cd5f897a3c7e" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 683, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T20:21:08.787Z", + "time": 181, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 181 + } + }, + { + "_id": "9cb8561357870863838a9948da32d1e8", + "_order": 1, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/4.0.0-39" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9344671c-6b2e-48c1-a892-cd5f897a3c7e" + }, + { + "name": "authorization", + "value": "Bearer " + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1938, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [ + { + "name": "_fields", + "value": "*" + } + ], + "url": "https://openam-trivir-fairfax.forgeblocks.com/openidm/managed/svcacct/10d76629-78da-4265-868b-9a0cb68ebdb4?_fields=%2A" + }, + "response": { + "bodySize": 1401, + "content": { + "mimeType": "application/json;charset=utf-8", + "size": 1401, + "text": "{\"_id\":\"10d76629-78da-4265-868b-9a0cb68ebdb4\",\"_rev\":\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\",\"accountStatus\":\"active\",\"name\":\"Frodo-SA-1777919406717\",\"description\":\"dsevy@trivir.com's Frodo Service Account\",\"scopes\":[\"fr:am:*\",\"fr:idc:analytics:*\",\"fr:autoaccess:*\",\"fr:idc:certificate:*\",\"fr:idc:content-security-policy:*\",\"fr:idc:cookie-domain:*\",\"fr:idc:custom-domain:*\",\"fr:idc:dataset:*\",\"fr:idc:esv:*\",\"fr:idm:*\",\"fr:iga:*\",\"fr:idc:promotion:*\",\"fr:idc:release:*\",\"fr:idc:sso-cookie:*\"],\"jwks\":\"{\\\"keys\\\":[{\\\"kty\\\":\\\"RSA\\\",\\\"kid\\\":\\\"hshlr1hlp8bXdLNDrh3rESiHNsMS68c4XtbZX9i_Seg\\\",\\\"alg\\\":\\\"RS256\\\",\\\"e\\\":\\\"AQAB\\\",\\\"n\\\":\\\"owg6VJta_1o9VqyQk4Xs2kA_BDcyWEN1WMERqaJIFCbtecz_IMBp2G5m76dawbB9QvUsFvMqfJ2OGbaCcfC2o5lkxEu4nxdKLKYZ4-JTGsbPN6j-f9yr0LCjFMPd1BRxKQ98euSu5UZ0_gy9QN-eS4zB5zJsb8E7Y7FXsxG6vgd8dCqCSPjJeSmZhnQEeqJeysGlA5jMzQUP9Lvgm2aZp5wz7DXzF9lvsqRjm49H9wlERjy4KDmjlp5Rr3lz8ZXGgsaIdp18hUrPFKJP5qxkICfnbxdyK858A5puUypj1OAqrOtAnwjk5lMPOYzBWjWV72RPnOY3-6KAHo8uFXK3EH8AN8ErHxhpo-soV0e7-Z7gEnmt0rliY3j_-2AHA0Q5G1k52cGQ-dARGzgAQacpdnQv_pT0k83DGZPrpR6PqBRkyiJBD_PTvySZohxFgjpJfJmkYec7Pg40xri_LN1ozkLRBdQwL2zaQFYtq_VZC20a8Y7NpqpoLcvFIB9W2NS03qTokvId7gdSgdcVmpOo4n7OZZCouD6cyWyJ6Nj9uaxz-mw4Mdzhpd8cclSV_gXeWMBBoW3dZ7zzkEFMWHBT2x9S8JAZor_aaGJ2MXOoNoHRg-q9shNhQ3h7U14MXfL7I9R4ixClZMOpxILa0VT0Vzm-h685xkXwa28WLSw21QU\\\"}]}\",\"maxCachingTime\":\"15\",\"maxIdleTime\":\"15\",\"maxSessionTime\":\"15\",\"quotaLimit\":\"5\"}" + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Thu, 04 Jun 2026 20:21:09 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": "\"4b025e5d-c082-45f8-a3e9-0ac1db308dff-21339\"" + }, + { + "name": "expires", + "value": "0" + }, + { + "name": "pragma", + "value": "no-cache" + }, + { + "name": "x-content-type-options", + "value": "nosniff" + }, + { + "name": "x-frame-options", + "value": "DENY" + }, + { + "name": "content-length", + "value": "1401" + }, + { + "name": "x-forgerock-transactionid", + "value": "frodo-9344671c-6b2e-48c1-a892-cd5f897a3c7e" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000" + } + ], + "headersSize": 658, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-06-04T20:21:09.006Z", + "time": 103, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 103 + } + } + ], + "pages": [], + "version": "1.2" + } +}