diff --git a/flex-linux-setup/flex_linux_setup/flex_setup.py b/flex-linux-setup/flex_linux_setup/flex_setup.py index c145eec8f5..ccb97ef836 100644 --- a/flex-linux-setup/flex_linux_setup/flex_setup.py +++ b/flex-linux-setup/flex_linux_setup/flex_setup.py @@ -324,6 +324,7 @@ def __init__(self): self.templates_dir = os.path.join(self.flex_setup_dir, 'templates') self.admin_ui_config_properties_path = os.path.join(self.templates_dir, 'auiConfiguration.json') self.adimin_ui_bin_url = 'https://jenkins.gluu.org/npm/admin_ui/main/built/admin-ui-main-built.tar.gz' + self.policy_store_path = os.path.join(self.templates_dir, 'policy-store.json') if not argsp.download_exit: self.dbUtils.bind(force=True) @@ -567,6 +568,15 @@ def install_gluu_admin_ui(self): self.install_config_api_plugin() + #cedarling integration + admin_ui_config_dir = os.path.join(config_api_installer.custom_config_dir, 'adminUI') + config_api_installer.renderTemplateInOut(self.policy_store_path, self.templates_dir, admin_ui_config_dir) + config_api_installer.chown(admin_ui_config_dir, Config.jetty_user, Config.jetty_group) + resource_scopes_mapping_lidf_fn = os.path.join(self.templates_dir, 'adminUIResourceScopesMapping.ldif') + + self.dbUtils.import_ldif([resource_scopes_mapping_lidf_fn]) + + print("Removing DUO Script") config_api_installer.dbUtils.delete_dn('inum=5018-F9CF,ou=scripts,o=jans') diff --git a/flex-linux-setup/flex_linux_setup/templates/adminUIResourceScopesMapping.ldif b/flex-linux-setup/flex_linux_setup/templates/adminUIResourceScopesMapping.ldif new file mode 100644 index 0000000000..7b7cfc9fd8 --- /dev/null +++ b/flex-linux-setup/flex_linux_setup/templates/adminUIResourceScopesMapping.ldif @@ -0,0 +1,595 @@ +dn: inum=f9c23f63-184a-4777-a01c-ea928eb96054,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: f9c23f63-184a-4777-a01c-ea928eb96054 +jansAccessType: READ +jansResource: dashboard +jansScope: https://jans.io/oauth/config/stats.readonly +jansScope: jans_stat +jansScope: https://jans.io/oauth/config/data.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=491408e9-8870-45b0-88cc-86455830c3d7,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 491408e9-8870-45b0-88cc-86455830c3d7 +jansAccessType: READ +jansResource: license +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/license.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=4a273022-268a-4bd9-b173-7ca8e79fc906,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 4a273022-268a-4bd9-b173-7ca8e79fc906 +jansAccessType: WRITE +jansResource: license +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/license.write +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=57eef8f1-93d5-43b7-b859-de6f59572ced,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 57eef8f1-93d5-43b7-b859-de6f59572ced +jansAccessType: READ +jansResource: mau +jansScope: https://jans.io/oauth/config/stats.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=000b7e87-5168-4c21-85ad-e717cafc8e8b,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 000b7e87-5168-4c21-85ad-e717cafc8e8b +jansAccessType: READ +jansResource: settings +jansScope: https://jans.io/oauth/config/scripts.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/properties.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=10c51b99-af6d-467d-a66c-991c4af9779b,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 10c51b99-af6d-467d-a66c-991c4af9779b +jansAccessType: WRITE +jansResource: settings +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/properties.write +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=b5525233-4c64-41c1-b00b-91a334bf57cb,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: b5525233-4c64-41c1-b00b-91a334bf57cb +jansAccessType: READ +jansResource: webhooks +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/webhook.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=4140d9e7-021f-4a5f-8054-838a8e54b2da,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 4140d9e7-021f-4a5f-8054-838a8e54b2da +jansAccessType: WRITE +jansResource: webhooks +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/webhook.write +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=e4dcafe6-786f-4a7f-aa42-3b9d64fd792c,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: e4dcafe6-786f-4a7f-aa42-3b9d64fd792c +jansAccessType: DELETE +jansResource: webhooks +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/webhook.delete +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=6b3fa54a-6b39-4d6a-8af6-f775084ff3e2,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 6b3fa54a-6b39-4d6a-8af6-f775084ff3e2 +jansAccessType: READ +jansResource: assets +jansScope: https://jans.io/oauth/config/jans_asset-read +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=014fe962-0fea-49c4-9798-eb51ce80204f,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 014fe962-0fea-49c4-9798-eb51ce80204f +jansAccessType: WRITE +jansResource: assets +jansScope: https://jans.io/oauth/config/jans_asset-write +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=b9ff6c69-4fc7-4a23-8ba7-7a250d80ea11,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: b9ff6c69-4fc7-4a23-8ba7-7a250d80ea11 +jansAccessType: DELETE +jansResource: assets +jansScope: https://jans.io/oauth/config/jans_asset-delete +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=d9b5076c-9678-4d7e-8830-89d125cf2e74,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: d9b5076c-9678-4d7e-8830-89d125cf2e74 +jansAccessType: READ +jansResource: auditLogs +jansScope: https://jans.io/oauth/config/logging.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=35ed86f5-fde4-4502-aff3-c0250b841f33,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 35ed86f5-fde4-4502-aff3-c0250b841f33 +jansAccessType: READ +jansResource: clients +jansScope: https://jans.io/oauth/config/openid/clients.readonly +jansScope: https://jans.io/oauth/config/scopes.readonly +jansScope: https://jans.io/oauth/config/scripts.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=fbf1e29b-369c-4fc9-8ab6-197ee9ed257c,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: fbf1e29b-369c-4fc9-8ab6-197ee9ed257c +jansAccessType: READ +jansResource: clients +jansScope: https://jans.io/oauth/config/openid/clients.readonly +jansScope: https://jans.io/oauth/config/scopes.readonly +jansScope: https://jans.io/oauth/config/scripts.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/properties.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=7d9558b3-8bc3-4727-96c9-67afe41e833c,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 7d9558b3-8bc3-4727-96c9-67afe41e833c +jansAccessType: WRITE +jansResource: clients +jansScope: https://jans.io/oauth/config/openid/clients.write +jansScope: https://jans.io/oauth/config/scopes.readonly +jansScope: https://jans.io/oauth/config/scripts.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/properties.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/webhook.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=77aa2e0e-a67d-4f90-a28c-a9b6077c3a7d,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 77aa2e0e-a67d-4f90-a28c-a9b6077c3a7d +jansAccessType: DELETE +jansResource: clients +jansScope: https://jans.io/oauth/config/openid/clients.delete +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/webhook.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=8d8e1d19-2ab8-4e2f-ab81-9ee7ed36f9e3,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 8d8e1d19-2ab8-4e2f-ab81-9ee7ed36f9e3 +jansAccessType: READ +jansResource: scopes +jansScope: https://jans.io/oauth/config/scopes.readonly +jansScope: https://jans.io/oauth/config/attributes.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=07ec2f0c-2426-4d00-8cb7-9dea43bce3e0,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 07ec2f0c-2426-4d00-8cb7-9dea43bce3e0 +jansAccessType: WRITE +jansResource: scopes +jansScope: https://jans.io/oauth/config/scopes.write +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/webhook.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=3a0c4bb3-46ab-425f-bbe4-0b0515c221e1,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 3a0c4bb3-46ab-425f-bbe4-0b0515c221e1 +jansAccessType: DELETE +jansResource: scopes +jansScope: https://jans.io/oauth/config/scopes.delete +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/webhook.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=12849fe5-e4c3-437f-94bc-d24848e275bb,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 12849fe5-e4c3-437f-94bc-d24848e275bb +jansAccessType: READ +jansResource: keys +jansScope: https://jans.io/oauth/config/jwks.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=f614a842-f887-43af-a0bb-708976449610,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: f614a842-f887-43af-a0bb-708976449610 +jansAccessType: READ +jansResource: authenticationServerConfiguration +jansScope: https://jans.io/oauth/jans-auth-server/config/properties.readonly +jansScope: https://jans.io/oauth/config/acrs.readonly +jansScope: https://jans.io/oauth/config/scripts.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=d8c3bc28-054b-4906-9819-1a0db8030b37,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: d8c3bc28-054b-4906-9819-1a0db8030b37 +jansAccessType: WRITE +jansResource: authenticationServerConfiguration +jansScope: https://jans.io/oauth/jans-auth-server/config/properties.write +jansScope: https://jans.io/oauth/config/acrs.write +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=8888368f-f108-4606-9834-dd331c527866,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 8888368f-f108-4606-9834-dd331c527866 +jansAccessType: READ +jansResource: logging +jansScope: https://jans.io/oauth/config/logging.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=52133aed-b1f4-46a0-824d-761148e7866d,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 52133aed-b1f4-46a0-824d-761148e7866d +jansAccessType: WRITE +jansResource: logging +jansScope: https://jans.io/oauth/config/logging.write +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=eb61570d-1b5c-4433-84d7-276d210194d4,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: eb61570d-1b5c-4433-84d7-276d210194d4 +jansAccessType: READ +jansResource: authentication +jansScope: https://jans.io/oauth/config/database/ldap.readonly +jansScope: https://jans.io/oauth/config/scripts.readonly +jansScope: https://jans.io/oauth/config/acrs.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/properties.readonly +jansScope: https://jans.io/oauth/config/agama.readonly +jansScope: https://jans.io/oauth/config/agama-repo.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=1eee190b-c2fb-455c-8ef4-0c22fde9f73a,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 1eee190b-c2fb-455c-8ef4-0c22fde9f73a +jansAccessType: WRITE +jansResource: authentication +jansScope: https://jans.io/oauth/config/database/ldap.write +jansScope: https://jans.io/oauth/jans-auth-server/config/properties.write +jansScope: https://jans.io/oauth/config/agama.write +jansScope: https://jans.io/oauth/config/agama-repo.write +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=1b64711b-9935-49e9-be27-35f92e40fac3,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 1b64711b-9935-49e9-be27-35f92e40fac3 +jansAccessType: READ +jansResource: configApiConfiguration +jansScope: https://jans.io/oauth/config/properties.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=87a66767-b740-4357-acb3-d37299f7d760,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 87a66767-b740-4357-acb3-d37299f7d760 +jansAccessType: WRITE +jansResource: configApiConfiguration +jansScope: https://jans.io/oauth/config/properties.write +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=7ceb0830-8b3d-455b-ba03-28cd4e7e9385,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 7ceb0830-8b3d-455b-ba03-28cd4e7e9385 +jansAccessType: READ +jansResource: session +jansScope: https://jans.io/oauth/jans-auth-server/session.readonly +jansScope: revoke_session +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=26c54ba2-0adb-47d1-b64d-5266d75ef6d6,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 26c54ba2-0adb-47d1-b64d-5266d75ef6d6 +jansAccessType: DELETE +jansResource: session +jansScope: https://jans.io/oauth/jans-auth-server/session.delete +jansScope: revoke_session +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=37488733-1b14-4648-a270-2c0f4dec2813,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 37488733-1b14-4648-a270-2c0f4dec2813 +jansAccessType: READ +jansResource: users +jansScope: https://jans.io/oauth/config/user.readonly +jansScope: https://jans.io/oauth/config/attributes.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/properties.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=b4952238-fae5-4d62-bfed-8a8e343fdffc,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: b4952238-fae5-4d62-bfed-8a8e343fdffc +jansAccessType: WRITE +jansResource: users +jansScope: https://jans.io/oauth/config/user.write +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/webhook.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=3f2d534e-13e3-46a5-8062-de37d7c5da75,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 3f2d534e-13e3-46a5-8062-de37d7c5da75 +jansAccessType: DELETE +jansResource: users +jansScope: https://jans.io/oauth/config/user.delete +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/webhook.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=c938bb27-ba6a-41f5-9506-86746e8c92bb,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: c938bb27-ba6a-41f5-9506-86746e8c92bb +jansAccessType: READ +jansResource: scripts +jansScope: https://jans.io/oauth/config/scripts.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=9c8e3351-8ac9-4bb9-8548-f63d7f1a56eb,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 9c8e3351-8ac9-4bb9-8548-f63d7f1a56eb +jansAccessType: WRITE +jansResource: scripts +jansScope: https://jans.io/oauth/config/scripts.write +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/webhook.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=3da24565-7d2b-4bc4-9f33-9b4720741fb1,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 3da24565-7d2b-4bc4-9f33-9b4720741fb1 +jansAccessType: DELETE +jansResource: scripts +jansScope: https://jans.io/oauth/config/scripts.delete +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/webhook.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=c3359124-ee0b-4df6-9290-0f6a6837808c,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: c3359124-ee0b-4df6-9290-0f6a6837808c +jansAccessType: READ +jansResource: attributes +jansScope: https://jans.io/oauth/config/attributes.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=a9c5bae2-7e18-4dc4-904b-b1b756fc9807,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: a9c5bae2-7e18-4dc4-904b-b1b756fc9807 +jansAccessType: WRITE +jansResource: attributes +jansScope: https://jans.io/oauth/config/attributes.write +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/webhook.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=e2532e04-f656-455e-83b6-10c1e2ab24bb,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: e2532e04-f656-455e-83b6-10c1e2ab24bb +jansAccessType: DELETE +jansResource: attributes +jansScope: https://jans.io/oauth/config/attributes.delete +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/webhook.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=45e1e36f-6225-4701-93a4-33b5afac2ed8,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 45e1e36f-6225-4701-93a4-33b5afac2ed8 +jansAccessType: READ +jansResource: cache +jansScope: https://jans.io/oauth/config/cache.readonly +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=766e21e3-ea1c-4421-8b1a-8c7cfeb20699,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 766e21e3-ea1c-4421-8b1a-8c7cfeb20699 +jansAccessType: WRITE +jansResource: cache +jansScope: https://jans.io/oauth/config/cache.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=a315242a-2eac-42cf-8d67-63072f1465bf,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: a315242a-2eac-42cf-8d67-63072f1465bf +jansAccessType: READ +jansResource: persistence +jansScope: https://jans.io/oauth/jans-auth-server/config/properties.readonly +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=e9dea5be-d659-49cf-88aa-38e240e37aa6,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: e9dea5be-d659-49cf-88aa-38e240e37aa6 +jansAccessType: READ +jansResource: smtp +jansScope: https://jans.io/oauth/config/smtp.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=67b8301b-7adc-4b7f-8ffe-dc6c12a57bae,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 67b8301b-7adc-4b7f-8ffe-dc6c12a57bae +jansAccessType: WRITE +jansResource: smtp +jansScope: https://jans.io/oauth/config/smtp.write +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=92f0f66b-5618-40c6-8c48-744bd03fbeae,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 92f0f66b-5618-40c6-8c48-744bd03fbeae +jansAccessType: READ +jansResource: scim +jansScope: https://jans.io/scim/config.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=bae361b3-6013-4812-94d2-b04e4d55a5a2,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: bae361b3-6013-4812-94d2-b04e4d55a5a2 +jansAccessType: WRITE +jansResource: scim +jansScope: https://jans.io/scim/config.write +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=9846cf37-e701-4c52-881f-3d433233bf58,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 9846cf37-e701-4c52-881f-3d433233bf58 +jansAccessType: READ +jansResource: fido +jansScope: https://jans.io/oauth/config/fido2.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=4a953049-ddf1-4d55-aa4f-760f08b584a0,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 4a953049-ddf1-4d55-aa4f-760f08b584a0 +jansAccessType: WRITE +jansResource: fido +jansScope: https://jans.io/oauth/config/fido2.write +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=ce8c6212-a183-4b71-bc4b-3dfef88d1cd0,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: ce8c6212-a183-4b71-bc4b-3dfef88d1cd0 +jansAccessType: READ +jansResource: saml +jansScope: https://jans.io/oauth/config/saml-config.readonly +jansScope: https://jans.io/oauth/config/saml.readonly +jansScope: https://jans.io/idp/saml.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=5e01fe2a-86f6-4f3b-ac84-ec8928bbe78f,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 5e01fe2a-86f6-4f3b-ac84-ec8928bbe78f +jansAccessType: WRITE +jansResource: saml +jansScope: https://jans.io/oauth/config/saml-config.write +jansScope: https://jans.io/idp/saml.write +jansScope: https://jans.io/oauth/config/saml.write +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=0dbbcf8f-6c5f-4d1b-90f6-985dd694d20a,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 0dbbcf8f-6c5f-4d1b-90f6-985dd694d20a +jansAccessType: DELETE +jansResource: saml +jansScope: https://jans.io/idp/saml.delete +jansScope: https://jans.io/oauth/config/saml.write +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=9fa4b8c8-e980-440e-b3cd-4ac1f01f8338,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 9fa4b8c8-e980-440e-b3cd-4ac1f01f8338 +jansAccessType: READ +jansResource: lock +jansScope: https://jans.io/oauth/lock-config.readonly +jansScope: https://jans.io/oauth/lock/read-all +jansScope: jans_stat +jansScope: https://jans.io/oauth/lock/telemetry.readonly +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=4cb58914-f463-4015-beae-a36c38ec9f53,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: 4cb58914-f463-4015-beae-a36c38ec9f53 +jansAccessType: WRITE +jansResource: lock +jansScope: https://jans.io/oauth/lock-config.write +jansScope: https://jans.io/oauth/lock/telemetry.write +jansScope: https://jans.io/oauth/lock/log.write +jansScope: https://jans.io/oauth/lock/health.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=ae8c6212-a183-4b71-bc4b-3dfef88d1cd0,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: ae8c6212-a183-4b71-bc4b-3dfef88d1cd0 +jansAccessType: READ +jansResource: security +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/user/role.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/user/permission.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/user/rolePermissionMapping.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/security.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=ae01fe2a-86f6-4f3b-ac84-ec8928bbe78f,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: ae01fe2a-86f6-4f3b-ac84-ec8928bbe78f +jansAccessType: WRITE +jansResource: security +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/user/role.write +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/user/permission.write +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/user/rolePermissionMapping.write +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/security.write +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=adbbcf8f-6c5f-4d1b-90f6-985dd694d20a,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: adbbcf8f-6c5f-4d1b-90f6-985dd694d20a +jansAccessType: DELETE +jansResource: security +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/user/role.delete +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/user/permission.delete +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/user/rolePermissionMapping.delete +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=be8c6212-a183-4b71-bc4b-3dfef88d1cd0,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: be8c6212-a183-4b71-bc4b-3dfef88d1cd0 +jansAccessType: READ +jansResource: ssa +jansScope: https://jans.io/auth/ssa.developer +jansScope: https://jans.io/auth/ssa.portal +jansScope: https://jans.io/oauth/jans-auth-server/config/properties.readonly +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=be01fe2a-86f6-4f3b-ac84-ec8928bbe78f,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: be01fe2a-86f6-4f3b-ac84-ec8928bbe78f +jansAccessType: WRITE +jansResource: ssa +jansScope: https://jans.io/auth/ssa.admin +jansScope: https://jans.io/oauth/jans-auth-server/config/properties.write +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + +dn: inum=bdbbcf8f-6c5f-4d1b-90f6-985dd694d20a,ou=adminUIResourceScopesMapping,ou=admin-ui,o=jans +inum: bdbbcf8f-6c5f-4d1b-90f6-985dd694d20a +jansAccessType: DELETE +jansResource: ssa +jansScope: https://jans.io/auth/ssa.admin +jansScope: https://jans.io/oauth/jans-auth-server/config/properties.write +jansScope: https://jans.io/oauth/jans-auth-server/config/adminui/logging.write +objectClass: top +objectClass: adminUIResourceScopesMapping + diff --git a/flex-linux-setup/flex_linux_setup/templates/auiConfiguration.json b/flex-linux-setup/flex_linux_setup/templates/auiConfiguration.json index b45c4cffbb..2098c71255 100644 --- a/flex-linux-setup/flex_linux_setup/templates/auiConfiguration.json +++ b/flex-linux-setup/flex_linux_setup/templates/auiConfiguration.json @@ -35,7 +35,10 @@ "uiConfig": { "sessionTimeoutInMins": 30, "allowSmtpKeystoreEdit": true, - "cedarlingLogType":"off" + "cedarlingLogType":"off", + "auiPolicyStoreUrl": "", + "auiDefaultPolicyStorePath": "./custom/config/adminUI/policy-store.json", + "useRemotePolicyStore": false }, "licenseConfig": { "ssa": "%(ssa)s", diff --git a/flex-linux-setup/flex_linux_setup/templates/policy-store.json b/flex-linux-setup/flex_linux_setup/templates/policy-store.json new file mode 100644 index 0000000000..907c39a514 --- /dev/null +++ b/flex-linux-setup/flex_linux_setup/templates/policy-store.json @@ -0,0 +1,127 @@ +{ + "cedar_version": "4.4.0", + "policy_stores": { + "909e1df4389d2df4e897a68137e4a00bb17e66f29075": { + "name": "admin_ui_store1", + "description": "Admin UI store", + "policies": { + "f60075196ded623124b88bea9ee177e2e1f8c5093dcd": { + "description": "AdminCanManageAuthServerConfiguration", + "creation_date": "2025-10-21T15:41:33.582074", + "policy_content": "QGlkKCJBZG1pbkNhbk1hbmFnZUF1dGhTZXJ2ZXJDb25maWd1cmF0aW9uIikKcGVybWl0ICgKICBwcmluY2lwYWwgaW4gR2x1dTo6RmxleDo6QWRtaW5VSTo6Um9sZTo6ImFkbWluIiwKICBhY3Rpb24gaW4gW0dsdXU6OkZsZXg6OkFkbWluVUk6OkFjdGlvbjo6InJlYWQiLAogIEdsdXU6OkZsZXg6OkFkbWluVUk6OkFjdGlvbjo6IndyaXRlIiwKICBHbHV1OjpGbGV4OjpBZG1pblVJOjpBY3Rpb246OiJkZWxldGUiXSwKICByZXNvdXJjZSBpbiBHbHV1OjpGbGV4OjpBZG1pblVJOjpSZXNvdXJjZXM6OlBhcmVudFJlc291cmNlOjoiQXV0aFNlcnZlckFuZENvbmZpZ3VyYXRpb24iCik7" + }, + "a307994e8437ebc61d261b1f05e35f80147aa5146dfb": { + "description": "AdminCanManageUserIdentityAndAccess", + "creation_date": "2025-10-29T06:50:12.960835", + "policy_content": "QGlkKCJBZG1pbkNhbk1hbmFnZVVzZXJJZGVudGl0eUFuZEFjY2VzcyIpCnBlcm1pdCAoCiAgcHJpbmNpcGFsIGluIEdsdXU6OkZsZXg6OkFkbWluVUk6OlJvbGU6OiJhZG1pbiIsCiAgYWN0aW9uIGluIFtHbHV1OjpGbGV4OjpBZG1pblVJOjpBY3Rpb246OiJyZWFkIiwKICBHbHV1OjpGbGV4OjpBZG1pblVJOjpBY3Rpb246OiJ3cml0ZSIsCiAgR2x1dTo6RmxleDo6QWRtaW5VSTo6QWN0aW9uOjoiZGVsZXRlIl0sCiAgcmVzb3VyY2UgaW4gR2x1dTo6RmxleDo6QWRtaW5VSTo6UmVzb3VyY2VzOjpQYXJlbnRSZXNvdXJjZTo6IklkZW50aXR5QW5kQWNjZXNzIgopOw==" + }, + "722669eeffedf1032e211655bc5a85b4bae4b2ab8369": { + "description": "AdminCanManageSystemMonitoring", + "creation_date": "2025-10-29T06:50:46.996189", + "policy_content": "QGlkKCJBZG1pbkNhbk1hbmFnZVN5c3RlbU1vbml0b3JpbmciKQpwZXJtaXQgKAogIHByaW5jaXBhbCBpbiBHbHV1OjpGbGV4OjpBZG1pblVJOjpSb2xlOjoiYWRtaW4iLAogIGFjdGlvbiBpbiBbR2x1dTo6RmxleDo6QWRtaW5VSTo6QWN0aW9uOjoicmVhZCIsCiAgR2x1dTo6RmxleDo6QWRtaW5VSTo6QWN0aW9uOjoid3JpdGUiLAogIEdsdXU6OkZsZXg6OkFkbWluVUk6OkFjdGlvbjo6ImRlbGV0ZSJdLAogIHJlc291cmNlIGluIEdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6UGFyZW50UmVzb3VyY2U6OiJTeXN0ZW1BbmRNb25pdG9yaW5nIgopOw==" + }, + "c7232c3f5b612a3b0055298b5272c72e0b074bb55df3": { + "description": "AdminCanManageService", + "creation_date": "2025-10-29T06:52:31.115169", + "policy_content": "QGlkKCJBZG1pbkNhbk1hbmFnZVNlcnZpY2UiKQpwZXJtaXQgKAogIHByaW5jaXBhbCBpbiBHbHV1OjpGbGV4OjpBZG1pblVJOjpSb2xlOjoiYWRtaW4iLAogIGFjdGlvbiBpbiBbR2x1dTo6RmxleDo6QWRtaW5VSTo6QWN0aW9uOjoicmVhZCIsCiAgR2x1dTo6RmxleDo6QWRtaW5VSTo6QWN0aW9uOjoid3JpdGUiLAogIEdsdXU6OkZsZXg6OkFkbWluVUk6OkFjdGlvbjo6ImRlbGV0ZSJdLAogIHJlc291cmNlIGluIEdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6UGFyZW50UmVzb3VyY2U6OiJTZXJ2aWNlIgopOw==" + }, + "fd8a71c0e69718aae55ae497f9f89e253e3d00229655": { + "description": "AuditorCanManageSystemMonitoring", + "creation_date": "2025-10-29T06:53:56.594113", + "policy_content": "QGlkKCJBdWRpdG9yQ2FuTWFuYWdlU3lzdGVtTW9uaXRvcmluZyIpCnBlcm1pdCAoCiAgcHJpbmNpcGFsIGluIEdsdXU6OkZsZXg6OkFkbWluVUk6OlJvbGU6OiJhdWRpdG9yIiwKICBhY3Rpb24gaW4gW0dsdXU6OkZsZXg6OkFkbWluVUk6OkFjdGlvbjo6InJlYWQiLAogIEdsdXU6OkZsZXg6OkFkbWluVUk6OkFjdGlvbjo6IndyaXRlIiwKICBHbHV1OjpGbGV4OjpBZG1pblVJOjpBY3Rpb246OiJkZWxldGUiXSwKICByZXNvdXJjZSBpbiBHbHV1OjpGbGV4OjpBZG1pblVJOjpSZXNvdXJjZXM6OlBhcmVudFJlc291cmNlOjoiU3lzdGVtQW5kTW9uaXRvcmluZyIKKTs=" + }, + "bf58d0b64936551fd7898ce83d346f3a16c306480570": { + "description": "AuditorCanManageClients", + "creation_date": "2025-10-29T06:55:38.763777", + "policy_content": "QGlkKCJBdWRpdG9yQ2FuTWFuYWdlQ2xpZW50cyIpCnBlcm1pdCAoCiAgcHJpbmNpcGFsIGluIEdsdXU6OkZsZXg6OkFkbWluVUk6OlJvbGU6OiJhdWRpdG9yIiwKICBhY3Rpb24gaW4gW0dsdXU6OkZsZXg6OkFkbWluVUk6OkFjdGlvbjo6InJlYWQiLAogIEdsdXU6OkZsZXg6OkFkbWluVUk6OkFjdGlvbjo6IndyaXRlIiwKICBHbHV1OjpGbGV4OjpBZG1pblVJOjpBY3Rpb246OiJkZWxldGUiXSwKICByZXNvdXJjZSBpbiBHbHV1OjpGbGV4OjpBZG1pblVJOjpSZXNvdXJjZXM6OkZlYXR1cmVzOjoiQ2xpZW50cyIKKTs=" + }, + "c17201374229dacdbb7001ced2e5efff43f183bca868": { + "description": "ViewerCanViewUserIdentityAndAccess", + "creation_date": "2025-11-03T07:31:17.456669", + "policy_content": "QGlkKCJWaWV3ZXJDYW5WaWV3VXNlcklkZW50aXR5QW5kQWNjZXNzIikKcGVybWl0ICgKICBwcmluY2lwYWwgaW4gR2x1dTo6RmxleDo6QWRtaW5VSTo6Um9sZTo6InZpZXdlciIsCiAgYWN0aW9uIGluIEdsdXU6OkZsZXg6OkFkbWluVUk6OkFjdGlvbjo6InJlYWQiLAogIHJlc291cmNlIGluIEdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6UGFyZW50UmVzb3VyY2U6OiJJZGVudGl0eUFuZEFjY2VzcyIKKTs=" + } + }, + "trusted_issuers": { + "c0b3fe9569293f1c03c46f6b08bd27c4c7b6a70babf8": { + "name": "AdminUITrustedIssuer", + "description": "Admin UI Trusted Issuer", + "openid_configuration_endpoint": "https://%(hostname)s/.well-known/openid-configuration", + "token_metadata": { + "access_token": { + "trusted": true, + "entity_type_name": "Gluu::Flex::AdminUI::Access_token", + "user_id": "sub", + "token_id": "jti", + "workload_id": "rp_id", + "claim_mapping": {}, + "required_claims": [ + "jti", + "iss", + "aud", + "sub", + "exp", + "nbf" + ], + "role_mapping": "role", + "principal_mapping": [ + "Gluu::Flex::AdminUI::Workload" + ] + }, + "id_token": { + "trusted": true, + "entity_type_name": "Gluu::Flex::AdminUI::id_token", + "user_id": "sub", + "token_id": "jti", + "role_mapping": "role", + "claim_mapping": {}, + "principal_mapping": [ + "Gluu::Flex::AdminUI::User" + ] + }, + "userinfo_token": { + "trusted": true, + "entity_type_name": "Gluu::Flex::AdminUI::Userinfo_token", + "user_id": "sub", + "token_id": "jti", + "role_mapping": "jansAdminUIRole", + "claim_mapping": {}, + "principal_mapping": [ + "Gluu::Flex::AdminUI::User" + ] + } + } + } + }, + "schema": "eyJHbHV1OjpGbGV4OjpBZG1pblVJIjp7ImNvbW1vblR5cGVzIjp7IkNvbnRleHQiOnsidHlwZSI6IlJlY29yZCIsImF0dHJpYnV0ZXMiOnsiY3VycmVudF90aW1lIjp7InR5cGUiOiJFbnRpdHlPckNvbW1vbiIsInJlcXVpcmVkIjpmYWxzZSwibmFtZSI6IkxvbmcifSwiZGV2aWNlX2hlYWx0aCI6eyJ0eXBlIjoiU2V0IiwicmVxdWlyZWQiOmZhbHNlLCJlbGVtZW50Ijp7InR5cGUiOiJFbnRpdHlPckNvbW1vbiIsIm5hbWUiOiJTdHJpbmcifX0sImZyYXVkX2luZGljYXRvcnMiOnsidHlwZSI6IlNldCIsInJlcXVpcmVkIjpmYWxzZSwiZWxlbWVudCI6eyJ0eXBlIjoiRW50aXR5T3JDb21tb24iLCJuYW1lIjoiU3RyaW5nIn19LCJnZW9sb2NhdGlvbiI6eyJ0eXBlIjoiU2V0IiwicmVxdWlyZWQiOmZhbHNlLCJlbGVtZW50Ijp7InR5cGUiOiJFbnRpdHlPckNvbW1vbiIsIm5hbWUiOiJTdHJpbmcifX0sIm5ldHdvcmsiOnsidHlwZSI6IkVudGl0eU9yQ29tbW9uIiwicmVxdWlyZWQiOmZhbHNlLCJuYW1lIjoiU3RyaW5nIn0sIm5ldHdvcmtfdHlwZSI6eyJ0eXBlIjoiRW50aXR5T3JDb21tb24iLCJyZXF1aXJlZCI6ZmFsc2UsIm5hbWUiOiJTdHJpbmcifSwib3BlcmF0aW5nX3N5c3RlbSI6eyJ0eXBlIjoiRW50aXR5T3JDb21tb24iLCJyZXF1aXJlZCI6ZmFsc2UsIm5hbWUiOiJTdHJpbmcifSwidXNlcl9hZ2VudCI6eyJ0eXBlIjoiRW50aXR5T3JDb21tb24iLCJyZXF1aXJlZCI6ZmFsc2UsIm5hbWUiOiJTdHJpbmcifX19LCJlbWFpbF9hZGRyZXNzIjp7InR5cGUiOiJSZWNvcmQiLCJhdHRyaWJ1dGVzIjp7ImRvbWFpbiI6eyJ0eXBlIjoiRW50aXR5T3JDb21tb24iLCJuYW1lIjoiU3RyaW5nIn0sInVpZCI6eyJ0eXBlIjoiRW50aXR5T3JDb21tb24iLCJuYW1lIjoiU3RyaW5nIn19fSwiVXJsIjp7InR5cGUiOiJSZWNvcmQiLCJhdHRyaWJ1dGVzIjp7Imhvc3QiOnsidHlwZSI6IkVudGl0eU9yQ29tbW9uIiwibmFtZSI6IlN0cmluZyJ9LCJwYXRoIjp7InR5cGUiOiJFbnRpdHlPckNvbW1vbiIsIm5hbWUiOiJTdHJpbmcifSwicHJvdG9jb2wiOnsidHlwZSI6IkVudGl0eU9yQ29tbW9uIiwibmFtZSI6IlN0cmluZyJ9fX19LCJlbnRpdHlUeXBlcyI6eyJBY2Nlc3NfdG9rZW4iOnsic2hhcGUiOnsidHlwZSI6IlJlY29yZCIsImF0dHJpYnV0ZXMiOnsiYXVkIjp7InR5cGUiOiJFbnRpdHlPckNvbW1vbiIsIm5hbWUiOiJTdHJpbmcifSwiZXhwIjp7InR5cGUiOiJFbnRpdHlPckNvbW1vbiIsIm5hbWUiOiJMb25nIn0sImlhdCI6eyJ0eXBlIjoiRW50aXR5T3JDb21tb24iLCJuYW1lIjoiTG9uZyJ9LCJpc3MiOnsidHlwZSI6IkVudGl0eU9yQ29tbW9uIiwibmFtZSI6IlRydXN0ZWRJc3N1ZXIifSwianRpIjp7InR5cGUiOiJFbnRpdHlPckNvbW1vbiIsInJlcXVpcmVkIjpmYWxzZSwibmFtZSI6IlN0cmluZyJ9LCJuYmYiOnsidHlwZSI6IkVudGl0eU9yQ29tbW9uIiwicmVxdWlyZWQiOmZhbHNlLCJuYW1lIjoiTG9uZyJ9LCJzY29wZSI6eyJ0eXBlIjoiU2V0IiwicmVxdWlyZWQiOmZhbHNlLCJlbGVtZW50Ijp7InR5cGUiOiJFbnRpdHlPckNvbW1vbiIsIm5hbWUiOiJTdHJpbmcifX19fX0sIkFwcGxpY2F0aW9uIjp7InNoYXBlIjp7InR5cGUiOiJSZWNvcmQiLCJhdHRyaWJ1dGVzIjp7ImFwcF9pZCI6eyJ0eXBlIjoiRW50aXR5T3JDb21tb24iLCJuYW1lIjoiU3RyaW5nIn0sIm5hbWUiOnsidHlwZSI6IkVudGl0eU9yQ29tbW9uIiwibmFtZSI6IlN0cmluZyJ9LCJ1cmwiOnsidHlwZSI6IkVudGl0eU9yQ29tbW9uIiwibmFtZSI6IlVybCJ9fX19LCJIVFRQX1JlcXVlc3QiOnsic2hhcGUiOnsidHlwZSI6IlJlY29yZCIsImF0dHJpYnV0ZXMiOnsiaGVhZGVyIjp7InR5cGUiOiJSZWNvcmQiLCJhdHRyaWJ1dGVzIjp7IkFjY2VwdCI6eyJ0eXBlIjoiRW50aXR5T3JDb21tb24iLCJyZXF1aXJlZCI6ZmFsc2UsIm5hbWUiOiJTdHJpbmcifX19LCJ1cmwiOnsidHlwZSI6IkVudGl0eU9yQ29tbW9uIiwibmFtZSI6IlVybCJ9fX19LCJpZF90b2tlbiI6eyJzaGFwZSI6eyJ0eXBlIjoiUmVjb3JkIiwiYXR0cmlidXRlcyI6eyJhY3IiOnsidHlwZSI6IkVudGl0eU9yQ29tbW9uIiwicmVxdWlyZWQiOmZhbHNlLCJuYW1lIjoiU3RyaW5nIn0sImFtciI6eyJ0eXBlIjoiU2V0IiwicmVxdWlyZWQiOmZhbHNlLCJlbGVtZW50Ijp7InR5cGUiOiJFbnRpdHlPckNvbW1vbiIsIm5hbWUiOiJTdHJpbmcifX0sImF1ZCI6eyJ0eXBlIjoiU2V0IiwiZWxlbWVudCI6eyJ0eXBlIjoiRW50aXR5T3JDb21tb24iLCJuYW1lIjoiU3RyaW5nIn19LCJhenAiOnsidHlwZSI6IkVudGl0eU9yQ29tbW9uIiwicmVxdWlyZWQiOmZhbHNlLCJuYW1lIjoiU3RyaW5nIn0sImJpcnRoZGF0ZSI6eyJ0eXBlIjoiRW50aXR5T3JDb21tb24iLCJyZXF1aXJlZCI6ZmFsc2UsIm5hbWUiOiJTdHJpbmcifSwiZW1haWwiOnsidHlwZSI6IkVudGl0eU9yQ29tbW9uIiwicmVxdWlyZWQiOmZhbHNlLCJuYW1lIjoiZW1haWxfYWRkcmVzcyJ9LCJleHAiOnsidHlwZSI6IkVudGl0eU9yQ29tbW9uIiwibmFtZSI6IkxvbmcifSwiaWF0Ijp7InR5cGUiOiJFbnRpdHlPckNvbW1vbiIsIm5hbWUiOiJMb25nIn0sImlzcyI6eyJ0eXBlIjoiRW50aXR5T3JDb21tb24iLCJuYW1lIjoiVHJ1c3RlZElzc3VlciJ9LCJqdGkiOnsidHlwZSI6IkVudGl0eU9yQ29tbW9uIiwicmVxdWlyZWQiOmZhbHNlLCJuYW1lIjoiU3RyaW5nIn0sIm5hbWUiOnsidHlwZSI6IkVudGl0eU9yQ29tbW9uIiwicmVxdWlyZWQiOmZhbHNlLCJuYW1lIjoiU3RyaW5nIn0sInBob25lX251bWJlciI6eyJ0eXBlIjoiRW50aXR5T3JDb21tb24iLCJyZXF1aXJlZCI6ZmFsc2UsIm5hbWUiOiJTdHJpbmcifSwicm9sZSI6eyJ0eXBlIjoiU2V0IiwicmVxdWlyZWQiOmZhbHNlLCJlbGVtZW50Ijp7InR5cGUiOiJFbnRpdHlPckNvbW1vbiIsIm5hbWUiOiJTdHJpbmcifX0sInN1YiI6eyJ0eXBlIjoiRW50aXR5T3JDb21tb24iLCJuYW1lIjoiU3RyaW5nIn19fX0sIlJvbGUiOnsic2hhcGUiOnsidHlwZSI6IlJlY29yZCIsImF0dHJpYnV0ZXMiOnt9fX0sIlRydXN0ZWRJc3N1ZXIiOnsic2hhcGUiOnsidHlwZSI6IlJlY29yZCIsImF0dHJpYnV0ZXMiOnsiaXNzdWVyX2VudGl0eV9pZCI6eyJ0eXBlIjoiRW50aXR5T3JDb21tb24iLCJuYW1lIjoiVXJsIn19fX0sIlVzZXIiOnsic2hhcGUiOnsidHlwZSI6IlJlY29yZCIsImF0dHJpYnV0ZXMiOnsiZW1haWwiOnsidHlwZSI6IkVudGl0eU9yQ29tbW9uIiwicmVxdWlyZWQiOmZhbHNlLCJuYW1lIjoiZW1haWxfYWRkcmVzcyJ9LCJpZF90b2tlbiI6eyJ0eXBlIjoiRW50aXR5T3JDb21tb24iLCJyZXF1aXJlZCI6ZmFsc2UsIm5hbWUiOiJpZF90b2tlbiJ9LCJwaG9uZV9udW1iZXIiOnsidHlwZSI6IkVudGl0eU9yQ29tbW9uIiwicmVxdWlyZWQiOmZhbHNlLCJuYW1lIjoiU3RyaW5nIn0sInN1YiI6eyJ0eXBlIjoiRW50aXR5T3JDb21tb24iLCJuYW1lIjoiU3RyaW5nIn0sInVzZXJpbmZvX3Rva2VuIjp7InR5cGUiOiJFbnRpdHlPckNvbW1vbiIsInJlcXVpcmVkIjpmYWxzZSwibmFtZSI6IlVzZXJpbmZvX3Rva2VuIn0sInVzZXJuYW1lIjp7InR5cGUiOiJFbnRpdHlPckNvbW1vbiIsInJlcXVpcmVkIjpmYWxzZSwibmFtZSI6IlN0cmluZyJ9fX0sIm1lbWJlck9mVHlwZXMiOlsiUm9sZSJdfSwiVXNlcmluZm9fdG9rZW4iOnsic2hhcGUiOnsidHlwZSI6IlJlY29yZCIsImF0dHJpYnV0ZXMiOnsiYXVkIjp7InR5cGUiOiJFbnRpdHlPckNvbW1vbiIsIm5hbWUiOiJTdHJpbmcifSwiYmlydGhkYXRlIjp7InR5cGUiOiJFbnRpdHlPckNvbW1vbiIsInJlcXVpcmVkIjpmYWxzZSwibmFtZSI6IlN0cmluZyJ9LCJlbWFpbCI6eyJ0eXBlIjoiRW50aXR5T3JDb21tb24iLCJyZXF1aXJlZCI6ZmFsc2UsIm5hbWUiOiJlbWFpbF9hZGRyZXNzIn0sImV4cCI6eyJ0eXBlIjoiRW50aXR5T3JDb21tb24iLCJyZXF1aXJlZCI6ZmFsc2UsIm5hbWUiOiJMb25nIn0sImlhdCI6eyJ0eXBlIjoiRW50aXR5T3JDb21tb24iLCJyZXF1aXJlZCI6ZmFsc2UsIm5hbWUiOiJMb25nIn0sImlzcyI6eyJ0eXBlIjoiRW50aXR5T3JDb21tb24iLCJuYW1lIjoiVHJ1c3RlZElzc3VlciJ9LCJqdGkiOnsidHlwZSI6IkVudGl0eU9yQ29tbW9uIiwicmVxdWlyZWQiOmZhbHNlLCJuYW1lIjoiU3RyaW5nIn0sIm5hbWUiOnsidHlwZSI6IkVudGl0eU9yQ29tbW9uIiwicmVxdWlyZWQiOmZhbHNlLCJuYW1lIjoiU3RyaW5nIn0sInBob25lX251bWJlciI6eyJ0eXBlIjoiRW50aXR5T3JDb21tb24iLCJyZXF1aXJlZCI6ZmFsc2UsIm5hbWUiOiJTdHJpbmcifSwiamFuc0FkbWluVUlSb2xlIjp7InR5cGUiOiJTZXQiLCJyZXF1aXJlZCI6ZmFsc2UsImVsZW1lbnQiOnsidHlwZSI6IkVudGl0eU9yQ29tbW9uIiwibmFtZSI6IlN0cmluZyJ9fSwic3ViIjp7InR5cGUiOiJFbnRpdHlPckNvbW1vbiIsIm5hbWUiOiJTdHJpbmcifX19fSwiV29ya2xvYWQiOnsic2hhcGUiOnsidHlwZSI6IlJlY29yZCIsImF0dHJpYnV0ZXMiOnsiYWNjZXNzX3Rva2VuIjp7InR5cGUiOiJFbnRpdHlPckNvbW1vbiIsInJlcXVpcmVkIjpmYWxzZSwibmFtZSI6IkFjY2Vzc190b2tlbiJ9LCJjbGllbnRfaWQiOnsidHlwZSI6IkVudGl0eU9yQ29tbW9uIiwibmFtZSI6IlN0cmluZyJ9LCJpc3MiOnsidHlwZSI6IkVudGl0eU9yQ29tbW9uIiwibmFtZSI6IlRydXN0ZWRJc3N1ZXIifSwibmFtZSI6eyJ0eXBlIjoiRW50aXR5T3JDb21tb24iLCJyZXF1aXJlZCI6ZmFsc2UsIm5hbWUiOiJTdHJpbmcifSwicnBfaWQiOnsidHlwZSI6IkVudGl0eU9yQ29tbW9uIiwicmVxdWlyZWQiOmZhbHNlLCJuYW1lIjoiU3RyaW5nIn0sInNwaWZmZV9pZCI6eyJ0eXBlIjoiRW50aXR5T3JDb21tb24iLCJyZXF1aXJlZCI6ZmFsc2UsIm5hbWUiOiJTdHJpbmcifX19fX0sImFjdGlvbnMiOnsiZGVsZXRlIjp7ImFwcGxpZXNUbyI6eyJwcmluY2lwYWxUeXBlcyI6WyJVc2VyIl0sInJlc291cmNlVHlwZXMiOlsiR2x1dTo6RmxleDo6QWRtaW5VSTo6UmVzb3VyY2VzOjpGZWF0dXJlcyIsIkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6UGFyZW50UmVzb3VyY2UiXSwiY29udGV4dCI6eyJ0eXBlIjoiUmVjb3JkIiwiYXR0cmlidXRlcyI6e319fX0sInJlYWQiOnsiYXBwbGllc1RvIjp7InByaW5jaXBhbFR5cGVzIjpbIlVzZXIiXSwicmVzb3VyY2VUeXBlcyI6WyJHbHV1OjpGbGV4OjpBZG1pblVJOjpSZXNvdXJjZXM6OkZlYXR1cmVzIiwiR2x1dTo6RmxleDo6QWRtaW5VSTo6UmVzb3VyY2VzOjpQYXJlbnRSZXNvdXJjZSJdLCJjb250ZXh0Ijp7InR5cGUiOiJSZWNvcmQiLCJhdHRyaWJ1dGVzIjp7fX19fSwid3JpdGUiOnsiYXBwbGllc1RvIjp7InByaW5jaXBhbFR5cGVzIjpbIlVzZXIiXSwicmVzb3VyY2VUeXBlcyI6WyJHbHV1OjpGbGV4OjpBZG1pblVJOjpSZXNvdXJjZXM6OkZlYXR1cmVzIiwiR2x1dTo6RmxleDo6QWRtaW5VSTo6UmVzb3VyY2VzOjpQYXJlbnRSZXNvdXJjZSJdLCJjb250ZXh0Ijp7InR5cGUiOiJSZWNvcmQiLCJhdHRyaWJ1dGVzIjp7fX19fX19LCJHbHV1OjpGbGV4OjpBZG1pblVJOjpSZXNvdXJjZXMiOnsiY29tbW9uVHlwZXMiOnt9LCJlbnRpdHlUeXBlcyI6eyJEZWZhdWx0RW50aXR5Ijp7InNoYXBlIjp7InR5cGUiOiJSZWNvcmQiLCJhdHRyaWJ1dGVzIjp7fX19LCJGZWF0dXJlcyI6eyJzaGFwZSI6eyJ0eXBlIjoiUmVjb3JkIiwiYXR0cmlidXRlcyI6e319LCJtZW1iZXJPZlR5cGVzIjpbIlBhcmVudFJlc291cmNlIl19LCJQYXJlbnRSZXNvdXJjZSI6eyJzaGFwZSI6eyJ0eXBlIjoiUmVjb3JkIiwiYXR0cmlidXRlcyI6e319fX0sImFjdGlvbnMiOnt9fX0=", + "default_entities": { + "1694c954f8d9": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IkRhc2hib2FyZCJ9LCJhdHRycyI6e30sInBhcmVudHMiOlt7InR5cGUiOiJHbHV1OjpGbGV4OjpBZG1pblVJOjpSZXNvdXJjZXM6OlBhcmVudFJlc291cmNlIiwiaWQiOiJTeXN0ZW1BbmRNb25pdG9yaW5nIn1dfQ==", + "2694c954f8d8": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IkxpY2Vuc2UifSwiYXR0cnMiOnt9LCJwYXJlbnRzIjpbeyJ0eXBlIjoiR2x1dTo6RmxleDo6QWRtaW5VSTo6UmVzb3VyY2VzOjpQYXJlbnRSZXNvdXJjZSIsImlkIjoiU3lzdGVtQW5kTW9uaXRvcmluZyJ9XX0=", + "3694c954f8d7": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6Ik1BVSJ9LCJhdHRycyI6e30sInBhcmVudHMiOlt7InR5cGUiOiJHbHV1OjpGbGV4OjpBZG1pblVJOjpSZXNvdXJjZXM6OlBhcmVudFJlc291cmNlIiwiaWQiOiJTeXN0ZW1BbmRNb25pdG9yaW5nIn1dfQ==", + "4694c954f8d6": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IlNlY3VyaXR5In0sImF0dHJzIjp7fSwicGFyZW50cyI6W3sidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6UGFyZW50UmVzb3VyY2UiLCJpZCI6IlN5c3RlbUFuZE1vbml0b3JpbmcifV19", + "6494c954f8d6": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IlNldHRpbmdzIn0sImF0dHJzIjp7fSwicGFyZW50cyI6W3sidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6UGFyZW50UmVzb3VyY2UiLCJpZCI6IlN5c3RlbUFuZE1vbml0b3JpbmcifV19", + "5694c954f8d5": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IldlYmhvb2tzIn0sImF0dHJzIjp7fSwicGFyZW50cyI6W3sidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6UGFyZW50UmVzb3VyY2UiLCJpZCI6IlN5c3RlbUFuZE1vbml0b3JpbmcifV19", + "6694c954f8d4": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IkFzc2VzdHMifSwiYXR0cnMiOnt9LCJwYXJlbnRzIjpbeyJ0eXBlIjoiR2x1dTo6RmxleDo6QWRtaW5VSTo6UmVzb3VyY2VzOjpQYXJlbnRSZXNvdXJjZSIsImlkIjoiU3lzdGVtQW5kTW9uaXRvcmluZyJ9XX0=", + "7694c954f8d3": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IkF1ZGl0TG9ncyJ9LCJhdHRycyI6e30sInBhcmVudHMiOlt7InR5cGUiOiJHbHV1OjpGbGV4OjpBZG1pblVJOjpSZXNvdXJjZXM6OlBhcmVudFJlc291cmNlIiwiaWQiOiJTeXN0ZW1BbmRNb25pdG9yaW5nIn1dfQ==", + "8694c954f8d2": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IkNsaWVudHMifSwiYXR0cnMiOnt9LCJwYXJlbnRzIjpbeyJ0eXBlIjoiR2x1dTo6RmxleDo6QWRtaW5VSTo6UmVzb3VyY2VzOjpQYXJlbnRSZXNvdXJjZSIsImlkIjoiQXV0aFNlcnZlckFuZENvbmZpZ3VyYXRpb24ifV19", + "9694c954f8d1": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IlNjb3BlcyJ9LCJhdHRycyI6e30sInBhcmVudHMiOlt7InR5cGUiOiJHbHV1OjpGbGV4OjpBZG1pblVJOjpSZXNvdXJjZXM6OlBhcmVudFJlc291cmNlIiwiaWQiOiJBdXRoU2VydmVyQW5kQ29uZmlndXJhdGlvbiJ9XX0=", + "a694c954f8d0": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IktleXMifSwiYXR0cnMiOnt9LCJwYXJlbnRzIjpbeyJ0eXBlIjoiR2x1dTo6RmxleDo6QWRtaW5VSTo6UmVzb3VyY2VzOjpQYXJlbnRSZXNvdXJjZSIsImlkIjoiQXV0aFNlcnZlckFuZENvbmZpZ3VyYXRpb24ifV19", + "b694c954f8cf": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IkF1dGhlbnRpY2F0aW9uU2VydmVyQ29uZmlndXJhdGlvbiJ9LCJhdHRycyI6e30sInBhcmVudHMiOlt7InR5cGUiOiJHbHV1OjpGbGV4OjpBZG1pblVJOjpSZXNvdXJjZXM6OlBhcmVudFJlc291cmNlIiwiaWQiOiJBdXRoU2VydmVyQW5kQ29uZmlndXJhdGlvbiJ9XX0=", + "c694c954f8ce": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IkxvZ2dpbmcifSwiYXR0cnMiOnt9LCJwYXJlbnRzIjpbeyJ0eXBlIjoiR2x1dTo6RmxleDo6QWRtaW5VSTo6UmVzb3VyY2VzOjpQYXJlbnRSZXNvdXJjZSIsImlkIjoiQXV0aFNlcnZlckFuZENvbmZpZ3VyYXRpb24ifV19", + "d694c954f8cd": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IlNTQSJ9LCJhdHRycyI6e30sInBhcmVudHMiOlt7InR5cGUiOiJHbHV1OjpGbGV4OjpBZG1pblVJOjpSZXNvdXJjZXM6OlBhcmVudFJlc291cmNlIiwiaWQiOiJBdXRoU2VydmVyQW5kQ29uZmlndXJhdGlvbiJ9XX0=", + "e694c954f8cc": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IkF1dGhlbnRpY2F0aW9uIn0sImF0dHJzIjp7fSwicGFyZW50cyI6W3sidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6UGFyZW50UmVzb3VyY2UiLCJpZCI6IkF1dGhTZXJ2ZXJBbmRDb25maWd1cmF0aW9uIn1dfQ==", + "f694c954f8cb": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IkNvbmZpZ0FwaUNvbmZpZ3VyYXRpb24ifSwiYXR0cnMiOnt9LCJwYXJlbnRzIjpbeyJ0eXBlIjoiR2x1dTo6RmxleDo6QWRtaW5VSTo6UmVzb3VyY2VzOjpQYXJlbnRSZXNvdXJjZSIsImlkIjoiQXV0aFNlcnZlckFuZENvbmZpZ3VyYXRpb24ifV19", + "1694c954f8ca": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IlNlc2lzb24ifSwiYXR0cnMiOnt9LCJwYXJlbnRzIjpbeyJ0eXBlIjoiR2x1dTo6RmxleDo6QWRtaW5VSTo6UmVzb3VyY2VzOjpQYXJlbnRSZXNvdXJjZSIsImlkIjoiQXV0aFNlcnZlckFuZENvbmZpZ3VyYXRpb24ifV19", + "2694c954f8c9": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IlVzZXJzIn0sImF0dHJzIjp7fSwicGFyZW50cyI6W3sidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6UGFyZW50UmVzb3VyY2UiLCJpZCI6IklkZW50aXR5QW5kQWNjZXNzIn1dfQ==", + "3694c954f8c8": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IlNjcmlwdHMifSwiYXR0cnMiOnt9LCJwYXJlbnRzIjpbeyJ0eXBlIjoiR2x1dTo6RmxleDo6QWRtaW5VSTo6UmVzb3VyY2VzOjpQYXJlbnRSZXNvdXJjZSIsImlkIjoiSWRlbnRpdHlBbmRBY2Nlc3MifV19", + "4694c954f8c7": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IlVzZXJDbGFpbXMifSwiYXR0cnMiOnt9LCJwYXJlbnRzIjpbeyJ0eXBlIjoiR2x1dTo6RmxleDo6QWRtaW5VSTo6UmVzb3VyY2VzOjpQYXJlbnRSZXNvdXJjZSIsImlkIjoiSWRlbnRpdHlBbmRBY2Nlc3MifV19", + "5694c954f8c6": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IkNhY2hlIn0sImF0dHJzIjp7fSwicGFyZW50cyI6W3sidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6UGFyZW50UmVzb3VyY2UiLCJpZCI6IlNlcnZpY2UifV19", + "6694c954f8c5": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IlBlcnNpc3RhbmNlIn0sImF0dHJzIjp7fSwicGFyZW50cyI6W3sidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6UGFyZW50UmVzb3VyY2UiLCJpZCI6IlNlcnZpY2UifV19", + "7694c954f8c4": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IlNNVFAifSwiYXR0cnMiOnt9LCJwYXJlbnRzIjpbeyJ0eXBlIjoiR2x1dTo6RmxleDo6QWRtaW5VSTo6UmVzb3VyY2VzOjpQYXJlbnRSZXNvdXJjZSIsImlkIjoiU2VydmljZSJ9XX0=", + "8694c954f8c3": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IlNDSU0ifSwiYXR0cnMiOnt9LCJwYXJlbnRzIjpbeyJ0eXBlIjoiR2x1dTo6RmxleDo6QWRtaW5VSTo6UmVzb3VyY2VzOjpQYXJlbnRSZXNvdXJjZSIsImlkIjoiU2VydmljZSJ9XX0=", + "9694c954f8c2": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IkZJRE8ifSwiYXR0cnMiOnt9LCJwYXJlbnRzIjpbeyJ0eXBlIjoiR2x1dTo6RmxleDo6QWRtaW5VSTo6UmVzb3VyY2VzOjpQYXJlbnRSZXNvdXJjZSIsImlkIjoiU2VydmljZSJ9XX0=", + "a694c954f8c1": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IlNBTUwifSwiYXR0cnMiOnt9LCJwYXJlbnRzIjpbeyJ0eXBlIjoiR2x1dTo6RmxleDo6QWRtaW5VSTo6UmVzb3VyY2VzOjpQYXJlbnRSZXNvdXJjZSIsImlkIjoiU2VydmljZSJ9XX0=", + "b694c954f8c0": "eyJ1aWQiOnsidHlwZSI6IkdsdXU6OkZsZXg6OkFkbWluVUk6OlJlc291cmNlczo6RmVhdHVyZXMiLCJpZCI6IkxvY2sifSwiYXR0cnMiOnt9LCJwYXJlbnRzIjpbeyJ0eXBlIjoiR2x1dTo6RmxleDo6QWRtaW5VSTo6UmVzb3VyY2VzOjpQYXJlbnRSZXNvdXJjZSIsImlkIjoiU2VydmljZSJ9XX0=" + } + } + } +} \ No newline at end of file